Don't print warning for unused default args
We will still produce an error if --fail-on-unused-args is used.
Bug: 684096
Change-Id: I4a0640ad83072750d555c8de9e6391f76942ae38
Reviewed-on: https://chromium-review.googlesource.com/792606
Commit-Queue: Petr Hosek <phosek@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Reviewed-by: Brett Wilson <brettw@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#523254}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: a37803c95fe4014438ae1687a8ff2301c40e3ca9
diff --git a/tools/gn/args.cc b/tools/gn/args.cc
index 6ec65d3..4a0c137 100644
--- a/tools/gn/args.cc
+++ b/tools/gn/args.cc
@@ -126,6 +126,12 @@
}
}
+void Args::AddDefaultArgOverrides(const Scope::KeyValueMap& overrides) {
+ base::AutoLock lock(lock_);
+ for (const auto& cur_override : overrides)
+ overrides_[cur_override.first] = cur_override.second;
+}
+
const Value* Args::GetArgOverride(const char* name) const {
base::AutoLock lock(lock_);
diff --git a/tools/gn/args.h b/tools/gn/args.h
index 79fe93f..2ae4bc1 100644
--- a/tools/gn/args.h
+++ b/tools/gn/args.h
@@ -46,6 +46,10 @@
void AddArgOverride(const char* name, const Value& value);
void AddArgOverrides(const Scope::KeyValueMap& overrides);
+ // Specifies default overrides of the build arguments. These are normally
+ // specified in the .gn file.
+ void AddDefaultArgOverrides(const Scope::KeyValueMap& overrides);
+
// Returns the value corresponding to the given argument name, or NULL if no
// argument is set.
const Value* GetArgOverride(const char* name) const;
diff --git a/tools/gn/setup.cc b/tools/gn/setup.cc
index 50b9ce3..dea3eae 100644
--- a/tools/gn/setup.cc
+++ b/tools/gn/setup.cc
@@ -325,7 +325,7 @@
if (default_args_) {
Scope::KeyValueMap overrides;
default_args_->GetCurrentScopeValues(&overrides);
- build_settings_.build_args().AddArgOverrides(overrides);
+ build_settings_.build_args().AddDefaultArgOverrides(overrides);
}
if (fill_arguments_) {