Hi everyone,
Since I am morally compelled to provide a GCCC 6.1 toolchain (even though
Microsoft's S.T.L. has already had one since like, GCC 6.1 was released), I
blew the dust off my old build scripts to see what they are still worth.
Aside from most of the issues that made me put them aside I don't know how
many years ago, they still provide me with a toolchain with slight
modifications.
I have one problem though: when built without any patches, the GCC 6.1
release fails to provide working exceptions.
This program:
#include <iostream>
int main()
try
{
throw 42;
}
catch(int i)
{
std::cout << i << '\n';
}
compiles, but crashes. GDB provides the following backtrace:
#0 0x000000006fc58caf in libstdc++-6!_ZGTtNSt16invalid_argumentD2Ev ()
from M:\VirtualBox\mingw64\bin\libstdc++-6.dll
#1 0x000000006fc59966 in
libstdc++-6!_ZN10__cxxabiv129__pointer_to_member_type_infoD2Ev () from
M:\VirtualBox\mingw64\bin\libstdc++-6.dll
#2 0x000000006144d411 in libgcc_s_seh-1!_GCC_specific_handler () from
M:\VirtualBox\mingw64\bin\libgcc_s_seh-1.dll
#3 0x000000006fd20805 in libstdc++-6!.gxx_personality_seh0 () from
M:\VirtualBox\mingw64\bin\libstdc++-6.dll
#4 0x00007fffbef09afd in ntdll!.chkstk () from
C:\WINDOWS\SYSTEM32\ntdll.dll
#5 0x00007fffbee94fe9 in ntdll!RtlImageNtHeaderEx () from
C:\WINDOWS\SYSTEM32\ntdll.dll
#6 0x00007fffbef08c0a in ntdll!KiUserExceptionDispatcher () from
C:\WINDOWS\SYSTEM32\ntdll.dll
#7 0x00007fffbbbd1f28 in RaiseException () from
C:\WINDOWS\system32\KernelBase.dll
#8 0x000000006144d506 in libgcc_s_seh-1!_Unwind_RaiseException () from
M:\VirtualBox\mingw64\bin\libgcc_s_seh-1.dll
#9 0x000000006fd1f92e in libstdc++-6!.cxa_throw () from
M:\VirtualBox\mingw64\bin\libstdc++-6.dll
#10 0x00000000004015e8 in main ()
So I'm wondering what is wrong. I seem to remember GCC 4.8's libstdc++
needing an additional export for exceptions to work, but I doubt the same
fix is still valid. The program crashes regardless if I compile it with the
cross-compiler or native toolchain it produced.
Can anyone please shed some light on this?
Thanks a bunch!
Ruben
------------------------------------------------------------------------------
Attend Shape: An AT&T Tech Expo July 15-16. Meet us at AT&T Park in San
Francisco, CA to explore cutting-edge tech and listen to tech luminaries
present their vision of the future. This family event has something for
everyone, including kids. Get more information and register today.
http://sdm.link/attshape
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public