diff options
author | Tom Tromey <tromey@cygnus.com> | 2000-03-16 01:32:12 +0000 |
---|---|---|
committer | Tom Tromey <tromey@cygnus.com> | 2000-03-16 01:32:12 +0000 |
commit | 38d916d4853c5a0a1d3aee854ce6d6aa3b8286b0 (patch) | |
tree | c1cbde9c844b02e5fd41dcfca6c56a415ebb6c99 /gcc/java/decl.c | |
parent | 870b9203f5f4b878efdfac126a50c2c401612126 (diff) |
* decl.c (init_decl_processing): Set type of `sync_info' to be
pointer to Object.
* boehm.c (get_boehm_type_descriptor): Correctly compute `bits'.
Correctly compute bit number for current slot. Zero `high' and
`low' in DS_LENGTH case. Don't skip inherited fields. Use
mark_reference_fields.
(mark_reference_fields): New function.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@32572 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/java/decl.c')
-rw-r--r-- | gcc/java/decl.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/java/decl.c b/gcc/java/decl.c index b4dc28da833..a0c37340b38 100644 --- a/gcc/java/decl.c +++ b/gcc/java/decl.c @@ -626,7 +626,11 @@ init_decl_processing () dtable_ptr_type = build_pointer_type (dtable_type); PUSH_FIELD (object_type_node, field, "vtable", dtable_ptr_type); - PUSH_FIELD (object_type_node, field, "sync_info", ptr_type_node); + /* This isn't exactly true, but it is what we have in the source. + There is an unresolved issue here, which is whether the vtable + should be marked by the GC. */ + PUSH_FIELD (object_type_node, field, "sync_info", + build_pointer_type (object_type_node)); for (t = TYPE_FIELDS (object_type_node); t != NULL_TREE; t = TREE_CHAIN (t)) FIELD_PRIVATE (t) = 1; FINISH_RECORD (object_type_node); |