1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/FileCheck
Thomas Preud'homme 393fb2cc2e [FileCheck] Forbid using var defined on same line
Summary:
Commit r366897 introduced the possibility to set a variable from an
expression, such as [[#VAR2:VAR1+3]]. While introducing this feature, it
introduced extra logic to allow using such a variable on the same line
later on. Unfortunately that extra logic is flawed as it relies on a
mapping from variable to expression defining it when the mapping is from
variable definition to expression. This flaw causes among other issues
PR42896.

This commit avoids the problem by forbidding all use of a variable
defined on the same line, and removes the now useless logic. Redesign
will be done in a later commit because it will require some amount of
refactoring first for the solution to be clean. One example is the need
for some sort of transaction mechanism to set a variable temporarily and
from an expression and rollback if the CHECK pattern does not match so
that diagnostics show the right variable values.

Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar, arichardson, rnk

Subscribers: JonChesterfield, rogfer01, hfinkel, kristina, rnk, tra, arichardson, grimar, dblaikie, probinson, llvm-commits, hiraditya

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D66141

llvm-svn: 370663
2019-09-02 14:04:00 +00:00
..
check-a-b-has-b.txt
check-b-a-has-b.txt
check-count.txt
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-empty2.txt
check-empty-tag.txt
check-empty.txt
check-label-dag-capture.txt
check-label-dag.txt
check-label.txt
check-multi-prefix-label.txt
check-multiple-prefixes-mixed.txt
check-multiple-prefixes-nomatch-2.txt
check-multiple-prefixes-nomatch.txt
check-multiple-prefixes-substr.txt
check-not-diaginfo.txt [FileCheck]] Canonicalize caret location testing 2019-07-24 12:38:29 +00:00
check-prefixes.txt
check-substring-multi-prefix-2.txt
check-substring-multi-prefix.txt
dos-style-eol.txt
dump-input-annotations.txt [FileCheck] Move -dump-input diagnostic to first line 2019-08-14 02:56:09 +00:00
dump-input-enable.txt
empty-regex-match-at-start.txt
envvar-opts.txt
first-character-match.txt
implicit-check-not.txt
line-count-2.txt
line-count.txt [FileCheck] Fix numeric variable redefinition 2019-07-18 13:39:04 +00:00
lit.local.cfg
match-full-lines.txt
multiple-missing-prefixes.txt
next-no-match.txt
no-check-file.txt
no-multi-suffixes.txt
numeric-defines-diagnostics.txt [FileCheck]] Canonicalize caret location testing 2019-07-24 12:38:29 +00:00
numeric-defines.txt FileCheck [8/12]: Define numeric var from expr 2019-07-24 12:38:22 +00:00
numeric-expression.txt [FileCheck] Forbid using var defined on same line 2019-09-02 14:04:00 +00:00
opt-color.txt
regex-brackets.txt
regex-no-match.txt
same.txt
separate-multi-prefix.txt
simple-var-capture.txt
string-defines-diagnostics.txt [FileCheck]] Canonicalize caret location testing 2019-07-24 12:38:29 +00:00
string-defines.txt
two-checks-for-same-match.txt
validate-check-prefix.txt
var-ref-same-line.txt
var-scope.txt FileCheck [7/12]: Arbitrary long numeric expressions 2019-07-13 13:24:30 +00:00
verbose.txt [FileCheck]] Canonicalize caret location testing 2019-07-24 12:38:29 +00:00