New failure in LibC++ tests on v4.0 branch

Yesterday I updated to revision #294006 of the v4.0 branch, but I am getting a few new failures in the C++ test-suite. One example is:

llvm/projects/libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp

For which I get the following errors:

llvm/projects/libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp:28:12: error: non-const lvalue reference to type ‘T’ (aka ‘Emplaceable’) cannot bind to a temporary of type ‘void’

T& r1 = c.emplace_front();

^ ~~~~~~~~~~~~~~~~~

llvm/projects/libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp:32:12: error: non-const lvalue reference to type ‘T’ (aka ‘Emplaceable’) cannot bind to a temporary of type ‘void’

T& r2 = c.emplace_front(1, 2.5);

^ ~~~~~~~~~~~~~~~~~~~~~~~

llvm/projects/libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp:42:12: error: non-const lvalue reference to type ‘T’ (aka ‘Emplaceable’) cannot bind to a temporary of type ‘void’

T& r1 = c.emplace_front();

^ ~~~~~~~~~~~~~~~~~

llvm/projects/libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp:46:12: error: non-const lvalue reference to type ‘T’ (aka ‘Emplaceable’) cannot bind to a temporary of type ‘void’

T& r2 = c.emplace_front(1, 2.5);

^ ~~~~~~~~~~~~~~~~~~~~~~~

4 errors generated.

This is with a clean build, and I am compiling with ‘-std=c++14 -UNDEBUG’. With my previous build based on revision #293059 this was working okay.

Is this a known regression, or something new?

Thanks,

MartinO

Hi Martin,

Are you sure you also updated the libc++ tests? The line numbers in the errors don’t match up with emplace_front.pass.cpp in the 4.0 branch.

/Eric

That’s exactly what I missed - duh! I still had the tests from #293059 not #294006.

Thanks,

MartinO