From 173f556ccc41ea93cf66896d0c7778241467407f Mon Sep 17 00:00:00 2001 From: Bryce McKinlay Date: Tue, 7 Mar 2000 08:58:26 +0000 Subject: decl.c (init_decl_processing): Added new class fields `depth', `ancestors', and `idt' to class_type_node. 2000-03-06 Bryce McKinlay * decl.c (init_decl_processing): Added new class fields `depth', `ancestors', and `idt' to class_type_node. Use _Jv_LookupInterfaceMethodIdx for soft_lookupinterfacemthod_node. * class.c (make_class_data): Push initial values for new fields. * java-tree.h: Updated prototype for `build_invokeinterface'. * expr.c (build_invokeinterface): Changed parameters to accept `method' tree. Calculate index of `method' in its declaring interface. Build call to _Jv_LookupInterfaceMethodIdx. (expand_invoke): Call `build_invokeinterface' with new parameters. * parse.y (patch_invoke): Call `build_invokeinterface' with new parameters. (This is Bryce McKinlay's implementation of the interfaces constant-time dispatch and type checking techniques designed by Per Bothner.) From-SVN: r32381 --- gcc/java/class.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/java/class.c') diff --git a/gcc/java/class.c b/gcc/java/class.c index f5cfd88..b9f56f5 100644 --- a/gcc/java/class.c +++ b/gcc/java/class.c @@ -1380,6 +1380,9 @@ make_class_data (type) PUSH_FIELD_VALUE (cons, "state", integer_zero_node); PUSH_FIELD_VALUE (cons, "thread", null_pointer_node); + PUSH_FIELD_VALUE (cons, "depth", integer_zero_node); + PUSH_FIELD_VALUE (cons, "ancestors", null_pointer_node); + PUSH_FIELD_VALUE (cons, "idt", null_pointer_node); FINISH_RECORD_CONSTRUCTOR (cons); -- cgit v1.1