summaryrefslogtreecommitdiffstats
path: root/clang/lib/Tooling/ArgumentsAdjusters.cpp
diff options
context:
space:
mode:
authorKadir Cetinkaya <kadircet@google.com>2019-07-02 10:45:53 +0000
committerKadir Cetinkaya <kadircet@google.com>2019-07-02 10:45:53 +0000
commit7d719b75eaf58162d44f11497a0d4765cd19ab55 (patch)
tree4a54c0dddc527985371288960fc87241b453007e /clang/lib/Tooling/ArgumentsAdjusters.cpp
parent2915b3988f4445244c3c09414500232b3ccaa416 (diff)
downloadbcm5719-llvm-7d719b75eaf58162d44f11497a0d4765cd19ab55.tar.gz
bcm5719-llvm-7d719b75eaf58162d44f11497a0d4765cd19ab55.zip
[clang][ArgumentAdjusters] Do not add fsyntax-only if already exists
Reviewers: hokein Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D64063 llvm-svn: 364904
Diffstat (limited to 'clang/lib/Tooling/ArgumentsAdjusters.cpp')
-rw-r--r--clang/lib/Tooling/ArgumentsAdjusters.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/clang/lib/Tooling/ArgumentsAdjusters.cpp b/clang/lib/Tooling/ArgumentsAdjusters.cpp
index 002c587d6bb..942b35df453 100644
--- a/clang/lib/Tooling/ArgumentsAdjusters.cpp
+++ b/clang/lib/Tooling/ArgumentsAdjusters.cpp
@@ -23,14 +23,18 @@ namespace tooling {
ArgumentsAdjuster getClangSyntaxOnlyAdjuster() {
return [](const CommandLineArguments &Args, StringRef /*unused*/) {
CommandLineArguments AdjustedArgs;
+ bool HasSyntaxOnly = false;
for (size_t i = 0, e = Args.size(); i < e; ++i) {
StringRef Arg = Args[i];
// FIXME: Remove options that generate output.
if (!Arg.startswith("-fcolor-diagnostics") &&
!Arg.startswith("-fdiagnostics-color"))
AdjustedArgs.push_back(Args[i]);
+ if (Arg == "-fsyntax-only")
+ HasSyntaxOnly = true;
}
- AdjustedArgs.push_back("-fsyntax-only");
+ if (!HasSyntaxOnly)
+ AdjustedArgs.push_back("-fsyntax-only");
return AdjustedArgs;
};
}
OpenPOWER on IntegriCloud