diff options
author | Mark Mitchell <mark@codesourcery.com> | 2005-03-07 23:08:58 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2005-03-07 23:08:58 +0000 |
commit | f03e8526def1a820f811a649bc245dde18f18c02 (patch) | |
tree | aaf0a4b38dc9b8dcd379d14f41c5e41463acdb11 /gcc | |
parent | 5fa09df40239511f4d688af53999322106e8934b (diff) | |
download | gcc-f03e8526def1a820f811a649bc245dde18f18c02.zip gcc-f03e8526def1a820f811a649bc245dde18f18c02.tar.gz gcc-f03e8526def1a820f811a649bc245dde18f18c02.tar.bz2 |
class.c (finish_struct_1): Do not warn about non-virtual destructors in Java classes.
* class.c (finish_struct_1): Do not warn about non-virtual
destructors in Java classes.
* g++.dg/warn/Wnvdtor.C: New test.
From-SVN: r96054
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/class.c | 4 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/warn/Wnvdtor.C | 10 |
4 files changed, 22 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 4c40681..3048511f 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2005-03-07 Mark Mitchell <mark@codesourcery.com> + + * class.c (finish_struct_1): Do not warn about non-virtual + destructors in Java classes. + 2005-03-05 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> PR c++/19311 diff --git a/gcc/cp/class.c b/gcc/cp/class.c index ba89ea1..89346d6 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -5029,7 +5029,9 @@ finish_struct_1 (tree t) /* Build the VTT for T. */ build_vtt (t); - if (warn_nonvdtor && TYPE_POLYMORPHIC_P (t)) + /* This warning does not make sense for Java classes, since they + cannot have destructors. */ + if (!TYPE_FOR_JAVA (t) && warn_nonvdtor && TYPE_POLYMORPHIC_P (t)) { tree dtor; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3b33042..452046f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2005-03-07 Mark Mitchell <mark@codesourcery.com> + + * g++.dg/warn/Wnvdtor.C: New test. + 2005-03-07 Richard Sandiford <rsandifo@redhat.com> * gcc.dg/torture/pr19683-1.c: New test. diff --git a/gcc/testsuite/g++.dg/warn/Wnvdtor.C b/gcc/testsuite/g++.dg/warn/Wnvdtor.C new file mode 100644 index 0000000..b04fdcb --- /dev/null +++ b/gcc/testsuite/g++.dg/warn/Wnvdtor.C @@ -0,0 +1,10 @@ +// { dg-options "-Wnon-virtual-dtor" } + +extern "Java" +{ + class Foo + { + public: + virtual void bar( void); + }; +} |