aboutsummaryrefslogtreecommitdiff
path: root/tools/tree-sitter/grammar.js
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-10-31 00:48:25 +0100
committerEugen Wissner <belka@caraus.de>2026-10-31 00:48:25 +0100
commit5dd5d460f154c146d26f115706a21b7808658edf (patch)
tree14995bb9aad23bf4b025a4f654e34d8c954c3d57 /tools/tree-sitter/grammar.js
parentd54b7d86beff8bb91e204e56a7ec01d3ab8ca43c (diff)
downloadelna-5dd5d460f154c146d26f115706a21b7808658edf.tar.gz
Fix error span for missing return message
Diffstat (limited to 'tools/tree-sitter/grammar.js')
-rw-r--r--tools/tree-sitter/grammar.js21
1 files changed, 15 insertions, 6 deletions
diff --git a/tools/tree-sitter/grammar.js b/tools/tree-sitter/grammar.js
index 4aab2fa..5d2dda7 100644
--- a/tools/tree-sitter/grammar.js
+++ b/tools/tree-sitter/grammar.js
@@ -150,12 +150,21 @@ module.exports = grammar({
variable_declaration: $ => seq(
field('names', commaSep1($.identifier_definition)),
- ':',
- field('type', $._type_expression),
- optional(seq(
- ':=',
- field('value', choice($._expression, 'extern')),
- )),
+ choice(
+ seq(
+ ':',
+ field('type', $._type_expression),
+ optional(seq(
+ ':=',
+ field('value', choice($._expression, 'extern')),
+ )),
+ ),
+ seq(
+ optional(seq(':', 'const')),
+ ':=',
+ field('value', $._expression),
+ ),
+ ),
),
procedure_declaration: $ => seq(