From b50c7e99603e9f85d82d700d62c16c4fcef88715 Mon Sep 17 00:00:00 2001 From: Geno <48206120+gabrielegenovese@users.noreply.github.com> Date: Thu, 11 Jul 2024 12:57:56 +0200 Subject: Code generation (#20) Co-authored-by: geno Co-authored-by: Santo Cariotti --- src/ast/nodes/ExprListNode.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'src/ast/nodes/ExprListNode.java') diff --git a/src/ast/nodes/ExprListNode.java b/src/ast/nodes/ExprListNode.java index 4760db8..a3ac237 100644 --- a/src/ast/nodes/ExprListNode.java +++ b/src/ast/nodes/ExprListNode.java @@ -17,11 +17,11 @@ public class ExprListNode implements Node { } @Override - public ArrayList checkSemantics(SymbolTable ST, int _nesting) { + public ArrayList checkSemantics(SymbolTable ST, int _nesting, FunctionType ft) { ArrayList errors = new ArrayList<>(); for (var expr : exprs) { - errors.addAll(expr.checkSemantics(ST, _nesting)); + errors.addAll(expr.checkSemantics(ST, _nesting, ft)); } return errors; @@ -47,10 +47,15 @@ public class ExprListNode implements Node { return new VoidType(); } - // TODO: code generation for expr list @Override public String codeGeneration() { - return ""; + String str = ""; + + for (var exp : exprs) { + str += exp.codeGeneration(); + } + + return str; } @Override -- cgit v1.2.3-71-g8e6c