libjava test suite keeps getting stuck

Richard Henderson
Mon Apr 23 20:15:00 GMT 2001

On Tue, Apr 24, 2001 at 02:09:02PM +1200, Bryce McKinlay wrote:
> I'm not sure why a #pragma would make a difference in this case. My
> understanding is that currently, Java exceptions will be used for the
> entire module if the object being thrown is an extern "java" and extends
> java.lang.Throwable, so that doesn't explain why __gxx_personality_v0 is
> being referenced from the C++ parts of libjava, unless there are places
> that really are throwing or catching non-Java exceptions.

I explained that, I thought.  If just cleanups (aka destructors)
must be run, then that doesn't count as a throw or catch.  So no
decision could be made based on the type of object involved.

> Also, I'm not really up to speed on the issues here, but isn't it
> conceivable that a module would want to use both C++ and Java exception
> semantics?

No, it is not conceivable.  Or rather, the exception handling ABI
is not designed for that sort of thing and it is not possible.

> For example, to catch a C++ exception thrown from a C++ library
> in one function but to throw a Java exception back to some Java code in
> another?

Put the two functions in different source files and all is well.
This is not such a severe restriction.


More information about the Java mailing list