Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4530: errors with is_convertible on msvc10
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-08-12 11:11:13
#4530: errors with is_convertible on msvc10
--------------------------------------+-------------------------------------
Reporter: cschmidt | Owner: johnmaddock
Type: Bugs | Status: assigned
Milestone: Boost 1.44.0 | Component: type_traits
Version: Boost Development Trunk | Severity: Problem
Resolution: | Keywords:
--------------------------------------+-------------------------------------
Changes (by johnmaddock):
* status: new => assigned
Comment:
Hmmm... I think this is a compiler bug, in trying to work out if test<A>
is convertible to A the compiler is for some reason trying to instantiate
test<A>::test<A>(test<A>) which causes a cyclic dependency in
is_convertible. GCC handles the same code just fine, and switching to
std::tr1::is_convertible at the top level breaks the cyclic dependency.
I think I can fix this long term by switching over to using the _
_is_convertible compiler intrinsic - but this also means switching
is_convertible over to C++0x behaviour from TR1 behaviour which will be a
breaking change.... and I'm not sure C++0x behaviour can even be
implemented in the language yet for compilers that don't have the
intrinsic!
Will investigate some more.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4530#comment:1> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:04 UTC