diff options
Diffstat (limited to '')
-rw-r--r-- | src/lux/analyser.clj | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/lux/analyser.clj b/src/lux/analyser.clj index 80c8ef2ec..42d92b859 100644 --- a/src/lux/analyser.clj +++ b/src/lux/analyser.clj @@ -668,12 +668,14 @@ (|case [?var ?output-type] [(&/$VarT ?e-id) (&/$VarT ?a-id)] (if (= ?e-id ?a-id) - (|do [?output-type* (&type/deref ?e-id)] - (return (&&/|meta ?output-type* ?output-cursor ?output-term))) - (return (&&/|meta ?output-type ?output-cursor ?output-term))) + (|do [=output-type (&type/clean ?var ?output-type)] + (return (&&/|meta =output-type ?output-cursor ?output-term))) + (|do [=output-type (&type/clean ?var ?var)] + (return (&&/|meta =output-type ?output-cursor ?output-term)))) [_ _] - (return (&&/|meta ?output-type ?output-cursor ?output-term))) + (|do [=output-type (&type/clean ?var ?output-type)] + (return (&&/|meta =output-type ?output-cursor ?output-term)))) )))) (defn ^:private analyse-ast [eval! compile-module compile-token exo-type token] |