There is some discussion on mingw-developer about merging Capsers SEH patches but there are patent issues as borland owns the patent on C++ Style EH in C. The patent is BS as it even sights prior art but still I dont know who wants to take the risk on going to court for this. Now that M$ owns a large chunck of borland this might happen.
Here is the email in question
<snip>
Well, I don't think I have the time for this. It was quite a battle to get the fastcall patch into gcc, and this was only a (IIRC) ~10 or ~20 KB patch. Compare that to the SEH patch which is ~370 KB (and not even complete yet) and which may even violate Borland's patent. The patch is also written by me when I was a gcc newbie and I have probably made some mistakes. It would be nice if an experienced gcc hacker would review and improve the patch.
I will however help in any way I can integrating the patch into gcc 3.4 if needed.
Finally, a gcc with only __try/__finally is only marginally better than a gcc without any SEH at all.
Casper Hornstrup
Alexandre Julliard wrote:
"Gregory M. Turner" gmturner007@ameritech.net writes:
I guess the first question to ask, before all of the above is: which is a worse sacrifice for wine? Requiring compiler support for this, or an extra parsing phase? Or just having a broken dummy implementation like we do now?
For Winelib apps, the solution is to add support to the compiler. For IDL-generated code, the solution is to make our IDL compiler generate code that uses the existing __TRY macros (or even generates the C code directly without using the macros if this allows more optimizations).