Bug 936790 - (gcc 4.5) Build error: "We don't want these libstdc++ symbols to be used" when building with --enable-stdcxx-compat and WebRTC, r=glandium
authorFrank Wein <mcsmurf@mcsmurf.de>
Wed, 25 Dec 2013 13:42:40 +0100
changeset 161794 d706ebf6e5b14efb2e69df6dfb223ffa81976721
parent 161793 db720cc7a830d2d4390d2e2f7a0a788bdc73993c
child 161795 4ce43cb764d51b7c7907e6db85848afe22b16f77
push id37985
push usermcsmurf@mcsmurf.de
push dateWed, 25 Dec 2013 12:45:03 +0000
treeherdermozilla-inbound@d706ebf6e5b1 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersglandium
bugs936790
milestone29.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 936790 - (gcc 4.5) Build error: "We don't want these libstdc++ symbols to be used" when building with --enable-stdcxx-compat and WebRTC, r=glandium
build/unix/stdc++compat/stdc++compat.cpp
--- a/build/unix/stdc++compat/stdc++compat.cpp
+++ b/build/unix/stdc++compat/stdc++compat.cpp
@@ -61,39 +61,39 @@ namespace std __attribute__((visibility(
     {
         void hook(_List_node_base * const __position) throw ();
 
         void unhook() throw ();
 
         void transfer(_List_node_base * const __first,
                       _List_node_base * const __last) throw();
 
+        void reverse() throw();
+
 /* Hack to avoid GLIBCXX_3.4.15 symbol versions */
 #if MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 15)
         static void swap(_List_node_base& __x, _List_node_base& __y) throw ();
-
-        void reverse() throw();
     };
 
     namespace __detail {
 
     struct _List_node_base
     {
 #endif
         void _M_hook(_List_node_base * const __position) throw ();
 
         void _M_unhook() throw ();
 
         void _M_transfer(_List_node_base * const __first,
                          _List_node_base * const __last) throw();
 
+        void _M_reverse() throw();
+
 #if MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 15)
         static void swap(_List_node_base& __x, _List_node_base& __y) throw ();
-
-	void _M_reverse() throw();
 #endif
     };
 
     /* The functions actually have the same implementation */
     void
     _List_node_base::_M_hook(_List_node_base * const __position) throw ()
     {
         ((std::_List_node_base *)this)->hook((std::_List_node_base * const) __position);
@@ -108,29 +108,29 @@ namespace std __attribute__((visibility(
     void
     _List_node_base::_M_transfer(_List_node_base * const __first,
                                  _List_node_base * const __last) throw ()
     {
         ((std::_List_node_base *)this)->transfer((std::_List_node_base * const)__first,
                                                  (std::_List_node_base * const)__last);
     }
 
+    void
+    _List_node_base::_M_reverse() throw ()
+    {
+        ((std::_List_node_base *)this)->reverse();
+    }
+
 #if MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 15)
     void
     _List_node_base::swap(_List_node_base& __x, _List_node_base& __y) throw ()
     {
         std::_List_node_base::swap(*((std::_List_node_base *) &__x),
                                    *((std::_List_node_base *) &__y));
     }
-
-    void
-    _List_node_base::_M_reverse() throw ()
-    {
-        ((std::_List_node_base *)this)->reverse();
-    }
 }
 #endif
 
 #endif /*MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 14)*/
 
 #if MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 11)
     /* Hack to avoid GLIBCXX_3.4.11 symbol versions
        An inline definition of ctype<char>::_M_widen_init() used to be in