I idly tried to compile hpx head (6ca32f0e7a782), with the only local
change being
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4126a795afd..6af1215fb61 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1835,7 +1835,8 @@ if(NOT WIN32)
target_link_libraries(hpx_base_libraries INTERFACE supc++)
endif()
- if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+ find_library(DL_LIBRARY NAMES dl)
+ if(DL_LIBRARY)
target_link_libraries(hpx_base_libraries INTERFACE dl)
endif()
and compilation fails with
/usr/include/g++/system_error:174:7: note: candidate: 'template<class
_ErrorCodeEnum> typename std::enable_if<std::is_error_code_enum<_Tp>::value,
std::error_code&>::type std::error_code::operator=(_ErrorCodeEnum)'
174 | operator=(_ErrorCodeEnum __e) noexcept
| ^~~~~~~~
/usr/include/g++/system_error:174:7: note: template argument
deduction/substitution failed:
/usr/include/g++/system_error: In substitution of 'template<class
_ErrorCodeEnum> typename std::enable_if<std::is_error_code_enum<_Tp>::value,
std::error_code&>::type std::error_code::operator=(_ErrorCodeEnum) [with
_ErrorCodeEnum = boost::system::error_code]':
/usr/src/local/hpx/libs/core/config/include/hpx/config/detail/compat_error_code.hpp:34:19:
required from here
/usr/include/g++/system_error:174:7: error: no type named 'type' in 'struct
std::enable_if<false, std::error_code&>'
/usr/include/g++/system_error:146:10: note: candidate: 'constexpr
std::error_code& std::error_code::operator=(const std::error_code&)'
146 | struct error_code
| ^~~~~~~~~~
/usr/include/g++/system_error:146:10: note: no known conversion for argument
1 from 'boost::system::error_code' to 'const std::error_code&'
/usr/include/g++/system_error:146:10: note: candidate: 'constexpr
std::error_code& std::error_code::operator=(std::error_code&&)'
/usr/include/g++/system_error:146:10: note: no known conversion for argument
1 from 'boost::system::error_code' to 'std::error_code&&'
gmake[2]: *** [libs/core/logging/CMakeFiles/hpx_logging.dir/build.make:95:
libs/core/logging/CMakeFiles/hpx_logging.dir/src/logging.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:25324:
libs/core/logging/CMakeFiles/hpx_logging.dir/all] Error 2
g++ (nb1 20200907) 9.3.0
It looked as though there was a commit where the intention was to just
use std::error_code, so I'm not sure how the boost version leaked in...
Cheers,
Patrick
_______________________________________________
hpx-users mailing list
[email protected]
https://mail.cct.lsu.edu/mailman/listinfo/hpx-users