diff --git a/src/main/java/org/jastadd/relast/compiler/RelAstProcessor.java b/src/main/java/org/jastadd/relast/compiler/RelAstProcessor.java
index 943583517f406e9b557e3bb34262b15185b38438..e1c1f35867cda4438433e7c393ad23af85ec3fb3 100644
--- a/src/main/java/org/jastadd/relast/compiler/RelAstProcessor.java
+++ b/src/main/java/org/jastadd/relast/compiler/RelAstProcessor.java
@@ -119,7 +119,6 @@ public abstract class RelAstProcessor extends AbstractCompiler {
             GrammarFile inputGrammar = (GrammarFile) parser.parse(scanner);
             inputGrammar.setFileName(path.toString());
             program.addGrammarFile(inputGrammar);
-            inputGrammar.treeResolveAll();
           } catch (IOException | beaver.Parser.Exception e) {
             printMessage("Could not parse grammar file " + path);
             e.printStackTrace();
@@ -127,6 +126,8 @@ public abstract class RelAstProcessor extends AbstractCompiler {
         }
     );
 
+    program.treeResolveAll();
+
     return program;
   }
 }