diff options
author | Andrew Hsieh <andrewhsieh@google.com> | 2012-09-18 23:21:28 -0700 |
---|---|---|
committer | Andrew Hsieh <andrewhsieh@google.com> | 2012-09-19 00:39:24 -0700 |
commit | e7dea20321d2eb2ab24293953a9914031b8c532a (patch) | |
tree | 992322cee9f1b0b6cc5bdd09e5e7d27f41ab5132 /gcc-4.4.3/libstdc++-v3/libsupc++/tinfo2.cc | |
parent | b6f4708104b7ccb10e2b7e4f58d82f409418ad36 (diff) | |
download | toolchain_gcc-e7dea20321d2eb2ab24293953a9914031b8c532a.tar.gz toolchain_gcc-e7dea20321d2eb2ab24293953a9914031b8c532a.tar.bz2 toolchain_gcc-e7dea20321d2eb2ab24293953a9914031b8c532a.zip |
Fix GCC 4.4.3 GNU libstdc++ to NOT merge typeinfo names by default
Back port r149964, r153734, r153742 and r153768, with later revision
reverts previous one (some "partially", or nothing would have left :)
This issue is fixed in GCC 4.6 (NDK r8b+).
See the new gcc-4.4.3/libstdc++-v3/libsupc++/typeinfo for details.
Related issue/discussion:
http://code.google.com/p/android/issues/detail?id=22165
https://groups.google.com/forum/#!msg/android-ndk/FlnuAOIKHOo/kLEwaBso7KYJ%5B1-25%5D
Change-Id: I0ef9d5001c82f2eb5472a1c4fd60b07d33e0ab1f
Diffstat (limited to 'gcc-4.4.3/libstdc++-v3/libsupc++/tinfo2.cc')
-rw-r--r-- | gcc-4.4.3/libstdc++-v3/libsupc++/tinfo2.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc-4.4.3/libstdc++-v3/libsupc++/tinfo2.cc b/gcc-4.4.3/libstdc++-v3/libsupc++/tinfo2.cc index 4b01037f3..0182c6cc0 100644 --- a/gcc-4.4.3/libstdc++-v3/libsupc++/tinfo2.cc +++ b/gcc-4.4.3/libstdc++-v3/libsupc++/tinfo2.cc @@ -37,7 +37,8 @@ type_info::before (const type_info &arg) const #if __GXX_MERGED_TYPEINFO_NAMES return name () < arg.name (); #else - return __builtin_strcmp (name (), arg.name ()) < 0; + return (name ()[0] == '*') ? name () < arg.name () + : __builtin_strcmp (name (), arg.name ()) < 0; #endif } |