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

This commit is contained in:
Frank Wein 2013-12-25 13:42:40 +01:00
parent 18f6a05ba2
commit c89d921118

View File

@ -66,11 +66,11 @@ namespace std __attribute__((visibility("default"))) {
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 {
@ -85,10 +85,10 @@ namespace std __attribute__((visibility("default"))) {
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
};
@ -113,6 +113,12 @@ namespace std __attribute__((visibility("default"))) {
(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 ()
@ -120,12 +126,6 @@ namespace std __attribute__((visibility("default"))) {
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