Skip to content

Commit 6d4ee9c

Browse files
committed
tweak reader/read call based on feedback from Nicola Mometto & Alex Miller
1 parent ebee071 commit 6d4ee9c

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/clj/cljs/analyzer.clj

+7-5
Original file line numberDiff line numberDiff line change
@@ -1964,22 +1964,24 @@
19641964
([^Reader rdr] (forms-seq* rdr nil))
19651965
([^Reader rdr filename]
19661966
{:pre [(instance? Reader rdr)]}
1967-
(let [opts (when (and filename (= (util/ext filename) "cljc"))
1968-
{:read-cond :allow :features #{:cljs}})
1967+
(let [eof-sentinel (Object.)
1968+
opts (merge
1969+
{:eof eof-sentinel}
1970+
(if (and filename (= (util/ext filename) "cljc"))
1971+
{:read-cond :allow :features #{:cljs}}))
19691972
pbr (readers/indexing-push-back-reader
19701973
(PushbackReader. rdr) 1 filename)
19711974
data-readers tags/*cljs-data-readers*
19721975
forms-seq_
19731976
(fn forms-seq_ []
19741977
(lazy-seq
1975-
(let [eof-sentinel (Object.)
1976-
form (binding [*ns* (create-ns *cljs-ns*)
1978+
(let [form (binding [*ns* (create-ns *cljs-ns*)
19771979
reader/*data-readers* data-readers
19781980
reader/*alias-map*
19791981
(apply merge
19801982
((juxt :requires :require-macros)
19811983
(get-namespace *cljs-ns*)))]
1982-
(reader/read pbr nil eof-sentinel opts nil))]
1984+
(reader/read opts pbr))]
19831985
(if (identical? form eof-sentinel)
19841986
(.close rdr)
19851987
(cons form (forms-seq_))))))]

0 commit comments

Comments
 (0)