Realistic 3D camera system
3D camera system components
pop_options.hpp
Go to the documentation of this file.
1 //
2 // detail/pop_options.hpp
3 // ~~~~~~~~~~~~~~~~~~~~~~
4 //
5 // Copyright (c) 2003-2015 Christopher M. Kohlhoff (chris at kohlhoff dot com)
6 //
7 // Distributed under the Boost Software License, Version 1.0. (See accompanying
8 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9 //
10 
11 // No header guard
12 
13 #if defined(__COMO__)
14 
15 // Comeau C++
16 
17 #elif defined(__DMC__)
18 
19 // Digital Mars C++
20 
21 #elif defined(__INTEL_COMPILER) || defined(__ICL) \
22  || defined(__ICC) || defined(__ECC)
23 
24 // Intel C++
25 
26 # if (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
27 # pragma GCC visibility pop
28 # endif // (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
29 
30 #elif defined(__clang__)
31 
32 // Clang
33 
34 # if defined(__OBJC__)
35 # if !defined(__APPLE_CC__) || (__APPLE_CC__ <= 1)
36 # if defined(ASIO_OBJC_WORKAROUND)
37 # undef Protocol
38 # undef id
39 # undef ASIO_OBJC_WORKAROUND
40 # endif
41 # endif
42 # endif
43 
44 # if !defined(_WIN32) && !defined(__WIN32__) && !defined(WIN32)
45 # pragma GCC visibility pop
46 # endif // !defined(_WIN32) && !defined(__WIN32__) && !defined(WIN32)
47 
48 #elif defined(__GNUC__)
49 
50 // GNU C++
51 
52 # if defined(__MINGW32__) || defined(__CYGWIN__)
53 # pragma pack (pop)
54 # endif
55 
56 # if defined(__OBJC__)
57 # if !defined(__APPLE_CC__) || (__APPLE_CC__ <= 1)
58 # if defined(ASIO_OBJC_WORKAROUND)
59 # undef Protocol
60 # undef id
61 # undef ASIO_OBJC_WORKAROUND
62 # endif
63 # endif
64 # endif
65 
66 # if (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
67 # pragma GCC visibility pop
68 # endif // (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
69 
70 #elif defined(__KCC)
71 
72 // Kai C++
73 
74 #elif defined(__sgi)
75 
76 // SGI MIPSpro C++
77 
78 #elif defined(__DECCXX)
79 
80 // Compaq Tru64 Unix cxx
81 
82 #elif defined(__ghs)
83 
84 // Greenhills C++
85 
86 #elif defined(__BORLANDC__)
87 
88 // Borland C++
89 
90 # pragma option pop
91 # pragma nopushoptwarn
92 # pragma nopackwarning
93 
94 #elif defined(__MWERKS__)
95 
96 // Metrowerks CodeWarrior
97 
98 #elif defined(__SUNPRO_CC)
99 
100 // Sun Workshop Compiler C++
101 
102 #elif defined(__HP_aCC)
103 
104 // HP aCC
105 
106 #elif defined(__MRC__) || defined(__SC__)
107 
108 // MPW MrCpp or SCpp
109 
110 #elif defined(__IBMCPP__)
111 
112 // IBM Visual Age
113 
114 #elif defined(_MSC_VER)
115 
116 // Microsoft Visual C++
117 //
118 // Must remain the last #elif since some other vendors (Metrowerks, for example)
119 // also #define _MSC_VER
120 
121 # pragma warning (pop)
122 # pragma pack (pop)
123 
124 # if defined(__cplusplus_cli) || defined(__cplusplus_winrt)
125 # if defined(ASIO_CLR_WORKAROUND)
126 # undef generic
127 # undef ASIO_CLR_WORKAROUND
128 # endif
129 # endif
130 
131 #endif