// Include it in all situations for simplicity.
#include <utility>
+// Another problem is some boost versions raise a warning with -Wshadow
+// so disable it.
+
#define GNU_CC_VERSION (__GNUC__ * 10000 \
+ __GNUC_MINOR__ * 100 \
+ __GNUC_PATCHLEVEL__)
-#if (defined(__GNUC__) && \
- ((GNU_CC_VERSION >= 50200) && (GNU_CC_VERSION < 60000)) \
- && defined(BOOST_ERROR_CODE_HEADER_ONLY))
+#ifdef __GNUC__
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wshadow"
+#if (((GNU_CC_VERSION >= 50200) && (GNU_CC_VERSION < 60000)) \
+ && defined(BOOST_ERROR_CODE_HEADER_ONLY))
#pragma GCC push_options
#pragma GCC optimize ("O0")
#include <boost/asio.hpp>
#else
#include <boost/asio.hpp>
#endif
+#pragma GCC diagnostic pop
+#else
+#include <boost/asio.hpp>
+#endif
#endif // ASIO_WRAPPER_H