From dcf8f4c6fd38d7e4c72d5dfe09b8556a43bab9f6 Mon Sep 17 00:00:00 2001 From: Alexander Nozik Date: Thu, 15 Nov 2018 11:07:51 +0300 Subject: [PATCH] inline class bug --- .../commonMain/kotlin/scientifik/kmath/operations/Fields.kt | 4 ++-- .../kotlin/scientifik/kmath/operations/RealFieldTest.kt | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Fields.kt b/kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Fields.kt index 5702803fc..3e4f47869 100644 --- a/kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Fields.kt +++ b/kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Fields.kt @@ -38,9 +38,9 @@ object RealField : ExtendedField, Norm { /** * Real field element wrapping double. * - * TODO inline does not work due to compiler bug. Waiting for fix + * TODO inline does not work due to compiler bug. Waiting for fix for KT-27586 */ -class Real(val value: Double) : FieldElement { +inline class Real(val value: Double) : FieldElement { //values are dynamically calculated to save memory override val self diff --git a/kmath-core/src/commonTest/kotlin/scientifik/kmath/operations/RealFieldTest.kt b/kmath-core/src/commonTest/kotlin/scientifik/kmath/operations/RealFieldTest.kt index 551bf0ee4..0d33204df 100644 --- a/kmath-core/src/commonTest/kotlin/scientifik/kmath/operations/RealFieldTest.kt +++ b/kmath-core/src/commonTest/kotlin/scientifik/kmath/operations/RealFieldTest.kt @@ -6,6 +6,8 @@ import kotlin.test.assertEquals class RealFieldTest { @Test fun testSqrt() { + + //fails because KT-27586 val sqrt = with(RealField) { sqrt( 25 * one) }