Revert r256642, not only to reduce diffs against upstream libcxxrt, but

also because it is the wrong approach: comparing typeinfo names deeply
causes trouble if two loaded DSOs use independent types of the same
name.

In addition, this particular change was never merged to FreeBSD 10.x and
9.x, so let's get rid of it before it ends up in an 11.x release.

Discussed with:	theraven, joerg@netbsd
This commit is contained in:
dim 2015-01-31 23:08:29 +00:00
parent e626c4973b
commit addd2d04c7

View File

@ -35,23 +35,15 @@ type_info::~type_info() {}
bool type_info::operator==(const type_info &other) const
{
#ifdef LIBCXXRT_MERGED_TYPEINFO
return __type_name == other.__type_name;
#else
return __type_name == other.__type_name || strcmp(__type_name, other.__type_name) == 0;
#endif
}
bool type_info::operator!=(const type_info &other) const
{
return !operator==(other);
return __type_name != other.__type_name;
}
bool type_info::before(const type_info &other) const
{
#ifdef LIBCXXRT_MERGED_TYPEINFO
return __type_name < other.__type_name;
#else
return strcmp(__type_name, other.__type_name) < 0;
#endif
}
const char* type_info::name() const
{