Bayeux  3.4.1
Core Foundation library for SuperNEMO
compiler_detection.h
Go to the documentation of this file.
1 
2 // This is a generated file. Do not edit!
3 
4 #ifndef DT_COMPILER_DETECTION_H
5 #define DT_COMPILER_DETECTION_H
6 
7 #ifdef __cplusplus
8 # define DT_COMPILER_IS_Comeau 0
9 # define DT_COMPILER_IS_Intel 0
10 # define DT_COMPILER_IS_PathScale 0
11 # define DT_COMPILER_IS_Embarcadero 0
12 # define DT_COMPILER_IS_Borland 0
13 # define DT_COMPILER_IS_Watcom 0
14 # define DT_COMPILER_IS_OpenWatcom 0
15 # define DT_COMPILER_IS_SunPro 0
16 # define DT_COMPILER_IS_HP 0
17 # define DT_COMPILER_IS_Compaq 0
18 # define DT_COMPILER_IS_zOS 0
19 # define DT_COMPILER_IS_XL 0
20 # define DT_COMPILER_IS_VisualAge 0
21 # define DT_COMPILER_IS_PGI 0
22 # define DT_COMPILER_IS_Cray 0
23 # define DT_COMPILER_IS_TI 0
24 # define DT_COMPILER_IS_Fujitsu 0
25 # define DT_COMPILER_IS_SCO 0
26 # define DT_COMPILER_IS_AppleClang 0
27 # define DT_COMPILER_IS_Clang 0
28 # define DT_COMPILER_IS_GNU 0
29 # define DT_COMPILER_IS_MSVC 0
30 # define DT_COMPILER_IS_ADSP 0
31 # define DT_COMPILER_IS_IAR 0
32 # define DT_COMPILER_IS_ARMCC 0
33 # define DT_COMPILER_IS_MIPSpro 0
34 
35 #if defined(__COMO__)
36 # undef DT_COMPILER_IS_Comeau
37 # define DT_COMPILER_IS_Comeau 1
38 
39 #elif defined(__INTEL_COMPILER) || defined(__ICC)
40 # undef DT_COMPILER_IS_Intel
41 # define DT_COMPILER_IS_Intel 1
42 
43 #elif defined(__PATHCC__)
44 # undef DT_COMPILER_IS_PathScale
45 # define DT_COMPILER_IS_PathScale 1
46 
47 #elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
48 # undef DT_COMPILER_IS_Embarcadero
49 # define DT_COMPILER_IS_Embarcadero 1
50 
51 #elif defined(__BORLANDC__)
52 # undef DT_COMPILER_IS_Borland
53 # define DT_COMPILER_IS_Borland 1
54 
55 #elif defined(__WATCOMC__) && __WATCOMC__ < 1200
56 # undef DT_COMPILER_IS_Watcom
57 # define DT_COMPILER_IS_Watcom 1
58 
59 #elif defined(__WATCOMC__)
60 # undef DT_COMPILER_IS_OpenWatcom
61 # define DT_COMPILER_IS_OpenWatcom 1
62 
63 #elif defined(__SUNPRO_CC)
64 # undef DT_COMPILER_IS_SunPro
65 # define DT_COMPILER_IS_SunPro 1
66 
67 #elif defined(__HP_aCC)
68 # undef DT_COMPILER_IS_HP
69 # define DT_COMPILER_IS_HP 1
70 
71 #elif defined(__DECCXX)
72 # undef DT_COMPILER_IS_Compaq
73 # define DT_COMPILER_IS_Compaq 1
74 
75 #elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
76 # undef DT_COMPILER_IS_zOS
77 # define DT_COMPILER_IS_zOS 1
78 
79 #elif defined(__ibmxl__) || (defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800)
80 # undef DT_COMPILER_IS_XL
81 # define DT_COMPILER_IS_XL 1
82 
83 #elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
84 # undef DT_COMPILER_IS_VisualAge
85 # define DT_COMPILER_IS_VisualAge 1
86 
87 #elif defined(__PGI)
88 # undef DT_COMPILER_IS_PGI
89 # define DT_COMPILER_IS_PGI 1
90 
91 #elif defined(_CRAYC)
92 # undef DT_COMPILER_IS_Cray
93 # define DT_COMPILER_IS_Cray 1
94 
95 #elif defined(__TI_COMPILER_VERSION__)
96 # undef DT_COMPILER_IS_TI
97 # define DT_COMPILER_IS_TI 1
98 
99 #elif defined(__FUJITSU) || defined(__FCC_VERSION) || defined(__fcc_version)
100 # undef DT_COMPILER_IS_Fujitsu
101 # define DT_COMPILER_IS_Fujitsu 1
102 
103 #elif defined(__SCO_VERSION__)
104 # undef DT_COMPILER_IS_SCO
105 # define DT_COMPILER_IS_SCO 1
106 
107 #elif defined(__clang__) && defined(__apple_build_version__)
108 # undef DT_COMPILER_IS_AppleClang
109 # define DT_COMPILER_IS_AppleClang 1
110 
111 #elif defined(__clang__)
112 # undef DT_COMPILER_IS_Clang
113 # define DT_COMPILER_IS_Clang 1
114 
115 #elif defined(__GNUC__) || defined(__GNUG__)
116 # undef DT_COMPILER_IS_GNU
117 # define DT_COMPILER_IS_GNU 1
118 
119 #elif defined(_MSC_VER)
120 # undef DT_COMPILER_IS_MSVC
121 # define DT_COMPILER_IS_MSVC 1
122 
123 #elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
124 # undef DT_COMPILER_IS_ADSP
125 # define DT_COMPILER_IS_ADSP 1
126 
127 #elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
128 # undef DT_COMPILER_IS_IAR
129 # define DT_COMPILER_IS_IAR 1
130 
131 #elif defined(__ARMCC_VERSION)
132 # undef DT_COMPILER_IS_ARMCC
133 # define DT_COMPILER_IS_ARMCC 1
134 
135 #elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION)
136 # undef DT_COMPILER_IS_MIPSpro
137 # define DT_COMPILER_IS_MIPSpro 1
138 
139 
140 #endif
141 
142 # if DT_COMPILER_IS_GNU
143 
144 # if !((__GNUC__ * 100 + __GNUC_MINOR__) >= 404)
145 # error Unsupported compiler version
146 # endif
147 
148 # if defined(__GNUC__)
149 # define DT_COMPILER_VERSION_MAJOR (__GNUC__)
150 # else
151 # define DT_COMPILER_VERSION_MAJOR (__GNUG__)
152 # endif
153 # if defined(__GNUC_MINOR__)
154 # define DT_COMPILER_VERSION_MINOR (__GNUC_MINOR__)
155 # endif
156 # if defined(__GNUC_PATCHLEVEL__)
157 # define DT_COMPILER_VERSION_PATCH (__GNUC_PATCHLEVEL__)
158 # endif
159 
160 # if (__GNUC__ * 100 + __GNUC_MINOR__) >= 408 && __cplusplus >= 201103L
161 # define DT_COMPILER_CXX_THREAD_LOCAL 1
162 # else
163 # define DT_COMPILER_CXX_THREAD_LOCAL 0
164 # endif
165 
166 # if (__GNUC__ * 100 + __GNUC_MINOR__) >= 409 && __cplusplus > 201103L
167 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
168 # else
169 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
170 # endif
171 
172 # elif DT_COMPILER_IS_Clang
173 
174 # if !(((__clang_major__ * 100) + __clang_minor__) >= 301)
175 # error Unsupported compiler version
176 # endif
177 
178 # define DT_COMPILER_VERSION_MAJOR (__clang_major__)
179 # define DT_COMPILER_VERSION_MINOR (__clang_minor__)
180 # define DT_COMPILER_VERSION_PATCH (__clang_patchlevel__)
181 # if defined(_MSC_VER)
182  /* _MSC_VER = VVRR */
183 # define DT_SIMULATE_VERSION_MAJOR (_MSC_VER / 100)
184 # define DT_SIMULATE_VERSION_MINOR (_MSC_VER % 100)
185 # endif
186 
187 # if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_thread_local)
188 # define DT_COMPILER_CXX_THREAD_LOCAL 1
189 # else
190 # define DT_COMPILER_CXX_THREAD_LOCAL 0
191 # endif
192 
193 # if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
194 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
195 # else
196 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
197 # endif
198 
199 # elif DT_COMPILER_IS_AppleClang
200 
201 # if !(((__clang_major__ * 100) + __clang_minor__) >= 400)
202 # error Unsupported compiler version
203 # endif
204 
205 # define DT_COMPILER_VERSION_MAJOR (__clang_major__)
206 # define DT_COMPILER_VERSION_MINOR (__clang_minor__)
207 # define DT_COMPILER_VERSION_PATCH (__clang_patchlevel__)
208 # if defined(_MSC_VER)
209  /* _MSC_VER = VVRR */
210 # define DT_SIMULATE_VERSION_MAJOR (_MSC_VER / 100)
211 # define DT_SIMULATE_VERSION_MINOR (_MSC_VER % 100)
212 # endif
213 # define DT_COMPILER_VERSION_TWEAK (__apple_build_version__)
214 
215 # if ((__clang_major__ * 100) + __clang_minor__) >= 400 && __has_feature(cxx_thread_local)
216 # define DT_COMPILER_CXX_THREAD_LOCAL 1
217 # else
218 # define DT_COMPILER_CXX_THREAD_LOCAL 0
219 # endif
220 
221 # if ((__clang_major__ * 100) + __clang_minor__) >= 501 && __cplusplus > 201103L
222 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
223 # else
224 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
225 # endif
226 
227 # elif DT_COMPILER_IS_MSVC
228 
229 # if !(_MSC_VER >= 1600)
230 # error Unsupported compiler version
231 # endif
232 
233  /* _MSC_VER = VVRR */
234 # define DT_COMPILER_VERSION_MAJOR (_MSC_VER / 100)
235 # define DT_COMPILER_VERSION_MINOR (_MSC_VER % 100)
236 # if defined(_MSC_FULL_VER)
237 # if _MSC_VER >= 1400
238  /* _MSC_FULL_VER = VVRRPPPPP */
239 # define DT_COMPILER_VERSION_PATCH (_MSC_FULL_VER % 100000)
240 # else
241  /* _MSC_FULL_VER = VVRRPPPP */
242 # define DT_COMPILER_VERSION_PATCH (_MSC_FULL_VER % 10000)
243 # endif
244 # endif
245 # if defined(_MSC_BUILD)
246 # define DT_COMPILER_VERSION_TWEAK (_MSC_BUILD)
247 # endif
248 
249 # if _MSC_VER >= 1900
250 # define DT_COMPILER_CXX_THREAD_LOCAL 1
251 # else
252 # define DT_COMPILER_CXX_THREAD_LOCAL 0
253 # endif
254 
255 # if _MSC_VER >= 1900
256 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 1
257 # else
258 # define DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED 0
259 # endif
260 
261 # else
262 # error Unsupported compiler
263 # endif
264 
265 # if defined(DT_COMPILER_CXX_THREAD_LOCAL) && DT_COMPILER_CXX_THREAD_LOCAL
266 # define DT_THREAD_LOCAL thread_local
267 # elif DT_COMPILER_IS_GNU || DT_COMPILER_IS_Clang || DT_COMPILER_IS_AppleClang
268 # define DT_THREAD_LOCAL __thread
269 # elif DT_COMPILER_IS_MSVC
270 # define DT_THREAD_LOCAL __declspec(thread)
271 # else
272 // DT_THREAD_LOCAL not defined for this configuration.
273 # endif
274 
275 
276 # ifndef DT_DEPRECATED
277 # if defined(DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED) && DT_COMPILER_CXX_ATTRIBUTE_DEPRECATED
278 # define DT_DEPRECATED [[deprecated]]
279 # define DT_DEPRECATED_MSG(MSG) [[deprecated(MSG)]]
280 # elif DT_COMPILER_IS_GNU || DT_COMPILER_IS_Clang
281 # define DT_DEPRECATED __attribute__((__deprecated__))
282 # define DT_DEPRECATED_MSG(MSG) __attribute__((__deprecated__(MSG)))
283 # elif DT_COMPILER_IS_MSVC
284 # define DT_DEPRECATED __declspec(deprecated)
285 # define DT_DEPRECATED_MSG(MSG) __declspec(deprecated(MSG))
286 # else
287 # define DT_DEPRECATED
288 # define DT_DEPRECATED_MSG(MSG)
289 # endif
290 # endif
291 
292 #endif
293 
295 
296 #endif
Portable macros for compiler attributes.