diff --git a/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java b/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java index 42594a2f206..56ef145be49 100644 --- a/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java +++ b/compiler/backend/src/org/jetbrains/jet/codegen/ImplementationBodyCodegen.java @@ -1593,7 +1593,7 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen { if (type == Type.DOUBLE_TYPE && ((Number) value).doubleValue() == 0d) { return true; } - if (type == Type.FLOAT_TYPE && ((Number) value).byteValue() == 0f) { + if (type == Type.FLOAT_TYPE && ((Number) value).floatValue() == 0f) { return true; } } diff --git a/compiler/testData/codegen/box/primitiveTypes/kt3576.kt b/compiler/testData/codegen/box/primitiveTypes/kt3576.kt new file mode 100644 index 00000000000..803bb233625 --- /dev/null +++ b/compiler/testData/codegen/box/primitiveTypes/kt3576.kt @@ -0,0 +1,9 @@ +object TestObject { + val testFloat: Float = 0.9999 + val otherFloat: Float = 1.01 +} + +fun box(): String { + return if (TestObject.testFloat.equals(0.9999.toFloat()) + && TestObject.otherFloat.equals(1.01.toFloat())) "OK" else "fail" +} \ No newline at end of file diff --git a/compiler/tests/org/jetbrains/jet/codegen/generated/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/jet/codegen/generated/BlackBoxCodegenTestGenerated.java index 73ff5d85782..d2ddcaef902 100644 --- a/compiler/tests/org/jetbrains/jet/codegen/generated/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/jet/codegen/generated/BlackBoxCodegenTestGenerated.java @@ -3336,6 +3336,11 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { doTest("compiler/testData/codegen/box/primitiveTypes/kt3078.kt"); } + @TestMetadata("kt3576.kt") + public void testKt3576() throws Exception { + doTest("compiler/testData/codegen/box/primitiveTypes/kt3576.kt"); + } + @TestMetadata("kt446.kt") public void testKt446() throws Exception { doTest("compiler/testData/codegen/box/primitiveTypes/kt446.kt");