aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@cygnus.com>2000-06-25 17:28:35 +0000
committerTom Tromey <tromey@gcc.gnu.org>2000-06-25 17:28:35 +0000
commit120f0c104ac56e8b6dcbe2b29dd6940e6fb0e7a2 (patch)
tree9ba33b828f8748830217c3c762dbb2803b515de2
parent4061f623a6ab220259c77be5f97617a05aa67d51 (diff)
downloadgcc-120f0c104ac56e8b6dcbe2b29dd6940e6fb0e7a2.zip
gcc-120f0c104ac56e8b6dcbe2b29dd6940e6fb0e7a2.tar.gz
gcc-120f0c104ac56e8b6dcbe2b29dd6940e6fb0e7a2.tar.bz2
parse.y (check_abstract_method_definitions): Also check if `other_method' is abstract.
* parse.y (check_abstract_method_definitions): Also check if `other_method' is abstract. From-SVN: r34697
-rw-r--r--gcc/java/ChangeLog5
-rw-r--r--gcc/java/parse.c4
-rw-r--r--gcc/java/parse.y4
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index 5b0e1a6..10d0a73 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,8 @@
+2000-06-24 Tom Tromey <tromey@cygnus.com>
+
+ * parse.y (check_abstract_method_definitions): Also check if
+ `other_method' is abstract.
+
2000-06-23 Tom Tromey <tromey@cygnus.com>
* parse.y (patch_incomplete_class_ref): Initialize the returned
diff --git a/gcc/java/parse.c b/gcc/java/parse.c
index d6ece50..c28407e 100644
--- a/gcc/java/parse.c
+++ b/gcc/java/parse.c
@@ -8540,7 +8540,9 @@ check_abstract_method_definitions (do_interface, class_decl, type)
other_name = EXPR_WFL_NODE (other_name);
if (!DECL_CLINIT_P (other_method)
&& !DECL_CONSTRUCTOR_P (other_method)
- && method_name == other_name && method_sig == s)
+ && method_name == other_name
+ && method_sig == s
+ && !METHOD_ABSTRACT (other_method))
{
found = 1;
break;
diff --git a/gcc/java/parse.y b/gcc/java/parse.y
index 3e0f83e..a24c3a0 100644
--- a/gcc/java/parse.y
+++ b/gcc/java/parse.y
@@ -5842,7 +5842,9 @@ check_abstract_method_definitions (do_interface, class_decl, type)
other_name = EXPR_WFL_NODE (other_name);
if (!DECL_CLINIT_P (other_method)
&& !DECL_CONSTRUCTOR_P (other_method)
- && method_name == other_name && method_sig == s)
+ && method_name == other_name
+ && method_sig == s
+ && !METHOD_ABSTRACT (other_method))
{
found = 1;
break;