Can no longer build master with GCC 11.1.0
Hello there,
As of this commit I can no longer build the master branch of Allen using GCC 11.1.0, which is what I use on my local development machine. It now errors and hangs with the following:
...
[ 99%] Linking CXX shared library libAllenLib.so
[ 99%] Built target AllenLib
[ 99%] Building CXX object CMakeFiles/Allen.dir/main/src/main.cpp.o
[ 99%] Linking CXX executable Allen
[ 99%] Built target Allen
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[2]: *** [sequences/CMakeFiles/Stream_hlt1_pp_no_gec.dir/build.make:76: sequences/CMakeFiles/Stream_hlt1_pp_no_gec.dir/src/Stream.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1760: sequences/CMakeFiles/Stream_hlt1_pp_no_gec.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Using Clang 10.0.0 from CVMFS on our local IPU server still works. I also have access to Clang 12.0 on my development machine, but that errors with the following (trimmed):
...
reps__dev_sel_reports_t>, std::tuple<make_selreps__dev_sel_reports_t>, std::tuple<prefix_sum_selrep_size__host_output_buffer_t, calc_selrep_size__dev_selrep_sizes_t>>>' requested here
vtbl = VTable {alg, traits};
^
/home/lester/Allen/stream/gear/include/AllenTypeTraits.cuh:27:92: note: use -fbracket-depth=N to increase maximum nesting level
struct TupleContains<T, std::tuple<Ts...>> : std::bool_constant<((std::is_same_v<T, Ts> || ...))> {
^
1 error generated.
make[2]: *** [sequences/CMakeFiles/Stream_hlt1_pp_no_gec.dir/build.make:76: sequences/CMakeFiles/Stream_hlt1_pp_no_gec.dir/src/Stream.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1760: sequences/CMakeFiles/Stream_hlt1_pp_no_gec.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [sequences/CMakeFiles/Stream_hlt1_pp_default.dir/build.make:76: sequences/CMakeFiles/Stream_hlt1_pp_default.dir/src/Stream.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1839: sequences/CMakeFiles/Stream_hlt1_pp_default.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
(This has always been the case, hence why I've used GCC locally.)
Let me know if there's anything else you need to know about my setup.