
2013/11/14 Steven Watanabe
AMDG
On 11/12/2013 11:34 AM, Niall Douglas wrote:
Boost community feedback is requested for the formal peer review of the TypeIndex library by Antony Polukhin. Feedback requested includes:
1. Should this library be accepted into Boost?
No. This library should not be accepted into Boost in its current form.
type_info.hpp:139: return static_cast
(typeid(type)); This is undefined behavior, and there is no way to make it correct.
This is a necessary evil and it is harmless: * all the methods of std::type_info (except destructor) are non virtual, so for example calls to name() will call boost::type_info::name() * it is *undefined* which destructor (std::type_info or boost::type_info) will be called *but*: * boost::type_info contains no members, it's size must be equal to the size of std::type_info, so no harm if boost::type_info destructor won't be called * destructor of std::type_info will be called anyway I can add assert to tests to ensure that sizeof(std::type_info) == sizeof(boost::type_info). -- Best regards, Antony Polukhin