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