From e09358f3648445bbf9747f40497af6221d933a99 Mon Sep 17 00:00:00 2001
From: L0P0P <grassoemanuele@live.com>
Date: Wed, 26 Jun 2024 11:54:57 +0200
Subject: Introduction to recursive function

---
 src/ast/nodes/BlockNode.java | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

(limited to 'src/ast/nodes/BlockNode.java')

diff --git a/src/ast/nodes/BlockNode.java b/src/ast/nodes/BlockNode.java
index 2c85025..a38b4ea 100644
--- a/src/ast/nodes/BlockNode.java
+++ b/src/ast/nodes/BlockNode.java
@@ -3,6 +3,8 @@ package ast.nodes;
 import java.util.ArrayList;
 
 import ast.types.*;
+import semanticanalysis.SemanticError;
+import semanticanalysis.SymbolTable;
 
 /**
  * Node for `block` statement of the grammar.
@@ -13,6 +15,19 @@ public class BlockNode extends RootNode {
         super(childs);
     }
 
+    @Override
+    public ArrayList<SemanticError> checkSemantics(SymbolTable ST, int _nesting) {
+        ArrayList<SemanticError> errors = new ArrayList<SemanticError>();
+
+        // Check semantics for each child
+        for (Node child : childs) {
+            errors.addAll(child.checkSemantics(ST, _nesting));
+        }
+
+        return errors;
+    }
+
+
     @Override
     public Type typeCheck() {
         return new VoidType();
-- 
cgit v1.2.3-18-g5258