Disable symbols visibility support for the Clang compiler.

Even Clang++ shipped with Xcode 4.1 still can't handle visibility
of non-inline methods in exported template classes if the default
visibility is 'hidden'.

Disable visibility support for Clang for now, we'll revisit it in the future.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2011-07-31 13:25:30 +00:00
parent bd5754f253
commit 7198c33680
2 changed files with 10 additions and 0 deletions

View File

@@ -49,6 +49,11 @@ AC_DEFUN([WX_VISIBILITY],
error this platform has no visibility; error this platform has no visibility;
#endif #endif
/* at the time of Xcode 4.1 / Clang 3, Clang++ still didn't have the bugs sorted out: */
#if defined(__clang__)
clang compiler is still broken w.r.t. visibility;
#endif
extern __attribute__((__visibility__("hidden"))) int hiddenvar; extern __attribute__((__visibility__("hidden"))) int hiddenvar;
extern __attribute__((__visibility__("default"))) int exportedvar; extern __attribute__((__visibility__("default"))) int exportedvar;
extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void); extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);

5
configure vendored
View File

@@ -35001,6 +35001,11 @@ cat >>conftest.$ac_ext <<_ACEOF
error this platform has no visibility; error this platform has no visibility;
#endif #endif
/* at the time of Xcode 4.1 / Clang 3, Clang++ still didn't have the bugs sorted out: */
#if defined(__clang__)
clang compiler is still broken w.r.t. visibility;
#endif
extern __attribute__((__visibility__("hidden"))) int hiddenvar; extern __attribute__((__visibility__("hidden"))) int hiddenvar;
extern __attribute__((__visibility__("default"))) int exportedvar; extern __attribute__((__visibility__("default"))) int exportedvar;
extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void); extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);