Boost logo

Boost :

Subject: Re: [boost] [result_of, tr1] decltype and incomplete types
From: John Maddock (boost.regex_at_[hidden])
Date: 2010-04-12 04:50:28


> Note that to make this happen, you'll need to coordinate with John. The
> way Boost.TR1 works is like this:
>
> - If the platform implements <tr1/foo_header>, include it. Otherwise,
> - Include <boost/foo_header.hpp> and bring boost::foo into the std::tr1
> namespace with a using declaration.
>
> If boost::result_of sometimes uses decltype, the above won't work
> because then std::tr1::result_of will sometimes use decltype. It seems
> to me that <boost/utility/result_of.hpp> should expose a
> boost::tr1_result_of that can be used by <boost/tr1/result_of.hpp> to
> get the TR1 behavior regardless of whether decltype exists or not.

Nod, I've had to do something similar with some type_traits classes when
they changed from TR1 to C++1x.

Can someone who understands the issues please work out a patch?

Also note that providing an "archived" TR1 version of result_of won't help
other Boost code that relies on boost::result_of - some of which may also
get imported and/or used by the TR1 lib :-(

John.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk