aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/parse.y
diff options
context:
space:
mode:
authorPer Bothner <bothner@gcc.gnu.org>1999-01-16 02:00:29 -0800
committerPer Bothner <bothner@gcc.gnu.org>1999-01-16 02:00:29 -0800
commitaabd7048259b5e8cb8980cca95fb2d14096c2621 (patch)
treed5099cf85a030d4f4dc3b6272d86ab60fa028821 /gcc/java/parse.y
parent2dc219a11db3efc10d1564bf31db97aa7918e61b (diff)
downloadgcc-aabd7048259b5e8cb8980cca95fb2d14096c2621.zip
gcc-aabd7048259b5e8cb8980cca95fb2d14096c2621.tar.gz
gcc-aabd7048259b5e8cb8980cca95fb2d14096c2621.tar.bz2
expr.c (process_jvm_instruction): Coerce to correct Throwable sub-type the result of the call that gets the...
d * expr.c (process_jvm_instruction): Coerce to correct Throwable sub-type the result of the call that gets the exception value. * parse.y (java_complete_expand_methods): If flags_syntax_only, don't call finish_class. * parse.y (java_check_regular_methods): If METHOD_PRIVATE, clear found before continuing. * verify.c (verify_jvm_instructions): On an array load, allow and handle top of stack to be TYPE_NULL. From-SVN: r24697
Diffstat (limited to 'gcc/java/parse.y')
-rw-r--r--gcc/java/parse.y9
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/java/parse.y b/gcc/java/parse.y
index 0384004..c6805c2 100644
--- a/gcc/java/parse.y
+++ b/gcc/java/parse.y
@@ -4523,8 +4523,13 @@ java_check_regular_methods (class_decl)
found = lookup_argument_method (super_class, DECL_NAME (method), sig);
/* Nothing overrides or it's a private method. */
- if (!found || (found && METHOD_PRIVATE (found)))
+ if (!found)
continue;
+ if (METHOD_PRIVATE (found))
+ {
+ found = NULL_TREE;
+ continue;
+ }
/* If found wasn't verified, it's DECL_NAME won't be set properly.
We set it temporarily for the sake of the error report. */
@@ -5672,7 +5677,7 @@ java_complete_expand_methods ()
{
if (flag_emit_class_files)
write_classfile (current_class);
- else
+ else if (! flag_syntax_only)
finish_class (current_class);
}
}