projects
/
kaleidoscope-hs.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Generate code for externs
[kaleidoscope-hs.git]
/
Main.hs
diff --git
a/Main.hs
b/Main.hs
index 2eae262967be844fff1886ac2d34318912b17e53..cf20ab898fa2bd9744d698f29ee8dffea73b1bfe 100644
(file)
--- a/
Main.hs
+++ b/
Main.hs
@@
-41,6
+41,9
@@
buildAST (Function (Prototype nameStr paramStrs) body) = do
flip runReaderT binds $ buildExpr body >>= ret
where params = zip (repeat Type.double) (map fromString paramStrs)
flip runReaderT binds $ buildExpr body >>= ret
where params = zip (repeat Type.double) (map fromString paramStrs)
+buildAST (Extern (Prototype nameStr params)) =
+ extern (fromString nameStr) (replicate (length params) Type.double) Type.double
+
buildAST (TopLevelExpr x) = function "__anon_expr" [] Type.double $
const $ flip runReaderT mempty $ buildExpr x >>= ret
buildAST (TopLevelExpr x) = function "__anon_expr" [] Type.double $
const $ flip runReaderT mempty $ buildExpr x >>= ret