fix visibility problems with libstdc++ on Debian and Ubuntu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -46,3 +46,7 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// see beforestd.h for explanation
|
||||
#if defined(HAVE_VISIBILITY) && defined(HAVE_BROKEN_LIBSTDCXX_VISIBILITY)
|
||||
#pragma GCC visibility pop
|
||||
#endif
|
||||
|
||||
@@ -63,3 +63,13 @@
|
||||
#pragma warning(disable:4786)
|
||||
#endif // VC++ < 7
|
||||
|
||||
/**
|
||||
GCC's visibility support is broken for libstdc++ in some older versions
|
||||
(namely Debian/Ubuntu's GCC 4.1, see
|
||||
https://bugs.launchpad.net/ubuntu/+source/gcc-4.1/+bug/109262). We fix it
|
||||
here by mimicking newer versions' behaviour of using default visibility
|
||||
for libstdc++ code.
|
||||
*/
|
||||
#if defined(HAVE_VISIBILITY) && defined(HAVE_BROKEN_LIBSTDCXX_VISIBILITY)
|
||||
#pragma GCC visibility push(default)
|
||||
#endif
|
||||
|
||||
@@ -11,12 +11,16 @@
|
||||
|
||||
#if wxUSE_STD_IOSTREAM
|
||||
|
||||
#include "wx/beforestd.h"
|
||||
|
||||
#if wxUSE_IOSTREAMH
|
||||
# include <iostream.h>
|
||||
#else
|
||||
# include <iostream>
|
||||
#endif
|
||||
|
||||
#include "wx/afterstd.h"
|
||||
|
||||
#ifdef __WXMSW__
|
||||
# include "wx/msw/winundef.h"
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user