For some build configurations, check-all calls lit multiple times to
run multiple lit test suites. Most recently, I've found this to be
true when configuring openmp as part of LLVM_ENABLE_RUNTIMES, but
this is not the first time.
If one test suite fails, none of the remaining test suites run, so you
cannot determine if your patch has broken them. It can then be
frustrating to try to determine which check- targets will run the
remaining tests without getting stuck on the failing tests.
When such cases arise, it is probably best to adjust the cmake
configuration for check-all to run all test suites as part of one
lit invocation. Because that fix will likely not be implemented and
land immediately, this patch introduces --ignore-fail to serve as a
workaround for developers trying to see test results until it does
land:
$ LIT_OPTS=--ignore-fail ninja check-all
One problem with --ignore-fail is that it makes it challenging to
detect test failures in a script, perhaps in CI. This problem should
serve as motivation to actually fix the cmake configuration instead of
continuing to use --ignore-fail indefinitely.
What's the point of this line?