diff --git a/src/main/clojure/cljs/compiler.cljc b/src/main/clojure/cljs/compiler.cljc index 2ef7c8c76..579fba962 100644 --- a/src/main/clojure/cljs/compiler.cljc +++ b/src/main/clojure/cljs/compiler.cljc @@ -313,7 +313,11 @@ (defmethod emit-constant* nil [x] (emits "null")) #?(:clj - (defmethod emit-constant* Long [x] (emits "(" x ")"))) + (defmethod emit-constant* Long [x] + (if (or (> x 9007199254740991) + (< x -9007199254740991)) + (emits "(" x "n)") + (emits "(" x ")")))) #?(:clj (defmethod emit-constant* Integer [x] (emits x))) ; reader puts Integers in metadata