Skip to content

Cannot compile on RHEL 8.6 + boost 1.66 #54

Description

@ElCoyote27

Hi,
Trying to build executor from source on RHEL 8.6 + libboost 1.66, I get a C++ error:

[raistlin@daltigoth ~/rpmbuild/BUILD/executor/build]$ gmake
[  1%] Built target lmdb
[  6%] Built target resources
[  9%] Built target syngen
[ 14%] Built target syn68k
[ 15%] Built target powergenerator
[ 16%] Built target PowerCore
[ 16%] Built target CountInstructions
[ 16%] Built target testbed
[ 17%] Built target test-powerpc
[ 19%] Built target mon
[ 19%] Built target cxmon
[ 19%] Built target mksspairtable
[ 20%] Built target mkseedtables
[ 21%] Built target mkultable
[ 21%] Built target map_to_c
[ 89%] Built target romlib
[ 89%] Built target front-end-headless
[ 90%] Built target front-end-x
Consolidate compiler generated dependencies of target executor-x
[ 90%] Building CXX object src/CMakeFiles/executor-x.dir/main.cpp.o
In file included from /usr/include/boost/config.hpp:61,
                 from /usr/include/boost/filesystem/config.hpp:28,
                 from /usr/include/boost/filesystem.hpp:15,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp: In instantiation of ‘const bool boost::detail::has_right_shift_impl::operator_exists<std::basic_istream<wchar_t>, MemorySize>::value’:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:179:4:   required from ‘const bool boost::detail::has_right_shift_impl::trait_impl1<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care, false>::value’
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:208:4:   required from ‘const bool boost::detail::has_right_shift_impl::trait_impl<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>::value’
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:216:8:   required from ‘struct boost::has_right_shift<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:243:13:   required from ‘struct boost::detail::deduce_target_char_impl<boost::detail::deduce_character_type_later<MemorySize> >’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:270:89:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:468:15:   required from ‘struct boost::detail::lexical_converter_impl<MemorySize, std::__cxx11::basic_string<char> >’
/usr/include/boost/lexical_cast/try_lexical_convert.hpp:196:44:   required from ‘bool boost::conversion::detail::try_lexical_convert(const Source&, Target&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char> ’
/usr/include/boost/lexical_cast.hpp:41:60:   required from ‘Target boost::lexical_cast(const Source&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char>]’
/usr/include/boost/program_options/detail/value_semantic.hpp:92:36:   required from ‘void boost::program_options::validate(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&, T*, long int) [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:184:21:   required from ‘void boost::program_options::typed_value<T, charT>::xparse(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&) const [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:174:5:   required from here
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:158:70: error: ambiguous overload for ‘operator>>’ (operand types are ‘std::basic_istream<wchar_t>’ and ‘MemorySize’)
    BOOST_STATIC_CONSTANT(bool, value = (sizeof(s_check(((make<Lhs>() BOOST_TT_TRAIT_OP make<Rhs>()),make<has_operator>())))==sizeof(::boost::type_traits::yes_type)));
                                                                     ^
In file included from /usr/include/c++/8/iterator:65,
                 from /usr/include/boost/filesystem/path_traits.hpp:28,
                 from /usr/include/boost/filesystem/path.hpp:25,
                 from /usr/include/boost/filesystem.hpp:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/c++/8/istream:120:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__istream_type& (*)(std::basic_istream<_CharT, _Traits>::__istream_type&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]’
       operator>>(__istream_type& (*__pf)(__istream_type&))
       ^~~~~~~~
/usr/include/c++/8/istream:124:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__ios_type& (*)(std::basic_istream<_CharT, _Traits>::__ios_type&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>; std::basic_istream<_CharT, _Traits>::__ios_type = std::basic_ios<wchar_t>]’
       operator>>(__ios_type& (*__pf)(__ios_type&))
       ^~~~~~~~
/usr/include/c++/8/istream:131:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]’
       operator>>(ios_base& (*__pf)(ios_base&))
       ^~~~~~~~
/usr/include/c++/8/istream:259:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__streambuf_type*) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__streambuf_type = std::basic_streambuf<wchar_t>]’
       operator>>(__streambuf_type* __sb);
       ^~~~~~~~
