<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - error: cannot compile this conditional operator yet"
   href="http://llvm.org/bugs/show_bug.cgi?id=16553">16553</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>error: cannot compile this conditional operator yet
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Frontend
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>jan.smets@alcatel-lucent.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvmbugs@cs.uiuc.edu
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>class CLASS
{
public:
    void blabla(void);

protected:
    void  bla(bool is) { (is ? bit2 : bit1) = 1; }
    unsigned int bit1 : 1;
    unsigned int bit2 : 2;
};



void CLASS::blabla(void)
{
    bla(1);
}



   void  bla(bool is) { (is ? bit2 : bit1) = 1; }
                          ^~~~~~~~~~~~~~~~
Referring to a basic block in another function!
  br i1 %tobool, label %cond.true, label %cond.false
Broken module found, compilation aborted!
0  clang           0x0000000001f52b42 llvm::sys::PrintStackTrace(_IO_FILE*) +
34
1  clang           0x0000000001f54b7a
2  libpthread.so.0 0x00007fc82d1bc500
3  libc.so.6       0x00007fc82c2a08a5 gsignal + 53
4  libc.so.6       0x00007fc82c2a2085 abort + 373
5  clang           0x0000000001f135e0
6  clang           0x0000000001eed688
llvm::FPPassManager::runOnFunction(llvm::Function&) + 568
7  clang           0x0000000001eed847
llvm::FunctionPassManagerImpl::run(llvm::Function&) + 183
8  clang           0x0000000001eedb6c
llvm::FunctionPassManager::run(llvm::Function&) + 220
9  clang           0x0000000000816a56
clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::CodeGenOptions
const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::Module*,
clang::BackendAction, llvm::raw_ostream*) + 1686
10 clang           0x00000000008140b9
11 clang           0x00000000009bb56e clang::ParseAST(clang::Sema&, bool, bool)
+ 382
12 clang           0x0000000000812d9e clang::CodeGenAction::ExecuteAction() +
78
13 clang           0x00000000006927d9 clang::FrontendAction::Execute() + 313
14 clang           0x0000000000673f75
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 341
15 clang           0x0000000000654f87
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 1543
16 clang           0x000000000064aba8 cc1_main(char const**, char const**, char
const*, void*) + 984
17 clang           0x0000000000652bc8 main + 7448
18 libc.so.6       0x00007fc82c28ccdd __libc_start_main + 253
19 clang           0x000000000064a5e9


clang version 3.4 (trunk 185734)</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>