diff options
| author | Chris Lattner <sabre@nondot.org> | 2010-04-12 21:53:11 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2010-04-12 21:53:11 +0000 |
| commit | 97a8e43a02797f9b62a3a6bfcbabef38ee4bf3b0 (patch) | |
| tree | 3d6340271f6f243a7d6420b0a97fee30a156d4e0 /clang/lib/Frontend | |
| parent | 4ed2925b91503b75b2a984a810c95f6ba09ac719 (diff) | |
| download | bcm5719-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.cpp | 9 |
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]"; } } |