In file included from /usr/include/boost/type_traits/has_right_shift.hpp:43,
                 from /usr/include/boost/lexical_cast/detail/converter_lexical.hpp:39,
                 from /usr/include/boost/lexical_cast/try_lexical_convert.hpp:42,
                 from /usr/include/boost/lexical_cast.hpp:32,
                 from /usr/include/boost/program_options/value_semantic.hpp:14,
                 from /usr/include/boost/program_options/options_description.hpp:13,
                 from /usr/include/boost/program_options.hpp:15,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./commandline/program_options_extended.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:58:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:70:13: note: candidate: ‘boost::detail::has_right_shift_impl::no_operator boost::detail::has_right_shift_impl::operator>>(const boost::detail::has_right_shift_impl::any&, const boost::detail::has_right_shift_impl::any&)’
 no_operator operator BOOST_TT_TRAIT_OP (const any&, const any&);
             ^~~~~~~~
In file included from /usr/include/boost/config.hpp:61,
                 from /usr/include/boost/filesystem/config.hpp:28,
                 from /usr/include/boost/filesystem.hpp:15,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp: In instantiation of ‘const bool boost::detail::has_right_shift_impl::operator_returns_void<std::basic_istream<wchar_t>, MemorySize>::value’:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:179:4:   required from ‘const bool boost::detail::has_right_shift_impl::trait_impl1<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care, false>::value’
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:208:4:   required from ‘const bool boost::detail::has_right_shift_impl::trait_impl<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>::value’
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:216:8:   required from ‘struct boost::has_right_shift<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:243:13:   required from ‘struct boost::detail::deduce_target_char_impl<boost::detail::deduce_character_type_later<MemorySize> >’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:270:89:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:468:15:   required from ‘struct boost::detail::lexical_converter_impl<MemorySize, std::__cxx11::basic_string<char> >’
/usr/include/boost/lexical_cast/try_lexical_convert.hpp:196:44:   required from ‘bool boost::conversion::detail::try_lexical_convert(const Source&, Target&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char> ’
/usr/include/boost/lexical_cast.hpp:41:60:   required from ‘Target boost::lexical_cast(const Source&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char>]’
/usr/include/boost/program_options/detail/value_semantic.hpp:92:36:   required from ‘void boost::program_options::validate(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&, T*, long int) [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:184:21:   required from ‘void boost::program_options::typed_value<T, charT>::xparse(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&) const [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:174:5:   required from here
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:95:114: error: ambiguous overload for ‘operator>>’ (operand types are ‘std::basic_istream<wchar_t>’ and ‘MemorySize’)
    BOOST_STATIC_CONSTANT(bool, value = (sizeof(::boost::type_traits::yes_type)==sizeof(returns_void((make<Lhs>() BOOST_TT_TRAIT_OP make<Rhs>(),returns_void_t())))));
                                                                                                                  ^
In file included from /usr/include/c++/8/iterator:65,
                 from /usr/include/boost/filesystem/path_traits.hpp:28,
                 from /usr/include/boost/filesystem/path.hpp:25,
                 from /usr/include/boost/filesystem.hpp:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/c++/8/istream:120:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__istream_type& (*)(std::basic_istream<_CharT, _Traits>::__istream_type&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]’
       operator>>(__istream_type& (*__pf)(__istream_type&))
       ^~~~~~~~
/usr/include/c++/8/istream:124:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__ios_type& (*)(std::basic_istream<_CharT, _Traits>::__ios_type&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>; std::basic_istream<_CharT, _Traits>::__ios_type = std::basic_ios<wchar_t>]’
       operator>>(__ios_type& (*__pf)(__ios_type&))
       ^~~~~~~~
/usr/include/c++/8/istream:131:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]’
       operator>>(ios_base& (*__pf)(ios_base&))
       ^~~~~~~~
/usr/include/c++/8/istream:259:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__streambuf_type*) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__streambuf_type = std::basic_streambuf<wchar_t>]’
       operator>>(__streambuf_type* __sb);
       ^~~~~~~~
