X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FBeginPrivate.h;h=6471b92a407638f69c02d4cb302c401558e678a2;hb=8625c675de45bdb8bcfa795572ce7c47687c147c;hp=3ba4b8913df994bf73f3283631feb77f99810872;hpb=51b85031ce99f1e9d4c72249d6d85672188f0fbd;p=ghc-hetmet.git diff --git a/rts/BeginPrivate.h b/rts/BeginPrivate.h index 3ba4b89..6471b92 100644 --- a/rts/BeginPrivate.h +++ b/rts/BeginPrivate.h @@ -1,3 +1,10 @@ -#if __GNUC__ >= 4 +/* We don't use symbol visibility pragmas on FreeBSD, because it causes + "undefined reference" errors at link-time. The true reasons are + unknown, however FreeBSD 8.x includes GCC 4.2.1 in the base system, + which might be buggy. */ +/* On Windows, with gcc 4.5.0-1, using visibility hidden gives: + error: visibility attribute not supported in this configuration; ignored + */ +#if defined(HAS_VISIBILITY_HIDDEN) && !defined(freebsd_HOST_OS) #pragma GCC visibility push(hidden) #endif