Steps to reproduce:
Download Botan 2.10.0 from https://github.com/randombit/botan/releases
Configure with: python configure.py --cc=gcc --os=mingw
Build with mingw32-make
Run "botan-test.exe"
With 7.3 SEH, this works perfectly, all tests pass.
With 8.1 SEH, the executable crashes during init:
echo %ERRORLEVEL%
-1073741819
Which is equivalent to C0000005 (access violation).
Confirmed by GDB:
Thread 1 received signal SIGSEGV, Segmentation fault.
0x0000000000b5b70c in __static_initialization_and_destruction_0(int, int) [clone .constprop.101] ()
I am not sure if the problem is in Botan or MinGW64, but since it works with 7.3 and not with 8.1, I thought it makes sense to report it here first.
Hi,
this issue is most like a g++ issue. I assume that destructor code in
g++ is done in 8.1 version pretty much for sysv-abi only, and
therefore has issues on ms-abi. Of interest is here to isolate the
issue to a small (<100 lines of code) test case. As nobody (not even
we will download a big project, build it, and then try to reproduce.
Btw is LTO used here on built? you could play with building with
different optimization levels, or providing a more complete stack
trace for it. Eg by using gdb, you could use 'gdb --args
botan-test.exe' to get via the bt command after the segfault
Regards,
Kai
Am So., 21. Juli 2019 um 23:42 Uhr schrieb Olivier Croquette
ocroquette@users.sourceforge.net:
Related
Bugs: #807
Thank you for your support. I don't think LTO is used. For now, we will just stick to build Botan with MinGW 7.x. then.