libstdc++ ABI break
Benjamin Kosnik
bkoz@redhat.com
Fri Oct 5 22:19:00 GMT 2007
> At a guess, you weren't intending to change the ABI there?
No, I did not. Gcc-4.2.0 is ok, so it looks like (as of right now)
gcc-4.2.1 is the only breakage.
UGH.
Mark, we should probably try to fix this for 4.2.2.
The obvious patch to revert this would be:
libsupc++/typeinfo
=================================================================== ---
libsupc++/typeinfo (revision 129018) +++ libsupc++/typeinfo (working
copy) @@ -128,6 +128,12 @@
bool operator!=(const type_info& __arg) const
{ return !operator==(__arg); }
+ // Return true if this is a pointer type of some kind
+ virtual bool __is_pointer_p() const;
+
+ // Return true if this is a function type
+ virtual bool __is_function_p() const;
+
// Try and catch a thrown type. Store an adjusted pointer to the
// caught type in THR_OBJ. If THR_TYPE is not a pointer type, then
// THR_OBJ points to the thrown object. If THR_TYPE is a pointer
@@ -140,13 +146,6 @@
// Internally used during catch matching
virtual bool __do_upcast(const __cxxabiv1::__class_type_info
*__target, void **__obj_ptr) const;
-
- // Return true if this is a pointer type of some kind
- virtual bool __is_pointer_p() const;
-
- // Return true if this is a function type
- virtual bool __is_function_p() const;
-
protected:
const char *__name;
I guess, at this point, if you verify this then I need to issue an
official "oops" in the release notes about this and patch this in
mainline and gcc-4_2-branch, which should be the only thing impacted.
:(
Sorry.
-benjamin
More information about the Libstdc++
mailing list