From f4fef094470e5d4b0e3951da46ce5904a10d6596 Mon Sep 17 00:00:00 2001 From: Igor Chevdar Date: Wed, 4 Jul 2018 16:35:32 +0300 Subject: [PATCH] Fixed external tests Marked all mutable objects with konan.ThreadLocal annotation --- .../external/codegen/box/callableReference/bound/multiCase.kt | 1 + .../codegen/box/callableReference/property/delegatedMutable.kt | 1 + backend.native/tests/external/codegen/box/classes/kt9642.kt | 1 + .../tests/external/codegen/box/delegatedProperty/kt4138.kt | 2 ++ .../tests/external/codegen/box/extensionProperties/kt9897.kt | 1 + backend.native/tests/external/codegen/box/ieee754/equalsNaN.kt | 1 + .../tests/external/codegen/box/increment/classNaryGetSet.kt | 1 + .../tests/external/codegen/box/objects/useImportedMember.kt | 1 + .../codegen/box/objects/useImportedMemberFromCompanion.kt | 1 + .../codegen/box/operatorConventions/operatorSetLambda.kt | 1 + .../external/codegen/box/properties/classObjectProperties.kt | 1 + backend.native/tests/external/codegen/box/properties/kt4140.kt | 1 + backend.native/tests/external/codegen/box/properties/kt4252.kt | 1 + .../tests/external/codegen/box/properties/kt4252_2.kt | 1 + backend.native/tests/external/codegen/box/properties/kt4383.kt | 1 + backend.native/tests/external/codegen/box/properties/kt8928.kt | 1 + .../tests/external/codegen/box/properties/lateinit/accessor.kt | 1 + .../lateinit/isInitializedAndDeinitialize/emptyLhs.kt | 1 + .../noReflectAtRuntime/methodsFromAny/delegatedProperty.kt | 1 + .../tests/external/codegen/box/statics/incInClassObject.kt | 1 + .../tests/external/codegen/box/statics/incInObject.kt | 1 + backend.native/tests/external/codegen/box/statics/kt8089.kt | 1 + 22 files changed, 23 insertions(+) diff --git a/backend.native/tests/external/codegen/box/callableReference/bound/multiCase.kt b/backend.native/tests/external/codegen/box/callableReference/bound/multiCase.kt index 1ffad7fac0e..6195f795d1f 100644 --- a/backend.native/tests/external/codegen/box/callableReference/bound/multiCase.kt +++ b/backend.native/tests/external/codegen/box/callableReference/bound/multiCase.kt @@ -10,6 +10,7 @@ var A.w: Int v = c + 10 } +@konan.ThreadLocal object F { var u = 0 } diff --git a/backend.native/tests/external/codegen/box/callableReference/property/delegatedMutable.kt b/backend.native/tests/external/codegen/box/callableReference/property/delegatedMutable.kt index 3bc30b3c17d..2abff7c9376 100644 --- a/backend.native/tests/external/codegen/box/callableReference/property/delegatedMutable.kt +++ b/backend.native/tests/external/codegen/box/callableReference/property/delegatedMutable.kt @@ -2,6 +2,7 @@ import kotlin.reflect.KProperty var result: String by Delegate +@konan.ThreadLocal object Delegate { var value = "lol" diff --git a/backend.native/tests/external/codegen/box/classes/kt9642.kt b/backend.native/tests/external/codegen/box/classes/kt9642.kt index 414954aab60..7adcf213eba 100644 --- a/backend.native/tests/external/codegen/box/classes/kt9642.kt +++ b/backend.native/tests/external/codegen/box/classes/kt9642.kt @@ -6,6 +6,7 @@ class Outer { } } + @konan.ThreadLocal companion object { public var s = "fail" private set diff --git a/backend.native/tests/external/codegen/box/delegatedProperty/kt4138.kt b/backend.native/tests/external/codegen/box/delegatedProperty/kt4138.kt index f4535dd82e7..1a3f5bf985b 100644 --- a/backend.native/tests/external/codegen/box/delegatedProperty/kt4138.kt +++ b/backend.native/tests/external/codegen/box/delegatedProperty/kt4138.kt @@ -7,6 +7,7 @@ class Delegate(var inner: T) { class Foo (val f: Int) { + @konan.ThreadLocal companion object { val A: Foo by Delegate(Foo(11)) var B: Foo by Delegate(Foo(11)) @@ -14,6 +15,7 @@ class Foo (val f: Int) { } interface FooTrait { + @konan.ThreadLocal companion object { val A: Foo by Delegate(Foo(11)) var B: Foo by Delegate(Foo(11)) diff --git a/backend.native/tests/external/codegen/box/extensionProperties/kt9897.kt b/backend.native/tests/external/codegen/box/extensionProperties/kt9897.kt index 728323b1c64..3cae8d031d9 100644 --- a/backend.native/tests/external/codegen/box/extensionProperties/kt9897.kt +++ b/backend.native/tests/external/codegen/box/extensionProperties/kt9897.kt @@ -1,3 +1,4 @@ +@konan.ThreadLocal object Test { var z = "0" var l = 0L diff --git a/backend.native/tests/external/codegen/box/ieee754/equalsNaN.kt b/backend.native/tests/external/codegen/box/ieee754/equalsNaN.kt index 3a396bd432d..f578e3d34e4 100644 --- a/backend.native/tests/external/codegen/box/ieee754/equalsNaN.kt +++ b/backend.native/tests/external/codegen/box/ieee754/equalsNaN.kt @@ -2,6 +2,7 @@ import kotlin.test.* +@konan.ThreadLocal object O { var equalsCalled: Boolean = false get(): Boolean { diff --git a/backend.native/tests/external/codegen/box/increment/classNaryGetSet.kt b/backend.native/tests/external/codegen/box/increment/classNaryGetSet.kt index 121ace263e0..068aea7d336 100644 --- a/backend.native/tests/external/codegen/box/increment/classNaryGetSet.kt +++ b/backend.native/tests/external/codegen/box/increment/classNaryGetSet.kt @@ -1,3 +1,4 @@ +@konan.ThreadLocal object A { var x = 0 diff --git a/backend.native/tests/external/codegen/box/objects/useImportedMember.kt b/backend.native/tests/external/codegen/box/objects/useImportedMember.kt index 83b806eb024..48dfb3fb0d1 100644 --- a/backend.native/tests/external/codegen/box/objects/useImportedMember.kt +++ b/backend.native/tests/external/codegen/box/objects/useImportedMember.kt @@ -18,6 +18,7 @@ open class BaseClass { get() = this } +@konan.ThreadLocal object C: BaseClass(), I { fun f(s: Int) = 1 fun f(s: String) = 2 diff --git a/backend.native/tests/external/codegen/box/objects/useImportedMemberFromCompanion.kt b/backend.native/tests/external/codegen/box/objects/useImportedMemberFromCompanion.kt index 9523480b86a..6726dd928b9 100644 --- a/backend.native/tests/external/codegen/box/objects/useImportedMemberFromCompanion.kt +++ b/backend.native/tests/external/codegen/box/objects/useImportedMemberFromCompanion.kt @@ -19,6 +19,7 @@ open class BaseClass { } class Class { + @konan.ThreadLocal companion object C: BaseClass(), I { fun f(s: Int) = 1 fun f(s: String) = 2 diff --git a/backend.native/tests/external/codegen/box/operatorConventions/operatorSetLambda.kt b/backend.native/tests/external/codegen/box/operatorConventions/operatorSetLambda.kt index a791f7207c7..74d538b1900 100644 --- a/backend.native/tests/external/codegen/box/operatorConventions/operatorSetLambda.kt +++ b/backend.native/tests/external/codegen/box/operatorConventions/operatorSetLambda.kt @@ -1,5 +1,6 @@ // See KT-14999 +@konan.ThreadLocal object Obj { var key = "" var value = "" diff --git a/backend.native/tests/external/codegen/box/properties/classObjectProperties.kt b/backend.native/tests/external/codegen/box/properties/classObjectProperties.kt index 1a48f5eb5f4..53c79de1997 100644 --- a/backend.native/tests/external/codegen/box/properties/classObjectProperties.kt +++ b/backend.native/tests/external/codegen/box/properties/classObjectProperties.kt @@ -1,5 +1,6 @@ class Test { + @konan.ThreadLocal companion object { public val prop1 : Int = 10 diff --git a/backend.native/tests/external/codegen/box/properties/kt4140.kt b/backend.native/tests/external/codegen/box/properties/kt4140.kt index 55c964df5b8..c30d8a992ea 100644 --- a/backend.native/tests/external/codegen/box/properties/kt4140.kt +++ b/backend.native/tests/external/codegen/box/properties/kt4140.kt @@ -1,5 +1,6 @@ class TestObject() { + @konan.ThreadLocal companion object { var prop: Int = 1 get() = field++ diff --git a/backend.native/tests/external/codegen/box/properties/kt4252.kt b/backend.native/tests/external/codegen/box/properties/kt4252.kt index 2780832a23c..a8ed9f1b0bd 100644 --- a/backend.native/tests/external/codegen/box/properties/kt4252.kt +++ b/backend.native/tests/external/codegen/box/properties/kt4252.kt @@ -2,6 +2,7 @@ class CallbackBlock {} public class Foo { + @konan.ThreadLocal companion object { private var bar = 0 } diff --git a/backend.native/tests/external/codegen/box/properties/kt4252_2.kt b/backend.native/tests/external/codegen/box/properties/kt4252_2.kt index c86578a72ce..d894e2d59da 100644 --- a/backend.native/tests/external/codegen/box/properties/kt4252_2.kt +++ b/backend.native/tests/external/codegen/box/properties/kt4252_2.kt @@ -1,4 +1,5 @@ class Foo() { + @konan.ThreadLocal companion object { val bar = "OK"; var boo = "FAIL"; diff --git a/backend.native/tests/external/codegen/box/properties/kt4383.kt b/backend.native/tests/external/codegen/box/properties/kt4383.kt index 3a8d6e0a1e3..8959b00b7f3 100644 --- a/backend.native/tests/external/codegen/box/properties/kt4383.kt +++ b/backend.native/tests/external/codegen/box/properties/kt4383.kt @@ -4,6 +4,7 @@ class D { operator fun getValue(a: Any, p: KProperty<*>) { } } +@konan.ThreadLocal object P { val u = Unit val v by D() diff --git a/backend.native/tests/external/codegen/box/properties/kt8928.kt b/backend.native/tests/external/codegen/box/properties/kt8928.kt index bafc93f62b3..407414ec1dd 100644 --- a/backend.native/tests/external/codegen/box/properties/kt8928.kt +++ b/backend.native/tests/external/codegen/box/properties/kt8928.kt @@ -2,6 +2,7 @@ class App { fun init() { s = "OK" } + @konan.ThreadLocal companion object { var s: String = "Fail" private set diff --git a/backend.native/tests/external/codegen/box/properties/lateinit/accessor.kt b/backend.native/tests/external/codegen/box/properties/lateinit/accessor.kt index 441bc5ec592..df9e96d343d 100644 --- a/backend.native/tests/external/codegen/box/properties/lateinit/accessor.kt +++ b/backend.native/tests/external/codegen/box/properties/lateinit/accessor.kt @@ -8,6 +8,7 @@ public class A { return str } + @konan.ThreadLocal private companion object { private lateinit var str: String } diff --git a/backend.native/tests/external/codegen/box/properties/lateinit/isInitializedAndDeinitialize/emptyLhs.kt b/backend.native/tests/external/codegen/box/properties/lateinit/isInitializedAndDeinitialize/emptyLhs.kt index 4e5c78fdc56..a1961bb5d64 100644 --- a/backend.native/tests/external/codegen/box/properties/lateinit/isInitializedAndDeinitialize/emptyLhs.kt +++ b/backend.native/tests/external/codegen/box/properties/lateinit/isInitializedAndDeinitialize/emptyLhs.kt @@ -14,6 +14,7 @@ class Foo { } } +@konan.ThreadLocal object Bar { lateinit var p: String diff --git a/backend.native/tests/external/codegen/box/reflection/noReflectAtRuntime/methodsFromAny/delegatedProperty.kt b/backend.native/tests/external/codegen/box/reflection/noReflectAtRuntime/methodsFromAny/delegatedProperty.kt index be7e3c9195b..973b1d1f742 100644 --- a/backend.native/tests/external/codegen/box/reflection/noReflectAtRuntime/methodsFromAny/delegatedProperty.kt +++ b/backend.native/tests/external/codegen/box/reflection/noReflectAtRuntime/methodsFromAny/delegatedProperty.kt @@ -4,6 +4,7 @@ import kotlin.reflect.KProperty import kotlin.test.assertEquals +@konan.ThreadLocal object Delegate { lateinit var prop: KProperty<*> diff --git a/backend.native/tests/external/codegen/box/statics/incInClassObject.kt b/backend.native/tests/external/codegen/box/statics/incInClassObject.kt index f4cfe90e680..d512b4c2227 100644 --- a/backend.native/tests/external/codegen/box/statics/incInClassObject.kt +++ b/backend.native/tests/external/codegen/box/statics/incInClassObject.kt @@ -1,4 +1,5 @@ class A { + @konan.ThreadLocal companion object { private var r: Int = 1; diff --git a/backend.native/tests/external/codegen/box/statics/incInObject.kt b/backend.native/tests/external/codegen/box/statics/incInObject.kt index c1f48692d36..ddbea69d3bd 100644 --- a/backend.native/tests/external/codegen/box/statics/incInObject.kt +++ b/backend.native/tests/external/codegen/box/statics/incInObject.kt @@ -1,3 +1,4 @@ +@konan.ThreadLocal object A { private var r: Int = 1; diff --git a/backend.native/tests/external/codegen/box/statics/kt8089.kt b/backend.native/tests/external/codegen/box/statics/kt8089.kt index 2fee361d80d..98461832f8a 100644 --- a/backend.native/tests/external/codegen/box/statics/kt8089.kt +++ b/backend.native/tests/external/codegen/box/statics/kt8089.kt @@ -1,4 +1,5 @@ class C { + @konan.ThreadLocal companion object { private val s: String private var s2: String