[Bug]: Unit tests fails to compile using LTS 20240116.0
Closed this issue · 1 comments
diizzyy commented
Describe the issue
Tests fails to compile
[ 17% 83/478] /usr/bin/c++ -DGTEST_LINKED_AS_SHARED_LIBRARY=1 -I/usr/ports/devel/abseil/work/abseil-cpp-20240116.0 -I/googletest/include -I/googlemock/include -isystem /usr/local/include -O2 -pipe -march=tigerlake -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -march=tigerlake -fstack-protector-strong -fno-strict-aliasing -DNDEBUG -Wall -Wextra -Wcast-qual -Wconversion -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wfor-loop-analysis -Wformat-security -Wgnu-redeclared-enum -Winfinite-recursion -Winvalid-constexpr -Wliteral-conversion -Wmissing-declarations -Woverlength-strings -Wpointer-arith -Wself-assign -Wshadow-all -Wstring-conversion -Wtautological-overlap-compare -Wtautological-unsigned-zero-compare -Wundef -Wuninitialized -Wunreachable-code -Wunused-comparison -Wunused-local-typedefs -Wunused-result -Wvla -Wwrite-strings -Wno-float-conversion -Wno-implicit-float-conversion -Wno-implicit-int-float-conversion -Wno-unknown-warning-option -DNOMINMAX -Wno-deprecated-declarations -Wno-implicit-int-conversion -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-shadow -Wno-shorten-64-to-32 -Wno-sign-compare -Wno-sign-conversion -Wno-unreachable-code-loop-increment -Wno-unused-function -Wno-unused-member-function -Wno-unused-parameter -Wno-unused-private-field -Wno-unused-template -Wno-used-but-marked-unused -Wno-gnu-zero-variadic-macro-arguments -pthread -MD -MT absl/container/CMakeFiles/absl_flat_hash_map_test.dir/flat_hash_map_test.cc.o -MF absl/container/CMakeFiles/absl_flat_hash_map_test.dir/flat_hash_map_test.cc.o.d -o absl/container/CMakeFiles/absl_flat_hash_map_test.dir/flat_hash_map_test.cc.o -c /usr/ports/devel/abseil/work/abseil-cpp-20240116.0/absl/container/flat_hash_map_test.cc
FAILED: absl/container/CMakeFiles/absl_flat_hash_map_test.dir/flat_hash_map_test.cc.o
/usr/bin/c++ -DGTEST_LINKED_AS_SHARED_LIBRARY=1 -I/usr/ports/devel/abseil/work/abseil-cpp-20240116.0 -I/googletest/include -I/googlemock/include -isystem /usr/local/include -O2 -pipe -march=tigerlake -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -march=tigerlake -fstack-protector-strong -fno-strict-aliasing -DNDEBUG -Wall -Wextra -Wcast-qual -Wconversion -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wfor-loop-analysis -Wformat-security -Wgnu-redeclared-enum -Winfinite-recursion -Winvalid-constexpr -Wliteral-conversion -Wmissing-declarations -Woverlength-strings -Wpointer-arith -Wself-assign -Wshadow-all -Wstring-conversion -Wtautological-overlap-compare -Wtautological-unsigned-zero-compare -Wundef -Wuninitialized -Wunreachable-code -Wunused-comparison -Wunused-local-typedefs -Wunused-result -Wvla -Wwrite-strings -Wno-float-conversion -Wno-implicit-float-conversion -Wno-implicit-int-float-conversion -Wno-unknown-warning-option -DNOMINMAX -Wno-deprecated-declarations -Wno-implicit-int-conversion -Wno-missing-prototypes -Wno-missing-variable-declarations -Wno-shadow -Wno-shorten-64-to-32 -Wno-sign-compare -Wno-sign-conversion -Wno-unreachable-code-loop-increment -Wno-unused-function -Wno-unused-member-function -Wno-unused-parameter -Wno-unused-private-field -Wno-unused-template -Wno-used-but-marked-unused -Wno-gnu-zero-variadic-macro-arguments -pthread -MD -MT absl/container/CMakeFiles/absl_flat_hash_map_test.dir/flat_hash_map_test.cc.o -MF absl/container/CMakeFiles/absl_flat_hash_map_test.dir/flat_hash_map_test.cc.o.d -o absl/container/CMakeFiles/absl_flat_hash_map_test.dir/flat_hash_map_test.cc.o -c /usr/ports/devel/abseil/work/abseil-cpp-20240116.0/absl/container/flat_hash_map_test.cc
/usr/ports/devel/abseil/work/abseil-cpp-20240116.0/absl/container/flat_hash_map_test.cc:113:3: error: static assertion failed due to requirement 'absl::is_trivially_relocatable<std::pair<const int, int>>::value':
static_assert(
^
/usr/ports/devel/abseil/work/abseil-cpp-20240116.0/absl/container/flat_hash_map_test.cc:115:3: error: static assertion failed due to requirement 'std::is_same<std::integral_constant<bool, false>, std::integral_constant<bool, true>>::value':
static_assert(
^
2 errors generated.
ninja: build stopped: subcommand failed.
*** Error code 1
Stop.
Steps to reproduce the problem
Compile with ABSL_BUILD_TESTING BUILD_TESTING ABSL_USE_EXTERNAL_GOOGLETEST ABSL_FIND_GOOGLETEST
What version of Abseil are you using?
Abseil LTS 20240116.0
What operating system and version are you using?
FreeBSD 14.0 (amd64)
What compiler and version are you using?
FreeBSD clang version 16.0.6 (https://github.com/llvm/llvm-project.git llvmorg-16.0.6-0-g7cbf1a259152) (included in base install)
What build system are you using?
cmake version 3.28.1
googletest-1.14.0
Additional context
No response
derekmauro commented
This is a Clang bug. It has been addressed in Abseil by 14b8a4e.