diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index fc28a08c365dd2cc89b2feece1979ff6ebe54785..921aeb714c8ff25a3b18c7d4790ca5f613ae01a9 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,5 +1,9 @@ 2004-11-24 Tom Tromey <tromey@redhat.com> + * verify-impl.c (vfy_push_type): Removed bogus "return". + (initialize_stack): Use vfy_alloc and vfy_free. + (verify_instructions_0): Likewise. + * Merged gcj-abi-2-dev-branch to trunk. 2004-11-24 Andrew Haley <aph@redhat.com> diff --git a/gcc/java/verify-impl.c b/gcc/java/verify-impl.c index 2c402a8c62bc6aa62cbdb88c141b0daa495b831a..f48797892b2a1c553abe086b57acd69c1d8a7f48 100644 --- a/gcc/java/verify-impl.c +++ b/gcc/java/verify-impl.c @@ -1329,7 +1329,7 @@ static void vfy_push_type (type_val tval) { type t = make_type (tval); - return vfy_push_type_t (t); + vfy_push_type_t (t); } #define push_type vfy_push_type @@ -2267,7 +2267,7 @@ initialize_stack (void) /* We have to handle wide arguments specially here. */ arg_count = vfy_count_arguments (vfy_get_signature (vfr->current_method)); { - type arg_types[arg_count]; + type *arg_types = (type *) vfy_alloc (arg_count * sizeof (type)); compute_argument_types (vfy_get_signature (vfr->current_method), arg_types); for (i = 0; i < arg_count; ++i) { @@ -2276,6 +2276,7 @@ initialize_stack (void) if (type_iswide (&arg_types[i])) ++var; } + vfy_free (arg_types); } return is_init; @@ -3037,7 +3038,7 @@ verify_instructions_0 (void) arg_count = vfy_count_arguments (method_signature); { /* Pop arguments and check types. */ - type arg_types[arg_count]; + type *arg_types = (type *) vfy_alloc (arg_count * sizeof (type)); compute_argument_types (method_signature, arg_types); for (i = arg_count - 1; i >= 0; --i) @@ -3047,6 +3048,8 @@ verify_instructions_0 (void) nargs -= type_depth (&arg_types[i]); pop_init_ref_t (arg_types[i]); } + + vfy_free (arg_types); } if (opcode == op_invokeinterface