[gcc r11-7078] libstdc++: Abort test after 1000 lines of output
Jonathan Wakely
redi@gcc.gnu.org
Wed Feb 3 15:50:59 GMT 2021
https://gcc.gnu.org/g:ec384c56900748ef1f0cabb7df0f71f716bb2313
commit r11-7078-gec384c56900748ef1f0cabb7df0f71f716bb2313
Author: Matthias Kretz <kretz@kde.org>
Date: Wed Feb 3 15:49:30 2021 +0000
libstdc++: Abort test after 1000 lines of output
Handle overly large output by aborting the log and thus the test. This
is a similar condition to a timeout.
libstdc++-v3/ChangeLog:
* testsuite/experimental/simd/driver.sh: When handling the pipe
to log (and on verbose to stdout) count the lines. If it exceeds
1000 log the issue and exit 125, which is then handled as a
failure.
Diff:
---
libstdc++-v3/testsuite/experimental/simd/driver.sh | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/libstdc++-v3/testsuite/experimental/simd/driver.sh b/libstdc++-v3/testsuite/experimental/simd/driver.sh
index 314c6a16f86..719e4db8e68 100755
--- a/libstdc++-v3/testsuite/experimental/simd/driver.sh
+++ b/libstdc++-v3/testsuite/experimental/simd/driver.sh
@@ -258,7 +258,11 @@ BEGIN { count = 0 }
/^###exitstatus### [0-9]+$/ { exit \$2 }
{
print >> \"$log\"
- if (count >= 1000) next
+ if (count >= 1000) {
+ print \"Aborting: too much output\" >> \"$log\"
+ print \"Aborting: too much output\"
+ exit 125
+ }
++count
if (length(\$0) > $maxcol) {
i = 1
@@ -282,8 +286,17 @@ END { close(\"$log\") }
"
else
awk "
+BEGIN { count = 0 }
/^###exitstatus### [0-9]+$/ { exit \$2 }
-{ print >> \"$log\" }
+{
+ print >> \"$log\"
+ if (count >= 1000) {
+ print \"Aborting: too much output\" >> \"$log\"
+ print \"Aborting: too much output\"
+ exit 125
+ }
+ ++count
+}
END { close(\"$log\") }
"
fi
More information about the Libstdc++-cvs
mailing list