Verwirrung: Exception und Abort
-
Neues Projekt und so hab ich schon gemacht.
Debug gibt folgendes:#0 0x00007fff80268ff6 in __kill () #1 0x00007fff8030a072 in abort () #2 0x0000000100183c82 in uw_init_context_1 () #3 0x00000001001842be in _Unwind_RaiseException () #4 0x0000000100074dd9 in __cxa_throw () #5 0x0000000100000e0a in main ()Grüße
-
kompletter quelltext und vll auch die befehlszeile, wie du das ganze compilierst und linkst?
-
Ja, na klar:
main.cpp:
#include <iostream> int main(int argc, char** argv) { try { throw 1; } catch(...) { std::cout << "caught" << std::endl; return 0; } std::cout << "not caught" << std::endl; return 1; }Kompiliert mit:
g++ main.cppGrüße
-
Tja, mit g++ 4.4.1 kommt genau das zu erwartende Verhalten raus.
-
int main() {}was macht er denn nun?
-
Also bei int main() {} passiert wie gewünscht nichts. Ich habe jetzt g++-4.4 eingerichtet, aber abort trap kommt immer noch.
Grüße,
Niels
-

-
poste doch noch mal im compiler- und ide-forum...
das ist eindeutig kein C++ problem sondern unter umständen ein bug im gcc oder was weiß ich...