summaryrefslogtreecommitdiffstats
path: root/mojo/public
diff options
context:
space:
mode:
authoramistry <amistry@chromium.org>2016-03-10 22:32:52 -0800
committerCommit bot <commit-bot@chromium.org>2016-03-11 06:34:21 +0000
commitecd73b09cccaaab72c859fef403ed489b7d1f174 (patch)
tree2b8d4166e1d64c0f2c8503e097494eada69f73a0 /mojo/public
parentc7b3190c0ecd5b88688aa5e55d3085f0fbd40e11 (diff)
downloadchromium_src-ecd73b09cccaaab72c859fef403ed489b7d1f174.zip
chromium_src-ecd73b09cccaaab72c859fef403ed489b7d1f174.tar.gz
chromium_src-ecd73b09cccaaab72c859fef403ed489b7d1f174.tar.bz2
[mojo-sdk] Remove mojo_ignore_result and move C++ macros.h to bindings internal code.
The one macro remaining in macros.h is only used by generated C++ code. BUG=534695 Review URL: https://codereview.chromium.org/1784743003 Cr-Commit-Position: refs/heads/master@{#380556}
Diffstat (limited to 'mojo/public')
-rw-r--r--mojo/public/c/system/macros.h14
-rw-r--r--mojo/public/c/system/tests/core_perftest.cc2
-rw-r--r--mojo/public/cpp/bindings/BUILD.gn1
-rw-r--r--mojo/public/cpp/bindings/interface_ptr_info.h2
-rw-r--r--mojo/public/cpp/bindings/lib/connector.cc2
-rw-r--r--mojo/public/cpp/bindings/lib/control_message_handler.h2
-rw-r--r--mojo/public/cpp/bindings/lib/control_message_proxy.cc2
-rw-r--r--mojo/public/cpp/bindings/lib/control_message_proxy.h2
-rw-r--r--mojo/public/cpp/bindings/lib/filter_chain.h2
-rw-r--r--mojo/public/cpp/bindings/lib/macros.h (renamed from mojo/public/cpp/system/macros.h)14
-rw-r--r--mojo/public/cpp/bindings/lib/shared_data.h1
-rw-r--r--mojo/public/cpp/bindings/lib/validate_params.h2
-rw-r--r--mojo/public/cpp/bindings/lib/validation_errors.h2
-rw-r--r--mojo/public/cpp/bindings/message_filter.h1
-rw-r--r--mojo/public/cpp/bindings/struct_ptr.h2
-rw-r--r--mojo/public/cpp/bindings/tests/BUILD.gn1
-rw-r--r--mojo/public/cpp/bindings/tests/binding_unittest.cc2
-rw-r--r--mojo/public/cpp/bindings/tests/connector_unittest.cc1
-rw-r--r--mojo/public/cpp/bindings/tests/container_test_util.h1
-rw-r--r--mojo/public/cpp/bindings/tests/macros_unittest.cc (renamed from mojo/public/cpp/system/tests/macros_unittest.cc)2
-rw-r--r--mojo/public/cpp/bindings/tests/router_unittest.cc1
-rw-r--r--mojo/public/cpp/bindings/tests/validation_unittest.cc2
-rw-r--r--mojo/public/cpp/bindings/tests/versioning_apptest.cc2
-rw-r--r--mojo/public/cpp/bindings/tests/versioning_test_service.cc2
-rw-r--r--mojo/public/cpp/system/BUILD.gn1
-rw-r--r--mojo/public/cpp/system/buffer.h1
-rw-r--r--mojo/public/cpp/system/core.h1
-rw-r--r--mojo/public/cpp/system/data_pipe.h1
-rw-r--r--mojo/public/cpp/system/handle.h1
-rw-r--r--mojo/public/cpp/system/message_pipe.h1
-rw-r--r--mojo/public/cpp/system/tests/BUILD.gn1
-rw-r--r--mojo/public/cpp/system/tests/core_unittest.cc1
-rw-r--r--mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl1
33 files changed, 22 insertions, 52 deletions
diff --git a/mojo/public/c/system/macros.h b/mojo/public/c/system/macros.h
index ce84170..917c69c 100644
--- a/mojo/public/c/system/macros.h
+++ b/mojo/public/c/system/macros.h
@@ -7,20 +7,6 @@
#include <stddef.h>
-#ifdef __cplusplus
-// Used to explicitly mark the return value of a function as unused. If you are
-// really sure you don't want to do anything with the return value of a function
-// that has been marked WARN_UNUSED_RESULT, wrap it with this. Example:
-//
-// scoped_ptr<MyType> my_var = ...;
-// if (TakeOwnership(my_var.get()) == SUCCESS)
-// mojo_ignore_result(my_var.release());
-//
-template <typename T>
-inline void mojo_ignore_result(const T&) {
-}
-#endif
-
// Assert things at compile time. (|msg| should be a valid identifier name.)
// This macro is currently C++-only, but we want to use it in the C core.h.
// Use like:
diff --git a/mojo/public/c/system/tests/core_perftest.cc b/mojo/public/c/system/tests/core_perftest.cc
index 80734d30..5d4e56b 100644
--- a/mojo/public/c/system/tests/core_perftest.cc
+++ b/mojo/public/c/system/tests/core_perftest.cc
@@ -10,8 +10,8 @@
#include <stdint.h>
#include <stdio.h>
+#include "base/macros.h"
#include "base/threading/simple_thread.h"
-#include "mojo/public/cpp/system/macros.h"
#include "mojo/public/cpp/test_support/test_support.h"
#include "mojo/public/cpp/test_support/test_utils.h"
#include "testing/gtest/include/gtest/gtest.h"
diff --git a/mojo/public/cpp/bindings/BUILD.gn b/mojo/public/cpp/bindings/BUILD.gn
index 137d8d3..0486a52 100644
--- a/mojo/public/cpp/bindings/BUILD.gn
+++ b/mojo/public/cpp/bindings/BUILD.gn
@@ -43,6 +43,7 @@ source_set("bindings") {
"lib/interface_endpoint_client.h",
"lib/interface_id.h",
"lib/interface_ptr_state.h",
+ "lib/macros.h",
"lib/map_data_internal.h",
"lib/map_internal.h",
"lib/map_serialization.h",
diff --git a/mojo/public/cpp/bindings/interface_ptr_info.h b/mojo/public/cpp/bindings/interface_ptr_info.h
index 4d559f5..014410d 100644
--- a/mojo/public/cpp/bindings/interface_ptr_info.h
+++ b/mojo/public/cpp/bindings/interface_ptr_info.h
@@ -8,7 +8,7 @@
#include <stdint.h>
#include <utility>
-#include "mojo/public/cpp/system/macros.h"
+#include "base/move.h"
#include "mojo/public/cpp/system/message_pipe.h"
namespace mojo {
diff --git a/mojo/public/cpp/bindings/lib/connector.cc b/mojo/public/cpp/bindings/lib/connector.cc
index c7378f0..c84a93d 100644
--- a/mojo/public/cpp/bindings/lib/connector.cc
+++ b/mojo/public/cpp/bindings/lib/connector.cc
@@ -108,7 +108,7 @@ bool Connector::WaitForIncomingMessage(MojoDeadline deadline) {
HandleError(rv != MOJO_RESULT_FAILED_PRECONDITION, false);
return false;
}
- mojo_ignore_result(ReadSingleMessage(&rv));
+ ignore_result(ReadSingleMessage(&rv));
return (rv == MOJO_RESULT_OK);
}
diff --git a/mojo/public/cpp/bindings/lib/control_message_handler.h b/mojo/public/cpp/bindings/lib/control_message_handler.h
index 225dfec..27acde8c 100644
--- a/mojo/public/cpp/bindings/lib/control_message_handler.h
+++ b/mojo/public/cpp/bindings/lib/control_message_handler.h
@@ -7,8 +7,8 @@
#include <stdint.h>
+#include "base/macros.h"
#include "mojo/public/cpp/bindings/message.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
namespace internal {
diff --git a/mojo/public/cpp/bindings/lib/control_message_proxy.cc b/mojo/public/cpp/bindings/lib/control_message_proxy.cc
index d450355..6208065 100644
--- a/mojo/public/cpp/bindings/lib/control_message_proxy.cc
+++ b/mojo/public/cpp/bindings/lib/control_message_proxy.cc
@@ -8,9 +8,9 @@
#include <stdint.h>
#include <utility>
+#include "base/macros.h"
#include "mojo/public/cpp/bindings/lib/message_builder.h"
#include "mojo/public/cpp/bindings/message.h"
-#include "mojo/public/cpp/system/macros.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
namespace mojo {
diff --git a/mojo/public/cpp/bindings/lib/control_message_proxy.h b/mojo/public/cpp/bindings/lib/control_message_proxy.h
index 57b871e..33aaf82 100644
--- a/mojo/public/cpp/bindings/lib/control_message_proxy.h
+++ b/mojo/public/cpp/bindings/lib/control_message_proxy.h
@@ -7,8 +7,8 @@
#include <stdint.h>
+#include "base/macros.h"
#include "mojo/public/cpp/bindings/callback.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
diff --git a/mojo/public/cpp/bindings/lib/filter_chain.h b/mojo/public/cpp/bindings/lib/filter_chain.h
index 99e8e73..689a7fa 100644
--- a/mojo/public/cpp/bindings/lib/filter_chain.h
+++ b/mojo/public/cpp/bindings/lib/filter_chain.h
@@ -7,9 +7,9 @@
#include <vector>
+#include "base/move.h"
#include "mojo/public/cpp/bindings/message.h"
#include "mojo/public/cpp/bindings/message_filter.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
namespace internal {
diff --git a/mojo/public/cpp/system/macros.h b/mojo/public/cpp/bindings/lib/macros.h
index 931c978..62f4292 100644
--- a/mojo/public/cpp/system/macros.h
+++ b/mojo/public/cpp/bindings/lib/macros.h
@@ -2,16 +2,10 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-// Define a set of C++ specific macros.
-// Mojo C++ API users can assume that mojo/public/cpp/system/macros.h
-// includes mojo/public/c/system/macros.h.
+#ifndef MOJO_PUBLIC_CPP_BINDINGS_LIB_MACROS_H_
+#define MOJO_PUBLIC_CPP_BINDINGS_LIB_MACROS_H_
-#ifndef MOJO_PUBLIC_CPP_SYSTEM_MACROS_H_
-#define MOJO_PUBLIC_CPP_SYSTEM_MACROS_H_
-
-#include <stddef.h>
-
-#include "mojo/public/c/system/macros.h" // Symbols exposed.
+// This file defines macros that are only used by generated bindings.
// The C++ standard requires that static const members have an out-of-class
// definition (in a single compilation unit), but MSVC chokes on this (when
@@ -36,4 +30,4 @@
#define MOJO_STATIC_CONST_MEMBER_DEFINITION
#endif
-#endif // MOJO_PUBLIC_CPP_SYSTEM_MACROS_H_
+#endif // MOJO_PUBLIC_CPP_BINDINGS_LIB_MACROS_H_
diff --git a/mojo/public/cpp/bindings/lib/shared_data.h b/mojo/public/cpp/bindings/lib/shared_data.h
index 0afd892..8e93300 100644
--- a/mojo/public/cpp/bindings/lib/shared_data.h
+++ b/mojo/public/cpp/bindings/lib/shared_data.h
@@ -8,7 +8,6 @@
#include "base/logging.h"
#include "base/macros.h"
#include "base/threading/thread_checker.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
namespace internal {
diff --git a/mojo/public/cpp/bindings/lib/validate_params.h b/mojo/public/cpp/bindings/lib/validate_params.h
index 4f4735a..78c0589 100644
--- a/mojo/public/cpp/bindings/lib/validate_params.h
+++ b/mojo/public/cpp/bindings/lib/validate_params.h
@@ -7,7 +7,7 @@
#include <stdint.h>
-#include "mojo/public/cpp/system/macros.h"
+#include "base/macros.h"
namespace mojo {
namespace internal {
diff --git a/mojo/public/cpp/bindings/lib/validation_errors.h b/mojo/public/cpp/bindings/lib/validation_errors.h
index 1fcd335..bdace6c 100644
--- a/mojo/public/cpp/bindings/lib/validation_errors.h
+++ b/mojo/public/cpp/bindings/lib/validation_errors.h
@@ -6,8 +6,8 @@
#define MOJO_PUBLIC_CPP_BINDINGS_LIB_VALIDATION_ERRORS_H_
#include "base/logging.h"
+#include "base/macros.h"
#include "mojo/public/cpp/bindings/callback.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
namespace internal {
diff --git a/mojo/public/cpp/bindings/message_filter.h b/mojo/public/cpp/bindings/message_filter.h
index 8e10f6b..638c53b 100644
--- a/mojo/public/cpp/bindings/message_filter.h
+++ b/mojo/public/cpp/bindings/message_filter.h
@@ -6,7 +6,6 @@
#define MOJO_PUBLIC_CPP_BINDINGS_MESSAGE_FILTER_H_
#include "mojo/public/cpp/bindings/message.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
diff --git a/mojo/public/cpp/bindings/struct_ptr.h b/mojo/public/cpp/bindings/struct_ptr.h
index 3e907e0..e3b072d 100644
--- a/mojo/public/cpp/bindings/struct_ptr.h
+++ b/mojo/public/cpp/bindings/struct_ptr.h
@@ -8,8 +8,8 @@
#include <new>
#include "base/logging.h"
+#include "base/move.h"
#include "mojo/public/cpp/bindings/type_converter.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
namespace internal {
diff --git a/mojo/public/cpp/bindings/tests/BUILD.gn b/mojo/public/cpp/bindings/tests/BUILD.gn
index 7fdb6d2..c689fe31 100644
--- a/mojo/public/cpp/bindings/tests/BUILD.gn
+++ b/mojo/public/cpp/bindings/tests/BUILD.gn
@@ -21,6 +21,7 @@ source_set("tests") {
"equals_unittest.cc",
"handle_passing_unittest.cc",
"interface_ptr_unittest.cc",
+ "macros_unittest.cc",
"map_unittest.cc",
"message_queue.cc",
"message_queue.h",
diff --git a/mojo/public/cpp/bindings/tests/binding_unittest.cc b/mojo/public/cpp/bindings/tests/binding_unittest.cc
index 6e8e578..15b899d 100644
--- a/mojo/public/cpp/bindings/tests/binding_unittest.cc
+++ b/mojo/public/cpp/bindings/tests/binding_unittest.cc
@@ -10,11 +10,11 @@
#include <stdint.h>
#include <utility>
+#include "base/macros.h"
#include "base/message_loop/message_loop.h"
#include "base/run_loop.h"
#include "mojo/message_pump/message_pump_mojo.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
-#include "mojo/public/cpp/system/macros.h"
#include "mojo/public/interfaces/bindings/tests/sample_interfaces.mojom.h"
#include "mojo/public/interfaces/bindings/tests/sample_service.mojom.h"
#include "testing/gtest/include/gtest/gtest.h"
diff --git a/mojo/public/cpp/bindings/tests/connector_unittest.cc b/mojo/public/cpp/bindings/tests/connector_unittest.cc
index a57459d..04e6bc9 100644
--- a/mojo/public/cpp/bindings/tests/connector_unittest.cc
+++ b/mojo/public/cpp/bindings/tests/connector_unittest.cc
@@ -14,7 +14,6 @@
#include "mojo/message_pump/message_pump_mojo.h"
#include "mojo/public/cpp/bindings/lib/message_builder.h"
#include "mojo/public/cpp/bindings/tests/message_queue.h"
-#include "mojo/public/cpp/system/macros.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace mojo {
diff --git a/mojo/public/cpp/bindings/tests/container_test_util.h b/mojo/public/cpp/bindings/tests/container_test_util.h
index ff46b8f..b2038ba 100644
--- a/mojo/public/cpp/bindings/tests/container_test_util.h
+++ b/mojo/public/cpp/bindings/tests/container_test_util.h
@@ -8,7 +8,6 @@
#include <stddef.h>
#include "base/move.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
diff --git a/mojo/public/cpp/system/tests/macros_unittest.cc b/mojo/public/cpp/bindings/tests/macros_unittest.cc
index 30d7c84..73d6a80 100644
--- a/mojo/public/cpp/system/tests/macros_unittest.cc
+++ b/mojo/public/cpp/bindings/tests/macros_unittest.cc
@@ -10,7 +10,7 @@
// TODO(vtl): Fix no-compile tests (which are all disabled; crbug.com/105388)
// and write some "negative" tests.
-#include "mojo/public/cpp/system/macros.h"
+#include "mojo/public/cpp/bindings/lib/macros.h"
#include <assert.h>
#include <stdint.h>
diff --git a/mojo/public/cpp/bindings/tests/router_unittest.cc b/mojo/public/cpp/bindings/tests/router_unittest.cc
index 1f7160e..804e497 100644
--- a/mojo/public/cpp/bindings/tests/router_unittest.cc
+++ b/mojo/public/cpp/bindings/tests/router_unittest.cc
@@ -11,7 +11,6 @@
#include "mojo/message_pump/message_pump_mojo.h"
#include "mojo/public/cpp/bindings/tests/message_queue.h"
#include "mojo/public/cpp/bindings/tests/router_test_util.h"
-#include "mojo/public/cpp/system/macros.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace mojo {
diff --git a/mojo/public/cpp/bindings/tests/validation_unittest.cc b/mojo/public/cpp/bindings/tests/validation_unittest.cc
index 252a31a..d234d66 100644
--- a/mojo/public/cpp/bindings/tests/validation_unittest.cc
+++ b/mojo/public/cpp/bindings/tests/validation_unittest.cc
@@ -175,7 +175,7 @@ void RunValidationTests(const std::string& prefix,
base::RunLoop run_loop;
mojo::internal::ValidationErrorObserverForTesting observer(
run_loop.QuitClosure());
- mojo_ignore_result(test_message_receiver->Accept(&message));
+ ignore_result(test_message_receiver->Accept(&message));
if (expected != "PASS") // Observer only gets called on errors.
run_loop.Run();
if (observer.last_error() == mojo::internal::VALIDATION_ERROR_NONE)
diff --git a/mojo/public/cpp/bindings/tests/versioning_apptest.cc b/mojo/public/cpp/bindings/tests/versioning_apptest.cc
index e3d63e1..6eb57cf 100644
--- a/mojo/public/cpp/bindings/tests/versioning_apptest.cc
+++ b/mojo/public/cpp/bindings/tests/versioning_apptest.cc
@@ -5,7 +5,7 @@
#include <stddef.h>
#include <stdint.h>
-#include "mojo/public/cpp/system/macros.h"
+#include "base/macros.h"
#include "mojo/public/interfaces/bindings/tests/versioning_test_client.mojom.h"
#include "mojo/shell/public/cpp/application_test_base.h"
#include "mojo/shell/public/cpp/connector.h"
diff --git a/mojo/public/cpp/bindings/tests/versioning_test_service.cc b/mojo/public/cpp/bindings/tests/versioning_test_service.cc
index bf3ca87..30296d0 100644
--- a/mojo/public/cpp/bindings/tests/versioning_test_service.cc
+++ b/mojo/public/cpp/bindings/tests/versioning_test_service.cc
@@ -7,9 +7,9 @@
#include <map>
#include <utility>
+#include "base/macros.h"
#include "mojo/public/c/system/main.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
-#include "mojo/public/cpp/system/macros.h"
#include "mojo/public/interfaces/bindings/tests/versioning_test_service.mojom.h"
#include "mojo/shell/public/cpp/application_runner.h"
#include "mojo/shell/public/cpp/interface_factory.h"
diff --git a/mojo/public/cpp/system/BUILD.gn b/mojo/public/cpp/system/BUILD.gn
index dc2d28c..0aef01d 100644
--- a/mojo/public/cpp/system/BUILD.gn
+++ b/mojo/public/cpp/system/BUILD.gn
@@ -9,7 +9,6 @@ source_set("system") {
"data_pipe.h",
"functions.h",
"handle.h",
- "macros.h",
"message_pipe.h",
"watcher.cc",
"watcher.h",
diff --git a/mojo/public/cpp/system/buffer.h b/mojo/public/cpp/system/buffer.h
index 607aea1e1..a2d524e 100644
--- a/mojo/public/cpp/system/buffer.h
+++ b/mojo/public/cpp/system/buffer.h
@@ -18,7 +18,6 @@
#include "base/logging.h"
#include "mojo/public/c/system/buffer.h"
#include "mojo/public/cpp/system/handle.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
diff --git a/mojo/public/cpp/system/core.h b/mojo/public/cpp/system/core.h
index b08a5a6..f1d18d9 100644
--- a/mojo/public/cpp/system/core.h
+++ b/mojo/public/cpp/system/core.h
@@ -9,7 +9,6 @@
#include "mojo/public/cpp/system/data_pipe.h"
#include "mojo/public/cpp/system/functions.h"
#include "mojo/public/cpp/system/handle.h"
-#include "mojo/public/cpp/system/macros.h"
#include "mojo/public/cpp/system/message_pipe.h"
#endif // MOJO_PUBLIC_CPP_SYSTEM_CORE_H_
diff --git a/mojo/public/cpp/system/data_pipe.h b/mojo/public/cpp/system/data_pipe.h
index c5f9707..0dbc3c7 100644
--- a/mojo/public/cpp/system/data_pipe.h
+++ b/mojo/public/cpp/system/data_pipe.h
@@ -18,7 +18,6 @@
#include "base/logging.h"
#include "mojo/public/c/system/data_pipe.h"
#include "mojo/public/cpp/system/handle.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
diff --git a/mojo/public/cpp/system/handle.h b/mojo/public/cpp/system/handle.h
index 4df86af..a0c162a 100644
--- a/mojo/public/cpp/system/handle.h
+++ b/mojo/public/cpp/system/handle.h
@@ -14,7 +14,6 @@
#include "base/move.h"
#include "mojo/public/c/system/functions.h"
#include "mojo/public/c/system/types.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
diff --git a/mojo/public/cpp/system/message_pipe.h b/mojo/public/cpp/system/message_pipe.h
index fab23e4..94818e8 100644
--- a/mojo/public/cpp/system/message_pipe.h
+++ b/mojo/public/cpp/system/message_pipe.h
@@ -18,7 +18,6 @@
#include "base/logging.h"
#include "mojo/public/c/system/message_pipe.h"
#include "mojo/public/cpp/system/handle.h"
-#include "mojo/public/cpp/system/macros.h"
namespace mojo {
diff --git a/mojo/public/cpp/system/tests/BUILD.gn b/mojo/public/cpp/system/tests/BUILD.gn
index b6664af..8f98b92 100644
--- a/mojo/public/cpp/system/tests/BUILD.gn
+++ b/mojo/public/cpp/system/tests/BUILD.gn
@@ -7,7 +7,6 @@ source_set("tests") {
sources = [
"core_unittest.cc",
- "macros_unittest.cc",
"watcher_unittest.cc",
]
diff --git a/mojo/public/cpp/system/tests/core_unittest.cc b/mojo/public/cpp/system/tests/core_unittest.cc
index 927c554..7a52ab5 100644
--- a/mojo/public/cpp/system/tests/core_unittest.cc
+++ b/mojo/public/cpp/system/tests/core_unittest.cc
@@ -13,7 +13,6 @@
#include <map>
#include <utility>
-#include "mojo/public/cpp/system/macros.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace mojo {
diff --git a/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl b/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl
index b22f8530..8c9c0fb 100644
--- a/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl
+++ b/mojo/public/tools/bindings/generators/cpp_templates/module.cc.tmpl
@@ -28,6 +28,7 @@
#include "base/trace_event/trace_event.h"
#include "mojo/public/cpp/bindings/lib/bindings_serialization.h"
#include "mojo/public/cpp/bindings/lib/bounds_checker.h"
+#include "mojo/public/cpp/bindings/lib/macros.h"
#include "mojo/public/cpp/bindings/lib/map_data_internal.h"
#include "mojo/public/cpp/bindings/lib/message_builder.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"