aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/decl.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@cygnus.com>2000-03-16 01:32:12 +0000
committerTom Tromey <tromey@gcc.gnu.org>2000-03-16 01:32:12 +0000
commit2c6c322a97713bff059648c8d2bbe87c16cd6b77 (patch)
treec1cbde9c844b02e5fd41dcfca6c56a415ebb6c99 /gcc/java/decl.c
parentd7d01975ad2e01f5ac4dfd5670687eaf2a98574a (diff)
downloadgcc-2c6c322a97713bff059648c8d2bbe87c16cd6b77.zip
gcc-2c6c322a97713bff059648c8d2bbe87c16cd6b77.tar.gz
gcc-2c6c322a97713bff059648c8d2bbe87c16cd6b77.tar.bz2
decl.c (init_decl_processing): Set type of `sync_info' to be pointer to Object.
* 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. From-SVN: r32572
Diffstat (limited to 'gcc/java/decl.c')
-rw-r--r--gcc/java/decl.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/java/decl.c b/gcc/java/decl.c
index b4dc28d..a0c3734 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);