소스 검색

Fix bug with for assignment command using VarLiteral instead of a string

Lucas de Souza 5 년 전
부모
커밋
e4fa6c8210
1개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 2
      js/processor/ivprogProcessor.js

+ 2 - 2
js/processor/ivprogProcessor.js

@@ -317,7 +317,7 @@ export class IVProgProcessor {
    */
   executeFor (store, cmd) {
     //BEGIN for -> while rewrite
-    const initCmd = new Commands.Assign(cmd.for_id, cmd.for_from);
+    const initCmd = new Commands.Assign(cmd.for_id.id, cmd.for_from);
     initCmd.sourceInfo = cmd.sourceInfo;
     const is_forward_exp = new Expressions.InfixApp(Operators.GE, cmd.for_to, cmd.for_from);
     return this.evaluateExpression(store, is_forward_exp).then (result => {
@@ -337,7 +337,7 @@ export class IVProgProcessor {
           pass_value = new Expressions.IntLiteral(toInt(-1));
         }
       }
-      const increment = new Commands.Assign(cmd.for_id,
+      const increment = new Commands.Assign(cmd.for_id.id,
         new Expressions.InfixApp(Operators.ADD, cmd.for_id, pass_value));
         increment.sourceInfo = cmd.sourceInfo;
       const whileBlock = new Commands.CommandBlock([],