Boost Hana is a popular C++14 template metaprogramming library. Currently, both clang and g++ are fully compatible and Microsoft has been hard at work getting MSVC to work with Hana.
My question is there any roadmap for getting the Intel Compiler to work with Hana (and other metaprogramming / C++14 tools)? I don't currently have access to the 2019 beta but the 2018 compiler fails right away when trying to compile Hana tests:
cmake --build . --target check Scanning dependencies of target test.tuple.cnstr.variadic_copy [ 0%] Building CXX object test/CMakeFiles/test.tuple.cnstr.variadic_copy.dir/tuple/cnstr.variadic_copy.cpp.o In file included from /home/build-test/git/hana/include/boost/hana/optional.hpp(13), from /home/build-test/git/hana/include/boost/hana/detail/index_if.hpp(17), from /home/build-test/git/hana/include/boost/hana/tuple.hpp(21), from /home/build-test/git/hana/test/tuple/cnstr.variadic_copy.cpp(6): /home/build-test/git/hana/include/boost/hana/fwd/optional.hpp(343): error: defaulted default constructor cannot be constexpr because the corresponding implicitly declared default constructor would not be constexpr constexpr optional() = default; ^ compilation aborted for /home/build-test/git/hana/test/tuple/cnstr.variadic_copy.cpp (code 2) test/CMakeFiles/test.tuple.cnstr.variadic_copy.dir/build.make:62: recipe for target 'test/CMakeFiles/test.tuple.cnstr.variadic_copy.dir/tuple/cnstr.variadic_copy.cpp.o' failed make[3]: *** [test/CMakeFiles/test.tuple.cnstr.variadic_copy.dir/tuple/cnstr.variadic_copy.cpp.o] Error 2 CMakeFiles/Makefile2:38768: recipe for target 'test/CMakeFiles/test.tuple.cnstr.variadic_copy.dir/all' failed make[2]: *** [test/CMakeFiles/test.tuple.cnstr.variadic_copy.dir/all] Error 2 CMakeFiles/Makefile2:332: recipe for target 'CMakeFiles/check.dir/rule' failed make[1]: *** [CMakeFiles/check.dir/rule] Error 2 Makefile:279: recipe for target 'check' failed make: *** [check] Error 2
At our company, we use the Intel Compiler for highly performant mathematical computation that the Intel Compiler far outpaces all others with. This binds us to the Intel Compiler but without support for such rich libraries like Boost Hana, we are left missing some needed compile-time calculations.
Thanks.