1 | // Boost config.hpp configuration test program file -----------------------// |
---|
2 | |
---|
3 | // (C) Copyright John Maddock 2001 - 2003. |
---|
4 | // (C) Copyright Jens Maurer 2001. |
---|
5 | // (C) Copyright Peter Dimov 2001. |
---|
6 | // (C) Copyright Darin Adler 2001. |
---|
7 | // (C) Copyright Beman Dawes 2002. |
---|
8 | // Use, modification and distribution are subject to the |
---|
9 | // Boost Software License, Version 1.0. (See accompanying file |
---|
10 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
---|
11 | |
---|
12 | // See http://www.boost.org/libs/config for most recent version. |
---|
13 | |
---|
14 | #include <boost/config.hpp> |
---|
15 | #include <boost/version.hpp> |
---|
16 | #include <iostream> |
---|
17 | #include <iomanip> |
---|
18 | #include <string.h> |
---|
19 | #include <limits.h> |
---|
20 | #include <stdlib.h> |
---|
21 | #include <stddef.h> |
---|
22 | |
---|
23 | #ifdef BOOST_HAS_UNISTD_H |
---|
24 | #include <unistd.h> |
---|
25 | #endif |
---|
26 | |
---|
27 | static unsigned int indent = 4; |
---|
28 | static unsigned int width = 40; |
---|
29 | |
---|
30 | using std::cout; |
---|
31 | using std::istream; |
---|
32 | |
---|
33 | void print_macro(const char* name, const char* value) |
---|
34 | { |
---|
35 | // if name == value+1 then then macro is not defined, |
---|
36 | // in which case we don't print anything: |
---|
37 | if(0 != strcmp(name, value+1)) |
---|
38 | { |
---|
39 | for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); |
---|
40 | std::cout << std::setw(width); |
---|
41 | cout.setf(istream::left, istream::adjustfield); |
---|
42 | std::cout << name; |
---|
43 | if(value[1]) |
---|
44 | { |
---|
45 | // macro has a value: |
---|
46 | std::cout << value << "\n"; |
---|
47 | } |
---|
48 | else |
---|
49 | { |
---|
50 | // macro is defined but has no value: |
---|
51 | std::cout << " [no value]\n"; |
---|
52 | } |
---|
53 | } |
---|
54 | } |
---|
55 | |
---|
56 | #define PRINT_MACRO(X) print_macro(#X, BOOST_STRINGIZE(=X)) |
---|
57 | |
---|
58 | template <class T> |
---|
59 | void print_expression(const char* expression, T val) |
---|
60 | { |
---|
61 | for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); |
---|
62 | std::cout << std::setw(width); |
---|
63 | std::cout.setf(istream::left, istream::adjustfield); |
---|
64 | std::cout << expression << "=" << val << std::endl; |
---|
65 | } |
---|
66 | |
---|
67 | #define PRINT_EXPRESSION(E) print_expression(#E, E); |
---|
68 | |
---|
69 | template <class T> |
---|
70 | void print_byte_order(const char* what, T /* t */ ) |
---|
71 | { |
---|
72 | T val = 0; |
---|
73 | unsigned i; |
---|
74 | for(i = 1; i < sizeof(T); ++i) |
---|
75 | { |
---|
76 | val |= (CHAR_BIT * static_cast<T>(i)) << (CHAR_BIT * static_cast<T>(i)); |
---|
77 | } |
---|
78 | const char* p = reinterpret_cast<const char*>(&val); |
---|
79 | |
---|
80 | for(i = 0; i < indent; ++i) std::cout.put(' '); |
---|
81 | std::cout << std::setw(width); |
---|
82 | std::cout.setf(istream::left, istream::adjustfield); |
---|
83 | std::cout << what << "="; |
---|
84 | for(i = 0; i < sizeof(T); ++i) |
---|
85 | { |
---|
86 | std::cout << (int)p[i] << " "; |
---|
87 | } |
---|
88 | std::cout << std::endl; |
---|
89 | } |
---|
90 | |
---|
91 | #define PRINT_ORDER(T) print_byte_order(BOOST_STRINGIZE(byte order for type T), T()) |
---|
92 | |
---|
93 | template <class T> |
---|
94 | void print_sign(const char* what, T t) |
---|
95 | { |
---|
96 | t = static_cast<T>(-1); // cast suppresses warnings |
---|
97 | for(unsigned i = 0; i < indent; ++i) std::cout.put(' '); |
---|
98 | std::cout << "Type " << what << " is " << ((t > 0) ? "unsigned" : "signed") << std::endl; |
---|
99 | } |
---|
100 | |
---|
101 | #define PRINT_SIGN(T) print_sign(#T, T()) |
---|
102 | |
---|
103 | |
---|
104 | void print_compiler_macros() |
---|
105 | { |
---|
106 | std::cout << BOOST_COMPILER << "\n"; |
---|
107 | // Borland options: |
---|
108 | PRINT_MACRO(__BORLANDC__); |
---|
109 | PRINT_MACRO(__CDECL__); |
---|
110 | PRINT_MACRO(_CHAR_UNSIGNED); |
---|
111 | PRINT_MACRO(__CODEGUARD__); |
---|
112 | PRINT_MACRO(__CONSOLE__); |
---|
113 | PRINT_MACRO(_CPPUNWIND); |
---|
114 | PRINT_MACRO(__cplusplus); |
---|
115 | PRINT_MACRO(__FLAT__); |
---|
116 | PRINT_MACRO(__FUNC__); |
---|
117 | PRINT_MACRO(_M_IX86); |
---|
118 | PRINT_MACRO(__MSDOS__); |
---|
119 | PRINT_MACRO(__MT__ ); |
---|
120 | PRINT_MACRO(__PASCAL__); |
---|
121 | PRINT_MACRO(__STDC__); |
---|
122 | PRINT_MACRO(__TLS__); |
---|
123 | PRINT_MACRO(_WCHAR_T); |
---|
124 | PRINT_MACRO(_Windows); |
---|
125 | PRINT_MACRO(__WIN32__); |
---|
126 | PRINT_MACRO(_WIN32); |
---|
127 | PRINT_MACRO(WIN32); |
---|
128 | PRINT_MACRO(_RTLDLL); |
---|
129 | PRINT_MACRO(__DEBUG); |
---|
130 | |
---|
131 | // Internal MSVC 7 error workaround (Peter Dimov) |
---|
132 | |
---|
133 | #ifndef _NATIVE_WCHAR_T_DEFINED |
---|
134 | PRINT_MACRO(_WCHAR_T_DEFINED); |
---|
135 | #endif |
---|
136 | // MSVC macros: |
---|
137 | PRINT_MACRO(_CPPRTTI); |
---|
138 | PRINT_MACRO(_DLL); |
---|
139 | PRINT_MACRO(_M_ALPHA); |
---|
140 | PRINT_MACRO(_M_MPPC); |
---|
141 | PRINT_MACRO(_M_MRX000); |
---|
142 | PRINT_MACRO(_M_PPC); |
---|
143 | PRINT_MACRO(_MFC_VER); |
---|
144 | PRINT_MACRO(_MSC_EXTENSIONS); |
---|
145 | PRINT_MACRO(_MSC_VER); |
---|
146 | PRINT_MACRO(_MSC_FULL_VER); |
---|
147 | PRINT_MACRO(_MT); |
---|
148 | PRINT_MACRO(_NATIVE_WCHAR_T_DEFINED); |
---|
149 | // GNUC options: |
---|
150 | PRINT_MACRO(__GNUC__); |
---|
151 | PRINT_MACRO(__GNUC_MINOR__); |
---|
152 | PRINT_MACRO(__STDC_VERSION__); |
---|
153 | PRINT_MACRO(__GNUG__); |
---|
154 | PRINT_MACRO(__STRICT_ANSI__); |
---|
155 | PRINT_MACRO(__VERSION__); |
---|
156 | PRINT_MACRO(__OPTIMIZE__); |
---|
157 | PRINT_MACRO(__CHAR_UNSIGNED__); |
---|
158 | PRINT_MACRO(__REGISTER_PREFIX__); |
---|
159 | PRINT_MACRO(__USER_LABEL_PREFIX__); |
---|
160 | PRINT_MACRO(__INTEL__); |
---|
161 | PRINT_MACRO(__GNUPRO__); |
---|
162 | PRINT_MACRO(__EXCEPTIONS); |
---|
163 | PRINT_MACRO(__FreeBSD__); |
---|
164 | PRINT_MACRO(__FreeBSD_cc_version); |
---|
165 | PRINT_MACRO(__ELF__); |
---|
166 | PRINT_MACRO(__GNUPRO__); |
---|
167 | PRINT_MACRO(unix); |
---|
168 | PRINT_MACRO(bsd); |
---|
169 | PRINT_MACRO(vax); |
---|
170 | PRINT_MACRO(mc68000); |
---|
171 | PRINT_MACRO(m68k); |
---|
172 | PRINT_MACRO(M68020); |
---|
173 | PRINT_MACRO(_AM29K); |
---|
174 | PRINT_MACRO(ns32000); |
---|
175 | PRINT_MACRO(sun); |
---|
176 | PRINT_MACRO(pyr); |
---|
177 | PRINT_MACRO(sequent); |
---|
178 | PRINT_MACRO(__i386__); |
---|
179 | PRINT_MACRO(__sparc); |
---|
180 | PRINT_MACRO(__sparc__); |
---|
181 | PRINT_MACRO(__powerpc__); |
---|
182 | PRINT_MACRO(__hppa); |
---|
183 | PRINT_MACRO(__CYGWIN__); |
---|
184 | PRINT_MACRO(__MINGW32__); |
---|
185 | // HP aCC: |
---|
186 | PRINT_MACRO(__HP_aCC); |
---|
187 | PRINT_MACRO(_HPACC_); |
---|
188 | PRINT_MACRO(__LP64__); |
---|
189 | PRINT_MACRO(__RISC2_0__); |
---|
190 | PRINT_MACRO(__STDCPP__); |
---|
191 | PRINT_MACRO(__hppa); |
---|
192 | PRINT_MACRO(__hpux); |
---|
193 | PRINT_MACRO(__hp9000s800); |
---|
194 | PRINT_MACRO(__hp9000s700); |
---|
195 | PRINT_MACRO(_PA_RISC1_1); |
---|
196 | PRINT_MACRO(__HPUX_SOURCE); |
---|
197 | // SGI IRIX: |
---|
198 | PRINT_MACRO(__sgi); |
---|
199 | PRINT_MACRO(_COMPILER_VERSION); |
---|
200 | // Sunpro: |
---|
201 | PRINT_MACRO(__SUNPRO_CC); |
---|
202 | PRINT_MACRO(__SUNPRO_CC_COMPAT); |
---|
203 | PRINT_MACRO(__BUILTIN_VA_ARG_INCR); |
---|
204 | PRINT_MACRO(__sun); |
---|
205 | PRINT_MACRO(__SVR4); |
---|
206 | PRINT_MACRO(__unix); |
---|
207 | PRINT_MACRO(__sparcv9); |
---|
208 | PRINT_MACRO(__i386); |
---|
209 | PRINT_MACRO(i386); |
---|
210 | // Metrowerks |
---|
211 | PRINT_MACRO(__MWERKS__); |
---|
212 | PRINT_MACRO(__MSL__); |
---|
213 | PRINT_MACRO(__MSL_CPP__); |
---|
214 | PRINT_MACRO(__A5__); |
---|
215 | PRINT_MACRO(__embedded_cplusplus); |
---|
216 | PRINT_MACRO(__fourbyteints__); |
---|
217 | PRINT_MACRO(__IEEEdoubles__); |
---|
218 | PRINT_MACRO(__MC68K__); |
---|
219 | PRINT_MACRO(__MC68020__); |
---|
220 | PRINT_MACRO(__MC68881__); |
---|
221 | PRINT_MACRO(__MIPS__); |
---|
222 | PRINT_MACRO(__MIPS_ISA2__); |
---|
223 | PRINT_MACRO(__MIPS_ISA3__); |
---|
224 | PRINT_MACRO(__MIPS_ISA4__); |
---|
225 | PRINT_MACRO(__MWBROWSER__); |
---|
226 | PRINT_MACRO(__profile__); |
---|
227 | PRINT_MACRO(__powerc); |
---|
228 | PRINT_MACRO(_powerc); |
---|
229 | PRINT_MACRO(__POWERPC__); |
---|
230 | PRINT_MACRO(macintosh); |
---|
231 | PRINT_MACRO(__MACH__); |
---|
232 | PRINT_MACRO(__APPLE__); |
---|
233 | PRINT_MACRO(__APPLE_CC__); |
---|
234 | // MPW (MrCpp and SCpp) |
---|
235 | PRINT_MACRO(__MRC__); |
---|
236 | PRINT_MACRO(__SC__); |
---|
237 | PRINT_MACRO(__FPCE__); |
---|
238 | PRINT_MACRO(__FPCE_IEEE__); |
---|
239 | PRINT_MACRO(MPW_CPLUS); |
---|
240 | PRINT_MACRO(MPW_C); |
---|
241 | PRINT_MACRO(__MC601); |
---|
242 | PRINT_MACRO(__POWERPC); |
---|
243 | PRINT_MACRO(__useAppleExts__); |
---|
244 | PRINT_MACRO(powerc); |
---|
245 | PRINT_MACRO(MC68000); |
---|
246 | PRINT_MACRO(THINK_PLUS); |
---|
247 | PRINT_MACRO(mc68881); |
---|
248 | PRINT_MACRO(__FAR_CODE__); |
---|
249 | PRINT_MACRO(__FAR_DATA__); |
---|
250 | PRINT_MACRO(__CFM68K__); |
---|
251 | // EDG |
---|
252 | PRINT_MACRO(__EDG__); |
---|
253 | PRINT_MACRO(__EDG_VERSION__); |
---|
254 | PRINT_MACRO(c_plusplus); // indication for strict mode |
---|
255 | PRINT_MACRO(_BOOL); |
---|
256 | PRINT_MACRO(_EXPLICIT); |
---|
257 | PRINT_MACRO(__SIGNED_CHARS__); |
---|
258 | PRINT_MACRO(_TYPENAME); |
---|
259 | PRINT_MACRO(_WCHAR_T); |
---|
260 | PRINT_MACRO(__ARRAY_OPERATORS); |
---|
261 | PRINT_MACRO(__EDG_ABI_COMPATIBILITY_VERSION); |
---|
262 | PRINT_MACRO(__EDG_IMPLICIT_USING_STD); |
---|
263 | PRINT_MACRO(__EDG_RUNTIME_USES_NAMESPACES); |
---|
264 | PRINT_MACRO(__BOOL_DEFINED); |
---|
265 | PRINT_MACRO(__RTTI); |
---|
266 | PRINT_MACRO(__PLACEMENT_DELETE); |
---|
267 | PRINT_MACRO(__NO_LONG_LONG); |
---|
268 | |
---|
269 | // misc compilers not covered so far: |
---|
270 | PRINT_MACRO(__ICC); |
---|
271 | PRINT_MACRO(__ICL); |
---|
272 | PRINT_MACRO(__ECC); |
---|
273 | PRINT_MACRO(__INTEL_COMPILER); |
---|
274 | PRINT_MACRO(__USLC__); |
---|
275 | PRINT_MACRO(__DECCXX); |
---|
276 | PRINT_MACRO(__IBMCPP__); |
---|
277 | PRINT_MACRO(_REENTRANT); |
---|
278 | PRINT_MACRO(_PTHREADS); |
---|
279 | PRINT_MACRO(__STDC_HOSTED__); |
---|
280 | PRINT_MACRO(__COMO__); |
---|
281 | PRINT_MACRO(__COMO_VERSION__); |
---|
282 | PRINT_MACRO(__DM__); |
---|
283 | PRINT_MACRO(__osf__); |
---|
284 | PRINT_MACRO(__OSF__); |
---|
285 | } |
---|
286 | |
---|
287 | void print_stdlib_macros() |
---|
288 | { |
---|
289 | std::cout << BOOST_STDLIB << std::endl; |
---|
290 | #ifdef _RWSTD_VER |
---|
291 | // Rogue Wave 2.x config options: |
---|
292 | PRINT_MACRO(__NO_EDG_EXCEPTION_CLASSES); |
---|
293 | PRINT_MACRO(_RWSTD_ALLOCATOR); |
---|
294 | PRINT_MACRO(_RWSTD_BAD_ALLOC_DEFINED); |
---|
295 | PRINT_MACRO(_RWSTD_BAD_EXCEPTION_DEFINED); |
---|
296 | PRINT_MACRO(_RWSTD_BOUNDS_CHECKING); |
---|
297 | PRINT_MACRO(_RWSTD_COMPILE_INSTANTIATE); |
---|
298 | PRINT_MACRO(_RWSTD_DEFAULT_PRECISION); |
---|
299 | PRINT_MACRO(_RWSTD_EXCEPTION_DEFINED); |
---|
300 | PRINT_MACRO(_RWSTD_EXCEPTION_HANDLER_IN_STD); |
---|
301 | PRINT_MACRO(_RWSTD_EXCEPTION_PREDEFINED); |
---|
302 | PRINT_MACRO(_RWSTD_FLT_ROUNDS_IS_CONSTANT); |
---|
303 | PRINT_MACRO(_RWSTD_LOCALIZED_ERRORS); |
---|
304 | PRINT_MACRO(_RWSTD_MESSAGE); |
---|
305 | PRINT_MACRO(_RWSTD_MUTEXATTR_DEFAULT); |
---|
306 | PRINT_MACRO(_RWSTD_NO_ANSI_SPRINTF); |
---|
307 | PRINT_MACRO(_RWSTD_NO_ARG_MATCH); |
---|
308 | PRINT_MACRO(_RWSTD_NO_BAD_CAST); |
---|
309 | PRINT_MACRO(_RWSTD_NO_BASE_CLASS_MATCH); |
---|
310 | PRINT_MACRO(_RWSTD_NO_BOOL); |
---|
311 | PRINT_MACRO(_RWSTD_NO_BUILTIN_CTOR); |
---|
312 | PRINT_MACRO(_RWSTD_NO_CATOPEN_CATGETS); |
---|
313 | PRINT_MACRO(_RWSTD_NO_CLASS_PARTIAL_SPEC); |
---|
314 | PRINT_MACRO(_RWSTD_NO_COMPLEX_DEFAULT_TEMPLATES); |
---|
315 | PRINT_MACRO(_RWSTD_NO_COMPLICATED_EXCEPTIONS); |
---|
316 | PRINT_MACRO(_RWSTD_NO_COMPLICATED_TYPEDEF); |
---|
317 | PRINT_MACRO(_RWSTD_NO_CONST_INST); |
---|
318 | PRINT_MACRO(_RWSTD_NO_CTOR_RETURN); |
---|
319 | PRINT_MACRO(_RWSTD_NO_DEFAULT_FOR_TPARAM); |
---|
320 | PRINT_MACRO(_RWSTD_NO_DEFAULT_TEMPLATE_ARGS); |
---|
321 | PRINT_MACRO(_RWSTD_NO_DESTROY_BUILTIN); |
---|
322 | PRINT_MACRO(_RWSTD_NO_DESTROY_NONBUILTIN); |
---|
323 | PRINT_MACRO(_RWSTD_NO_EMBEDDED_TYPEDEF); |
---|
324 | PRINT_MACRO(_RWSTD_NO_EX_SPEC); |
---|
325 | PRINT_MACRO(_RWSTD_NO_EXCEPTIONS); |
---|
326 | PRINT_MACRO(_RWSTD_NO_EXPLICIT); |
---|
327 | PRINT_MACRO(_RWSTD_NO_EXPLICIT_ARG); |
---|
328 | PRINT_MACRO(_RWSTD_NO_EXPLICIT_FUNC_INSTANTIATION); |
---|
329 | PRINT_MACRO(_RWSTD_NO_EXPLICIT_INSTANTIATION); |
---|
330 | PRINT_MACRO(_RWSTD_NO_EXTENSION); |
---|
331 | PRINT_MACRO(_RWSTD_NO_FORWARD_SPECIALIZATIONS); |
---|
332 | PRINT_MACRO(_RWSTD_NO_FPOS_T); |
---|
333 | PRINT_MACRO(_RWSTD_NO_FRIEND_TEMPLATES); |
---|
334 | PRINT_MACRO(_RWSTD_NO_FUNC_PARTIAL_SPEC); |
---|
335 | PRINT_MACRO(_RWSTD_NO_GETTIMEOFDAY); |
---|
336 | PRINT_MACRO(_RWSTD_NO_GLOBAL_TZ); |
---|
337 | PRINT_MACRO(_RWSTD_NO_INHERITED_TYPEDEFS); |
---|
338 | PRINT_MACRO(_RWSTD_NO_INIT_CONST_TEMPLATE_REF_ARG); |
---|
339 | PRINT_MACRO(_RWSTD_NO_INT_TYPEDEF); |
---|
340 | PRINT_MACRO(_RWSTD_NO_LDIV); |
---|
341 | PRINT_MACRO(_RWSTD_NO_LEADING_UNDERSCORE); |
---|
342 | PRINT_MACRO(_RWSTD_NO_LOCALE); |
---|
343 | PRINT_MACRO(_RWSTD_NO_LONG_NAME); |
---|
344 | PRINT_MACRO(_RWSTD_NO_LONGDOUBLE); |
---|
345 | PRINT_MACRO(_RWSTD_NO_MBSTATE_T); |
---|
346 | PRINT_MACRO(_RWSTD_NO_MEM_CLASS_TEMPLATES); |
---|
347 | PRINT_MACRO(_RWSTD_NO_MEMBER_TEMPLATES); |
---|
348 | PRINT_MACRO(_RWSTD_NO_MEMBER_TYPE_TPARAM); |
---|
349 | PRINT_MACRO(_RWSTD_NO_MEMBER_WO_DEF_CTOR); |
---|
350 | PRINT_MACRO(_RWSTD_NO_MEMMOVE); |
---|
351 | PRINT_MACRO(_RWSTD_NO_MULTI_DIM_ARRAY); |
---|
352 | PRINT_MACRO(_RWSTD_NO_MUTABLE); |
---|
353 | PRINT_MACRO(_RWSTD_NO_NAME_INJECTION); |
---|
354 | PRINT_MACRO(_RWSTD_NO_NAMESPACE); |
---|
355 | PRINT_MACRO(_RWSTD_NO_NESTING_TEMPLATES); |
---|
356 | PRINT_MACRO(_RWSTD_NO_NEW_BRACKETS); |
---|
357 | PRINT_MACRO(_RWSTD_NO_NEW_DECL); |
---|
358 | PRINT_MACRO(_RWSTD_NO_NEW_HEADER); |
---|
359 | PRINT_MACRO(_RWSTD_NO_NEW_TEMPLATE_SYNTAX); |
---|
360 | PRINT_MACRO(_RWSTD_NO_NONCLASS_ARROW_RETURN); |
---|
361 | PRINT_MACRO(_RWSTD_NO_NONTYPE_ARGS); |
---|
362 | PRINT_MACRO(_RWSTD_NO_ONLY_NEEDED_INSTANTIATION); |
---|
363 | PRINT_MACRO(_RWSTD_NO_OVERLOAD_C_POW); |
---|
364 | PRINT_MACRO(_RWSTD_NO_OVERLOAD_OF_TEMPLATE_FUNCTION); |
---|
365 | PRINT_MACRO(_RWSTD_NO_OVERLOAD_WCHAR); |
---|
366 | PRINT_MACRO(_RWSTD_NO_PART_SPEC_OVERLOAD); |
---|
367 | PRINT_MACRO(_RWSTD_NO_RET_TEMPLATE); |
---|
368 | PRINT_MACRO(_RWSTD_NO_SIMPLE_DEFAULT_TEMPLATES); |
---|
369 | PRINT_MACRO(_RWSTD_NO_STATIC_CAST); |
---|
370 | PRINT_MACRO(_RWSTD_NO_STATIC_DEF); |
---|
371 | PRINT_MACRO(_RWSTD_NO_STATIC_DEF2); |
---|
372 | PRINT_MACRO(_RWSTD_NO_STATIC_DEF3); |
---|
373 | PRINT_MACRO(_RWSTD_NO_STATIC_MEM_DEF); |
---|
374 | PRINT_MACRO(_RWSTD_NO_STI_SIMPLE); |
---|
375 | PRINT_MACRO(_RWSTD_NO_STI_TEMPLATE); |
---|
376 | PRINT_MACRO(_RWSTD_NO_STREAM_LONG_DOUBLE); |
---|
377 | PRINT_MACRO(_RWSTD_NO_STRFTIME_CAPC); |
---|
378 | PRINT_MACRO(_RWSTD_NO_STRICT_TEMPLATE_INSTANTIATE); |
---|
379 | PRINT_MACRO(_RWSTD_NO_SWPRINTF); |
---|
380 | PRINT_MACRO(_RWSTD_NO_TEMPLATE_ON_RETURN_TYPE); |
---|
381 | PRINT_MACRO(_RWSTD_NO_TEMPLATE_TEMPLATE); |
---|
382 | PRINT_MACRO(_RWSTD_NO_THREADS); |
---|
383 | PRINT_MACRO(_RWSTD_NO_THROW_SPEC_ON_NEW); |
---|
384 | PRINT_MACRO(_RWSTD_NO_THROW_WITH_SHARED); |
---|
385 | PRINT_MACRO(_RWSTD_NO_TYPEDEF_INST); |
---|
386 | PRINT_MACRO(_RWSTD_NO_TYPEDEF_OVERLOAD); |
---|
387 | PRINT_MACRO(_RWSTD_NO_TYPENAME); |
---|
388 | PRINT_MACRO(_RWSTD_NO_UNDEFINED_FRIEND); |
---|
389 | PRINT_MACRO(_RWSTD_NO_UNINITIALIZED_STATIC_DEF); |
---|
390 | PRINT_MACRO(_RWSTD_NO_WCHAR_H); |
---|
391 | PRINT_MACRO(_RWSTD_NO_WCTYPE_H); |
---|
392 | PRINT_MACRO(_RWSTD_NO_WIDE_CHAR); |
---|
393 | PRINT_MACRO(_RWSTD_NO_WINT_TYPE); |
---|
394 | PRINT_MACRO(_RWSTD_NO_WSTR); |
---|
395 | PRINT_MACRO(_RWSTD_NOT_ALL_WSTR_CFUNCTIONS); |
---|
396 | PRINT_MACRO(_RWSTD_POSIX_D10_THREADS); |
---|
397 | PRINT_MACRO(_RWSTD_POSIX_THREADS); |
---|
398 | PRINT_MACRO(_RWSTD_REQUIRES_IEEEFP); |
---|
399 | PRINT_MACRO(_RWSTD_SOLARIS_THREADS); |
---|
400 | PRINT_MACRO(_RWSTD_STRUCT_TM_TZ); |
---|
401 | PRINT_MACRO(_RWSTD_WIDE_STRING_NULL_PROBLEM); |
---|
402 | #elif defined(__STD_RWCOMPILER_H__) |
---|
403 | // Rogue Wave 1.x std lib: |
---|
404 | PRINT_MACRO(__NO_EDG_EXCEPTION_CLASSES); |
---|
405 | PRINT_MACRO(RWSTD_ALLOCATOR); |
---|
406 | PRINT_MACRO(RWSTD_BAD_ALLOC_DEFINED); |
---|
407 | PRINT_MACRO(RWSTD_BAD_EXCEPTION_DEFINED); |
---|
408 | PRINT_MACRO(RWSTD_BOUNDS_CHECKING); |
---|
409 | PRINT_MACRO(RWSTD_COMPILE_INSTANTIATE); |
---|
410 | PRINT_MACRO(RWSTD_DEFAULT_PRECISION); |
---|
411 | PRINT_MACRO(RWSTD_EXCEPTION_DEFINED); |
---|
412 | PRINT_MACRO(RWSTD_EXCEPTION_HANDLER_IN_STD); |
---|
413 | PRINT_MACRO(RWSTD_EXCEPTION_PREDEFINED); |
---|
414 | PRINT_MACRO(RWSTD_FLT_ROUNDS_IS_CONSTANT); |
---|
415 | PRINT_MACRO(RWSTD_LOCALIZED_ERRORS); |
---|
416 | PRINT_MACRO(RWSTD_MESSAGE); |
---|
417 | PRINT_MACRO(RWSTD_MUTEXATTR_DEFAULT); |
---|
418 | PRINT_MACRO(RWSTD_NO_ANSI_SPRINTF); |
---|
419 | PRINT_MACRO(RWSTD_NO_ARG_MATCH); |
---|
420 | PRINT_MACRO(RWSTD_NO_BAD_CAST); |
---|
421 | PRINT_MACRO(RWSTD_NO_BASE_CLASS_MATCH); |
---|
422 | PRINT_MACRO(RWSTD_NO_BOOL); |
---|
423 | PRINT_MACRO(RWSTD_NO_BUILTIN_CTOR); |
---|
424 | PRINT_MACRO(RWSTD_NO_CATOPEN_CATGETS); |
---|
425 | PRINT_MACRO(RWSTD_NO_CLASS_PARTIAL_SPEC); |
---|
426 | PRINT_MACRO(RWSTD_NO_COMPLEX_DEFAULT_TEMPLATES); |
---|
427 | PRINT_MACRO(RWSTD_NO_COMPLICATED_EXCEPTIONS); |
---|
428 | PRINT_MACRO(RWSTD_NO_COMPLICATED_TYPEDEF); |
---|
429 | PRINT_MACRO(RWSTD_NO_CONST_INST); |
---|
430 | PRINT_MACRO(RWSTD_NO_CTOR_RETURN); |
---|
431 | PRINT_MACRO(RWSTD_NO_DEFAULT_FOR_TPARAM); |
---|
432 | PRINT_MACRO(RWSTD_NO_DEFAULT_TEMPLATE_ARGS); |
---|
433 | PRINT_MACRO(RWSTD_NO_DESTROY_BUILTIN); |
---|
434 | PRINT_MACRO(RWSTD_NO_DESTROY_NONBUILTIN); |
---|
435 | PRINT_MACRO(RWSTD_NO_EMBEDDED_TYPEDEF); |
---|
436 | PRINT_MACRO(RWSTD_NO_EX_SPEC); |
---|
437 | PRINT_MACRO(RWSTD_NO_EXCEPTIONS); |
---|
438 | PRINT_MACRO(RWSTD_NO_EXPLICIT); |
---|
439 | PRINT_MACRO(RWSTD_NO_EXPLICIT_ARG); |
---|
440 | PRINT_MACRO(RWSTD_NO_EXPLICIT_FUNC_INSTANTIATION); |
---|
441 | PRINT_MACRO(RWSTD_NO_EXPLICIT_INSTANTIATION); |
---|
442 | PRINT_MACRO(RWSTD_NO_EXTENSION); |
---|
443 | PRINT_MACRO(RWSTD_NO_FORWARD_SPECIALIZATIONS); |
---|
444 | PRINT_MACRO(RWSTD_NO_FPOS_T); |
---|
445 | PRINT_MACRO(RWSTD_NO_FRIEND_TEMPLATES); |
---|
446 | PRINT_MACRO(RWSTD_NO_FUNC_PARTIAL_SPEC); |
---|
447 | PRINT_MACRO(RWSTD_NO_GETTIMEOFDAY); |
---|
448 | PRINT_MACRO(RWSTD_NO_GLOBAL_TZ); |
---|
449 | PRINT_MACRO(RWSTD_NO_INHERITED_TYPEDEFS); |
---|
450 | PRINT_MACRO(RWSTD_NO_INIT_CONST_TEMPLATE_REF_ARG); |
---|
451 | PRINT_MACRO(RWSTD_NO_INT_TYPEDEF); |
---|
452 | PRINT_MACRO(RWSTD_NO_LDIV); |
---|
453 | PRINT_MACRO(RWSTD_NO_LEADING_UNDERSCORE); |
---|
454 | PRINT_MACRO(RWSTD_NO_LOCALE); |
---|
455 | PRINT_MACRO(RWSTD_NO_LONG_NAME); |
---|
456 | PRINT_MACRO(RWSTD_NO_LONGDOUBLE); |
---|
457 | PRINT_MACRO(RWSTD_NO_MBSTATE_T); |
---|
458 | PRINT_MACRO(RWSTD_NO_MEM_CLASS_TEMPLATES); |
---|
459 | PRINT_MACRO(RWSTD_NO_MEMBER_TEMPLATES); |
---|
460 | PRINT_MACRO(RWSTD_NO_MEMBER_TYPE_TPARAM); |
---|
461 | PRINT_MACRO(RWSTD_NO_MEMBER_WO_DEF_CTOR); |
---|
462 | PRINT_MACRO(RWSTD_NO_MEMMOVE); |
---|
463 | PRINT_MACRO(RWSTD_NO_MULTI_DIM_ARRAY); |
---|
464 | PRINT_MACRO(RWSTD_NO_MUTABLE); |
---|
465 | PRINT_MACRO(RWSTD_NO_NAME_INJECTION); |
---|
466 | PRINT_MACRO(RWSTD_NO_NAMESPACE); |
---|
467 | PRINT_MACRO(RWSTD_NO_NESTING_TEMPLATES); |
---|
468 | PRINT_MACRO(RWSTD_NO_NEW_BRACKETS); |
---|
469 | PRINT_MACRO(RWSTD_NO_NEW_DECL); |
---|
470 | PRINT_MACRO(RWSTD_NO_NEW_HEADER); |
---|
471 | PRINT_MACRO(RWSTD_NO_NEW_TEMPLATE_SYNTAX); |
---|
472 | PRINT_MACRO(RWSTD_NO_NONCLASS_ARROW_RETURN); |
---|
473 | PRINT_MACRO(RWSTD_NO_NONTYPE_ARGS); |
---|
474 | PRINT_MACRO(RWSTD_NO_ONLY_NEEDED_INSTANTIATION); |
---|
475 | PRINT_MACRO(RWSTD_NO_OVERLOAD_C_POW); |
---|
476 | PRINT_MACRO(RWSTD_NO_OVERLOAD_OF_TEMPLATE_FUNCTION); |
---|
477 | PRINT_MACRO(RWSTD_NO_OVERLOAD_WCHAR); |
---|
478 | PRINT_MACRO(RWSTD_NO_PART_SPEC_OVERLOAD); |
---|
479 | PRINT_MACRO(RWSTD_NO_RET_TEMPLATE); |
---|
480 | PRINT_MACRO(RWSTD_NO_SIMPLE_DEFAULT_TEMPLATES); |
---|
481 | PRINT_MACRO(RWSTD_NO_STATIC_CAST); |
---|
482 | PRINT_MACRO(RWSTD_NO_STATIC_DEF); |
---|
483 | PRINT_MACRO(RWSTD_NO_STATIC_DEF2); |
---|
484 | PRINT_MACRO(RWSTD_NO_STATIC_DEF3); |
---|
485 | PRINT_MACRO(RWSTD_NO_STATIC_MEM_DEF); |
---|
486 | PRINT_MACRO(RWSTD_NO_STI_SIMPLE); |
---|
487 | PRINT_MACRO(RWSTD_NO_STI_TEMPLATE); |
---|
488 | PRINT_MACRO(RWSTD_NO_STREAM_LONG_DOUBLE); |
---|
489 | PRINT_MACRO(RWSTD_NO_STRFTIME_CAPC); |
---|
490 | PRINT_MACRO(RWSTD_NO_STRICT_TEMPLATE_INSTANTIATE); |
---|
491 | PRINT_MACRO(RWSTD_NO_SWPRINTF); |
---|
492 | PRINT_MACRO(RWSTD_NO_TEMPLATE_ON_RETURN_TYPE); |
---|
493 | PRINT_MACRO(RWSTD_NO_TEMPLATE_TEMPLATE); |
---|
494 | PRINT_MACRO(RWSTD_NO_THREADS); |
---|
495 | PRINT_MACRO(RWSTD_NO_THROW_SPEC_ON_NEW); |
---|
496 | PRINT_MACRO(RWSTD_NO_THROW_WITH_SHARED); |
---|
497 | PRINT_MACRO(RWSTD_NO_TYPEDEF_INST); |
---|
498 | PRINT_MACRO(RWSTD_NO_TYPEDEF_OVERLOAD); |
---|
499 | PRINT_MACRO(RWSTD_NO_TYPENAME); |
---|
500 | PRINT_MACRO(RWSTD_NO_UNDEFINED_FRIEND); |
---|
501 | PRINT_MACRO(RWSTD_NO_UNINITIALIZED_STATIC_DEF); |
---|
502 | PRINT_MACRO(RWSTD_NO_WCHAR_H); |
---|
503 | PRINT_MACRO(RWSTD_NO_WCTYPE_H); |
---|
504 | PRINT_MACRO(RWSTD_NO_WIDE_CHAR); |
---|
505 | PRINT_MACRO(RWSTD_NO_WINT_TYPE); |
---|
506 | PRINT_MACRO(RWSTD_NO_WSTR); |
---|
507 | PRINT_MACRO(RWSTD_NOT_ALL_WSTR_CFUNCTIONS); |
---|
508 | PRINT_MACRO(RWSTD_POSIX_D10_THREADS); |
---|
509 | PRINT_MACRO(RWSTD_POSIX_THREADS); |
---|
510 | PRINT_MACRO(RWSTD_REQUIRES_IEEEFP); |
---|
511 | PRINT_MACRO(RWSTD_SOLARIS_THREADS); |
---|
512 | PRINT_MACRO(RWSTD_STRUCT_TM_TZ); |
---|
513 | PRINT_MACRO(RWSTD_WIDE_STRING_NULL_PROBLEM); |
---|
514 | #endif |
---|
515 | // Dinkumware options: |
---|
516 | PRINT_MACRO(_CPPLIB_VER); |
---|
517 | PRINT_MACRO(_GLOBAL_USING); |
---|
518 | PRINT_MACRO(_HAS_EXCEPTIONS); |
---|
519 | PRINT_MACRO(_HAS_MEMBER_TEMPLATES_REBIND); |
---|
520 | PRINT_MACRO(_HAS_TEMPLATE_PARTIAL_ORDERING); |
---|
521 | // STLPort and generic SGI STL options: |
---|
522 | PRINT_MACRO(__SGI_STL_NO_ARROW_OPERATOR); |
---|
523 | PRINT_MACRO(__SGI_STL_OWN_IOSTREAMS); |
---|
524 | PRINT_MACRO(__SGI_STL_PORT); |
---|
525 | PRINT_MACRO(__STL_AUTOMATIC_TYPE_TRAITS); |
---|
526 | PRINT_MACRO(__STL_BASE_MATCH_BUG); |
---|
527 | PRINT_MACRO(__STL_BASE_TYPEDEF_BUG); |
---|
528 | PRINT_MACRO(__STL_BASE_TYPEDEF_OUTSIDE_BUG); |
---|
529 | PRINT_MACRO(__STL_BROKEN_USING_DIRECTIVE); |
---|
530 | PRINT_MACRO(__STL_CONST_CONSTRUCTOR_BUG); |
---|
531 | PRINT_MACRO(__STL_DEBUG); |
---|
532 | PRINT_MACRO(__STL_DEBUG_ALLOC); |
---|
533 | PRINT_MACRO(__STL_DEFAULT_CONSTRUCTOR_BUG); |
---|
534 | PRINT_MACRO(__STL_DEFAULT_TYPE_PARAM); |
---|
535 | PRINT_MACRO(__STL_DONT_REDEFINE_STD); |
---|
536 | PRINT_MACRO(__STL_DONT_USE_BOOL_TYPEDEF); |
---|
537 | PRINT_MACRO(__STL_HAS_NO_EXCEPTIONS); |
---|
538 | PRINT_MACRO(__STL_HAS_NO_NAMESPACES); |
---|
539 | PRINT_MACRO(__STL_HAS_NO_NEW_C_HEADERS); |
---|
540 | PRINT_MACRO(__STL_HAS_NO_NEW_IOSTREAMS); |
---|
541 | PRINT_MACRO(__STL_IMPORT_VENDOR_CSTD); |
---|
542 | PRINT_MACRO(__STL_LIMITED_DEFAULT_TEMPLATES); |
---|
543 | PRINT_MACRO(__STL_LINK_TIME_INSTANTIATION); |
---|
544 | PRINT_MACRO(__STL_LONG_LONG); |
---|
545 | PRINT_MACRO(__STL_LOOP_INLINE_PROBLEMS); |
---|
546 | PRINT_MACRO(__STL_MEMBER_POINTER_PARAM_BUG); |
---|
547 | PRINT_MACRO(__STL_NEED_EXPLICIT); |
---|
548 | PRINT_MACRO(__STL_NEED_MUTABLE); |
---|
549 | PRINT_MACRO(__STL_NEED_TYPENAME); |
---|
550 | PRINT_MACRO(__STL_NESTED_TYPE_PARAM_BUG); |
---|
551 | PRINT_MACRO(__STL_NO_BAD_ALLOC); |
---|
552 | PRINT_MACRO(__STL_NO_BOOL); |
---|
553 | PRINT_MACRO(__STL_NO_CLASS_PARTIAL_SPECIALIZATION); |
---|
554 | PRINT_MACRO(__STL_NO_CSTD_FUNCTION_IMPORTS); |
---|
555 | PRINT_MACRO(__STL_NO_DEFAULT_NON_TYPE_PARAM); |
---|
556 | PRINT_MACRO(__STL_NO_EXCEPTION_HEADER); |
---|
557 | PRINT_MACRO(__STL_NO_EXCEPTION_SPEC); |
---|
558 | PRINT_MACRO(__STL_NO_EXCEPTIONS); |
---|
559 | PRINT_MACRO(__STL_NO_EXPLICIT_FUNCTION_TMPL_ARGS); |
---|
560 | PRINT_MACRO(__STL_NO_FRIEND_TEMPLATES); |
---|
561 | PRINT_MACRO(__STL_NO_FUNCTION_TMPL_PARTIAL_ORDER); |
---|
562 | PRINT_MACRO(__STL_NO_IOSTREAMS); |
---|
563 | PRINT_MACRO(__STL_NO_LONG_DOUBLE); |
---|
564 | PRINT_MACRO(__STL_NO_MEMBER_TEMPLATE_CLASSES); |
---|
565 | PRINT_MACRO(__STL_NO_MEMBER_TEMPLATE_KEYWORD); |
---|
566 | PRINT_MACRO(__STL_NO_MEMBER_TEMPLATES); |
---|
567 | PRINT_MACRO(__STL_NO_METHOD_SPECIALIZATION); |
---|
568 | PRINT_MACRO(__STL_NO_NAMESPACES); |
---|
569 | PRINT_MACRO(__STL_NO_NEW_IOSTREAMS); |
---|
570 | PRINT_MACRO(__STL_NO_NEW_NEW_HEADER); |
---|
571 | PRINT_MACRO(__STL_NO_NEW_STYLE_CASTS); |
---|
572 | PRINT_MACRO(__STL_NO_PARTIAL_SPECIALIZATION_SYNTAX); |
---|
573 | PRINT_MACRO(__STL_NO_QUALIFIED_FRIENDS); |
---|
574 | PRINT_MACRO(__STL_NO_RELOPS_NAMESPACE); |
---|
575 | PRINT_MACRO(__STL_NO_SGI_IOSTREAMS); |
---|
576 | PRINT_MACRO(__STL_NO_STATIC_TEMPLATE_DATA); |
---|
577 | PRINT_MACRO(__STL_NO_TEMPLATE_CONVERSIONS); |
---|
578 | PRINT_MACRO(__STL_NO_WCHAR_T); |
---|
579 | PRINT_MACRO(__STL_NON_TYPE_TMPL_PARAM_BUG); |
---|
580 | PRINT_MACRO(__STL_NONTEMPL_BASE_MATCH_BUG); |
---|
581 | PRINT_MACRO(__STL_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS); |
---|
582 | PRINT_MACRO(__STL_RAND48); |
---|
583 | PRINT_MACRO(__STL_STATIC_ARRAY_BUG); |
---|
584 | PRINT_MACRO(__STL_STATIC_CONST_INIT_BUG); |
---|
585 | PRINT_MACRO(__STL_STATIC_CONST_INIT_BUG); |
---|
586 | PRINT_MACRO(__STL_THROW_RETURN_BUG); |
---|
587 | PRINT_MACRO(__STL_TRIVIAL_CONSTRUCTOR_BUG); |
---|
588 | PRINT_MACRO(__STL_TRIVIAL_DESTRUCTOR_BUG); |
---|
589 | PRINT_MACRO(__STL_UNINITIALIZABLE_PRIVATE); |
---|
590 | PRINT_MACRO(__STL_USE_ABBREVS); |
---|
591 | PRINT_MACRO(__STL_USE_DEFALLOC); |
---|
592 | PRINT_MACRO(__STL_USE_MALLOC); |
---|
593 | PRINT_MACRO(__STL_USE_NEW_C_HEADERS); |
---|
594 | PRINT_MACRO(__STL_USE_NEW_IOSTREAMS); |
---|
595 | PRINT_MACRO(__STL_USE_NEWALLOC); |
---|
596 | PRINT_MACRO(__STL_USE_OWN_NAMESPACE); |
---|
597 | PRINT_MACRO(__STL_USE_SGI_ALLOCATORS); |
---|
598 | PRINT_MACRO(__STL_WCHAR_T_IS_USHORT); |
---|
599 | PRINT_MACRO(__STL_WEAK_ATTRIBUTE); |
---|
600 | PRINT_MACRO(__STL_YVALS_H); |
---|
601 | PRINT_MACRO(_NOTHREADS); |
---|
602 | PRINT_MACRO(_PTHREADS); |
---|
603 | #if defined(__SGI_STL_PORT) && (__SGI_STL_PORT > 0x0400) |
---|
604 | PRINT_MACRO(_STLP_AUTOMATIC_TYPE_TRAITS); |
---|
605 | PRINT_MACRO(_STLP_BASE_MATCH_BUG); |
---|
606 | PRINT_MACRO(_STLP_BASE_TYPEDEF_BUG); |
---|
607 | PRINT_MACRO(_STLP_BASE_TYPEDEF_OUTSIDE_BUG); |
---|
608 | PRINT_MACRO(_STLP_BROKEN_USING_DIRECTIVE); |
---|
609 | PRINT_MACRO(_STLP_CONST_CONSTRUCTOR_BUG); |
---|
610 | PRINT_MACRO(_STLP_DEBUG); |
---|
611 | PRINT_MACRO(_STLP_DEBUG_ALLOC); |
---|
612 | PRINT_MACRO(_STLP_DEFAULT_CONSTRUCTOR_BUG); |
---|
613 | PRINT_MACRO(_STLP_DEFAULT_TYPE_PARAM); |
---|
614 | PRINT_MACRO(_STLP_DONT_REDEFINE_STD); |
---|
615 | PRINT_MACRO(_STLP_DONT_USE_BOOL_TYPEDEF); |
---|
616 | PRINT_MACRO(_STLP_HAS_NO_EXCEPTIONS); |
---|
617 | PRINT_MACRO(_STLP_HAS_NO_NAMESPACES); |
---|
618 | PRINT_MACRO(_STLP_HAS_NO_NEW_C_HEADERS); |
---|
619 | PRINT_MACRO(_STLP_HAS_NO_NEW_IOSTREAMS); |
---|
620 | PRINT_MACRO(_STLP_IMPORT_VENDOR_CSTD); |
---|
621 | PRINT_MACRO(_STLP_LIMITED_DEFAULT_TEMPLATES); |
---|
622 | PRINT_MACRO(_STLP_LINK_TIME_INSTANTIATION); |
---|
623 | PRINT_MACRO(_STLP_LONG_LONG); |
---|
624 | PRINT_MACRO(_STLP_LOOP_INLINE_PROBLEMS); |
---|
625 | PRINT_MACRO(_STLP_MEMBER_POINTER_PARAM_BUG); |
---|
626 | PRINT_MACRO(_STLP_NEED_EXPLICIT); |
---|
627 | PRINT_MACRO(_STLP_NEED_MUTABLE); |
---|
628 | PRINT_MACRO(_STLP_NEED_TYPENAME); |
---|
629 | PRINT_MACRO(_STLP_NESTED_TYPE_PARAM_BUG); |
---|
630 | PRINT_MACRO(_STLP_NO_ARROW_OPERATOR); |
---|
631 | PRINT_MACRO(_STLP_NO_BAD_ALLOC); |
---|
632 | PRINT_MACRO(_STLP_NO_BOOL); |
---|
633 | PRINT_MACRO(_STLP_NO_CLASS_PARTIAL_SPECIALIZATION); |
---|
634 | PRINT_MACRO(_STLP_NO_CSTD_FUNCTION_IMPORTS); |
---|
635 | PRINT_MACRO(_STLP_NO_DEFAULT_NON_TYPE_PARAM); |
---|
636 | PRINT_MACRO(_STLP_NO_EXCEPTION_HEADER); |
---|
637 | PRINT_MACRO(_STLP_NO_EXCEPTION_SPEC); |
---|
638 | PRINT_MACRO(_STLP_NO_EXCEPTIONS); |
---|
639 | PRINT_MACRO(_STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS); |
---|
640 | PRINT_MACRO(_STLP_NO_FRIEND_TEMPLATES); |
---|
641 | PRINT_MACRO(_STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER); |
---|
642 | PRINT_MACRO(_STLP_NO_IOSTREAMS); |
---|
643 | PRINT_MACRO(_STLP_NO_LONG_DOUBLE); |
---|
644 | PRINT_MACRO(_STLP_NO_MEMBER_TEMPLATE_CLASSES); |
---|
645 | PRINT_MACRO(_STLP_NO_MEMBER_TEMPLATE_KEYWORD); |
---|
646 | PRINT_MACRO(_STLP_NO_MEMBER_TEMPLATES); |
---|
647 | PRINT_MACRO(_STLP_NO_METHOD_SPECIALIZATION); |
---|
648 | PRINT_MACRO(_STLP_NO_NAMESPACES); |
---|
649 | PRINT_MACRO(_STLP_NO_NEW_IOSTREAMS); |
---|
650 | PRINT_MACRO(_STLP_NO_NEW_NEW_HEADER); |
---|
651 | PRINT_MACRO(_STLP_NO_NEW_STYLE_CASTS); |
---|
652 | PRINT_MACRO(_STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX); |
---|
653 | PRINT_MACRO(_STLP_NO_QUALIFIED_FRIENDS); |
---|
654 | PRINT_MACRO(_STLP_NO_RELOPS_NAMESPACE); |
---|
655 | PRINT_MACRO(_STLP_NO_SGI_IOSTREAMS); |
---|
656 | PRINT_MACRO(_STLP_NO_STATIC_TEMPLATE_DATA); |
---|
657 | PRINT_MACRO(_STLP_NO_TEMPLATE_CONVERSIONS); |
---|
658 | PRINT_MACRO(_STLP_NO_WCHAR_T); |
---|
659 | PRINT_MACRO(_STLP_NON_TYPE_TMPL_PARAM_BUG); |
---|
660 | PRINT_MACRO(_STLP_NONTEMPL_BASE_MATCH_BUG); |
---|
661 | PRINT_MACRO(_STLP_OWN_IOSTREAMS); |
---|
662 | PRINT_MACRO(_STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS); |
---|
663 | PRINT_MACRO(_STLP_RAND48); |
---|
664 | PRINT_MACRO(_STLP_STATIC_ARRAY_BUG); |
---|
665 | PRINT_MACRO(_STLP_STATIC_CONST_INIT_BUG); |
---|
666 | PRINT_MACRO(_STLP_STATIC_CONST_INIT_BUG); |
---|
667 | PRINT_MACRO(_STLP_THROW_RETURN_BUG); |
---|
668 | PRINT_MACRO(_STLP_TRIVIAL_CONSTRUCTOR_BUG); |
---|
669 | PRINT_MACRO(_STLP_TRIVIAL_DESTRUCTOR_BUG); |
---|
670 | PRINT_MACRO(_STLP_UNINITIALIZABLE_PRIVATE); |
---|
671 | PRINT_MACRO(_STLP_USE_ABBREVS); |
---|
672 | PRINT_MACRO(_STLP_USE_DEFALLOC); |
---|
673 | PRINT_MACRO(_STLP_USE_MALLOC); |
---|
674 | PRINT_MACRO(_STLP_USE_NEW_C_HEADERS); |
---|
675 | PRINT_MACRO(_STLP_USE_NEWALLOC); |
---|
676 | PRINT_MACRO(_STLP_USE_OWN_NAMESPACE); |
---|
677 | PRINT_MACRO(_STLP_USE_SGI_ALLOCATORS); |
---|
678 | PRINT_MACRO(_STLP_WCHAR_T_IS_USHORT); |
---|
679 | PRINT_MACRO(_STLP_WEAK_ATTRIBUTE); |
---|
680 | PRINT_MACRO(_STLP_YVALS_H); |
---|
681 | #endif |
---|
682 | PRINT_MACRO(__GLIBCPP__); |
---|
683 | PRINT_MACRO(_GLIBCPP_USE_WCHAR_T); |
---|
684 | PRINT_MACRO(_GLIBCPP_VERSION); |
---|
685 | PRINT_MACRO(__GLIBCXX__); |
---|
686 | PRINT_MACRO(_GLIBCXX_USE_WCHAR_T); |
---|
687 | PRINT_MACRO(_GLIBCXX_VERSION); |
---|
688 | PRINT_MACRO(_GLIBCXX_USE_LONG_LONG); |
---|
689 | PRINT_MACRO(_GLIBCXX_USE_NLS); |
---|
690 | PRINT_MACRO(_GLIBCXX_USE_C99_MATH); |
---|
691 | PRINT_MACRO(_GLIBCXX_USE_C99); |
---|
692 | PRINT_MACRO(_GLIBCXX_CONCEPT_CHECKS); |
---|
693 | PRINT_MACRO(_GLIBCXX_USE_LFS); |
---|
694 | PRINT_MACRO(_GLIBCXX_SYMVER); |
---|
695 | PRINT_MACRO(_GLIBCXX_MEM_LIMITS); |
---|
696 | PRINT_MACRO(_GLIBCXX_HOSTED); |
---|
697 | PRINT_MACRO(_GLIBCXX_SJLJ_EXCEPTIONS); |
---|
698 | |
---|
699 | // Modena C++ standard library |
---|
700 | PRINT_MACRO(MSIPL_ANSI_HEADER); |
---|
701 | PRINT_MACRO(MSIPL_BOOL_BUILTIN); |
---|
702 | PRINT_MACRO(MSIPL_DEF_EXPLICIT); |
---|
703 | PRINT_MACRO(MSIPL_DEF_TEMPARG); |
---|
704 | PRINT_MACRO(MSIPL_EXPINST_ALLOWED); |
---|
705 | PRINT_MACRO(MSIPL_EXPLICIT_FUNC_TEMPLATE_ARG); |
---|
706 | PRINT_MACRO(MISPL_EXPLICIT_TEMPLATE_ARGUMENT); |
---|
707 | PRINT_MACRO(MSIPL_FUNC_TEMPLATE_DEFARG); |
---|
708 | PRINT_MACRO(MSIPL_MEMBER_TEMPLATE); |
---|
709 | PRINT_MACRO(MSIPL_MULTITHREAD); |
---|
710 | PRINT_MACRO(MSIPL_NON_TYPE_TEMPARG); |
---|
711 | PRINT_MACRO(MSIPL_PARTIAL_TEMPL); |
---|
712 | PRINT_MACRO(MSIPL_STATIC_CONST_INIT); |
---|
713 | PRINT_MACRO(MSIPL_TEMPL_NEWSPEC); |
---|
714 | PRINT_MACRO(MSIPL_TYPENAME); |
---|
715 | PRINT_MACRO(MSIPL_USING_NAMESPACE); |
---|
716 | PRINT_MACRO(MSIPL_WCHART); |
---|
717 | } |
---|
718 | |
---|
719 | void print_platform_macros() |
---|
720 | { |
---|
721 | std::cout << "Detected Platform: " << BOOST_PLATFORM << std::endl; |
---|
722 | // signedness: |
---|
723 | PRINT_SIGN(char); |
---|
724 | PRINT_SIGN(wchar_t); |
---|
725 | // byte ordering: |
---|
726 | PRINT_ORDER(short); |
---|
727 | PRINT_ORDER(int); |
---|
728 | PRINT_ORDER(long); |
---|
729 | // sizes: |
---|
730 | PRINT_EXPRESSION(sizeof(wchar_t)); |
---|
731 | PRINT_EXPRESSION(sizeof(short)); |
---|
732 | PRINT_EXPRESSION(sizeof(int)); |
---|
733 | PRINT_EXPRESSION(sizeof(long)); |
---|
734 | PRINT_EXPRESSION(sizeof(size_t)); |
---|
735 | PRINT_EXPRESSION(sizeof(ptrdiff_t)); |
---|
736 | PRINT_EXPRESSION(sizeof(void*)); |
---|
737 | PRINT_EXPRESSION(sizeof(void(*)(void))); |
---|
738 | PRINT_EXPRESSION(sizeof(float)); |
---|
739 | PRINT_EXPRESSION(sizeof(double)); |
---|
740 | PRINT_EXPRESSION(sizeof(long double)); |
---|
741 | // limits: |
---|
742 | PRINT_MACRO(CHAR_BIT); |
---|
743 | PRINT_MACRO(CHAR_MAX); |
---|
744 | PRINT_MACRO(WCHAR_MAX); |
---|
745 | PRINT_MACRO(SHRT_MAX); |
---|
746 | PRINT_MACRO(INT_MAX); |
---|
747 | PRINT_MACRO(LONG_MAX); |
---|
748 | PRINT_MACRO(LLONG_MAX); |
---|
749 | PRINT_MACRO(LONG_LONG_MAX); |
---|
750 | PRINT_MACRO(LONGLONG_MAX); |
---|
751 | PRINT_MACRO(ULLONG_MAX); // <boost/cstdint.hpp> uses these, so we need to know them |
---|
752 | PRINT_MACRO(ULONG_LONG_MAX); |
---|
753 | PRINT_MACRO(ULONGLONG_MAX); |
---|
754 | // general C99: |
---|
755 | PRINT_MACRO(__STDC_IEC_559__); |
---|
756 | PRINT_MACRO(__STDC_IEC_559_COMPLEX__); |
---|
757 | PRINT_MACRO(__STDC_ISO_10646__); |
---|
758 | // GNU: |
---|
759 | PRINT_MACRO(__GLIBC__); |
---|
760 | PRINT_MACRO(__GLIBC_MINOR__); |
---|
761 | PRINT_MACRO(__GNU_LIBRARY__); |
---|
762 | PRINT_MACRO(_BSD_SOURCE); |
---|
763 | PRINT_MACRO(_FILE_OFFSET_BITS); |
---|
764 | PRINT_MACRO(_GNU_SOURCE); |
---|
765 | PRINT_MACRO(_ISOC99_SOURCE); |
---|
766 | PRINT_MACRO(_ISOC9X_SOURCE); |
---|
767 | PRINT_MACRO(_LARGEFILE_SOURCE); |
---|
768 | PRINT_MACRO(_LARGEFILE64_SOURCE); |
---|
769 | PRINT_MACRO(_SVID_SOURCE); |
---|
770 | PRINT_MACRO(_THREAD_SAFE); |
---|
771 | PRINT_MACRO(_XOPEN_SOURCE_EXTENDED); |
---|
772 | PRINT_MACRO(XPG); |
---|
773 | // POSIX: |
---|
774 | PRINT_MACRO(_POSIX_ADVISORY_INFO); |
---|
775 | PRINT_MACRO(_POSIX_ASYNCHRONOUS_IO); |
---|
776 | PRINT_MACRO(_POSIX_BARRIERS); |
---|
777 | PRINT_MACRO(_POSIX_C_SOURCE); |
---|
778 | PRINT_MACRO(_POSIX_CHOWN_RESTRICTED); |
---|
779 | PRINT_MACRO(_POSIX_CLOCK_SELECTION); |
---|
780 | PRINT_MACRO(_POSIX_CPUTIME); |
---|
781 | PRINT_MACRO(_POSIX_FSYNC); |
---|
782 | PRINT_MACRO(_POSIX_JOB_CONTROL); |
---|
783 | PRINT_MACRO(_POSIX_MAPPED_FILES); |
---|
784 | PRINT_MACRO(_POSIX_MEMLOCK); |
---|
785 | PRINT_MACRO(_POSIX_MEMLOCK_RANGE); |
---|
786 | PRINT_MACRO(_POSIX_MEMORY_PROTECTION); |
---|
787 | PRINT_MACRO(_POSIX_MESSAGE_PASSING); |
---|
788 | PRINT_MACRO(_POSIX_MONOTONIC_CLOCK); |
---|
789 | PRINT_MACRO(_POSIX_NO_TRUNC); |
---|
790 | PRINT_MACRO(_POSIX_PRIORITIZED_IO); |
---|
791 | PRINT_MACRO(_POSIX_PRIORITY_SCHEDULING); |
---|
792 | PRINT_MACRO(_POSIX_RAW_SOCKETS); |
---|
793 | PRINT_MACRO(_POSIX_READER_WRITER_LOCKS); |
---|
794 | PRINT_MACRO(_POSIX_REALTIME_SIGNALS); |
---|
795 | PRINT_MACRO(_POSIX_REGEXP); |
---|
796 | PRINT_MACRO(_POSIX_SAVED_IDS); |
---|
797 | PRINT_MACRO(_POSIX_SEMAPHORES); |
---|
798 | PRINT_MACRO(_POSIX_SHARED_MEMORY_OBJECTS); |
---|
799 | PRINT_MACRO(_POSIX_SHELL); |
---|
800 | PRINT_MACRO(_POSIX_SOURCE); |
---|
801 | PRINT_MACRO(_POSIX_SPAWN); |
---|
802 | PRINT_MACRO(_POSIX_SPIN_LOCKS); |
---|
803 | PRINT_MACRO(_POSIX_SPORADIC_SERVER); |
---|
804 | PRINT_MACRO(_POSIX_SYNCHRONIZED_IO); |
---|
805 | PRINT_MACRO(_POSIX_THREAD_ATTR_STACKADDR); |
---|
806 | PRINT_MACRO(_POSIX_THREAD_ATTR_STACKSIZE); |
---|
807 | PRINT_MACRO(_POSIX_THREAD_CPUTIME); |
---|
808 | PRINT_MACRO(_POSIX_THREAD_PRIO_INHERIT); |
---|
809 | PRINT_MACRO(_POSIX_THREAD_PRIO_PROTECT); |
---|
810 | PRINT_MACRO(_POSIX_THREAD_PRIORITY_SCHEDULING); |
---|
811 | PRINT_MACRO(_POSIX_THREAD_PROCESS_SHARED); |
---|
812 | PRINT_MACRO(_POSIX_THREAD_SAFE_FUNCTIONS); |
---|
813 | PRINT_MACRO(_POSIX_THREAD_SPORADIC_SERVER); |
---|
814 | PRINT_MACRO(_POSIX_THREADS); |
---|
815 | PRINT_MACRO(_POSIX_TIMEOUTS); |
---|
816 | PRINT_MACRO(_POSIX_TIMERS); |
---|
817 | PRINT_MACRO(_POSIX_TRACE); |
---|
818 | PRINT_MACRO(_POSIX_TRACE_EVENT_FILTER); |
---|
819 | PRINT_MACRO(_POSIX_TRACE_INHERIT); |
---|
820 | PRINT_MACRO(_POSIX_TRACE_LOG); |
---|
821 | PRINT_MACRO(_POSIX_TYPED_MEMORY_OBJECTS); |
---|
822 | PRINT_MACRO(_POSIX_VDISABLE); |
---|
823 | PRINT_MACRO(_POSIX_VERSION); |
---|
824 | PRINT_MACRO(_POSIX2_C_BIND); |
---|
825 | PRINT_MACRO(_POSIX2_C_DEV); |
---|
826 | PRINT_MACRO(_POSIX2_CHAR_TERM); |
---|
827 | PRINT_MACRO(_POSIX2_FORT_DEV); |
---|
828 | PRINT_MACRO(_POSIX2_FORT_RUN); |
---|
829 | PRINT_MACRO(_POSIX2_LOCALEDEF); |
---|
830 | PRINT_MACRO(_POSIX2_PBS); |
---|
831 | PRINT_MACRO(_POSIX2_PBS_ACCOUNTING); |
---|
832 | PRINT_MACRO(_POSIX2_PBS_CHECKPOINT); |
---|
833 | PRINT_MACRO(_POSIX2_PBS_LOCATE); |
---|
834 | PRINT_MACRO(_POSIX2_PBS_MESSAGE); |
---|
835 | PRINT_MACRO(_POSIX2_PBS_TRACK); |
---|
836 | PRINT_MACRO(_POSIX2_SW_DEV); |
---|
837 | PRINT_MACRO(_POSIX2_UPE); |
---|
838 | PRINT_MACRO(_POSIX2_VERSION); |
---|
839 | PRINT_MACRO(_V6_ILP32_OFF32); |
---|
840 | PRINT_MACRO(_V6_ILP32_OFFBIG); |
---|
841 | PRINT_MACRO(_V6_LP64_OFF64); |
---|
842 | PRINT_MACRO(_V6_LPBIG_OFFBIG); |
---|
843 | PRINT_MACRO(_XBS5_ILP32_OFF32); |
---|
844 | PRINT_MACRO(_XBS5_ILP32_OFFBIG); |
---|
845 | PRINT_MACRO(_XBS5_LP64_OFF64); |
---|
846 | PRINT_MACRO(_XBS5_LPBIG_OFFBIG); |
---|
847 | PRINT_MACRO(_XOPEN_CRYPT); |
---|
848 | PRINT_MACRO(_XOPEN_ENH_I18N); |
---|
849 | PRINT_MACRO(_XOPEN_LEGACY); |
---|
850 | PRINT_MACRO(_XOPEN_REALTIME); |
---|
851 | PRINT_MACRO(_XOPEN_REALTIME_THREADS); |
---|
852 | PRINT_MACRO(_XOPEN_SHM); |
---|
853 | PRINT_MACRO(_XOPEN_SOURCE); |
---|
854 | PRINT_MACRO(_XOPEN_STREAMS); |
---|
855 | PRINT_MACRO(_XOPEN_UNIX); |
---|
856 | PRINT_MACRO(_XOPEN_VERSION); |
---|
857 | } |
---|
858 | |
---|
859 | void print_boost_macros() |
---|
860 | { |
---|
861 | std::cout << "Boost version " << BOOST_STRINGIZE(BOOST_VERSION) << std::endl; |
---|
862 | // config setup macros first: |
---|
863 | PRINT_MACRO(BOOST_USER_CONFIG); |
---|
864 | PRINT_MACRO(BOOST_COMPILER_CONFIG); |
---|
865 | PRINT_MACRO(BOOST_STDLIB_CONFIG); |
---|
866 | PRINT_MACRO(BOOST_PLATFORM_CONFIG); |
---|
867 | PRINT_MACRO(BOOST_NO_CONFIG); |
---|
868 | PRINT_MACRO(BOOST_NO_USER_CONFIG); |
---|
869 | PRINT_MACRO(BOOST_NO_COMPILER_CONFIG); |
---|
870 | PRINT_MACRO(BOOST_NO_STDLIB_CONFIG); |
---|
871 | PRINT_MACRO(BOOST_NO_PLATFORM_CONFIG); |
---|
872 | // then defect and feature macros: |
---|
873 | PRINT_MACRO(BOOST_BCB_PARTIAL_SPECIALIZATION_BUG); |
---|
874 | PRINT_MACRO(BOOST_DEDUCED_TYPENAME); |
---|
875 | PRINT_MACRO(BOOST_DISABLE_THREADS); |
---|
876 | PRINT_MACRO(BOOST_DISABLE_WIN32); |
---|
877 | PRINT_MACRO(BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL); |
---|
878 | PRINT_MACRO(BOOST_HAS_BETHREADS); |
---|
879 | PRINT_MACRO(BOOST_HAS_CLOCK_GETTIME); |
---|
880 | PRINT_MACRO(BOOST_HAS_DECLSPEC); |
---|
881 | PRINT_MACRO(BOOST_HAS_DIRENT_H); |
---|
882 | PRINT_MACRO(BOOST_HAS_FTIME); |
---|
883 | PRINT_MACRO(BOOST_HAS_GETTIMEOFDAY); |
---|
884 | PRINT_MACRO(BOOST_HAS_HASH); |
---|
885 | PRINT_MACRO(BOOST_HAS_LONG_LONG); |
---|
886 | PRINT_MACRO(BOOST_HAS_MACRO_USE_FACET); |
---|
887 | PRINT_MACRO(BOOST_HAS_MS_INT64); |
---|
888 | PRINT_MACRO(BOOST_HAS_NANOSLEEP); |
---|
889 | PRINT_MACRO(BOOST_HAS_NL_TYPES_H); |
---|
890 | PRINT_MACRO(BOOST_HAS_NRVO); |
---|
891 | PRINT_MACRO(BOOST_HAS_PARTIAL_STD_ALLOCATOR); |
---|
892 | PRINT_MACRO(BOOST_HAS_PTHREAD_DELAY_NP); |
---|
893 | PRINT_MACRO(BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE); |
---|
894 | PRINT_MACRO(BOOST_HAS_PTHREAD_YIELD); |
---|
895 | PRINT_MACRO(BOOST_HAS_PTHREADS); |
---|
896 | PRINT_MACRO(BOOST_HAS_SCHED_YIELD); |
---|
897 | PRINT_MACRO(BOOST_HAS_SIGACTION); |
---|
898 | PRINT_MACRO(BOOST_HAS_SGI_TYPE_TRAITS); |
---|
899 | PRINT_MACRO(BOOST_HAS_STDINT_H); |
---|
900 | PRINT_MACRO(BOOST_HAS_SLIST); |
---|
901 | PRINT_MACRO(BOOST_HAS_STLP_USE_FACET); |
---|
902 | PRINT_MACRO(BOOST_HAS_THREADS); |
---|
903 | PRINT_MACRO(BOOST_HAS_TWO_ARG_USE_FACET); |
---|
904 | PRINT_MACRO(BOOST_HAS_UNISTD_H); |
---|
905 | PRINT_MACRO(BOOST_HAS_WINTHREADS); |
---|
906 | PRINT_MACRO(BOOST_INTEL); |
---|
907 | PRINT_MACRO(BOOST_MSVC); |
---|
908 | PRINT_MACRO(BOOST_MSVC_STD_ITERATOR); |
---|
909 | PRINT_MACRO(BOOST_MSVC6_MEMBER_TEMPLATES); |
---|
910 | PRINT_MACRO(BOOST_NESTED_TEMPLATE); |
---|
911 | PRINT_MACRO(BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP); |
---|
912 | PRINT_MACRO(BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS); |
---|
913 | PRINT_MACRO(BOOST_NO_AUTO_PTR); |
---|
914 | PRINT_MACRO(BOOST_NO_CTYPE_FUNCTIONS); |
---|
915 | PRINT_MACRO(BOOST_NO_CV_SPECIALIZATIONS); |
---|
916 | PRINT_MACRO(BOOST_NO_CV_VOID_SPECIALIZATIONS); |
---|
917 | PRINT_MACRO(BOOST_NO_CWCHAR); |
---|
918 | PRINT_MACRO(BOOST_NO_CWCTYPE); |
---|
919 | PRINT_MACRO(BOOST_NO_DEDUCED_TYPENAME); |
---|
920 | PRINT_MACRO(BOOST_NO_DEPENDENT_NESTED_DERIVATIONS); |
---|
921 | PRINT_MACRO(BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS); |
---|
922 | PRINT_MACRO(BOOST_NO_EXCEPTIONS); |
---|
923 | PRINT_MACRO(BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS); |
---|
924 | PRINT_MACRO(BOOST_NO_FUNCTION_TEMPLATE_ORDERING); |
---|
925 | PRINT_MACRO(BOOST_NO_HASH); |
---|
926 | PRINT_MACRO(BOOST_NO_INCLASS_MEMBER_INITIALIZATION); |
---|
927 | PRINT_MACRO(BOOST_NO_INT64_T); |
---|
928 | PRINT_MACRO(BOOST_NO_INTEGRAL_INT64_T); |
---|
929 | PRINT_MACRO(BOOST_NO_INTRINSIC_WCHAR_T); |
---|
930 | PRINT_MACRO(BOOST_NO_IS_ABSTRACT); |
---|
931 | PRINT_MACRO(BOOST_NO_LIMITS); |
---|
932 | PRINT_MACRO(BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS); |
---|
933 | PRINT_MACRO(BOOST_NO_LONG_LONG_NUMERIC_LIMITS); |
---|
934 | PRINT_MACRO(BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS); |
---|
935 | PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATE_KEYWORD); |
---|
936 | PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATE_FRIENDS); |
---|
937 | PRINT_MACRO(BOOST_NO_MEMBER_TEMPLATES); |
---|
938 | PRINT_MACRO(BOOST_NO_MS_INT64_NUMERIC_LIMITS); |
---|
939 | PRINT_MACRO(BOOST_NO_OPERATORS_IN_NAMESPACE); |
---|
940 | PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_CONST); |
---|
941 | PRINT_MACRO(BOOST_NO_PRIVATE_IN_AGGREGATE); |
---|
942 | PRINT_MACRO(BOOST_NO_SFINAE); |
---|
943 | PRINT_MACRO(BOOST_NO_SLIST); |
---|
944 | PRINT_MACRO(BOOST_NO_STD_ALLOCATOR); |
---|
945 | PRINT_MACRO(BOOST_NO_STD_DISTANCE); |
---|
946 | PRINT_MACRO(BOOST_NO_STD_ITERATOR); |
---|
947 | PRINT_MACRO(BOOST_NO_STD_ITERATOR_TRAITS); |
---|
948 | PRINT_MACRO(BOOST_NO_STD_LOCALE); |
---|
949 | PRINT_MACRO(BOOST_NO_STD_MESSAGES); |
---|
950 | PRINT_MACRO(BOOST_NO_STD_MIN_MAX); |
---|
951 | PRINT_MACRO(BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN); |
---|
952 | PRINT_MACRO(BOOST_NO_STD_USE_FACET); |
---|
953 | PRINT_MACRO(BOOST_NO_STD_WSTREAMBUF); |
---|
954 | PRINT_MACRO(BOOST_NO_STD_WSTRING); |
---|
955 | PRINT_MACRO(BOOST_NO_STDC_NAMESPACE); |
---|
956 | PRINT_MACRO(BOOST_NO_STRINGSTREAM); |
---|
957 | PRINT_MACRO(BOOST_NO_SWPRINTF); |
---|
958 | PRINT_MACRO(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION); |
---|
959 | PRINT_MACRO(BOOST_NO_TEMPLATE_TEMPLATES); |
---|
960 | PRINT_MACRO(BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS); |
---|
961 | PRINT_MACRO(BOOST_NO_UNREACHABLE_RETURN_DETECTION); |
---|
962 | PRINT_MACRO(BOOST_NO_USING_TEMPLATE); |
---|
963 | PRINT_MACRO(BOOST_NO_VOID_RETURNS); |
---|
964 | PRINT_MACRO(BOOST_STD_EXTENSION_NAMESPACE); |
---|
965 | PRINT_MACRO(BOOST_UNREACHABLE_RETURN(0)); |
---|
966 | } |
---|
967 | |
---|
968 | void print_separator() |
---|
969 | { |
---|
970 | std::cout << |
---|
971 | "\n\n*********************************************************************\n\n"; |
---|
972 | } |
---|
973 | |
---|
974 | int main() |
---|
975 | { |
---|
976 | |
---|
977 | // boost compiler workaround defines |
---|
978 | print_compiler_macros(); |
---|
979 | print_separator(); |
---|
980 | print_stdlib_macros(); |
---|
981 | print_separator(); |
---|
982 | print_platform_macros(); |
---|
983 | print_separator(); |
---|
984 | print_boost_macros(); |
---|
985 | |
---|
986 | return 0; |
---|
987 | } |
---|
988 | |
---|
989 | |
---|
990 | |
---|
991 | |
---|
992 | |
---|
993 | |
---|
994 | |
---|
995 | |
---|
996 | |
---|