clang API Documentation

Platform.h
Go to the documentation of this file.
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