Boost logo

Boost :

Subject: Re: [boost] VC10 config - some regressions in several libraries
From: Beman Dawes (bdawes_at_[hidden])
Date: 2010-04-27 07:54:22


On Mon, Apr 26, 2010 at 12:05 PM, John Maddock <boost.regex_at_[hidden]> wrote:
>> It seems that my problem with move emulation in projects imported from
>> older MSVC to MSVC10 is that some rvalue references rules need language
>> extensions option activated. Otherwise we can't have movable-only types.
>
> It seems some explicit casts are required, for example in
> boost/interprocess/detail/move.hpp:
>
> template <class T> inline
> typename remove_reference<T>::type&& move(T&& t)
> {  return t;   }
>
> Should be either:
>
> template <class T> inline
> typename remove_reference<T>::type&& move(T&& t)
> {  return std::move(t);   }
>
> or
>
> template <class T> inline
> typename remove_reference<T>::type&& move(T&& t)
> {  return static_cast<typename remove_reference<T>::type&&>(t);   }
>
> Likewise for the "forward" function.
>
> However that still leaves errors deep within the Boost.Preprocessor code:
>
>...

Where does that leave us as far as 1.43.0 is concerned?

--Beman


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