]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/asio/detail/pop_options.hpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / boost / asio / detail / pop_options.hpp
1 //
2 // detail/pop_options.hpp
3 // ~~~~~~~~~~~~~~~~~~~~~~
4 //
5 // Copyright (c) 2003-2019 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 # if !defined(BOOST_ASIO_DISABLE_VISIBILITY)
28 # pragma GCC visibility pop
29 # endif // !defined(BOOST_ASIO_DISABLE_VISIBILITY)
30 # endif // (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
31
32 #elif defined(__clang__)
33
34 // Clang
35
36 # if defined(__OBJC__)
37 # if !defined(__APPLE_CC__) || (__APPLE_CC__ <= 1)
38 # if defined(BOOST_ASIO_OBJC_WORKAROUND)
39 # undef Protocol
40 # undef id
41 # undef BOOST_ASIO_OBJC_WORKAROUND
42 # endif
43 # endif
44 # endif
45
46 # if !defined(_WIN32) && !defined(__WIN32__) && !defined(WIN32)
47 # if !defined(BOOST_ASIO_DISABLE_VISIBILITY)
48 # pragma GCC visibility pop
49 # endif // !defined(BOOST_ASIO_DISABLE_VISIBILITY)
50 # endif // !defined(_WIN32) && !defined(__WIN32__) && !defined(WIN32)
51
52 #elif defined(__GNUC__)
53
54 // GNU C++
55
56 # if defined(__MINGW32__) || defined(__CYGWIN__)
57 # pragma pack (pop)
58 # endif
59
60 # if defined(__OBJC__)
61 # if !defined(__APPLE_CC__) || (__APPLE_CC__ <= 1)
62 # if defined(BOOST_ASIO_OBJC_WORKAROUND)
63 # undef Protocol
64 # undef id
65 # undef BOOST_ASIO_OBJC_WORKAROUND
66 # endif
67 # endif
68 # endif
69
70 # if (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
71 # if !defined(BOOST_ASIO_DISABLE_VISIBILITY)
72 # pragma GCC visibility pop
73 # endif // !defined(BOOST_ASIO_DISABLE_VISIBILITY)
74 # endif // (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
75
76 # if (__GNUC__ >= 7)
77 # pragma GCC diagnostic pop
78 # endif // (__GNUC__ >= 7)
79
80 #elif defined(__KCC)
81
82 // Kai C++
83
84 #elif defined(__sgi)
85
86 // SGI MIPSpro C++
87
88 #elif defined(__DECCXX)
89
90 // Compaq Tru64 Unix cxx
91
92 #elif defined(__ghs)
93
94 // Greenhills C++
95
96 #elif defined(__BORLANDC__)
97
98 // Borland C++
99
100 # pragma option pop
101 # pragma nopushoptwarn
102 # pragma nopackwarning
103
104 #elif defined(__MWERKS__)
105
106 // Metrowerks CodeWarrior
107
108 #elif defined(__SUNPRO_CC)
109
110 // Sun Workshop Compiler C++
111
112 #elif defined(__HP_aCC)
113
114 // HP aCC
115
116 #elif defined(__MRC__) || defined(__SC__)
117
118 // MPW MrCpp or SCpp
119
120 #elif defined(__IBMCPP__)
121
122 // IBM Visual Age
123
124 #elif defined(_MSC_VER)
125
126 // Microsoft Visual C++
127 //
128 // Must remain the last #elif since some other vendors (Metrowerks, for example)
129 // also #define _MSC_VER
130
131 # pragma warning (pop)
132 # pragma pack (pop)
133
134 # if defined(__cplusplus_cli) || defined(__cplusplus_winrt)
135 # if defined(BOOST_ASIO_CLR_WORKAROUND)
136 # undef generic
137 # undef BOOST_ASIO_CLR_WORKAROUND
138 # endif
139 # endif
140
141 #endif