[flang-commits] [flang] 52a3855 - [flang] Disable pipefail for tests for stdin input
David Spickett via flang-commits
flang-commits at lists.llvm.org
Wed Jul 27 03:31:06 PDT 2022
Author: David Spickett
Date: 2022-07-27T10:31:02Z
New Revision: 52a3855fe7ca106e675175cb8db87c1f57b2242a
URL: https://github.com/llvm/llvm-project/commit/52a3855fe7ca106e675175cb8db87c1f57b2242a
DIFF: https://github.com/llvm/llvm-project/commit/52a3855fe7ca106e675175cb8db87c1f57b2242a.diff
LOG: [flang] Disable pipefail for tests for stdin input
We have seen the llvm test fail every so often on our bots:
https://lab.llvm.org/buildbot/#/builders/173/builds/6711
This happens because `flang-new -fc1 -S` does not wait for the
pipe to finish being written to/does not read out all the content.
You can see this in the output, cat comes after flang:
+ /home/tcwg-buildbot/worker/flang-aarch64-release/build/bin/not /home/tcwg-buildbot/worker/flang-aarch64-release/build/bin/flang-new -fc1 -S - -o -
+ cat /home/tcwg-buildbot/worker/flang-aarch64-release/llvm-project/flang/test/Driver/input-from-stdin-llvm.ll
error: Invalid input type - expecting a Fortran file
This means that cat gets SIGPIPE which causes it to exit with
code 141 and that's the final result due to pipefail.
flang isn't wrong to exit early (I think some modes of grep also do this)
and we only care about flang's exit code. So disable pipefail for
the stdin testing.
Reviewed By: awarzynski
Differential Revision: https://reviews.llvm.org/D130619
Added:
flang/test/Driver/input-from-stdin/input-from-stdin-llvm.ll
flang/test/Driver/input-from-stdin/input-from-stdin.f90
flang/test/Driver/input-from-stdin/lit.local.cfg
Modified:
Removed:
flang/test/Driver/input-from-stdin-llvm.ll
flang/test/Driver/input-from-stdin.f90
################################################################################
diff --git a/flang/test/Driver/input-from-stdin-llvm.ll b/flang/test/Driver/input-from-stdin/input-from-stdin-llvm.ll
similarity index 100%
rename from flang/test/Driver/input-from-stdin-llvm.ll
rename to flang/test/Driver/input-from-stdin/input-from-stdin-llvm.ll
diff --git a/flang/test/Driver/input-from-stdin.f90 b/flang/test/Driver/input-from-stdin/input-from-stdin.f90
similarity index 100%
rename from flang/test/Driver/input-from-stdin.f90
rename to flang/test/Driver/input-from-stdin/input-from-stdin.f90
diff --git a/flang/test/Driver/input-from-stdin/lit.local.cfg b/flang/test/Driver/input-from-stdin/lit.local.cfg
new file mode 100644
index 0000000000000..11dc6642bf6e7
--- /dev/null
+++ b/flang/test/Driver/input-from-stdin/lit.local.cfg
@@ -0,0 +1,3 @@
+# In some modes flang will exit before cat does. If pipefail is enabled this means
+# we get cat's exit code not flang's.
+config.pipefail = False
More information about the flang-commits
mailing list