From df361ede5e694c41095d7be4eabf86d0ee6a1162 Mon Sep 17 00:00:00 2001
From: Ferenc Szontágh <szf@fsociety.hu>
Date: Fri, 18 Apr 2025 09:53:43 +0000
Subject: [PATCH] fix function parameter parser
---
src/Parser/Parser.hpp | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/src/Parser/Parser.hpp b/src/Parser/Parser.hpp
index af087c6..0eb1180 100644
--- a/src/Parser/Parser.hpp
+++ b/src/Parser/Parser.hpp
@@ -166,12 +166,17 @@
throw Exception(message, expected, token);
}
- // parseStatement (unchanged)
+ // parseStatement (updated to handle return)
void parseStatement() {
const auto & token_type = currentToken().type;
if (token_type == Lexer::Tokens::Type::KEYWORD_FUNCTION_DECLARATION) {
parseFunctionDefinition();
+ return;
+ }
+ // Return statement
+ if (token_type == Lexer::Tokens::Type::KEYWORD_RETURN) {
+ parseReturnStatement();
return;
}
@@ -194,6 +199,8 @@
void parseFunctionDefinition();
// Parse a top-level function call statement (e.g., foo(arg1, arg2);)
void parseCallStatement();
+ // Parse a return statement (e.g., return; or return expr;)
+ void parseReturnStatement();
// --- Parsing helper functions ---
--
Gitblit v1.9.3