From 1873d7691dca88915ff70753e2e40367711950e1 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Mon, 12 Oct 1998 20:08:54 +0000 Subject: [PATCH] * tinfo.cc (operator==): Always compare names. From-SVN: r23034 --- gcc/cp/ChangeLog | 4 ++++ gcc/cp/tinfo.cc | 14 ++------------ 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ed33ae2d4d2..9ce944fdaa8 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +1998-10-12 Jason Merrill + + * tinfo.cc (operator==): Always compare names. + 1998-10-12 Herman ten Brugge * decl.c (start_function): Fix cut-and-paste error. diff --git a/gcc/cp/tinfo.cc b/gcc/cp/tinfo.cc index 2096a512a23..6de805524e0 100644 --- a/gcc/cp/tinfo.cc +++ b/gcc/cp/tinfo.cc @@ -39,22 +39,12 @@ std::type_info:: ~type_info () { } -#ifndef __COMMON_UNRELIABLE +// We can't rely on common symbols being shared between shared objects. bool type_info:: operator== (const type_info& arg) const { - return &arg == this; + return (&arg == this) || (fast_compare (name (), arg.name ()) == 0); } -#else -// We can't rely on common symbols being shared between translation units -// under Windows. Sigh. - -bool type_info:: -operator== (const type_info& arg) const -{ - return fast_compare (name (), arg.name ()) == 0; -} -#endif extern "C" void __rtti_class (void *addr, const char *name, -- 2.30.2