From 42a014c98797c7c4d78bfc3c2494a6ef0ce4e6be Mon Sep 17 00:00:00 2001 From: Kyle Gunger Date: Wed, 13 Jul 2022 02:44:41 -0400 Subject: [AST] Fix an issue with parsing lists of values --- src/tparse/tree-statement.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/tparse/tree-statement.go') diff --git a/src/tparse/tree-statement.go b/src/tparse/tree-statement.go index 6a5b6e3..5c6d912 100644 --- a/src/tparse/tree-statement.go +++ b/src/tparse/tree-statement.go @@ -193,7 +193,13 @@ func keywordStatement(tokens *[]Token, tok, max int) (Node, int) { out.Sub = append(out.Sub, tmp) tok++ if (*tokens)[tok].Data == "(" { - tmp, tok = parseValueList(tokens, tok + 1, max) + mx := findClosing(tokens, tok) + + if mx < 0 { + errOut("Failed to find closing paren when parsing a struct def", (*tokens)[tok]) + } + + tmp, tok = parseValueList(tokens, tok + 1, mx) out.Sub = append(out.Sub, tmp) tok++ } -- cgit v1.2.3