diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-02-23 11:08:39 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-02-23 11:08:39 +0000 |
commit | 9965deac486f5993befde29ed8ac97ffbebc1f8a (patch) | |
tree | 994ce138abb4fffb3db148fde13de27fbab1ef9a | |
parent | 9d711a593a437faf4e6f3b47447da59bbfcdde58 (diff) | |
download | ppe42-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/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/class.c | 6 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/warn/changes-meaning.C | 11 |
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 "" } */ +}; + |