diff --git a/include/winnt.h b/include/winnt.h index 2309ae32d67..559a7198ba4 100644 --- a/include/winnt.h +++ b/include/winnt.h @@ -148,13 +148,13 @@ extern "C" { # define DECLSPEC_EXPORT __declspec(dllexport) #elif defined(__MINGW32__) # define DECLSPEC_EXPORT __attribute__((dllexport)) -#elif defined(__GNUC__) && ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3))) +#elif defined(__GNUC__) && ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3))) && !defined(__sun) # define DECLSPEC_EXPORT __attribute__((visibility ("default"))) #else # define DECLSPEC_EXPORT #endif -#if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) +#if defined(_MSC_VER) || defined(__MINGW32__) || defined(__CYGWIN__) || defined(__sun) # define DECLSPEC_HIDDEN #elif defined(__GNUC__) && ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3))) # define DECLSPEC_HIDDEN __attribute__((visibility ("hidden")))