/gcc
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 17 Oct 2011 17:44:42 +0000 (17:44 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 17 Oct 2011 17:44:42 +0000 (17:44 +0000)
2011-10-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50757
* c-family/c.opt ([Wnonnull]): Add C++ and Objective-C++.
* doc/invoke.texi: Update.

/testsuite
2011-10-17  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50757
* g++.dg/warn/format7.C: New.
* obj-c++.dg/warn7.mm: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@180101 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/c-family/c.opt
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/warn/format7.C [new file with mode: 0644]
gcc/testsuite/obj-c++.dg/warn7.mm [new file with mode: 0644]

index 8e06c51..bfc1a7c 100644 (file)
@@ -510,7 +510,7 @@ C++ ObjC++ Var(warn_nonvdtor) Warning
 Warn about non-virtual destructors
 
 Wnonnull
-C ObjC Var(warn_nonnull) Warning
+C ObjC C++ ObjC++ Var(warn_nonnull) Warning
 Warn about NULL being passed to argument slots marked as requiring non-NULL
 
 Wnormalized=
index 3b71cb1..ac50a31 100644 (file)
@@ -3223,7 +3223,7 @@ Enable @option{-Wformat} plus format checks not included in
 @option{-Wformat}.  Currently equivalent to @samp{-Wformat
 -Wformat-nonliteral -Wformat-security -Wformat-y2k}.
 
-@item -Wnonnull @r{(C and Objective-C only)}
+@item -Wnonnull
 @opindex Wnonnull
 @opindex Wno-nonnull
 Warn about passing a null pointer for arguments marked as
index 4dc4e78..b67d0f5 100644 (file)
@@ -1,3 +1,9 @@
+2011-10-17  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/50757
+       * g++.dg/warn/format7.C: New.
+       * obj-c++.dg/warn7.mm: Likewise.
+
 2011-10-17  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/50729
diff --git a/gcc/testsuite/g++.dg/warn/format7.C b/gcc/testsuite/g++.dg/warn/format7.C
new file mode 100644 (file)
index 0000000..6e84069
--- /dev/null
@@ -0,0 +1,10 @@
+// PR c++/50757
+// { dg-options "-Wformat -Wno-nonnull" }
+
+extern void *f (void *__s) __attribute__ ((__nonnull__ (1)));
+
+int main()
+{
+  void* const s = 0;
+  f(s);
+}
diff --git a/gcc/testsuite/obj-c++.dg/warn7.mm b/gcc/testsuite/obj-c++.dg/warn7.mm
new file mode 100644 (file)
index 0000000..6e84069
--- /dev/null
@@ -0,0 +1,10 @@
+// PR c++/50757
+// { dg-options "-Wformat -Wno-nonnull" }
+
+extern void *f (void *__s) __attribute__ ((__nonnull__ (1)));
+
+int main()
+{
+  void* const s = 0;
+  f(s);
+}