I'm running this on FreeBSD 11 (stable). It has clang-3.8.0 as the system compiler. LLVM/Clang/et al. compiled without problems, but I'm seeing failures in check-libcxx. Example below.
Does anyone know what the problem may be?
clang version 4.0.0 (http://llvm.org/git/clang.git a85c03256cfc0812e268f5e0f1b804910e75e673) (http://llvm.org/git/llvm.git c95d4ff692323bde64fc8ef45e174b19450779af)
Target: x86_64-unknown-freebsd11.0
Thread model: posix
InstalledDir: /w/c/org/bin
"/w/c/org/bin/clang-4.0" -cc1 -triple x86_64-unknown-freebsd11.0 -emit-obj -mrelax-all -disable-free -main-file-name minmax_init_list_comp.pass.cpp -mrelocation-model static -mthread-model posix -mdisable-fp-elim -masm-verbose -mconstructor-aliases -munwind-tables -target-cpu x86-64 -v -v -dwarf-column-info -debugger-tuning=gdb -coverage-notes-file /w/bld/org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/Output/minmax_init_list_comp.pass.cpp.gcno -nostdinc++ -resource-dir /w/c/org/bin/../lib/clang/4.0.0 -include /w/src/llvm.org/projects/libcxx/test/support/nasty_macros.hpp -I /w/src/llvm.org/projects/libcxx/include -I /w/src/llvm.org/projects/libcxx/test/support -D LIBCXX_FILESYSTEM_STATIC_TEST_ROOT=/w/src/llvm.org/projects/libcxx/test/std/experimental/filesystem/Inputs/static_test_env -D LIBCXX_FILESYSTEM_DYNAMIC_TEST_ROOT=/w/bld/org/projects/libcxx/test/filesystem/Output/dynamic_env -D LIBCXX_FILESYSTEM_DYNAMIC_TEST_HELPER=/usr/local/bin/python2.7 /w/src/llvm.org/projects/libcxx/test/support/filesystem_dynamic_test_helper.py -Werror=thread-safety -std=c++1z -fdeprecated-macro -fdebug-compilation-dir /w/src/llvm.org -ferror-limit 19 -fmessage-length 210 -fobjc-runtime=gnustep -fcxx-exceptions -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -o /w/bld/org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/Output/minmax_init_list_comp.pass.cpp.o -x c++ /w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp
clang -cc1 version 4.0.0 based upon LLVM 4.0.0svn default target x86_64-unknown-freebsd11.0
#include "..." search starts here:
#include <...> search starts here:
/w/src/llvm.org/projects/libcxx/include
/w/src/llvm.org/projects/libcxx/test/support
/w/c/org/bin/../lib/clang/4.0.0/include
/usr/include
End of search list.
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:68:19: error: static_assert expression is not an integral constant expression
static_assert((std::minmax({1, 2, 3}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/w/src/llvm.org/projects/libcxx/include/algorithm:2823:12: note: non-constexpr constructor 'pair' cannot be used in a constant expression
return __result;
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:68:20: note: in call to 'minmax({&{1, 2, 3}[0], 3}, {{}})'
static_assert((std::minmax({1, 2, 3}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^
/w/src/llvm.org/projects/libcxx/include/utility:316:5: note: declared here
pair(pair&& __p) _NOEXCEPT_(is_nothrow_move_constructible<first_type>::value &&
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:69:19: error: static_assert expression is not an integral constant expression
static_assert((std::minmax({1, 3, 2}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/w/src/llvm.org/projects/libcxx/include/algorithm:2823:12: note: non-constexpr constructor 'pair' cannot be used in a constant expression
return __result;
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:69:20: note: in call to 'minmax({&{1, 3, 2}[0], 3}, {{}})'
static_assert((std::minmax({1, 3, 2}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^
/w/src/llvm.org/projects/libcxx/include/utility:316:5: note: declared here
pair(pair&& __p) _NOEXCEPT_(is_nothrow_move_constructible<first_type>::value &&
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:70:19: error: static_assert expression is not an integral constant expression
static_assert((std::minmax({2, 1, 3}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/w/src/llvm.org/projects/libcxx/include/algorithm:2823:12: note: non-constexpr constructor 'pair' cannot be used in a constant expression
return __result;
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:70:20: note: in call to 'minmax({&{2, 1, 3}[0], 3}, {{}})'
static_assert((std::minmax({2, 1, 3}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^
/w/src/llvm.org/projects/libcxx/include/utility:316:5: note: declared here
pair(pair&& __p) _NOEXCEPT_(is_nothrow_move_constructible<first_type>::value &&
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:71:19: error: static_assert expression is not an integral constant expression
static_assert((std::minmax({2, 3, 1}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/w/src/llvm.org/projects/libcxx/include/algorithm:2823:12: note: non-constexpr constructor 'pair' cannot be used in a constant expression
return __result;
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:71:20: note: in call to 'minmax({&{2, 3, 1}[0], 3}, {{}})'
static_assert((std::minmax({2, 3, 1}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^
/w/src/llvm.org/projects/libcxx/include/utility:316:5: note: declared here
pair(pair&& __p) _NOEXCEPT_(is_nothrow_move_constructible<first_type>::value &&
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:72:19: error: static_assert expression is not an integral constant expression
static_assert((std::minmax({3, 1, 2}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/w/src/llvm.org/projects/libcxx/include/algorithm:2823:12: note: non-constexpr constructor 'pair' cannot be used in a constant expression
return __result;
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:72:20: note: in call to 'minmax({&{3, 1, 2}[0], 3}, {{}})'
static_assert((std::minmax({3, 1, 2}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^
/w/src/llvm.org/projects/libcxx/include/utility:316:5: note: declared here
pair(pair&& __p) _NOEXCEPT_(is_nothrow_move_constructible<first_type>::value &&
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:73:19: error: static_assert expression is not an integral constant expression
static_assert((std::minmax({3, 2, 1}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/w/src/llvm.org/projects/libcxx/include/algorithm:2823:12: note: non-constexpr constructor 'pair' cannot be used in a constant expression
return __result;
^
/w/src/llvm.org/projects/libcxx/test/std/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp:73:20: note: in call to 'minmax({&{3, 2, 1}[0], 3}, {{}})'
static_assert((std::minmax({3, 2, 1}, std::greater<int>()) == std::pair<int, int>(3, 1)), "");
^
/w/src/llvm.org/projects/libcxx/include/utility:316:5: note: declared here
pair(pair&& __p) _NOEXCEPT_(is_nothrow_move_constructible<first_type>::value &&
^
6 errors generated.
-Krzysztof