Index: base/move.h |
diff --git a/base/move.h b/base/move.h |
index f90e9e89ce3f615f9ba1118c03200ed9359fde8f..482ee8118110c5f72404b534751f4afed5ffbae5 100644 |
--- a/base/move.h |
+++ b/base/move.h |
@@ -9,6 +9,7 @@ |
#include "base/compiler_specific.h" |
#include "base/macros.h" |
+#include "build/build_config.h" |
// TODO(crbug.com/566182): DEPRECATED! |
// Use DISALLOW_COPY_AND_ASSIGN instead, or if your type will be used in |
@@ -30,6 +31,17 @@ |
// for more details. |
// TODO(crbug.com/566182): Remove this macro and use DISALLOW_COPY_AND_ASSIGN |
// everywhere instead. |
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) |
+#define DISALLOW_COPY_AND_ASSIGN_WITH_MOVE_FOR_BIND(type) \ |
+ private: \ |
+ type(const type&) = delete; \ |
+ void operator=(const type&) = delete; \ |
+ \ |
+ public: \ |
+ typedef void MoveOnlyTypeForCPP03; \ |
+ \ |
+ private: |
+#else |
#define DISALLOW_COPY_AND_ASSIGN_WITH_MOVE_FOR_BIND(type) \ |
private: \ |
type(const type&) = delete; \ |
@@ -40,5 +52,6 @@ |
typedef void MoveOnlyTypeForCPP03; \ |
\ |
private: |
+#endif |
#endif // BASE_MOVE_H_ |