aboutsummaryrefslogtreecommitdiff
path: root/src/parser_pos.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2023-06-14 14:03:08 +0100
committergingerBill <bill@gingerbill.org>2023-06-14 14:03:08 +0100
commitfeacc5cd1176f93fc4b52c081d8ad93ed391df00 (patch)
tree440b5afb4fd2a658f07a7a8309c52297fbeb95ba /src/parser_pos.cpp
parent3a761395bee4f14c81682d4c21a5aa1e9565959a (diff)
Basic enforcement of ordered named arguments/parameters for procedures
Diffstat (limited to 'src/parser_pos.cpp')
-rw-r--r--src/parser_pos.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/parser_pos.cpp b/src/parser_pos.cpp
index 52d49e897..2f22a85d3 100644
--- a/src/parser_pos.cpp
+++ b/src/parser_pos.cpp
@@ -41,7 +41,11 @@ gb_internal Token ast_token(Ast *node) {
case Ast_MatrixIndexExpr: return node->MatrixIndexExpr.open;
case Ast_SliceExpr: return node->SliceExpr.open;
case Ast_Ellipsis: return node->Ellipsis.token;
- case Ast_FieldValue: return node->FieldValue.eq;
+ case Ast_FieldValue:
+ if (node->FieldValue.field) {
+ return ast_token(node->FieldValue.field);
+ }
+ return node->FieldValue.eq;
case Ast_EnumFieldValue: return ast_token(node->EnumFieldValue.name);
case Ast_DerefExpr: return node->DerefExpr.op;
case Ast_TernaryIfExpr: return ast_token(node->TernaryIfExpr.x);