]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/asio/detail/pop_options.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / asio / detail / pop_options.hpp
1 //
2 // detail/pop_options.hpp
3 // ~~~~~~~~~~~~~~~~~~~~~~
4 //
5 // Copyright (c) 2003-2017 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(BOOST_ASIO_OBJC_WORKAROUND)
37 # undef Protocol
38 # undef id
39 # undef BOOST_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(BOOST_ASIO_OBJC_WORKAROUND)
59 # undef Protocol
60 # undef id
61 # undef BOOST_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 # if (__GNUC__ >= 7)
71 # pragma GCC diagnostic pop
72 # endif // (__GNUC__ >= 7)
73
74 #elif defined(__KCC)
75
76 // Kai C++
77
78 #elif defined(__sgi)
79
80 // SGI MIPSpro C++
81
82 #elif defined(__DECCXX)
83
84 // Compaq Tru64 Unix cxx
85
86 #elif defined(__ghs)
87
88 // Greenhills C++
89
90 #elif defined(__BORLANDC__)
91
92 // Borland C++
93
94 # pragma option pop
95 # pragma nopushoptwarn
96 # pragma nopackwarning
97
98 #elif defined(__MWERKS__)
99
100 // Metrowerks CodeWarrior
101
102 #elif defined(__SUNPRO_CC)
103
104 // Sun Workshop Compiler C++
105
106 #elif defined(__HP_aCC)
107
108 // HP aCC
109
110 #elif defined(__MRC__) || defined(__SC__)
111
112 // MPW MrCpp or SCpp
113
114 #elif defined(__IBMCPP__)
115
116 // IBM Visual Age
117
118 #elif defined(_MSC_VER)
119
120 // Microsoft Visual C++
121 //
122 // Must remain the last #elif since some other vendors (Metrowerks, for example)
123 // also #define _MSC_VER
124
125 # pragma warning (pop)
126 # pragma pack (pop)
127
128 # if defined(__cplusplus_cli) || defined(__cplusplus_winrt)
129 # if defined(BOOST_ASIO_CLR_WORKAROUND)
130 # undef generic
131 # undef BOOST_ASIO_CLR_WORKAROUND
132 # endif
133 # endif
134
135 #endif