From 3381c28f38982fa0a8b6498d890a017e44138851 Mon Sep 17 00:00:00 2001 From: Andrew Haley Date: Fri, 3 Dec 2004 18:01:59 +0000 Subject: [PATCH] re PR java/18697 (Miscompilation of GtkMenuItemPeer.setParent(MenuItem)) 2004-12-03 Andrew Haley PR java/18697 * class.c (layout_class_method): Don't fail to override a method simply because it has DECL_ARTIFICIAL set. From-SVN: r91689 --- gcc/java/ChangeLog | 6 ++++++ gcc/java/class.c | 6 +++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 4f4b8bd1aa6..35217703809 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,9 @@ +2004-12-03 Andrew Haley + + PR java/18697 + * class.c (layout_class_method): Don't fail to override a method + simply because it has DECL_ARTIFICIAL set. + 2004-12-02 Tom Tromey PR java/16675: diff --git a/gcc/java/class.c b/gcc/java/class.c index 2af0134fb89..c314950cf44 100644 --- a/gcc/java/class.c +++ b/gcc/java/class.c @@ -2338,8 +2338,7 @@ layout_class_method (tree this_class, tree super_class, tree super_method = lookup_argument_method (super_class, method_name, method_sig); if (super_method != NULL_TREE - && ! METHOD_DUMMY (super_method) - && ! DECL_ARTIFICIAL (super_method)) + && ! METHOD_DUMMY (super_method)) { method_override = true; if (! METHOD_PUBLIC (super_method) && @@ -2358,7 +2357,8 @@ layout_class_method (tree this_class, tree super_class, tree method_index = get_method_index (super_method); set_method_index (method_decl, method_index); if (method_index == NULL_TREE - && !CLASS_FROM_SOURCE_P (this_class)) + && !CLASS_FROM_SOURCE_P (this_class) + && ! DECL_ARTIFICIAL (super_method)) error ("%Jnon-static method '%D' overrides static method", method_decl, method_decl); } -- 2.30.2