aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorPaolo Carlini <paolo@gcc.gnu.org>2011-10-09 23:20:39 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2011-10-09 23:20:39 +0000
commit90454da1c0d74ee14a72a2c157f751de926a6ded (patch)
tree6019757ae3f0d04b80ae95e56cc4528d78e752af /gcc/testsuite
parent75e649f6f48d121f830f244827551618d903fd07 (diff)
downloadgcc-90454da1c0d74ee14a72a2c157f751de926a6ded.zip
gcc-90454da1c0d74ee14a72a2c157f751de926a6ded.tar.gz
gcc-90454da1c0d74ee14a72a2c157f751de926a6ded.tar.bz2
re PR c++/38980 (missing -Wformat warning on const char format string)
/cp 2011-10-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/38980 * init.c (constant_value_1): Add bool parameter. (decl_constant_value_safe): Add. (integral_constant_value): Adjust. (decl_constant_value): Adjust. * cp-tree.h (decl_constant_value_safe): Declare. * typeck.c (decay_conversion): Use decl_constant_value_safe. * call.c (convert_like_real): Likewise. /testsuite 2011-10-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/38980 * g++.dg/warn/format5.C: New. From-SVN: r179731
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/g++.dg/warn/format5.C12
2 files changed, 18 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index bef6c34..d3be034 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2011-10-09 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/38980
+ * g++.dg/warn/format5.C: New.
+
2011-10-09 Tobias Burnus <burnus@net-b.de>
PR fortran/45044
@@ -22,7 +27,7 @@
2011-10-08 Nicola Pero <nicola.pero@meta-innovation.com>
- PR libobjc/50428
+ PR libobjc/50428
* objc/execute/initialize-1.m: New test.
2011-10-08 Paul Thomas <pault@gcc.gnu.org>
diff --git a/gcc/testsuite/g++.dg/warn/format5.C b/gcc/testsuite/g++.dg/warn/format5.C
new file mode 100644
index 0000000..e219f88
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/format5.C
@@ -0,0 +1,12 @@
+// PR c++/38980
+// { dg-options "-Wformat" }
+
+extern "C"
+int printf(const char *format, ...) __attribute__((format(printf, 1, 2) ));
+
+const char fmt1[] = "Hello, %s";
+
+void f()
+{
+ printf(fmt1, 3); // { dg-warning "expects argument" }
+}