From ec60715d392feadd11d7b25dee140758bb91e771 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 17 Apr 2019 19:57:02 +0200 Subject: [PATCH] dg-extract-results.sh: Only handle WARNING: program timed out lines specially in "$MODE" == "sum". * dg-extract-results.sh: Only handle WARNING: program timed out lines specially in "$MODE" == "sum". Restore previous behavior for "$MODE" != "sum". Clear has_timeout and timeout_cnt if in a different variant or curfile is empty. * dg-extract-results.py: Fix a typo. From-SVN: r270415 --- contrib/ChangeLog | 8 ++++++ contrib/dg-extract-results.py | 2 +- contrib/dg-extract-results.sh | 51 ++++++++++++++++++++--------------- 3 files changed, 38 insertions(+), 23 deletions(-) diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 63d266d9b65..b1fc60fcbee 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,11 @@ +2019-04-17 Jakub Jelinek + + * dg-extract-results.sh: Only handle WARNING: program timed out + lines specially in "$MODE" == "sum". Restore previous behavior + for "$MODE" != "sum". Clear has_timeout and timeout_cnt if in + a different variant or curfile is empty. + * dg-extract-results.py: Fix a typo. + 2019-04-05 Martin Liska PR translation/89936 diff --git a/contrib/dg-extract-results.py b/contrib/dg-extract-results.py index 5bf2f87c241..4e113a8dd6b 100644 --- a/contrib/dg-extract-results.py +++ b/contrib/dg-extract-results.py @@ -296,7 +296,7 @@ class Prog: # If we have a time out warning, make sure it appears # before the following testcase diagnostic: we insert # the testname before 'program' so that sort faces a - # list of testhanes. + # list of testnames. if line.startswith ('WARNING: program timed out'): has_warning = 1 else: diff --git a/contrib/dg-extract-results.sh b/contrib/dg-extract-results.sh index 86c4246dc92..97ac222b54a 100755 --- a/contrib/dg-extract-results.sh +++ b/contrib/dg-extract-results.sh @@ -331,13 +331,15 @@ BEGIN { # Ugly hack for gfortran.dg/dg.exp if ("$TOOL" == "gfortran" && testname ~ /^gfortran.dg\/g77\//) testname="h"testname - if (\$1 == "WARNING:" && \$2 == "program" && \$3 == "timed" && (\$4 == "out" || \$4 == "out.")) { - has_timeout=1 - timeout_cnt=cnt - } else { - # Prepare timeout replacement message in case it's needed - timeout_msg=\$0 - sub(\$1, "WARNING:", timeout_msg) + if ("$MODE" == "sum") { + if (\$0 ~ /^WARNING: program timed out/) { + has_timeout=1 + timeout_cnt=cnt+1 + } else { + # Prepare timeout replacement message in case it's needed + timeout_msg=\$0 + sub(\$1, "WARNING:", timeout_msg) + } } } /^$/ { if ("$MODE" == "sum") next } @@ -345,25 +347,30 @@ BEGIN { if ("$MODE" == "sum") { # Do not print anything if the current line is a timeout if (has_timeout == 0) { - # If the previous line was a timeout, - # insert the full current message without keyword - if (timeout_cnt != 0) { - printf "%s %08d|%s program timed out.\n", testname, timeout_cnt, timeout_msg >> curfile - timeout_cnt = 0 - cnt = cnt + 1 - } - printf "%s %08d|", testname, cnt >> curfile - cnt = cnt + 1 - filewritten[curfile]=1 - need_close=1 - if (timeout_cnt == 0) - print >> curfile + # If the previous line was a timeout, + # insert the full current message without keyword + if (timeout_cnt != 0) { + printf "%s %08d|%s program timed out.\n", testname, timeout_cnt-1, timeout_msg >> curfile + timeout_cnt = 0 + cnt = cnt + 1 + } + printf "%s %08d|", testname, cnt >> curfile + cnt = cnt + 1 + filewritten[curfile]=1 + need_close=1 + print >> curfile } - has_timeout=0 + } else { + filewritten[curfile]=1 + need_close=1 + print >> curfile } - } else + } else { + has_timeout=0 + timeout_cnt=0 next + } } END { n=1