Adding fields to object_type_node

Dachuan Yu dachuan.yu@yale.edu
Thu Oct 4 19:31:00 GMT 2001


Bryce McKinlay wrote:
> Firstly, why do you need to change object_type_node?

I wanted to change object_type_node because
(1) I don't really understand what's going on and
(2) "init_decl_processing"(decl.c) does a
"PUSH_FIELD(object_type_node,...,"vtable",...)"
and similarly class.c and expr.c do
"PUSH_FIELD_VALUE" to some object type node
on field "vtable", too. So I figured I better do the same
thing... I know it's not the best reasoning... :)
Anyway, I removed those codes for "object_type_node"
(while keeping those for "class_type_node" of course),
and added the field "otable" below the field "vtable" in
"Class.h" with the same type.
 _Jv_VTable *vtable;
 _Jv_VTable *otable; // My Change
But it doesn't solve the problem. I also tried:
(a) in "Class.h" constructor for primitive types,
 vtable = JV_PRIMITIVE_VTABLE;
 otable = JV_PRIMITIVE_VTABLE; // My Change
(b) in "natClassLoader.cc" _Jv_NewClass
 ret->vtable = NULL;
 ret->otable = NULL; // My Change
They don't help either. It seems that I'll have to dig deeper...
Regards,
Dachuan


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /