This is the mail archive of the
mailing list for the GCC project.
[Bug libgcj/24616] linking BC-compiled classes: NoClassDefFoundErrors should be deferred
- From: "aph at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 6 Nov 2005 16:15:27 -0000
- Subject: [Bug libgcj/24616] linking BC-compiled classes: NoClassDefFoundErrors should be deferred
- References: <firstname.lastname@example.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #6 from aph at gcc dot gnu dot org 2005-11-06 16:15 -------
You can get the class by generating a special-purpose thunk using the libffi
invocation interface and pointing the vector at the thunk.
Virtual methods are easy to do by adding a suitable "NoClassDefFoundError"
method to class Object; this method will then be inherited by every class.
Instance variables are tricky, but can be done either by adding an inline check
or changing the ABI so that virtual accessor methods are generated for all
public instance variables. There aren't very many such variables so this might
not be much of a problem.