   "Infer the tag of `form` using `env`."
   [env form]
   (when env
-    (let [e (ana/no-warn (ana/analyze env form))
+    (let [e (with-bindings* {(requiring-resolve 'cljs.analyzer/*cljs-warnings*) {}}
+              (fn []
+                ((requiring-resolve 'cljs.analyzer/analyze) env form)))
           ;; Roman. Propagating Rum's component return tag
           ;; via :rum/tag meta field, because a component
           ;; is generated as a `def` instead of `defn`

     (binding [*out* *err*]
       (let [column (:column env)
             line (:line env)]
         (println (str "WARNING: interpreting by default at " ana/*cljs-file* ":" line ":" column))
         (prn expr)
         (when tag
           (println "Inferred tag was:" tag)))))))

(ns daiquiri.compiler
  (:require [daiquiri.normalize :as normalize]
            [daiquiri.util :refer :all]
            [clojure.set :as set]))

(def warn-on-interpretation (atom false))

(defn- requiring-resolve [sym]
  (or (resolve sym)
      (do (require (-> sym namespace symbol))
          (resolve sym))))

(defn maybe-warn-on-interpret
  ([env expr]
