diff options
author | Rich Hickey <richhickey@gmail.com> | 2011-04-29 14:42:34 -0400 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2011-04-29 14:42:34 -0400 |
commit | 6fb09f402c5448070a2efc64ebd64285480b263f (patch) | |
tree | 7527f1c1a15e7778b8632dc4d40d9f94cc229865 | |
parent | 4b856bd5cb55dcbe98dab807ae95f6665cced30c (diff) |
floats box as Floats
-rw-r--r-- | src/jvm/clojure/lang/Compiler.java | 6 | ||||
-rw-r--r-- | src/jvm/clojure/lang/Numbers.java | 2 | ||||
-rw-r--r-- | src/jvm/clojure/lang/Reflector.java | 4 |
3 files changed, 7 insertions, 5 deletions
diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java index 89d5df4e..bbaa0a12 100644 --- a/src/jvm/clojure/lang/Compiler.java +++ b/src/jvm/clojure/lang/Compiler.java @@ -774,8 +774,10 @@ static public abstract class HostExpr implements Expr, MaybePrimitiveExpr{ } else if(returnType == float.class) { - gen.visitInsn(F2D); - gen.invokeStatic(DOUBLE_TYPE, doubleValueOfMethod); + gen.invokeStatic(FLOAT_TYPE, floatValueOfMethod); + +// gen.visitInsn(F2D); +// gen.invokeStatic(DOUBLE_TYPE, doubleValueOfMethod); } else if(returnType == double.class) gen.invokeStatic(DOUBLE_TYPE, doubleValueOfMethod); diff --git a/src/jvm/clojure/lang/Numbers.java b/src/jvm/clojure/lang/Numbers.java index 8210de7c..2e71b826 100644 --- a/src/jvm/clojure/lang/Numbers.java +++ b/src/jvm/clojure/lang/Numbers.java @@ -1488,7 +1488,7 @@ static public Number num(Object x){ } static public Number num(float x){ - return Double.valueOf(x); + return Float.valueOf(x); } static public Number num(double x){ diff --git a/src/jvm/clojure/lang/Reflector.java b/src/jvm/clojure/lang/Reflector.java index d13bf61a..74e58777 100644 --- a/src/jvm/clojure/lang/Reflector.java +++ b/src/jvm/clojure/lang/Reflector.java @@ -497,8 +497,8 @@ public static Object prepRet(Class c, Object x){ { return ((Integer)x).longValue(); } - else if(x instanceof Float) - return Double.valueOf(((Float) x).doubleValue()); +// else if(x instanceof Float) +// return Double.valueOf(((Float) x).doubleValue()); return x; } } |