In file included from /usr/include/boost/type_traits/has_right_shift.hpp:43,
                 from /usr/include/boost/lexical_cast/detail/converter_lexical.hpp:39,
                 from /usr/include/boost/lexical_cast/try_lexical_convert.hpp:42,
                 from /usr/include/boost/lexical_cast.hpp:32,
                 from /usr/include/boost/program_options/value_semantic.hpp:14,
                 from /usr/include/boost/program_options/options_description.hpp:13,
                 from /usr/include/boost/program_options.hpp:15,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./commandline/program_options_extended.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:58:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:70:13: note: candidate: ‘boost::detail::has_right_shift_impl::no_operator boost::detail::has_right_shift_impl::operator>>(const boost::detail::has_right_shift_impl::any&, const boost::detail::has_right_shift_impl::any&)’
 no_operator operator BOOST_TT_TRAIT_OP (const any&, const any&);
             ^~~~~~~~
In file included from /usr/include/boost/iterator/iterator_categories.hpp:21,
                 from /usr/include/boost/iterator/iterator_facade.hpp:13,
                 from /usr/include/boost/filesystem/path.hpp:28,
                 from /usr/include/boost/filesystem.hpp:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp: In instantiation of ‘struct boost::detail::deduce_target_char_impl<boost::detail::deduce_character_type_later<MemorySize> >’:
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:270:89:   required from ‘struct boost::detail::deduce_target_char<MemorySize>’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:407:92:   required from ‘struct boost::detail::lexical_cast_stream_traits<std::__cxx11::basic_string<char>, MemorySize>’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:468:15:   required from ‘struct boost::detail::lexical_converter_impl<MemorySize, std::__cxx11::basic_string<char> >’
/usr/include/boost/lexical_cast/try_lexical_convert.hpp:196:44:   required from ‘bool boost::conversion::detail::try_lexical_convert(const Source&, Target&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char> ’
/usr/include/boost/lexical_cast.hpp:41:60:   required from ‘Target boost::lexical_cast(const Source&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char>]’
/usr/include/boost/program_options/detail/value_semantic.hpp:92:36:   required from ‘void boost::program_options::validate(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&, T*, long int) [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:184:21:   required from ‘void boost::program_options::typed_value<T, charT>::xparse(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&) const [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:174:5:   required from here
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:243:13: error: ‘value’ is not a member of ‘boost::has_right_shift<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>’
             BOOST_STATIC_ASSERT_MSG((result_t::value || boost::has_right_shift<std::basic_istream<wchar_t>, T >::value),
             ^~~~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [src/CMakeFiles/executor-x.dir/build.make:76: src/CMakeFiles/executor-x.dir/main.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:762: src/CMakeFiles/executor-x.dir/all] Error 2
gmake: *** [Makefile:166: all] Error 2
[raistlin@daltigoth ~/rpmbuild/BUILD/executor/build]$ gmake
  06/26/2022 21:43:13 .: 7.81 6.38 5.27 :.  0 raistlin@daltigoth:~  1 coyote@daltigoth:~  2 root@daltigoth:~  3 raistlin@daltigoth:~  4 raistlin@daltigoth:~  5 root@daltigoth:~/Bui  6 root@daltigoth:~  7 raistlin@daltigoth:~  
raits>::__ios_type&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>; std::basic_istream<_CharT, _Traits>::__ios_type = std::basic_ios<wchar_t>]’ 
       operator>>(__ios_type& (*__pf)(__ios_type&))
       ^~~~~~~~
/usr/include/c++/8/istream:131:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]’
       operator>>(ios_base& (*__pf)(ios_base&))
       ^~~~~~~~
/usr/include/c++/8/istream:259:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__streambuf_type*) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__streambuf_type = std::basic_streambuf<wchar_t>]’
       operator>>(__streambuf_type* __sb);
       ^~~~~~~~
