Commits

remleduff committed 3f492f5

Fix :dynamic metadata on defs

Comments (0)

Files changed (1)

src/clojure/java/compiler.clj

 
 (defmulti ^:private emit-value (fn [type value] type))
 
+(defmethod emit-value java.lang.Boolean [t v]
+  (.push *gen* (boolean v))
+  (.box *gen* (asm-type Boolean/TYPE)))
+
+(defmethod emit-value Boolean/TYPE [t v]
+  (.push *gen* (boolean v)))
+
 (defmethod emit-value java.lang.Long [t v]
   (.push *gen* (long v))
   (.box *gen* (asm-type Long/TYPE)))
         symbol (symbol (str *ns*) (str sym))
         {:keys [class statics]} @*frame*]
     (.getStatic *gen* class (:name (statics symbol)) var-type)
-    (when (dynamic? name)
+    (when (dynamic? sym)
       (.push *gen* true)
       (.invokeVirtual *gen* var-type (Method/getMethod "clojure.lang.Var setDynamic(boolean)")))
     (when-let [meta (meta sym)]