This is the mail archive of the
java-prs@gcc.gnu.org
mailing list for the Java project.
[Bug java/17216] ICE in 3.5, error in 3.4.1 when compiling .class->.o
- From: "tromey at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: java-prs at gcc dot gnu dot org
- Date: 27 Aug 2004 20:49:57 -0000
- Subject: [Bug java/17216] ICE in 3.5, error in 3.4.1 when compiling .class->.o
- References: <20040827180830.17216.ovidr@users.sourceforge.net>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From tromey at gcc dot gnu dot org 2004-08-27 20:49 -------
I've investigated this a little.
This is another miranda method bug.
javac -target 1.1 emits an explicit redeclaration
of I.internal_new_GC in A. This declaration is
marked Synthetic.
In class.c:layout_class_method, we don't set the DECL_VINDEX
for a method if "DECL_ARTIFICIAL (method_decl)".
This means that when we try to set the vindex for
B.internal_new_GC, we do find a super_method, but the
super_method does not have an assigned vtable slot.
I believe the solution is to remove the test for DECL_ARTIFICIAL
when doing vtable layout. I'll test a patch.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |tromey at gcc dot gnu dot
|dot org |org
Status|UNCONFIRMED |ASSIGNED
Summary|ICE in 3.5, error in 3.4.1 |ICE in 3.5, error in 3.4.1
|when compiling .class->.o |when compiling .class->.o
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17216