[kaffe] x86 trampoline brokenness and classloader problem

Dalibor Topic robilad at yahoo.com
Mon Aug 12 02:05:39 PDT 2002

Hi Tim,
--- Timothy Stack <stack at cs.utah.edu> wrote:

> Now, onto the problem that exposed the above
> problem...  The exception 
> handling code in classMethod.c:loadClass() doesn't
> appear to do the 
> right thing, if a user ClassLoader throws a
> ClassNotFoundException, it 
> will just pass this up to the caller.  Shouldn't
> this be converting the 
> ClassNotFound to a NoClassDefFoundError and marking
> the errorInfo.type 
> with KERR_NO_CLASS_FOUND?  Otherwise, the verifier
> will fail too quickly 
> and the jitter will throw a ClassNotFoundException,
> which is neither a 
> RuntimeException or Error and shouldn't be thrown
> willy nilly.

I haven't found a clear citation about it in the JVM
spec 2, but the JLS 2 says in $12.2.1:

If an error occurs during class loading, then an
instance of one of the following subclasses of class
LinkageError will be thrown at any point in the
program that (directly or indirectly) uses the type:
* NoClassDefFoundError: No definition for a requested
class or interface could be found by the relevant
class loader. 

So this one seems to support your point. Can you come
up with a test that demonstrates the problem for the
regression test suite?

best regards,

dalibor topic

Do You Yahoo!?
HotJobs - Search Thousands of New Jobs

More information about the kaffe mailing list