clang API Documentation
00001 /*===-- clang-c/Platform.h - C Index platform decls -------------*- C -*-===*\ 00002 |* *| 00003 |* The LLVM Compiler Infrastructure *| 00004 |* *| 00005 |* This file is distributed under the University of Illinois Open Source *| 00006 |* License. See LICENSE.TXT for details. *| 00007 |* *| 00008 |*===----------------------------------------------------------------------===*| 00009 |* *| 00010 |* This header provides platform specific macros (dllimport, deprecated, ...) *| 00011 |* *| 00012 \*===----------------------------------------------------------------------===*/ 00013 00014 #ifndef LLVM_CLANG_C_PLATFORM_H 00015 #define LLVM_CLANG_C_PLATFORM_H 00016 00017 #ifdef __cplusplus 00018 extern "C" { 00019 #endif 00020 00021 /* MSVC DLL import/export. */ 00022 #ifdef _MSC_VER 00023 #ifdef _CINDEX_LIB_ 00024 #define CINDEX_LINKAGE __declspec(dllexport) 00025 #else 00026 #define CINDEX_LINKAGE __declspec(dllimport) 00027 #endif 00028 #else 00029 #define CINDEX_LINKAGE 00030 #endif 00031 00032 #ifdef __GNUC__ 00033 #define CINDEX_DEPRECATED __attribute__((deprecated)) 00034 #else 00035 #ifdef _MSC_VER 00036 #define CINDEX_DEPRECATED __declspec(deprecated) 00037 #else 00038 #define CINDEX_DEPRECATED 00039 #endif 00040 #endif 00041 00042 #ifdef __cplusplus 00043 } 00044 #endif 00045 #endif