Douglas Gregor <[EMAIL PROTECTED]> writes:
> On Sunday 15 December 2002 11:39 am, David Abrahams wrote:
>> I'm confused. Either you misunderstood my suggestion or you're seeing
>> some deeper problem that I've missed.
>
> For reference_wrapper to be Assignable, it has to hold a pointer to the object
> it references (if it holds a reference, like reference_to_value does, it
> wouldn't be Assignable).
Ouch, right.
> The probably is getting that pointer type. If T is not a reference, it's just
> T*. If T is a reference, we need
> typename remove_reference<T>::type*
>
> ... and remove_reference doesn't work on all compilers. Maybe there's another
> way to get a pointer type T* from a reference type T&?
Not a chance.
However, what about the ``~Self(); new((void*)this)(other);'' idiom?
We could store a reference and use that to reseat it.
--
David Abrahams
[EMAIL PROTECTED] * http://www.boost-consulting.com
Boost support, enhancements, training, and commercial distribution
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost