]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/bind.hpp
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / boost / boost / bind.hpp
index 450120c7a7a34731ac55f7991fe881157a781390..48cc4094cfee0e6f68200822d40d3f5869acfb0a 100644 (file)
@@ -7,7 +7,6 @@
 # pragma once
 #endif
 
-//
 //  bind.hpp - binds function objects to arguments
 //
 //  Copyright (c) 2009, 2015 Peter Dimov
 //
 //  See http://www.boost.org/libs/bind/bind.html for documentation.
 //
+//  For backward compatibility, this header includes
+//  <boost/bind/bind.hpp> and then imports the placeholders _1, _2,
+//  _3, ... into the global namespace. Definitions in the global
+//  namespace are not a good practice and this use is deprecated.
+//  Please switch to including <boost/bind/bind.hpp> directly,
+//  adding the using directive locally where appropriate.
+//  Alternatively, the existing behavior may be preserved by defining
+//  the macro BOOST_BIND_GLOBAL_PLACEHOLDERS.
 
 #include <boost/bind/bind.hpp>
+#include <boost/config/pragma_message.hpp>
 
 #ifndef BOOST_BIND_NO_PLACEHOLDERS
 
+#if !defined(BOOST_BIND_GLOBAL_PLACEHOLDERS)
+
+BOOST_PRAGMA_MESSAGE(
+  "The practice of declaring the Bind placeholders (_1, _2, ...) "
+  "in the global namespace is deprecated. Please use "
+  "<boost/bind/bind.hpp> + using namespace boost::placeholders, "
+  "or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior."
+)
+
+#endif
+
 #if defined(BOOST_CLANG)
 # pragma clang diagnostic push
 # if  __has_warning("-Wheader-hygiene")