tausq@ios:/tmp$ g++ -o try_catch try_catch.cc tausq@ios:/tmp$ ./try_catch Segmentation fault (core dumped) tausq@ios:/tmp$ g++ -fomit-frame-pointer -o try_catch try_catch.cc tausq@ios:/tmp$ ./try_catch tausq@ios:/tmp$ tausq@ios:/tmp$ g++ -O1 -fno-omit-frame-pointer -o try_catch try_catch.cc tausq@ios:/tmp$ ./try_catch free(): invalid pointer 0xbff004b8! Segmentation fault (core dumped) tausq@ios:/tmp$ The same problem is seen in 3.0, but not in gcc-3.4.
Created attachment 7550 [details] Test case
This is most likely only effects 3.3.x because something changed in the back-end to support exceptions better.
I don't believe there have been any specific changes to the backend with respect to exception support since 3.3.0. 3.0 didn't have dwarf2 EH support. There possibly have been some changes in the libstdc++ support. Which exception model (sjlj or dwarf2) are you using?
(In reply to comment #3) > I don't believe there have been any specific changes to the backend > with respect to exception support since 3.3.0. 3.0 didn't have dwarf2 > EH support. There possibly have been some changes in the libstdc++ > support. > > Which exception model (sjlj or dwarf2) are you using? sjlj for gcc-3.3. now that you mention it, i see that my 3.4 compiler is compiled to use dwarf2. i don't have a sjlj-compiled gcc-3.4 compiler handy... but i can try it if that will help. randolph
Subject: Re: [3.3 only] [hppa] try-catch program fails when > > Which exception model (sjlj or dwarf2) are you using? > > sjlj for gcc-3.3. now that you mention it, i see that my 3.4 compiler is > compiled to use dwarf2. > > i don't have a sjlj-compiled gcc-3.4 compiler handy... but i can try it if > that > will help. I don't test sjlj much on linux. I know java has more testfails with sjlj and I think that may also be the case for libstdc++. Dave
Not critical.