On 17/03/2021 20:08, Jon Turney wrote:
On 17/03/2021 20:02, Jon Turney wrote:
A new setup release candidate is available at:
https://cygwin.com/setup/setup-2.906.x86_64.exe (64 bit version)
https://cygwin.com/setup/setup-2.906.x86.exe (32 bit version)
Please test, and report any problems here.
This is not the place for setup feature requests.
Pretty late in preparing this release, I discovered that in Fedora 33,
the MinGW-w64 32-bit compiler has been changed from sjlj to dwarf2
unwinding C++ exception handling.
I believe this means that exceptions cannot propagate up through Windows
code, so the release needs to be delayed until the source code has been
inspected to see if there's any place where e.g. we throw an exception
from a Windows callback, but I'd like to get this out for some testing
already.
I think that this does effect some error cases, where we throw an error
and expect it to get propagated through a callback.
So for the moment, I've added a configure time check that the x86
compiler is configured with sjlj exceptions, and dropped back to
building on Fedora 32.
Long term, I'm not sure what the best approach is. Using
-fno-exceptions and adjusting the code not to use exceptions would be a
start, but that just leaves us silently exiting if an exception is
thrown from libstdc++...