This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFC: change in std::type_info's equality operator


> I sent out a message yesterday suggesting a change in 
> std::type_info::operator==.  I didn't get a response, possibly because 
> my suggestion was buried in a message that largely talked about other 
> things.  (I began with a detailed discussion leading up to why the 
> change would be useful for certain purposes.)  So let's try again, and 
> this time I'll begin at the beginning.

Hi Matt,

(FYI, re-pinging with simplified description is always welcome but
note that some of us only read the list every couple of days. ;-)

I agree that your change affects performance only (when ODR is
considered) and is thus forward compatible for
std::type_info::operator==.  Platforms where (1) was used should never
false with (2).  [BTW, I can think of corner cases, which violate the
letter of ODR IMHO, involving dlopen'd shared libraries that break
with your change on ports which otherwise used (1).  I have no idea if
they are worth supporting.]

However, please note that std::type_info::before also changes
implementation.  Not really an ABI change but full recompile of all
code linked against <typeinfo> would be required...

I'm not sure this answer is helpful but it is one extra dragon to
consider before we make any change.

BTW, knowing his exactness on technical detail, I'm sure extensive
mailing list traffic exists from '01 (~Feb 4, to be exact) on why Mark
optimized case (1).

Regards,
Loren


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]