diff options
-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; } } |