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
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to