]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/boost/asio/detail/pop_options.hpp
import quincy beta 17.1.0
[ceph.git] / ceph / src / boost / boost / asio / detail / pop_options.hpp
CommitLineData
7c673cae
FG
1//
2// detail/pop_options.hpp
3// ~~~~~~~~~~~~~~~~~~~~~~
4//
f67539c2 5// Copyright (c) 2003-2020 Christopher M. Kohlhoff (chris at kohlhoff dot com)
7c673cae
FG
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)
92f5a8d4
TL
27# if !defined(BOOST_ASIO_DISABLE_VISIBILITY)
28# pragma GCC visibility pop
29# endif // !defined(BOOST_ASIO_DISABLE_VISIBILITY)
7c673cae
FG
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)
92f5a8d4
TL
47# if !defined(BOOST_ASIO_DISABLE_VISIBILITY)
48# pragma GCC visibility pop
49# endif // !defined(BOOST_ASIO_DISABLE_VISIBILITY)
7c673cae
FG
50# endif // !defined(_WIN32) && !defined(__WIN32__) && !defined(WIN32)
51
f67539c2
TL
52# pragma GCC diagnostic pop
53
7c673cae
FG
54#elif defined(__GNUC__)
55
56// GNU C++
57
58# if defined(__MINGW32__) || defined(__CYGWIN__)
59# pragma pack (pop)
60# endif
61
62# if defined(__OBJC__)
63# if !defined(__APPLE_CC__) || (__APPLE_CC__ <= 1)
64# if defined(BOOST_ASIO_OBJC_WORKAROUND)
65# undef Protocol
66# undef id
67# undef BOOST_ASIO_OBJC_WORKAROUND
68# endif
69# endif
70# endif
71
72# if (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
92f5a8d4
TL
73# if !defined(BOOST_ASIO_DISABLE_VISIBILITY)
74# pragma GCC visibility pop
75# endif // !defined(BOOST_ASIO_DISABLE_VISIBILITY)
7c673cae
FG
76# endif // (__GNUC__ == 4 && __GNUC_MINOR__ >= 1) || (__GNUC__ > 4)
77
f67539c2 78# pragma GCC diagnostic pop
b32b8144 79
7c673cae
FG
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
20effc67 96#elif defined(__BORLANDC__) && !defined(__clang__)
7c673cae
FG
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