aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-family/c.opt
diff options
context:
space:
mode:
authorMartin Sebor <msebor@redhat.com>2015-11-05 21:42:10 +0000
committerMartin Sebor <msebor@gcc.gnu.org>2015-11-05 14:42:10 -0700
commite2f5cc96e5c4abde5879269220404fdd3e6efca2 (patch)
treece31107d94774a8f934fd4e3164132222d38368f /gcc/c-family/c.opt
parent60f2d2f36d770c7d771ee5c1b3ae5a7b7169f894 (diff)
downloadgcc-e2f5cc96e5c4abde5879269220404fdd3e6efca2.zip
gcc-e2f5cc96e5c4abde5879269220404fdd3e6efca2.tar.gz
gcc-e2f5cc96e5c4abde5879269220404fdd3e6efca2.tar.bz2
PR c++/67942 - diagnose placement new buffer overflow
gcc/ * invoke.texi (-Wplacement-new): Document new option. * gcc/testsuite/g++.dg/warn/Wplacement-new-size.C: New test. gcc/c-family/ * c.opt (-Wplacement-new): New option. gcc/cp/ * cp/init.c (warn_placement_new_too_small): New function. (build_new_1): Call it. gcc/testsuite/ * g++.dg/warn/Wplacement-new-size.C: New test. From-SVN: r229827
Diffstat (limited to 'gcc/c-family/c.opt')
-rw-r--r--gcc/c-family/c.opt4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index e573254..5f38018 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -776,6 +776,10 @@ Wprotocol
ObjC ObjC++ Var(warn_protocol) Init(1) Warning
Warn if inherited methods are unimplemented.
+Wplacement-new
+C++ Var(warn_placement_new) Init(1) Warning
+Warn for placement new expressions with undefined behavior
+
Wredundant-decls
C ObjC C++ ObjC++ Var(warn_redundant_decls) Warning
Warn about multiple declarations of the same object.