Explorar o código

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

Lucas Souza %!s(int64=6) %!d(string=hai) anos
pai
achega
213a80ff9f
Modificáronse 1 ficheiros con 6 adicións e 1 borrados
  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;
   }
 
   /*