                  {:read-cond :allow :features #{:cljs}}))
         in (readers/indexing-push-back-reader (PushbackReader. (StringReader. cljs-source)) 1 name)]
 
-    (binding [comp/*source-map-data* (atom {:source-map (sorted-map)
-                                            :gen-col 0
-                                            :gen-line 0})]
+    (binding [comp/*source-map-data*
+              (atom {:source-map (sorted-map)
+                     :gen-col 0
+                     :gen-line 0})]
 
       (let [result
             (loop [{:keys [ns ns-info] :as compile-state} (assoc init :js "")]
-              (let [form (binding [*ns* (create-ns ns)
-                                   ana/*cljs-ns* ns
-                                   ana/*cljs-file* name
-                                   reader/*data-readers* tags/*cljs-data-readers*
-                                   reader/*alias-map* (merge reader/*alias-map*
-                                                        (:requires ns-info)
-                                                        (:require-macros ns-info))]
-                           (reader/read opts in))]
+              (let [form
+                    (binding [*ns* (create-ns ns)
+                              ana/*cljs-ns* ns
+                              ana/*cljs-file* name
+                              reader/*data-readers* tags/*cljs-data-readers*
+                              reader/*alias-map*
+                              (merge reader/*alias-map*
+                                (:requires ns-info)
+                                (:require-macros ns-info))]
+                      (reader/read opts in))]
 
                 (if (identical? form eof-sentinel)
                   ;; eof

                    (zero? last-modified)
                    (> (or (:compiled-at src) ;; js is not compiled but maybe modified
                           last-modified)
                      (.lastModified target)))]

    (io/make-parents target)


    ast))

(defn hijacked-parse-ns [env form name opts]
  (-> (util/parse-ns form)
      (assoc :env env :form form :op :ns)))

(def default-parse ana/parse)

