
"JOAQUIN LOPEZ MU?Z" <joaquin@tid.es> writes:
Hello,
In a post from yesterday (see http://tinyurl.com/hzk5w), Alexei Alexandrov found a rather serious problem with is_convertible in at least MSVC 7.1 and Intel 9.0, namely that is_convertible<From,To> fails to compile when
From is non-copyable, emitting an error message like this:
boost/boost/type_traits/is_convertible.hpp(254): error: class "XXX" has no suitable copy constructor BOOST_STATIC_CONSTANT(bool, value = ...
where XXX is the From argument. Needless to say, some fix for this issue would be most welcome. I'm sorry I cannot provide any more help than a mere report of the problem.
I don't think this is a solvable problem, unless there's something hiding in the implementation of is_base_and_derived that can be leveraged (see the comment in that header for more info -- I can't understand what's being said there due to the use of the identifier 'C' without any introduction). The basic problem is what's required in the implementation of is_convertible in order to work around VC7.1 bugs (Intel Windows emulates the same bugs). -- Dave Abrahams Boost Consulting www.boost-consulting.com