Hi, recent 4,8 has regressions in g++.old-deja/g++.eh for the catch*.C tests, if exception-mechanism is SjLj. This is due an off by one failure in an decreasing loop.
ChangeLog 2012-12-01 Kai Tietz * stmt.c (expand_sjlj_dispatch_table): Fix off by one. Tested for i686-w64-mingw32, x86_64-unknown-linux-gnu. Ok for apply? Regards, Kai Index: stmt.c =================================================================== --- stmt.c (Revision 193985) +++ stmt.c (Arbeitskopie) @@ -2282,7 +2282,7 @@ expand_sjlj_dispatch_table (rtx dispatch_index, tree range = maxval; rtx default_label = gen_label_rtx (); - for (int i = ncases - 1; i > 0; --i) + for (int i = ncases - 1; i >= 0; --i) { tree elt = dispatch_table[i]; tree low = CASE_LOW (elt);