abi-list.patch   [plain text]


Doing diffs in libstdc++-v3:
--- libstdc++-v3/src/list.cc.~1~	2005-12-18 16:56:05.000000000 -0800
+++ libstdc++-v3/src/list.cc	2009-03-23 15:29:54.000000000 -0700
@@ -139,3 +139,26 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GL
   }
 
 _GLIBCXX_END_NESTED_NAMESPACE
+
+/* APPLE LOCAL begin libstdc++ abi compatibility fix 6710541 */
+#if defined(__APPLE__) && defined(_GLIBCXX_DEBUG)
+#if defined(__x86_64__) || defined(__i386__) || defined(__ppc__)
+#if defined(__x86_64__) || defined(__i386__)
+#define JUMP "jmp "
+#elif defined(__ppc__)
+#define JUMP "b "
+#endif
+asm(".text\n"
+    ".globl __ZN10__gnu_norm15_List_node_base4hookEPS0_\n"
+    "__ZN10__gnu_norm15_List_node_base4hookEPS0_:" JUMP "__ZNSt15_List_node_base4hookEPS_\n"
+    ".globl __ZN10__gnu_norm15_List_node_base4swapERS0_S1_\n"
+    "__ZN10__gnu_norm15_List_node_base4swapERS0_S1_:" JUMP "__ZNSt15_List_node_base4swapERS_S0_\n"
+    ".globl __ZN10__gnu_norm15_List_node_base6unhookEv\n"
+    "__ZN10__gnu_norm15_List_node_base6unhookEv:" JUMP "__ZNSt15_List_node_base6unhookEv\n"
+    ".globl __ZN10__gnu_norm15_List_node_base7reverseEv\n"
+    "__ZN10__gnu_norm15_List_node_base7reverseEv:" JUMP "__ZNSt15_List_node_base7reverseEv\n"
+    ".globl __ZN10__gnu_norm15_List_node_base8transferEPS0_S1_\n"
+    "__ZN10__gnu_norm15_List_node_base8transferEPS0_S1_:" JUMP "__ZNSt15_List_node_base8transferEPS_S0_\n");
+#endif
+#endif
+/* APPLE LOCAL end libstdc++ abi compatibility fix 6710541 */
--------------