diff options
author | Nadrieril | 2020-06-25 14:09:24 +0100 |
---|---|---|
committer | Nadrieril | 2020-06-25 15:12:09 +0100 |
commit | 812fb88102082493d1176aab7ee61b5339821492 (patch) | |
tree | 2a809604c2d3a4374b61f2c96e382ed0b59a1cf0 /dhall | |
parent | e3cdf3f386b6a682981e6bdf6ca6d215b0d0788d (diff) |
spec: ensure `keyword` rule only matches keywords
Diffstat (limited to 'dhall')
11 files changed, 14 insertions, 12 deletions
diff --git a/dhall/src/syntax/text/dhall.abnf b/dhall/src/syntax/text/dhall.abnf index 362a436..26f6eab 100644 --- a/dhall/src/syntax/text/dhall.abnf +++ b/dhall/src/syntax/text/dhall.abnf @@ -370,7 +370,9 @@ NaN = %x4e.61.4e Some = %x53.6f.6d.65
toMap = %x74.6f.4d.61.70
assert = %x61.73.73.65.72.74
-forall = %x2200 / %x66.6f.72.61.6c.6c ; "∀" / "forall"
+forall-keyword = %x66.6f.72.61.6c.6c ; "forall"
+forall-symbol = %x2200 ; "∀"
+forall = forall-symbol / forall-keyword
with = %x77.69.74.68
; Unused rule that could be used as negative lookahead in the
@@ -382,7 +384,7 @@ keyword = / assert / as
/ Infinity / NaN
/ merge / Some / toMap
- / forall
+ / forall-keyword
/ with
builtin =
diff --git a/dhall/tests/parser/failure/ProjectionByTypeNeedsParens.txt b/dhall/tests/parser/failure/ProjectionByTypeNeedsParens.txt index 0586abb..3ce3b45 100644 --- a/dhall/tests/parser/failure/ProjectionByTypeNeedsParens.txt +++ b/dhall/tests/parser/failure/ProjectionByTypeNeedsParens.txt @@ -3,4 +3,4 @@ 1 | r.{ x: T }␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword diff --git a/dhall/tests/parser/failure/annotation.txt b/dhall/tests/parser/failure/annotation.txt index 3390d3e..648ef2b 100644 --- a/dhall/tests/parser/failure/annotation.txt +++ b/dhall/tests/parser/failure/annotation.txt @@ -3,4 +3,4 @@ 1 | let a:Natural = 1 in a␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword diff --git a/dhall/tests/parser/failure/spacing/ForallNoSpace.txt b/dhall/tests/parser/failure/spacing/ForallNoSpace.txt index 697d400..6bd7fbc 100644 --- a/dhall/tests/parser/failure/spacing/ForallNoSpace.txt +++ b/dhall/tests/parser/failure/spacing/ForallNoSpace.txt @@ -3,4 +3,4 @@ 1 | forall(x :T) -> x␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword diff --git a/dhall/tests/parser/failure/spacing/LambdaNoSpace.txt b/dhall/tests/parser/failure/spacing/LambdaNoSpace.txt index adb0f1f..e5d1089 100644 --- a/dhall/tests/parser/failure/spacing/LambdaNoSpace.txt +++ b/dhall/tests/parser/failure/spacing/LambdaNoSpace.txt @@ -3,4 +3,4 @@ 1 | \(x :T) -> x␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword diff --git a/dhall/tests/parser/failure/spacing/LetAnnotNoSpace.txt b/dhall/tests/parser/failure/spacing/LetAnnotNoSpace.txt index 577f157..06aef2d 100644 --- a/dhall/tests/parser/failure/spacing/LetAnnotNoSpace.txt +++ b/dhall/tests/parser/failure/spacing/LetAnnotNoSpace.txt @@ -3,4 +3,4 @@ 1 | let x :T = y in e␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword diff --git a/dhall/tests/parser/failure/spacing/MergeNoSpace2.txt b/dhall/tests/parser/failure/spacing/MergeNoSpace2.txt index 77314e0..0fba8c0 100644 --- a/dhall/tests/parser/failure/spacing/MergeNoSpace2.txt +++ b/dhall/tests/parser/failure/spacing/MergeNoSpace2.txt @@ -3,4 +3,4 @@ 1 | merge x(y)␊ | ^--- | - = expected missing, non_empty_list_literal, double_quote_literal, single_quote_literal, if_, merge, NaN, Some_, toMap, assert, forall, numeric_double_literal, minus_infinity_literal, plus_infinity_literal, natural_literal, integer_literal, or import_hashed + = expected missing, non_empty_list_literal, double_quote_literal, single_quote_literal, if_, merge, NaN, Some_, toMap, assert, forall_keyword, numeric_double_literal, minus_infinity_literal, plus_infinity_literal, natural_literal, integer_literal, or import_hashed diff --git a/dhall/tests/parser/failure/spacing/RecordTypeNoSpace.txt b/dhall/tests/parser/failure/spacing/RecordTypeNoSpace.txt index 051ff49..759dd6f 100644 --- a/dhall/tests/parser/failure/spacing/RecordTypeNoSpace.txt +++ b/dhall/tests/parser/failure/spacing/RecordTypeNoSpace.txt @@ -3,4 +3,4 @@ 1 | { x :T }␊ | ^--- | - = expected missing, record_type_entry, if_, merge, NaN, Some_, toMap, assert, forall, or empty_record_literal + = expected missing, record_type_entry, if_, merge, NaN, Some_, toMap, assert, forall_keyword, or empty_record_literal diff --git a/dhall/tests/parser/failure/spacing/UnionTypeNoSpace.txt b/dhall/tests/parser/failure/spacing/UnionTypeNoSpace.txt index 0a83dc8..8ff406c 100644 --- a/dhall/tests/parser/failure/spacing/UnionTypeNoSpace.txt +++ b/dhall/tests/parser/failure/spacing/UnionTypeNoSpace.txt @@ -3,4 +3,4 @@ 1 | < x :T >␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword diff --git a/dhall/tests/parser/failure/unit/OldUnionLitSyntax.txt b/dhall/tests/parser/failure/unit/OldUnionLitSyntax.txt index 8475bb9..552a7c3 100644 --- a/dhall/tests/parser/failure/unit/OldUnionLitSyntax.txt +++ b/dhall/tests/parser/failure/unit/OldUnionLitSyntax.txt @@ -3,4 +3,4 @@ 1 | < x = 3 | y : Bool >␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword diff --git a/dhall/tests/parser/failure/unit/RecordLitPunDotted.txt b/dhall/tests/parser/failure/unit/RecordLitPunDotted.txt index 2e0ac22..429aa05 100644 --- a/dhall/tests/parser/failure/unit/RecordLitPunDotted.txt +++ b/dhall/tests/parser/failure/unit/RecordLitPunDotted.txt @@ -3,4 +3,4 @@ 1 | { x.y.z }␊ | ^--- | - = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall + = expected missing, if_, merge, NaN, Some_, toMap, assert, or forall_keyword |