llvm-project/llvm/test/FileCheck
Joel E. Denny fdde18a7c3 [FileCheck] Given multiple -dump-input, prefer most verbose
Problem: `FILECHECK_OPTS` was implemented so that a test runner, such
as a bot, can specify FileCheck debugging options, such as
`-dump-input=fail`.  However, some existing test suites have FileCheck
calls that already specify `-dump-input=fail` or `-dump-input=always`.
Without this patch, such tests fail under such a test runner because
FileCheck doesn't accept multiple occurrences of `-dump-input`.

Solution: This patch permits multiple occurrences of `-dump-input` by
assigning precedence to its values in the following descending order:
`help`, `always`, `fail`, and `never`.  That is, any occurrence of
`help` always obtains help, and otherwise the behavior is similar to
`-v` vs. `-vv` in that the option specifying the greatest verbosity
has precedence.

Rationale: My justification for the new behavior is as follows.  I
have not experienced use cases where, either as a test runner or as a
test author, I want to **limit** the permitted debugging verbosity
(except as a test author in FileCheck's or lit's test suites where the
FileCheck debugging output itself is under test, but the solution
there is `env FILECHECK_OPTS=`, and I imagine we should use the same
solution anywhere else this need might occur).  Of course, as either a
test runner or test author, it is useful to **increase** debugging
verbosity.

Reviewed By: probinson

Differential Revision: https://reviews.llvm.org/D70784
2019-12-03 14:21:13 -05:00
..
check-a-b-has-b.txt
check-b-a-has-b.txt
check-count.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-dag-multi-prefix-2.txt
check-dag-multi-prefix.txt
check-dag-not-dag.txt
check-dag-overlap-torture.txt
check-dag-overlap.txt
check-dag-substring-prefix.txt
check-dag-xfails.txt
check-dag.txt
check-empty-tag.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-empty.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-empty2.txt
check-ignore-case.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-label-dag-capture.txt
check-label-dag.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-label.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-multi-prefix-label.txt
check-multiple-prefixes-mixed.txt
check-multiple-prefixes-nomatch-2.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-multiple-prefixes-nomatch.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-multiple-prefixes-substr.txt
check-not-diaginfo.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-prefixes.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
check-substring-multi-prefix-2.txt
check-substring-multi-prefix.txt
dos-style-eol.txt
dump-input-annotations.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
dump-input-enable.txt [FileCheck] Given multiple -dump-input, prefer most verbose 2019-12-03 14:21:13 -05:00
empty-regex-match-at-start.txt
envvar-opts.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
first-character-match.txt
implicit-check-not.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
line-count-2.txt
line-count.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
lit.local.cfg [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
match-full-lines.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
multiple-missing-prefixes.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
next-no-match.txt
no-check-file.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
no-multi-suffixes.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
numeric-defines-diagnostics.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
numeric-defines.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
numeric-expression.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
opt-color.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
regex-brackets.txt
regex-no-match.txt
same.txt
separate-multi-prefix.txt
simple-var-capture.txt
string-defines-diagnostics.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
string-defines.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
two-checks-for-same-match.txt
validate-check-prefix.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
var-ref-same-line.txt
var-scope.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00
verbose.txt [FileCheck] Make FILECHECK_OPTS useful for its test suite 2019-11-21 18:01:12 -05:00