Brian Dessent wrote: > All of the actual processing of all window events happens through > messages passed to WndProc, but WndProc is never directly called > by user code. So if you want to communicate information between the > window procedure and the main function (such as: bad error happened, > we need to bail!) you wrap the message pump with a try/catch and > throw from the WndProc.
Fair enough. I'd never expected that to work safely; instead I caught the exception inside WndProc, set a flag, returned normally, and checked the flag inside the pump. Given it's valid, your contingent arguments follow perfectly. > [...] And we can't offer a DW2 Cygwin gcc that uses SJLJ for > -mno-cygwin as they are really both the same back-end just with > different headers and runtimes. You raised the obvious point in a subsequent posting: back in February there seemed to be broad support to kill -mno-cygwin; if there were two backends, it might be possible to satisfy most people. Indeed in that very message, you wrote: > Here I meant to add that of course we have discussed deprecating > -mno-cygwin and offering a real MinGW cross in its place, which would > have its own back-end, and thus could have a different exception > handling model. But by the time you've done all that, you might as > well just package a separate gcc named "gcc-dw2" or whatever and have > them both installable in parallel, to please everybody. This is what > Danny did with his 4.2 MinGW releases. Agreed very largely. The only point I might highlight is one that Matsuoka-san mentioned with regard to Octave: using anything but a "default" compiler is confusing for e.g. application users creating plugin dlls. I think there's value in getting the packaging right, so that the bulk of the populace might be spared the joys of enlightenment about stack frame formats. Regards Anthony -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/