Skip to content

Commit a8a8c83

Browse files
committed
CLJS-3030: Regression with core.async surrounding select-keys / find on String
Temporary workaround. core.async just needs macroexpand to work, so the fact that locals is malformed is not that important. Just ignore `lb` if it's not a map for the time being.
1 parent 515db0a commit a8a8c83

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

src/main/clojure/cljs/analyzer.cljc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3638,8 +3638,11 @@
36383638
ret {:env env :form sym}
36393639
lcls (:locals env)]
36403640
(if-some [lb (handle-symbol-local sym (get lcls sym))]
3641-
(merge (assoc ret :op :local :info lb)
3642-
(select-keys lb [:name :local :arg-id :variadic? :init]))
3641+
(merge
3642+
(assoc ret :op :local :info lb)
3643+
;; this is a temporary workaround for core.async see CLJS-3030 - David
3644+
(when (map? lb)
3645+
(select-keys lb [:name :local :arg-id :variadic? :init])))
36433646
(let [sym-meta (meta sym)
36443647
sym-ns (namespace sym)
36453648
cur-ns (str (-> env :ns :name))

0 commit comments

Comments
 (0)