In file included from /usr/include/boost/type_traits/has_right_shift.hpp:43,
                 from /usr/include/boost/lexical_cast/detail/converter_lexical.hpp:39,
                 from /usr/include/boost/lexical_cast/try_lexical_convert.hpp:42,
                 from /usr/include/boost/lexical_cast.hpp:32,
                 from /usr/include/boost/program_options/value_semantic.hpp:14,
                 from /usr/include/boost/program_options/options_description.hpp:13,
                 from /usr/include/boost/program_options.hpp:15,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./commandline/program_options_extended.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:58:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:70:13: note: candidate: ‘boost::detail::has_right_shift_impl::no_operator boost::detail::has_right_shift_impl::operator>>(const boost::detail::has_right_shift_impl::any&, const boost::detail::has_right_shift_impl::any&)’
 no_operator operator BOOST_TT_TRAIT_OP (const any&, const any&);
             ^~~~~~~~
In file included from /usr/include/boost/config.hpp:61,
                 from /usr/include/boost/filesystem/config.hpp:28,
                 from /usr/include/boost/filesystem.hpp:15,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp: In instantiation of ‘const bool boost::detail::has_right_shift_impl::operator_returns_void<std::basic_istream<wchar_t>, MemorySize>::value’:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:179:4:   required from ‘const bool boost::detail::has_right_shift_impl::trait_impl1<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care, false>::value’
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:208:4:   required from ‘const bool boost::detail::has_right_shift_impl::trait_impl<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>::value’
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:216:8:   required from ‘struct boost::has_right_shift<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:243:13:   required from ‘struct boost::detail::deduce_target_char_impl<boost::detail::deduce_character_type_later<MemorySize> >’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:270:89:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:468:15:   required from ‘struct boost::detail::lexical_converter_impl<MemorySize, std::__cxx11::basic_string<char> >’
/usr/include/boost/lexical_cast/try_lexical_convert.hpp:196:44:   required from ‘bool boost::conversion::detail::try_lexical_convert(const Source&, Target&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char> ’
/usr/include/boost/lexical_cast.hpp:41:60:   required from ‘Target boost::lexical_cast(const Source&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char>]’
/usr/include/boost/program_options/detail/value_semantic.hpp:92:36:   required from ‘void boost::program_options::validate(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&, T*, long int) [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:184:21:   required from ‘void boost::program_options::typed_value<T, charT>::xparse(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&) const [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:174:5:   required from here
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:95:114: error: ambiguous overload for ‘operator>>’ (operand types are ‘std::basic_istream<wchar_t>’ and ‘MemorySize’)
    BOOST_STATIC_CONSTANT(bool, value = (sizeof(::boost::type_traits::yes_type)==sizeof(returns_void((make<Lhs>() BOOST_TT_TRAIT_OP make<Rhs>(),returns_void_t())))));
                                                                                                                  ^
In file included from /usr/include/c++/8/iterator:65,
                 from /usr/include/boost/filesystem/path_traits.hpp:28,
                 from /usr/include/boost/filesystem/path.hpp:25,
                 from /usr/include/boost/filesystem.hpp:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/c++/8/istream:120:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__istream_type& (*)(std::basic_istream<_CharT, _Traits>::__istream_type&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]’
       operator>>(__istream_type& (*__pf)(__istream_type&))
       ^~~~~~~~
/usr/include/c++/8/istream:124:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__ios_type& (*)(std::basic_istream<_CharT, _Traits>::__ios_type&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>; std::basic_istream<_CharT, _Traits>::__ios_type = std::basic_ios<wchar_t>]’ 
       operator>>(__ios_type& (*__pf)(__ios_type&))
       ^~~~~~~~
/usr/include/c++/8/istream:131:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]’
       operator>>(ios_base& (*__pf)(ios_base&))
       ^~~~~~~~
/usr/include/c++/8/istream:259:7: note: candidate: ‘std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(std::basic_istream<_CharT, _Traits>::__streambuf_type*) [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__streambuf_type = std::basic_streambuf<wchar_t>]’
       operator>>(__streambuf_type* __sb);
       ^~~~~~~~
In file included from /usr/include/boost/type_traits/has_right_shift.hpp:43,
                 from /usr/include/boost/lexical_cast/detail/converter_lexical.hpp:39,
                 from /usr/include/boost/lexical_cast/try_lexical_convert.hpp:42,
                 from /usr/include/boost/lexical_cast.hpp:32,
                 from /usr/include/boost/program_options/value_semantic.hpp:14,
                 from /usr/include/boost/program_options/options_description.hpp:13,
                 from /usr/include/boost/program_options.hpp:15,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./commandline/program_options_extended.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:58:
/usr/include/boost/type_traits/detail/has_binary_operator.hpp:70:13: note: candidate: ‘boost::detail::has_right_shift_impl::no_operator boost::detail::has_right_shift_impl::operator>>(const boost::detail::has_right_shift_impl::any&, const boost::detail::has_right_shift_impl::any&)’
 no_operator operator BOOST_TT_TRAIT_OP (const any&, const any&);
             ^~~~~~~~
In file included from /usr/include/boost/iterator/iterator_categories.hpp:21,
                 from /usr/include/boost/iterator/iterator_facade.hpp:13,
                 from /usr/include/boost/filesystem/path.hpp:28,
                 from /usr/include/boost/filesystem.hpp:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/include/rsys/filesystem.h:3,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/./file/file.h:16,
                 from /export/home/raistlin/rpmbuild/BUILD/executor/src/main.cpp:37:
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp: In instantiation of ‘struct boost::detail::deduce_target_char_impl<boost::detail::deduce_character_type_later<MemorySize> >’:
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:270:89:   required from ‘struct boost::detail::deduce_target_char<MemorySize>’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:407:92:   required from ‘struct boost::detail::lexical_cast_stream_traits<std::__cxx11::basic_string<char>, MemorySize>’
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:468:15:   required from ‘struct boost::detail::lexical_converter_impl<MemorySize, std::__cxx11::basic_string<char> >’
/usr/include/boost/lexical_cast/try_lexical_convert.hpp:196:44:   required from ‘bool boost::conversion::detail::try_lexical_convert(const Source&, Target&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char> ’
/usr/include/boost/lexical_cast.hpp:41:60:   required from ‘Target boost::lexical_cast(const Source&) [with Target = MemorySize; Source = std::__cxx11::basic_string<char>]’
/usr/include/boost/program_options/detail/value_semantic.hpp:92:36:   required from ‘void boost::program_options::validate(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&, T*, long int) [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:184:21:   required from ‘void boost::program_options::typed_value<T, charT>::xparse(boost::any&, const std::vector<std::__cxx11::basic_string<charT> >&) const [with T = MemorySize; charT = char]’
/usr/include/boost/program_options/detail/value_semantic.hpp:174:5:   required from here
/usr/include/boost/lexical_cast/detail/converter_lexical.hpp:243:13: error: ‘value’ is not a member of ‘boost::has_right_shift<std::basic_istream<wchar_t>, MemorySize, boost::detail::has_right_shift_impl::dont_care>’
             BOOST_STATIC_ASSERT_MSG((result_t::value || boost::has_right_shift<std::basic_istream<wchar_t>, T >::value),
             ^~~~~~~~~~~~~~~~~~~~~~~
gmake[2]: *** [src/CMakeFiles/executor-x.dir/build.make:76: src/CMakeFiles/executor-x.dir/main.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:762: src/CMakeFiles/executor-x.dir/all] Error 2
gmake: *** [Makefile:166: all] Error 2

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions