Hi Ignacy, Ignacy Gawędzki wrote,
Using unwind-forcedunwind.c from nptl/sysdeps/pthread doesn't work well on ARM, see nptl/sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c for an explanation.
The following code example shows what's wrong without the ARM-specific version.
struct Foo { ~Foo(); };
Foo::~Foo() {}
void f() { Foo a; throw 0; }
int main() { try { f(); } catch (int) { std::cerr << "caught" << std::endl; } return 0; }
Compile without any optimizations (it's important that Foo's destructor is not inlined) and link with -lpthread. The thrown exception is not caught as expected and the program aborts.
Can you please try with 1.0.18? I can not reproduce the issue with 1.0.18.
I just get "caught" with the test app.
May be it was accidentally fixed in the release.
best regards Waldemar