[ 0%] Building CXX object test/CMakeFiles/range.v3.constexpr_core.dir/constexpr_core.cpp.o
cd /work/00434/eijkhout/rangev3/build-0.12.0-vista-gcc14/test && /opt/apps/gcc/14.2.0/bin/g++ -I/work/00434/eijkhout/rangev3/rangev3-0.12.0/include -O3 -DNDEBUG -fno-diagnostics-color -std=c++14 -Wall -Wextra -Werror -fdiagnostics-show-template-tree -ftemplate-backtrace-limit=0 -fomit-frame-pointer -Ofast -fstrict-aliasing -ffast-math -fsized-deallocation -march=native -mtune=native -DRANGES_CXX_ALIGNED_NEW=0 -fconcepts -pedantic -pedantic-errors -Wno-padded -Wno-old-style-cast -Wno-noexcept-type -MD -MT test/CMakeFiles/range.v3.constexpr_core.dir/constexpr_core.cpp.o -MF CMakeFiles/range.v3.constexpr_core.dir/constexpr_core.cpp.o.d -o CMakeFiles/range.v3.constexpr_core.dir/constexpr_core.cpp.o -c /work/00434/eijkhout/rangev3/rangev3-0.12.0/test/constexpr_core.cpp
In file included from /work/00434/eijkhout/rangev3/rangev3-0.12.0/include/meta/meta_fwd.hpp:18,
from /work/00434/eijkhout/rangev3/rangev3-0.12.0/include/range/v3/detail/config.hpp:67,
from /work/00434/eijkhout/rangev3/rangev3-0.12.0/test/config.cpp:12:
/opt/apps/gcc/14.2.0/include/c++/14.2.0/type_traits:2575:12: error: template parameters not deducible in partial specialization:
2575 | struct __result_of_memobj<_Res _Class::*, _Arg>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/apps/gcc/14.2.0/include/c++/14.2.0/type_traits:2575:12: note: ‘_Class’
/opt/apps/gcc/14.2.0/include/c++/14.2.0/type_traits:2590:12: error: template parameters not deducible in partial specialization:
2590 | struct __result_of_memfun<_Res _Class::*, _Arg, _Args...>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/apps/gcc/14.2.0/include/c++/14.2.0/type_traits:2590:12: note: ‘_Class’
/work/00434/eijkhout/rangev3/rangev3-0.12.0/include/meta/meta_fwd.hpp:351:40: error: expected type-name before ‘invocable’
351 | template <META_TYPE_CONSTRAINT(invocable) F, typename L>
| ^~~~~~~~~
/work/00434/eijkhout/rangev3/rangev3-0.12.0/include/meta/meta_fwd.hpp:155:35: note: in definition of macro ‘META_TYPE_CONSTRAINT’
155 | #define META_TYPE_CONSTRAINT(...) __VA_ARGS__
| ^~~~~~~~~~~
/work/00434/eijkhout/rangev3/rangev3-0.12.0/include/meta/meta_fwd.hpp:351:40: error: ISO C++ forbids declaration of ‘invocable’ with no type [-fpermissive]
351 | template <META_TYPE_CONSTRAINT(invocable) F, typename L>
| ^~~~~~~~~
/work/00434/eijkhout/rangev3/rangev3-0.12.0/include/meta/meta_fwd.hpp:155:35: note: in definition of macro ‘META_TYPE_CONSTRAINT’
155 | #define META_TYPE_CONSTRAINT(...) __VA_ARGS__
| ^~~~~~~~~~~
/work/00434/eijkhout/rangev3/rangev3-0.12.0/include/meta/meta_fwd.hpp:351:51: error: expected ‘>’ before ‘F’
351 | template <META_TYPE_CONSTRAINT(invocable) F, typename L>
| ^
make[3]: *** [test/CMakeFiles/range.v3.config.dir/build.make:79: test/CMakeFiles/range.v3.config.dir/config.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:1617: test/CMakeFiles/range.v3.config.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....Activity
4Any update on this? It is still broken with gcc 14.2.0.
I'm unable to reproduce the build failure on my end. Can you give me step-by-step instructions to reproduce? Like, what CMake options and commands did you run, etc.
I tried compiling with GCC 14.2.0 on Ubuntu 24.10 and it worked, the library was built successfully, and all the tests passed.
I used these options:
-DRANGES_VERBOSE_BUILD=ON
-DRANGE_V3_EXAMPLES=ON
-DRANGE_V3_TESTS=ON
-DRANGES_BUILD_CALENDAR_EXAMPLE=OFF(Here's the list of commands that I ran: cmake -S. -Bbuild -DRANGES_VERBOSE_BUILD=ON -DRANGE_V3_EXAMPLES=ON -DRANGE_V3_TESTS=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DRANGES_BUILD_CALENDAR_EXAMPLE=OFF and then cmake --build build --parallel and then cd ./build/test && ctest.)
Linux mint 22, used compiler g++-14 (version 14.2.0). It does not compile. using the g++13 (13.3.0) it compiles fine.
Same on macOS, it breaks down immediately: