This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: java/2333: ICE in mark_reference_fields
- To: apbianco at gcc dot gnu dot org
- Subject: Re: java/2333: ICE in mark_reference_fields
- From: Alexandre Petit-Bianco <apbianco at cygnus dot com>
- Date: 21 Mar 2001 04:56:00 -0000
- Cc: gcc-prs at gcc dot gnu dot org,
- Reply-To: Alexandre Petit-Bianco <apbianco at cygnus dot com>
The following reply was made to PR java/2333; it has been noted by GNATS.
From: Alexandre Petit-Bianco <apbianco@cygnus.com>
To: jsturm@one-point.com
Cc: gcc-gnats@gcc.gnu.org
Subject: Re: java/2333: ICE in mark_reference_fields
Date: Tue, 20 Mar 2001 20:46:47 -0800 (PST)
jsturm@one-point.com writes:
> I found that a non-record type is passed to push_super_field,
> causing mark_reference_fields to eventually fail because it expects
> a specific layout for the dummy field. The root cause is perhaps a
> failed initialization of C.
This is a problem I fixed this morning. I believe this patch does the
trick:
./A
Index: class.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/java/class.c,v
retrieving revision 1.95
diff -u -p -r1.95 class.c
--- class.c 2001/03/19 23:50:03 1.95
+++ class.c 2001/03/21 04:34:36
@@ -1693,7 +1694,7 @@ layout_class (this_class)
return;
}
if (TYPE_SIZE (this_class) == NULL_TREE)
- push_super_field (this_class, super_class);
+ push_super_field (this_class, maybe_super_class);
}
for (field = TYPE_FIELDS (this_class);