summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2012-01-17 09:30:38 +0000
committerHans Wennborg <hans@hanshq.net>2012-01-17 09:30:38 +0000
commit507b5677074321559fbaf12cfea1a468fa423832 (patch)
tree4d2349575c44c2e9addd59a378b0ab087bc827c2
parenta8ad6e56664f6d8be913e0e272b9147aaf477d35 (diff)
downloadbcm5719-llvm-507b5677074321559fbaf12cfea1a468fa423832.tar.gz
bcm5719-llvm-507b5677074321559fbaf12cfea1a468fa423832.zip
Treat -Wformat=0 as an alias for -Wformat.
Fixes PR9195. llvm-svn: 148300
-rw-r--r--clang/lib/Frontend/Warnings.cpp4
-rw-r--r--clang/test/Sema/format-strings-scanf.c3
2 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Frontend/Warnings.cpp b/clang/lib/Frontend/Warnings.cpp
index 6f441112f36..576dd3d4459 100644
--- a/clang/lib/Frontend/Warnings.cpp
+++ b/clang/lib/Frontend/Warnings.cpp
@@ -83,6 +83,10 @@ void clang::ProcessWarningOptions(DiagnosticsEngine &Diags,
for (unsigned i = 0, e = Opts.Warnings.size(); i != e; ++i) {
StringRef Opt = Opts.Warnings[i];
+ // Treat -Wformat=0 as an alias for -Wno-format.
+ if (Opt == "format=0")
+ Opt = "no-format";
+
// Check to see if this warning starts with "no-", if so, this is a
// negative form of the option.
bool isPositive = true;
diff --git a/clang/test/Sema/format-strings-scanf.c b/clang/test/Sema/format-strings-scanf.c
index 4d9843cd790..be70357560c 100644
--- a/clang/test/Sema/format-strings-scanf.c
+++ b/clang/test/Sema/format-strings-scanf.c
@@ -1,5 +1,8 @@
// RUN: %clang_cc1 -fsyntax-only -verify -triple i386-apple-darwin9 -Wformat-nonliteral %s
+// Test that -Wformat=0 works:
+// RUN: %clang_cc1 -fsyntax-only -Werror -Wformat=0 %s
+
#include <stdarg.h>
typedef __typeof(sizeof(int)) size_t;
typedef struct _FILE FILE;
OpenPOWER on IntegriCloud