Sfoglia il codice sorgente

Fix bug where MAIN_FUNCTION could be declared without return type = VOID

Lucas Souza 6 anni fa
parent
commit
213a80ff9f
1 ha cambiato i file con 6 aggiunte e 1 eliminazioni
  1. 6 1
      js/ast/ivprogParser.js

+ 6 - 1
js/ast/ivprogParser.js

@@ -377,7 +377,12 @@ export class IVProgParser {
     }
     this.consumeNewLines();
     const commandsBlock = this.parseCommandBlock();
-    return new Commands.Function(functionID, returnType, formalParams, commandsBlock);
+    const func = new Commands.Function(functionID, returnType, formalParams, commandsBlock);
+    if (functionID === null && !func.isMain) {
+      // TODO: better error message
+      throw new Error("");
+    }
+    return func;
   }
 
   /*