summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2007-02-23 11:08:39 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2007-02-23 11:08:39 +0000
commit9965deac486f5993befde29ed8ac97ffbebc1f8a (patch)
tree994ce138abb4fffb3db148fde13de27fbab1ef9a
parent9d711a593a437faf4e6f3b47447da59bbfcdde58 (diff)
downloadppe42-gcc-9965deac486f5993befde29ed8ac97ffbebc1f8a.tar.gz
ppe42-gcc-9965deac486f5993befde29ed8ac97ffbebc1f8a.zip
2007-02-23 Richard Guenther <rguenther@suse.de>
* class.c (note_name_declared_in_class): Make declaration changes meaning a pedwarn. * g++.dg/warn/changes-meaning.C: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122255 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/class.c6
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/g++.dg/warn/changes-meaning.C11
4 files changed, 23 insertions, 3 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 63dddf944eb..bdef6b5734b 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2007-02-23 Richard Guenther <rguenther@suse.de>
+
+ * class.c (note_name_declared_in_class): Make declaration
+ changes meaning a pedwarn.
+
2007-02-22 Michael Matz <matz@suse.de>
PR c++/29433
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index 0f19b67c74f..f24a2fec327 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -6299,9 +6299,9 @@ note_name_declared_in_class (tree name, tree decl)
A name N used in a class S shall refer to the same declaration
in its context and when re-evaluated in the completed scope of
S. */
- error ("declaration of %q#D", decl);
- error ("changes meaning of %qD from %q+#D",
- DECL_NAME (OVL_CURRENT (decl)), (tree) n->value);
+ pedwarn ("declaration of %q#D", decl);
+ pedwarn ("changes meaning of %qD from %q+#D",
+ DECL_NAME (OVL_CURRENT (decl)), (tree) n->value);
}
}
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index cab14535df2..550665f1cda 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2007-02-23 Richard Guenther <rguenther@suse.de>
+
+ * g++.dg/warn/changes-meaning.C: New testcase.
+
2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/30910
diff --git a/gcc/testsuite/g++.dg/warn/changes-meaning.C b/gcc/testsuite/g++.dg/warn/changes-meaning.C
new file mode 100644
index 00000000000..fdbddf82091
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/changes-meaning.C
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+/* { dg-options "-fpermissive" } */
+
+template <class _Tp> class auto_ptr {}; /* { dg-warning "changes meaning" } */
+template <class _Tp>
+class counted_ptr
+{
+public:
+ auto_ptr<_Tp> auto_ptr(); /* { dg-warning "" } */
+};
+
OpenPOWER on IntegriCloud