@@ -114,11 +114,10 @@ codegenJs conf ci =
114114 debug <- isYes <$> lookupEnv "IDRISJS_DEBUG"
115115 let defs' = Map.fromList $ liftDecls ci
116116 let defs = globlToCon defs'
117− let isExec = outputType ci == Executable
118− putStrLn $ show $ isExec
119− let used = if isExec then
120− Map.elems $ removeDeadCode defs [sMN 0 "runMain"]
121− else Map.elems $ removeDeadCode defs (getExpNames $ exportDecls ci)
117+ let iface = interfaces ci
118+ let used = if iface then
119+ Map.elems $ removeDeadCode defs (getExpNames $ exportDecls ci)
120+ else Map.elems $ removeDeadCode defs [sMN 0 "runMain"]
122121 when debug $ do
123122 writeFile (outputFile ci ++ ".LDeclsDebug") $ (unlines $ intersperse "" $ map show used) ++ "\n\n\n"
124123 putStrLn $ "Finished calculating used"
@@ -149,8 +148,8 @@ codegenJs conf ci =
149148 , doPartials (partialApplications stats), "\n"
150149 , doHiddenClasses (hiddenClasses stats), "\n"
151150 , out, "\n"
152− , if isExec then jsName (sMN 0 "runMain") `T.append` "();\n"
153− else T.concat ["module.exports = {\n", T.intercalate ";\n" $ concatMap makeExportDecls (exportDecls ci), "\n};\n"]
151+ , if iface then T.concat ["module.exports = {\n", T.intercalate ";\n" $ concatMap makeExportDecls (exportDecls ci), "\n};\n"]
152+ else jsName (sMN 0 "runMain") `T.append` "();\n"
154153 , "}.call(this))"
155154 , footer conf
156155 ]