summaryrefslogtreecommitdiffstats
path: root/llvm/test/TableGen/foreach-range-parse-errors4.td
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2019-05-22 21:28:20 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2019-05-22 21:28:20 +0000
commitb79a25b124376262b5df89686bf0c374ada0e977 (patch)
tree1054aaa6769bca5cfbdb7b465a198c6384c719a1 /llvm/test/TableGen/foreach-range-parse-errors4.td
parent5498486b46658d7c55bba7fcfc4257629baa3285 (diff)
downloadbcm5719-llvm-b79a25b124376262b5df89686bf0c374ada0e977.tar.gz
bcm5719-llvm-b79a25b124376262b5df89686bf0c374ada0e977.zip
TableGen: Handle nontrivial foreach range bounds
This allows using anything that isn't a literal integer as the bounds for a foreach. Some of the diagnostics aren't perfect, but nobody ever accused tablegen of having good errors. For example, the existing wording suggests a bitrange is valid, but as far as I can tell this has never worked. Fixes bug 41958. llvm-svn: 361434
Diffstat (limited to 'llvm/test/TableGen/foreach-range-parse-errors4.td')
-rw-r--r--llvm/test/TableGen/foreach-range-parse-errors4.td9
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/TableGen/foreach-range-parse-errors4.td b/llvm/test/TableGen/foreach-range-parse-errors4.td
new file mode 100644
index 00000000000..6072b9b589d
--- /dev/null
+++ b/llvm/test/TableGen/foreach-range-parse-errors4.td
@@ -0,0 +1,9 @@
+// RUN: not llvm-tblgen %s 2>&1 | FileCheck -DFILE=%s %s
+// Make sure there is no crash on undefined variable
+
+// CHECK: [[FILE]]:[[@LINE+2]]:17: error: Variable not defined: 'foo'
+// CHECK: [[FILE]]:[[@LINE+1]]:21: error: expected declaration in for
+foreach Index = foo in {
+ def arst#Index;
+}
+
OpenPOWER on IntegriCloud