
hello all, I get a compilation error with Boost.Operators and boost.Variant on vs2010: struct KFoo : boost::totally_ordered<KFoo> { }; bool operator<(const KFoo&, const KFoo&); bool operator==(const KFoo&, const KFoo&); void Foo() { boost::variant<KFoo> var; var.swap(var); } 1>C:\work sdk\boost_1_57_0\boost/variant/detail/move.hpp(60): error C2668: 'boost::swap' : ambiguous call to overloaded function 1> C:\work sdk\boost_1_57_0\boost/core/swap.hpp(54): could be 'void boost::swap<T,T>(T1 &,T2 &)' [found using argument-dependent lookup] 1> with 1> [ 1> T=T0, 1> T1=T0, 1> T2=T0 1> ] 1> C:\work sdk\boost_1_57_0\boost/variant/detail/move.hpp(44): or 'void boost::detail::variant::move_swap_fallback::swap<T,T>(T1 &,T2 &)' anyone?
participants (1)
-
gast128