Skip to content

Commit 0809de9

Browse files
author
dnolen
committed
CLJS-1089: AOT analysis cache has bad :file paths
ensure that cljs.core defs always have :file "cljs/core.cljs"
1 parent fca5265 commit 0809de9

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

src/clj/cljs/analyzer.clj

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -317,14 +317,18 @@
317317

318318
(defn source-info
319319
([env]
320-
(when-let [line (:line env)]
321-
{:file *cljs-file*
322-
:line (get-line name env)
323-
:column (get-col name env)}))
324-
([name env]
325-
{:file *cljs-file*
320+
(when-let [line (:line env)]
321+
{:file (if (= (-> env :ns :name) 'cljs.core)
322+
"cljs/core.cljs"
323+
*cljs-file*)
326324
:line (get-line name env)
327325
:column (get-col name env)}))
326+
([name env]
327+
{:file (if (= (-> env :ns :name) 'cljs.core)
328+
"cljs/core.cljs"
329+
*cljs-file*)
330+
:line (get-line name env)
331+
:column (get-col name env)}))
328332

329333
(defn message [env s]
330334
(str s (when (:line env)
@@ -793,7 +797,13 @@
793797
;; elide test metadata, as it includes non-valid EDN - David
794798
(cond-> sym-meta
795799
:test (-> (dissoc :test) (assoc :test true)))
796-
{:meta (dissoc sym-meta :test)}
800+
{:meta (-> sym-meta
801+
(dissoc :test)
802+
(update-in [:file]
803+
(fn [f]
804+
(if (= (-> env :ns :name) 'cljs.core)
805+
"cljs/core.cljs"
806+
f))))}
797807
(when doc {:doc doc})
798808
(when dynamic {:dynamic true})
799809
(source-info var-name env)

0 commit comments

Comments
 (0)