aboutsummaryrefslogtreecommitdiff
path: root/src/cljcc/analyze
diff options
context:
space:
mode:
Diffstat (limited to 'src/cljcc/analyze')
-rw-r--r--src/cljcc/analyze/typecheck.clj10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/cljcc/analyze/typecheck.clj b/src/cljcc/analyze/typecheck.clj
index 9390f3d..001c618 100644
--- a/src/cljcc/analyze/typecheck.clj
+++ b/src/cljcc/analyze/typecheck.clj
@@ -532,9 +532,13 @@
A program is a list of declarations."
[program]
- (let [v (typecheck-program program)]
- {:program (:program v)
- :ident->symbol (dissoc (:ident->symbol v) :at-top-level)}))
+ (let [v (typecheck-program program)
+ program (:program v)
+ m (dissoc (:ident->symbol v) :at-top-level)
+ _ (m/coerce p/Program program)
+ _ (m/coerce SymbolMap m)]
+ {:program program
+ :ident->symbol m}))
(comment