diff options
Diffstat (limited to 'clang/include/clang-c/Platform.h')
| -rw-r--r-- | clang/include/clang-c/Platform.h | 23 | 
1 files changed, 16 insertions, 7 deletions
| diff --git a/clang/include/clang-c/Platform.h b/clang/include/clang-c/Platform.h index 3bb66bb0df48..67c1fff8ff78 100644 --- a/clang/include/clang-c/Platform.h +++ b/clang/include/clang-c/Platform.h @@ -18,14 +18,23 @@  LLVM_CLANG_C_EXTERN_C_BEGIN -/* MSVC DLL import/export. */ -#ifdef _MSC_VER -  #ifdef _CINDEX_LIB_ -    #define CINDEX_LINKAGE __declspec(dllexport) -  #else -    #define CINDEX_LINKAGE __declspec(dllimport) +/* Windows DLL import/export. */ +#ifndef CINDEX_NO_EXPORTS +  #define CINDEX_EXPORTS +#endif +#ifdef _WIN32 +  #ifdef CINDEX_EXPORTS +    #ifdef _CINDEX_LIB_ +      #define CINDEX_LINKAGE __declspec(dllexport) +    #else +      #define CINDEX_LINKAGE __declspec(dllimport) +    #endif    #endif -#else +#elif defined(CINDEX_EXPORTS) && defined(__GNUC__) +  #define CINDEX_LINKAGE __attribute__((visibility("default"))) +#endif + +#ifndef CINDEX_LINKAGE    #define CINDEX_LINKAGE  #endif | 
