This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GCJ/minGW produced executables and linux/wine


 > > Indeed.  Has gcj on that target ever worked with DWARF2 exceptions?
 >
 > Yes, statically linked executables do work fine. Only interpreted
 > programs have problems due to the reason (I strongly believe) cited
 > above.

What, even unwinding through invoke() ?

No, not at all, since that ultimately uses libffi as well via _Jv_CallAnyMethodA( ). Ok, so the "work fine" should be taken with this grain of salt. :-P

BTW, I now understand what the original question from you
and the one from Jeff meant (sorry, 'am a little thick):

Win32 uses win32_exception_handler( ) in win32.cc via
Win32 SetUnhandledExceptionFilter( ) to catch
EXCEPTION_ACCESS_VIOLATION (throw NullPointerException), etc.
and since SJLJ uses a longjmp to implement "throw", would this
create problems? This is similar to catch_segv( ), etc. in
prims.cc.

Well honestly, I don't know and I'm surprised that it works
on Linux (so signal delivery must be the "last mile" in that
the OS doesn't really care if the handler returns or not).

I can imagine that there would be problems on Win32 because
this handler is supposed to return a value to the OS telling
it whether to execute the default handler (abort program)
or whether the exception has been handled successfully. See
MSDN docs for SetUnhandledExceptionFilter( ) or this article
for more details:

http://www.microsoft.com/msj/0197/exception/exception.htm

However, right now I don't know what better methods there
would be to generate a proper NullPointerException,
ArithmeticException, etc.

Ranjit.

_________________________________________________________________
Cricket World Cup 2003- News, Views and Match Reports. http://server1.msn.co.in/msnspecials/worldcup03/



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]