<html>
    <head>
      <base href="https://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 --- - assertion "Result.isUninit() && "temporary created multiple times"" fails"
   href="https://llvm.org/bugs/show_bug.cgi?id=26011">26011</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>assertion "Result.isUninit() && "temporary created multiple times"" fails
          </td>
        </tr>

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

        <tr>
          <th>Version</th>
          <td>3.7
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>FreeBSD
          </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>C++14
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>curdeius@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Similar behaviour to <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - assertion "Result.isUninit() && "temporary created multiple times"""
   href="show_bug.cgi?id=17800">bug #17800</a>.
Happens on FreeBSD with -std=c++14 (but not with -std=c++11).
The very simple program declares a boost::lockfree::queue.
I have tested with clang 3.7.0 and clang-devel (which unfortunately dates back
to 20th July 2015) with the same result.

<span class="quote">> clang++ -std=c++11 -stdlib=libc++ -lc++ -I./thirdparty/boost ./test.cpp</span >

<span class="quote">> clang++ -std=c++14 -stdlib=libc++ -lc++ -I./thirdparty/boost ./test.cpp</span >
Assertion failed: (Result.isUninit() && "temporary created multiple times"),
function createTemporary, file
/wrkdirs/usr/ports/devel/llvm37/work/llvm-3.7.0.src/tools/clang/lib/AST/ExprConstant.cpp,
line 839.
clang-3.7: error: unable to execute command: Abort trap (core dumped)
clang-3.7: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 3.7.0 (tags/RELEASE_370/final)
Target: x86_64-unknown-freebsd10.1
Thread model: posix

Repro (using Boost 1.60):

```
#include <boost/lockfree/queue.hpp>

struct message {};
static boost::lockfree::queue<message, boost::lockfree::capacity<10>>
a_message_queue;

int main() {}
```</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>