nodefault.patch   [plain text]


Doing diffs in libstdc++-v3:
--- ./libstdc++-v3/config/os/bsd/darwin/os_defines.h.~1~	2008-12-13 12:42:29.000000000 -0800
+++ ./libstdc++-v3/config/os/bsd/darwin/os_defines.h	2008-12-13 12:42:50.000000000 -0800
@@ -44,6 +44,10 @@
 // -flat_namespace to work around the way that it doesn't.
 #define _GLIBCXX_WEAK_DEFINITION __attribute__ ((weak))
 
+#ifndef _GLIBCXX_VISIBILITY_DEFAULT
+#define _GLIBCXX_VISIBILITY_DEFAULT /* _GLIBCXX_VISIBILITY(default) */
+#endif
+
 /* APPLE LOCAL begin version */
 
 #ifndef __GNUC_LIBSTD__
--- ./libstdc++-v3/include/bits/c++config.~1~	2008-12-13 12:45:45.000000000 -0800
+++ ./libstdc++-v3/include/bits/c++config	2008-12-13 12:16:56.000000000 -0800
@@ -62,21 +62,25 @@
 
 #define _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION 
 
+#ifndef _GLIBCXX_VISIBILITY_DEFAULT
+#define _GLIBCXX_VISIBILITY_DEFAULT _GLIBCXX_VISIBILITY(default)
+#endif
+
 // Macros for namespace scope.
 // _GLIBCXX_BEGIN_NAMESPACE
 // _GLIBCXX_END_NAMESPACE
 // _GLIBCXX_BEGIN_NESTED_NAMESPACE
 // _GLIBCXX_END_NESTED_NAMESPACE
 #if _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION
-# define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)  namespace X { namespace Y _GLIBCXX_VISIBILITY(default) {
+# define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y)  namespace X { namespace Y _GLIBCXX_VISIBILITY_DEFAULT {
 # define _GLIBCXX_END_NESTED_NAMESPACE } }
 # define _GLIBCXX_BEGIN_NAMESPACE(X) _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, _6)
 # define _GLIBCXX_END_NAMESPACE _GLIBCXX_END_NESTED_NAMESPACE
 #else
-# define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY(default) { 
+# define _GLIBCXX_BEGIN_NAMESPACE(X) namespace X _GLIBCXX_VISIBILITY_DEFAULT { 
 # define _GLIBCXX_END_NAMESPACE } 
 # if _GLIBCXX_NAMESPACE_ASSOCIATION_DEBUG
-#  define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y) namespace X { namespace Y _GLIBCXX_VISIBILITY(default) {
+#  define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y) namespace X { namespace Y _GLIBCXX_VISIBILITY_DEFAULT {
 #  define _GLIBCXX_END_NESTED_NAMESPACE  } }
 # else
 #  define _GLIBCXX_BEGIN_NESTED_NAMESPACE(X, Y) _GLIBCXX_BEGIN_NAMESPACE(X)
--------------

Doing diffs in libstdc++-v3:
--- libstdc++-v3/include/std/std_stdexcept.h.~1~	2006-12-07 01:33:51.000000000 -0800
+++ libstdc++-v3/include/std/std_stdexcept.h	2009-01-12 16:48:31.000000000 -0800
@@ -43,6 +43,9 @@
 #include <exception>
 #include <string>
 
+/* APPLE LOCAL 5892085 */
+#pragma GCC visibility push(default)
+
 _GLIBCXX_BEGIN_NAMESPACE(std)
 
   /** Logic errors represent problems in the internal logic of a program;
@@ -145,4 +148,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
 _GLIBCXX_END_NAMESPACE
 
+/* APPLE LOCAL 5892085 */
+#pragma GCC visibility pop
+
 #endif /* _GLIBCXX_STDEXCEPT */
--------------