From 43eccbd4c923fb3fb06a7c086ee52e91a77e4156 Mon Sep 17 00:00:00 2001 From: Rochas Date: Wed, 30 Apr 2025 14:15:51 +0200 Subject: [PATCH] correction bug dans Declaration --- src/main/java/TP2/Main.java | 7 ++++++- src/main/java/TP2/asd/toLLVM_Visitor.java | 2 +- tests/fragment1/while2 | Bin 109568 -> 109568 bytes 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/TP2/Main.java b/src/main/java/TP2/Main.java index cf65198..1a1bf17 100644 --- a/src/main/java/TP2/Main.java +++ b/src/main/java/TP2/Main.java @@ -75,7 +75,12 @@ public class Main { String llvmStr = astLLVM.prettyprinter(); out2.println(llvmStr); - + /* + utiliser la commande : + java -jar build/libs/TP2.jar file.vsl > file.ll + provoque peut provoquer de mauvais encodage (UTF16(LE) au lieu d'UTF8) + et empĂȘche l'utilisation de print pour autre chose + */ String sortieLLVM = args[0].replace(".vsl", ".ll"); Files.write( Paths.get(sortieLLVM), diff --git a/src/main/java/TP2/asd/toLLVM_Visitor.java b/src/main/java/TP2/asd/toLLVM_Visitor.java index c940314..5fb040e 100644 --- a/src/main/java/TP2/asd/toLLVM_Visitor.java +++ b/src/main/java/TP2/asd/toLLVM_Visitor.java @@ -117,7 +117,7 @@ public class toLLVM_Visitor implements ProgramVisitor, r = h.addVar(nom, arrayType); } h = r.symTable; - list.add(new AssignLLVMImp(new VarLLVMImp(t2, nom,false),new allocaLLVMImp(t2))); + list.add(new AssignLLVMImp(new VarLLVMImp(t2, r.var,false),new allocaLLVMImp(t2))); } return new InstrAndSymTable(list,h); } diff --git a/tests/fragment1/while2 b/tests/fragment1/while2 index c903e04bd60c2025e15e680332c2fa0ffdc0bfdb..1b587af1876af0d4fd2278486eca753422732e3f 100755 GIT binary patch delta 30 kcmZp;!PantZ371*Q>;ic7vpv=Mn