diff --git a/backends/GenerateC.hs b/backends/GenerateC.hs index b525c3d..933b0ae 100644 --- a/backends/GenerateC.hs +++ b/backends/GenerateC.hs @@ -163,8 +163,6 @@ cgenTopLevel :: String -> A.AST -> CGen () cgenTopLevel headerName s = do tell ["#define occam_INT_size ", show cIntSize,"\n"] tell ["#include \n"] - tell ["#include \"", dropPath headerName, "\"\n"] - cs <- getCompState let isTopLevelSpec (A.Specification _ n _) @@ -177,6 +175,8 @@ cgenTopLevel headerName s sequence_ $ map (call genForwardDeclaration) (listify (not . isTopLevelSpec) s) + tell ["#include \"", dropPath headerName, "\"\n"] + sequence_ [tell ["#include \"", usedFile, ".tock.h\"\n"] | usedFile <- Set.toList $ csUsedFiles cs]