This patch prevents errors in dg-error, dg-warning, and dg-message from being silently ignored by GCC's overrides for those procedures. It's been tested on i686-pc-linux-gnu for the languages that use the overrides (c,c++,fortran,objc,obj-c++). I scanned through target-specific tests and didn't see anything problematic, but it's possible I missed something and errors will be reported. Checked in on mainline, and I plan to add it to 4.7 soon.
Janis
2012-07-24 Janis Johnson <jani...@codesourcery.com> * lib/gcc-dg.exp (process-message): Don't ignore errors. Index: testsuite/lib/gcc-dg.exp =================================================================== --- testsuite/lib/gcc-dg.exp (revision 189790) +++ testsuite/lib/gcc-dg.exp (working copy) @@ -739,7 +739,7 @@ # Process the dg- directive, including adding the regular expression # to the new message entry in dg-messages. set msgcnt [llength ${dg-messages}] - catch { eval $msgproc $dgargs } + eval $msgproc $dgargs # If the target expression wasn't satisfied there is no new message. if { [llength ${dg-messages}] == $msgcnt } {