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]

[v3] traits duplicate removal


This merges various duplicate traits code scattered around the library
into ext/type_traits.h. In doing so, all duplicate effort has been
eliminated, and essential traits missing from std::tr1's <type_traits>
have been found.

If we find new and useful traits, they should go in <ext/type_traits.h>.

If people want to use type_traits in their own code, I suggest using 

<tr1/type_traits>

and 

<ext/type_traits.h>

Nothing else is appropriate for user code. 

This clears the way for the eventual removal of bits/cpp_type_traits.h,
but does not remove it. Everything in that file (maybe except for
__is_char) can now be replaced at some future date by std::tr1's
<type_traits>. (hopefully soon) 

Thanks to Paolo and Peter Doerfler, who had many great suggestions. 

Also found is annoying c++/21682. This makes our hack for
std::tr1::atan2 quite fragile.

-benjamin

tested x86/linux
performance tested x86/linux

Attachment: p.20060918-1.bz2
Description: BZip2 compressed data


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