From a44d0bd787e4fdf2424583508f407bafa139ed8a Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 3 Jan 2017 23:00:30 +1030 Subject: [PATCH] Check ld_compile return status * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Do not allow test to continue after compilation errors. (run_cc_link_tests): Likewise. --- ld/ChangeLog | 6 ++++++ ld/testsuite/lib/ld-lib.exp | 24 ++++++++++++++++++++---- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index 1b0e4e0437..b6a82847da 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2017-01-03 Alan Modra + + * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Do not + allow test to continue after compilation errors. + (run_cc_link_tests): Likewise. + 2017-01-03 Dimitar Dimitrov * Makefile.am (ALL_EMULATION_SOURCES): Add epruelf.c. diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp index f8d5ec6a05..5ca700bf27 100644 --- a/ld/testsuite/lib/ld-lib.exp +++ b/ld/testsuite/lib/ld-lib.exp @@ -1414,10 +1414,18 @@ proc run_ld_link_exec_tests { ldtests args } { # incorrect section attributes and the assembler will warn # them. if { [ string match "c++" $lang ] } { - ld_compile "$CXX -c $CXXFLAGS $cflags" $srcdir/$subdir/$src_file $objfile + set cmd "$CXX -c $CXXFLAGS $cflags" } else { - ld_compile "$CC -c $CFLAGS $cflags" $srcdir/$subdir/$src_file $objfile + set cmd "$CC -c $CFLAGS $cflags" } + if ![ld_compile $cmd $srcdir/$subdir/$src_file $objfile] { + set failed 1 + break + } + } + if { $failed != 0 } { + unresolved $testname + continue } if { [ string match "c++" $lang ] } { @@ -1549,10 +1557,18 @@ proc run_cc_link_tests { ldtests } { # incorrect section attributes and the assembler will warn # them. if { [ string match "c++" $lang ] } { - ld_compile "$CXX -c $CXXFLAGS $cflags" $srcdir/$subdir/$src_file $objfile + set cmd "$CXX -c $CXXFLAGS $cflags" } else { - ld_compile "$CC -c $CFLAGS $cflags" $srcdir/$subdir/$src_file $objfile + set cmd "$CC -c $CFLAGS $cflags" } + if ![ld_compile $cmd $srcdir/$subdir/$src_file $objfile] { + set failed 1 + break + } + } + if { $failed != 0 } { + unresolved $testname + continue } # Clear error and warning counts.