The old diagnostic form of the trace produced by -v and -vv looks
like:
check1:1:8: remark: CHECK: expected string found in input CHECK: abc ^ <stdin>:1:3: note: found here ; abc def ^~~
When dumping annotated input is requested (via -dump-input), I find
that this old trace is not useful and is sometimes harmful:
- The old trace is mostly redundant because the same basic information also appears in the input dump's annotations.
- The old trace buries any error diagnostic between it and the input dump, but I find it useful to see any error diagnostic up front.
- FILECHECK_OPTS=-dump-input=fail requests annotated input dumps only for failed FileCheck calls. However, I have to also add -v or -vv to get a full set of annotations, and that can produce massive output from all FileCheck calls in all tests. That's a real problem when I run this in the IDE I use, which grinds to a halt as it tries to capture all that output.
When -dump-input=fail|always, this patch suppresses the old trace from
-v or -vv. Error diagnostics still print as usual. If you want the
old trace, perhaps to see variable expansions, you can set
-dump-input=none (the default).
Is this different from -implicit-check-not='remark:' ? I wouldn't have thought so. I mean, in a positive CHECK, you use the wildcards to hoover up the rest of the line, but in a NOT it doesn't seem useful.