From 5d9932637d9f8f48897778f1ee5e11742e9846e0 Mon Sep 17 00:00:00 2001 From: John Lorentzson Date: Sun, 6 Jul 2025 22:21:40 +0200 Subject: [PATCH] Fix parser for empty argument lists --- wip-duuqnd/user-side-compiler/parser.lisp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/wip-duuqnd/user-side-compiler/parser.lisp b/wip-duuqnd/user-side-compiler/parser.lisp index f6d611a..824b6ee 100644 --- a/wip-duuqnd/user-side-compiler/parser.lisp +++ b/wip-duuqnd/user-side-compiler/parser.lisp @@ -145,9 +145,12 @@ parser's debug output.") (setf name (match-syntax primary)) (cond ((and (typep name 'token-name) (match-token 'token-open-paren)) - (setf arguments (match-syntax arglist)) - (consume-token 'token-close-paren - "Close parenthesis ')' is required to end function call argument list.") + (cond ((match-token 'token-close-paren) + (setf arguments '())) + (t + (setf arguments (match-syntax arglist)) + (consume-token 'token-close-paren + "Close parenthesis ')' is required to end function call argument list."))) (make-instance 'node-call :source *syntax-source* :comment *token-comment*