"Andrei Alexandrescu" <[EMAIL PROTECTED]> writes: > "David Abrahams" <[EMAIL PROTECTED]> wrote in message > news:[EMAIL PROTECTED] >> Once again, the case was: >> >> { >> aligned_storage<T>::type storage; >> >> new ((void*)&storage) T(x, y, z); // throws >> >> // ~aligned_storage<T>() destroys non-existent T >> } > > You mean "~aligned_storage<T>::type() destroys non-existent T"?
Actually, I meant this: { aligned_storage<T> storage; new ((void*)&storage.bytes) T(x, y, z); // throws // ~aligned_storage<T>() destroys non-existent T } Phillipe was proposing to give ~aligned_storage<T> responsibility for destroying the contained object, which doesn't work, no matter how you (mis)spell it ;-) -- Dave Abrahams Boost Consulting www.boost-consulting.com _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost