]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - contrib/dg-extract-results.sh
dg-extract-results.sh: Only handle WARNING: program timed out lines specially in...
[thirdparty/gcc.git] / contrib / dg-extract-results.sh
index 86c4246dc9291030f387ef32afd22b098c3469d8..97ac222b54a62c9fcd22a862fd491b8f760cbd7f 100755 (executable)
@@ -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