summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-04-12 21:53:11 +0000
committerChris Lattner <sabre@nondot.org>2010-04-12 21:53:11 +0000
commit97a8e43a02797f9b62a3a6bfcbabef38ee4bf3b0 (patch)
tree3d6340271f6f243a7d6420b0a97fee30a156d4e0 /clang/lib/Frontend
parent4ed2925b91503b75b2a984a810c95f6ba09ac719 (diff)
downloadbcm5719-llvm-97a8e43a02797f9b62a3a6bfcbabef38ee4bf3b0.tar.gz
bcm5719-llvm-97a8e43a02797f9b62a3a6bfcbabef38ee4bf3b0.zip
fix PR6814 - Only print [-pedantic] on a diagnostic if -pedantic
actually turned it on. If a diag is produced by a warning which is an extension but defaults to on, and has no warning group, don't print any option info. llvm-svn: 101071
Diffstat (limited to 'clang/lib/Frontend')
-rw-r--r--clang/lib/Frontend/TextDiagnosticPrinter.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/clang/lib/Frontend/TextDiagnosticPrinter.cpp b/clang/lib/Frontend/TextDiagnosticPrinter.cpp
index 4e91f8d4c22..6c8137e3d29 100644
--- a/clang/lib/Frontend/TextDiagnosticPrinter.cpp
+++ b/clang/lib/Frontend/TextDiagnosticPrinter.cpp
@@ -796,8 +796,13 @@ void TextDiagnosticPrinter::HandleDiagnostic(Diagnostic::Level Level,
OutStr += " [-W";
OutStr += Opt;
OutStr += ']';
- } else if (Diagnostic::isBuiltinExtensionDiag(Info.getID())) {
- OutStr += " [-pedantic]";
+ } else {
+ // If the diagnostic is an extension diagnostic and not enabled by default
+ // then it must have been turned on with -pedantic.
+ bool EnabledByDefault;
+ if (Diagnostic::isBuiltinExtensionDiag(Info.getID(), EnabledByDefault) &&
+ !EnabledByDefault)
+ OutStr += " [-pedantic]";
}
}
OpenPOWER on IntegriCloud