diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d361e4e12d2c..ec9f8302fb64 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +1998-08-09 Mark Mitchell + + * lib/old-dejagnu.exp: Revise handling of `Internal compiler + error'. + Tue Aug 18 19:19:50 1998 Jeffrey A Law (law@cygnus.com) * gcc.c-torture/execute/*.x: Some updates for the h8300 targets. diff --git a/gcc/testsuite/lib/old-dejagnu.exp b/gcc/testsuite/lib/old-dejagnu.exp index e029b23e00da..52f9c0cae0a9 100644 --- a/gcc/testsuite/lib/old-dejagnu.exp +++ b/gcc/testsuite/lib/old-dejagnu.exp @@ -404,6 +404,11 @@ proc old-dejagnu { compiler prog cflagsx default_cflags libs } { remote_file build delete $output return 1 } + if [string match "*Internal compiler error*" $comp_output] then { + fail "$name caused compiler crash" + remote_file build delete $output + return 1 + } #send_user "\nold_dejagnu.exp: comp_output1 = :$comp_output:\n\n" #send_user "\nold_dejagnu.exp: message = :$message:\n\n" @@ -426,13 +431,7 @@ proc old-dejagnu { compiler prog cflagsx default_cflags libs } { } set last_line $line - # If we crashed on this line, all tests fail. - if [regexp "(^|\n)\[^\n\]+:$line: Internal compiler error\[^\n\]*" $comp_output ] { - regsub -all "(^|\n)\[^\n\]+:$line:\[^\n\]*" $comp_output "" comp_output - set comp_output [string trimleft $comp_output] - set ok fail - set uhoh fail - } elseif [regsub -all "(^|\n)\[^\n\]+:$line:\[^\n\]*" $comp_output "" comp_output] { + if [regsub -all "(^|\n)\[^\n\]+:$line:\[^\n\]*" $comp_output "" comp_output] { set comp_output [string trimleft $comp_output] set ok pass set uhoh fail