MessagePack for C
llvm.h
Go to the documentation of this file.
1 /*
2 Copyright Rene Rivera 2008-2015
3 Distributed under the Boost Software License, Version 1.0.
4 (See accompanying file LICENSE_1_0.txt or copy at
5 http://www.boost.org/LICENSE_1_0.txt)
6 */
7 
8 #ifndef MSGPACK_PREDEF_COMPILER_LLVM_H
9 #define MSGPACK_PREDEF_COMPILER_LLVM_H
10 
11 /* Other compilers that emulate this one need to be detected first. */
12 
14 
16 #include <msgpack/predef/make.h>
17 
18 /*`
19 [heading `MSGPACK_COMP_LLVM`]
20 
21 [@http://en.wikipedia.org/wiki/LLVM LLVM] compiler.
22 
23 [table
24  [[__predef_symbol__] [__predef_version__]]
25 
26  [[`__llvm__`] [__predef_detection__]]
27  ]
28  */
29 
30 #define MSGPACK_COMP_LLVM MSGPACK_VERSION_NUMBER_NOT_AVAILABLE
31 
32 #if defined(__llvm__)
33 # define MSGPACK_COMP_LLVM_DETECTION MSGPACK_VERSION_NUMBER_AVAILABLE
34 #endif
35 
36 #ifdef MSGPACK_COMP_LLVM_DETECTION
37 # if defined(MSGPACK_PREDEF_DETAIL_COMP_DETECTED)
38 # define MSGPACK_COMP_LLVM_EMULATED MSGPACK_COMP_LLVM_DETECTION
39 # else
40 # undef MSGPACK_COMP_LLVM
41 # define MSGPACK_COMP_LLVM MSGPACK_COMP_LLVM_DETECTION
42 # endif
43 # define MSGPACK_COMP_LLVM_AVAILABLE
45 #endif
46 
47 #define MSGPACK_COMP_LLVM_NAME "LLVM"
48 
49 #endif
50 
53 
54 #ifdef MSGPACK_COMP_LLVM_EMULATED
56 MSGPACK_PREDEF_DECLARE_TEST(MSGPACK_COMP_LLVM_EMULATED,MSGPACK_COMP_LLVM_NAME)
57 #endif
#define MSGPACK_COMP_LLVM_NAME
Definition: llvm.h:47
#define MSGPACK_COMP_LLVM
Definition: llvm.h:30
#define MSGPACK_PREDEF_DECLARE_TEST(x, s)
Definition: test.h:13