]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Since C++ typeinfo objects are currently not guaranteed to be merged at
authordim <dim@FreeBSD.org>
Wed, 16 Oct 2013 17:00:21 +0000 (17:00 +0000)
committerdim <dim@FreeBSD.org>
Wed, 16 Oct 2013 17:00:21 +0000 (17:00 +0000)
commitfd65ae458671539fdc2244c97a0c6b89a84afe94
tree9f95e296fa1dfd07f102ce3dd75fa9949c081a09
parent36f75b57a31f008bd67f1860f9ba59d2c93a0418
Since C++ typeinfo objects are currently not guaranteed to be merged at
runtime by the dynamic linker, check for their equality in libcxxrt by
not only comparing the typeinfo's name pointers, but also comparing the
full names, if necessary.  (This is similar to what GNU libstdc++ does
in its default configuration.)  The 'deep' check can be turned off again
by defining LIBCXXRT_MERGED_TYPEINFO, and recompiling libcxxrt.

Reviewed by: theraven
MFC after: 3 days
contrib/libcxxrt/typeinfo.cc