1>------ Build started: Project: ConsoleApplicationvs2017, Configuration: Debug Win32 ------ 1>ConsoleApplicationvs2017.cpp 1>d:\code\legion third party\include\boost\thread\detail\move.hpp(52): error C2528: '->': pointer to reference is illegal 1>d:\code\legion third party\include\boost\type_traits\is_convertible.hpp(482): note: see reference to class template instantiation 'boost::detail::thread_move_t' being compiled 1> with 1> [ 1> T=T0 & 1> ] 1>d:\code\legion third party\include\boost\core\enable_if.hpp(41): note: see reference to class template instantiation 'boost::is_convertible&>>' being compiled 1> with 1> [ 1> T=T0 1> ] 1>d:\code\legion third party\include\boost\variant\variant.hpp(1051): note: see reference to class template instantiation 'boost::enable_if&>>,boost::detail::thread_move_t&>>' being compiled 1> with 1> [ 1> T=T0 1> ] 1>d:\code\legion third party\include\boost\variant\detail\visitation_impl.hpp(114): note: see reference to function template instantiation 'bool boost::detail::variant::invoke_visitor::internal_visit(boost::shared_ptr&,int)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::apply_visitor_binary_unwrap, 1> T=T0 1> ] 1>d:\code\legion third party\include\boost\variant\detail\visitation_impl.hpp(112): note: see reference to function template instantiation 'bool boost::detail::variant::invoke_visitor::internal_visit(boost::shared_ptr&,int)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::apply_visitor_binary_unwrap, 1> T=T0 1> ] 1>d:\code\legion third party\include\boost\variant\detail\visitation_impl.hpp(157): note: see reference to function template instantiation 'bool boost::detail::variant::visitation_impl_invoke_impl(int,Visitor &,VoidPtrCV,T *,boost::mpl::true_)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::invoke_visitor,true>, 1> VoidPtrCV=void *, 1> T=T0 1> ] 1>d:\code\legion third party\include\boost\variant\detail\visitation_impl.hpp(238): note: see reference to function template instantiation 'bool boost::detail::variant::visitation_impl_invoke(int,Visitor &,VoidPtrCV,T *,NoBackupFlag,int)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::invoke_visitor,true>, 1> VoidPtrCV=void *, 1> NoBackupFlag=boost::variant::has_fallback_type_, 1> T=T0 1> ] 1>d:\code\legion third party\include\boost\variant\variant.hpp(2457): note: see reference to function template instantiation 'bool boost::detail::variant::visitation_impl::has_fallback_type_>(const int,const int,Visitor &,VoidPtrCV,boost::mpl::false_,NoBackupFlag,Which *,step0 *)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::invoke_visitor,true>, 1> VoidPtrCV=void *, 1> NoBackupFlag=boost::variant::has_fallback_type_, 1> Which=first_which, 1> step0=first_step 1> ] 1>d:\code\legion third party\include\boost\variant\variant.hpp(2468): note: see reference to function template instantiation 'bool boost::variant::internal_apply_visitor_impl(int,int,Visitor &,VoidPtrCV)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::invoke_visitor,true>, 1> VoidPtrCV=void * 1> ] 1>d:\code\legion third party\include\boost\variant\variant.hpp(2466): note: see reference to function template instantiation 'bool boost::variant::internal_apply_visitor_impl(int,int,Visitor &,VoidPtrCV)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::invoke_visitor,true>, 1> VoidPtrCV=void * 1> ] 1>d:\code\legion third party\include\boost\variant\variant.hpp(2493): note: see reference to function template instantiation 'bool boost::variant::internal_apply_visitor>(boost::detail::variant::invoke_visitor &)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::apply_visitor_binary_unwrap 1> ] 1>d:\code\legion third party\include\boost\variant\variant.hpp(2493): note: see reference to function template instantiation 'bool boost::variant::internal_apply_visitor>(boost::detail::variant::invoke_visitor &)' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::apply_visitor_binary_unwrap 1> ] 1>d:\code\legion third party\include\boost\variant\detail\apply_visitor_unary.hpp(73): note: see reference to function template instantiation 'bool boost::variant::apply_visitor(Visitor &) &&' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::apply_visitor_binary_unwrap 1> ] 1>d:\code\legion third party\include\boost\variant\detail\apply_visitor_unary.hpp(73): note: see reference to function template instantiation 'bool boost::variant::apply_visitor(Visitor &) &&' being compiled 1> with 1> [ 1> Visitor=boost::detail::variant::apply_visitor_binary_unwrap 1> ] 1>d:\code\legion third party\include\boost\variant\detail\apply_visitor_binary.hpp(251): note: see reference to function template instantiation 'bool boost::apply_visitor,T>(boost::detail::variant::apply_visitor_binary_unwrap &,Visitable &&)' being compiled 1> with 1> [ 1> Visitor=ab_are_equals, 1> Visitable2=ABVar, 1> T=ABVar, 1> Visitable=ABVar 1> ] 1>d:\tmp\vs2017\consoleapplicationvs2017\consoleapplicationvs2017\consoleapplicationvs2017.cpp(72): note: see reference to function template instantiation 'bool boost::apply_visitor(const Visitor &,Visitable1 &&,Visitable2 &&)' being compiled 1> with 1> [ 1> Visitor=ab_are_equals, 1> Visitable1=ABVar, 1> Visitable2=ABVar 1> ] 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(54): note: see reference to class template instantiation 'boost::arg<9>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(53): note: see reference to class template instantiation 'boost::arg<8>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(52): note: see reference to class template instantiation 'boost::arg<7>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(51): note: see reference to class template instantiation 'boost::arg<6>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(50): note: see reference to class template instantiation 'boost::arg<5>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(49): note: see reference to class template instantiation 'boost::arg<4>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(48): note: see reference to class template instantiation 'boost::arg<3>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(47): note: see reference to class template instantiation 'boost::arg<2>' being compiled 1>d:\code\legion third party\include\boost\bind\placeholders.hpp(46): note: see reference to class template instantiation 'boost::arg<1>' being compiled 1>Done building project "ConsoleApplicationvs2017.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========