fixup! [Tests] Ensure `@DoNotInlineOnFirstStage` functions are not inlined
diff --git a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/annotation.kt b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/annotation.kt
index 808b6bc..876dd91 100644
--- a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/annotation.kt
+++ b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/annotation.kt
@@ -1,4 +1,4 @@
package kotlin.internal
-@Target(AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER)
+@Target(AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER)
annotation class DoNotInlineOnFirstStage
diff --git a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt
index 50095cd..fa2ca0e 100644
--- a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt
+++ b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt
@@ -8,15 +8,6 @@
context(c: String)
inline fun String.inlineExtensionFunction() = "$this.inlineExtensionFunction.v1 with context $c"
-@kotlin.internal.DoNotInlineOnFirstStage
-inline val excludedReadOnlyInlineProperty: String
- get() = "excludedReadOnlyInlineProperty.v1"
-
-@kotlin.internal.DoNotInlineOnFirstStage
-context(c: String)
-inline val String.excludedReadOnlyInlineExtensionProperty: String
- get() = "$this.excludedReadOnlyInlineExtensionProperty.v1 with context $c"
-
inline val excludedReadOnlyInlinePropertyGetter: String
@kotlin.internal.DoNotInlineOnFirstStage
get() = "excludedReadOnlyInlinePropertyGetter.v1"
@@ -26,23 +17,6 @@
@kotlin.internal.DoNotInlineOnFirstStage
get() = "$this.excludedReadOnlyInlineExtensionPropertyGetter.v1 with context $c"
-var _excludedReadWriteInlineProperty = ""
-@kotlin.internal.DoNotInlineOnFirstStage
-inline var excludedReadWriteInlineProperty: String
- get() = _excludedReadWriteInlineProperty
- set(value) {
- _excludedReadWriteInlineProperty = "$value.v1"
- }
-
-var _excludedReadWriteInlineExtensionProperty = ""
-@kotlin.internal.DoNotInlineOnFirstStage
-context(c: String)
-inline var String.excludedReadWriteInlineExtensionProperty: String
- get() = _excludedReadWriteInlineExtensionProperty
- set(value) {
- _excludedReadWriteInlineExtensionProperty = "$this.$value.v1 with context $c"
- }
-
var _excludedReadWriteInlinePropertySetter = ""
inline var excludedReadWriteInlinePropertySetter: String
get() = _excludedReadWriteInlinePropertySetter
@@ -71,15 +45,6 @@
context(c: String)
inline fun String.inlineClassExtensionFunction() = "$this.inlineClassExtensionFunction.v1 with context $c"
- @kotlin.internal.DoNotInlineOnFirstStage
- inline val excludedReadOnlyInlineClassProperty: String
- get() = "excludedReadOnlyInlineClassProperty.v1"
-
- @kotlin.internal.DoNotInlineOnFirstStage
- context(c: String)
- inline val String.excludedReadOnlyInlineClassExtensionProperty: String
- get() = "$this.excludedReadOnlyInlineClassExtensionProperty.v1 with context $c"
-
inline val excludedReadOnlyInlineClassPropertyGetter: String
@kotlin.internal.DoNotInlineOnFirstStage
get() = "excludedReadOnlyInlineClassPropertyGetter.v1"
@@ -89,23 +54,6 @@
@kotlin.internal.DoNotInlineOnFirstStage
get() = "$this.excludedReadOnlyInlineClassExtensionPropertyGetter.v1 with context $c"
- var _excludedReadWriteInlineClassProperty = ""
- @kotlin.internal.DoNotInlineOnFirstStage
- inline var excludedReadWriteInlineClassProperty: String
- get() = _excludedReadWriteInlineClassProperty
- set(value) {
- _excludedReadWriteInlineClassProperty = "$value.v1"
- }
-
- var _excludedReadWriteInlineClassExtensionProperty = ""
- @kotlin.internal.DoNotInlineOnFirstStage
- context(c: String)
- inline var String.excludedReadWriteInlineClassExtensionProperty: String
- get() = _excludedReadWriteInlineClassExtensionProperty
- set(value) {
- _excludedReadWriteInlineClassExtensionProperty = "$this.$value.v1 with context $c"
- }
-
var _excludedReadWriteInlineClassPropertySetter = ""
inline var excludedReadWriteInlineClassPropertySetter: String
get() = _excludedReadWriteInlineClassPropertySetter
diff --git a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt.1 b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt.1
index ad74ce8..c020a3d 100644
--- a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt.1
+++ b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/lib1/l1.kt.1
@@ -8,15 +8,6 @@
context(c: String)
inline fun String.inlineExtensionFunction() = "$this.inlineExtensionFunction.v2 with context $c"
-@kotlin.internal.DoNotInlineOnFirstStage
-inline val excludedReadOnlyInlineProperty: String
- get() = "excludedReadOnlyInlineProperty.v2"
-
-@kotlin.internal.DoNotInlineOnFirstStage
-context(c: String)
-inline val String.excludedReadOnlyInlineExtensionProperty: String
- get() = "$this.excludedReadOnlyInlineExtensionProperty.v2 with context $c"
-
inline val excludedReadOnlyInlinePropertyGetter: String
@kotlin.internal.DoNotInlineOnFirstStage
get() = "excludedReadOnlyInlinePropertyGetter.v2"
@@ -26,23 +17,6 @@
@kotlin.internal.DoNotInlineOnFirstStage
get() = "$this.excludedReadOnlyInlineExtensionPropertyGetter.v2 with context $c"
-var _excludedReadWriteInlineProperty = ""
-@kotlin.internal.DoNotInlineOnFirstStage
-inline var excludedReadWriteInlineProperty: String
- get() = _excludedReadWriteInlineProperty
- set(value) {
- _excludedReadWriteInlineProperty = "$value.v2"
- }
-
-var _excludedReadWriteInlineExtensionProperty = ""
-@kotlin.internal.DoNotInlineOnFirstStage
-context(c: String)
-inline var String.excludedReadWriteInlineExtensionProperty: String
- get() = _excludedReadWriteInlineExtensionProperty
- set(value) {
- _excludedReadWriteInlineExtensionProperty = "$this.$value.v2 with context $c"
- }
-
var _excludedReadWriteInlinePropertySetter = ""
inline var excludedReadWriteInlinePropertySetter: String
get() = _excludedReadWriteInlinePropertySetter
@@ -71,15 +45,6 @@
context(c: String)
inline fun String.inlineClassExtensionFunction() = "$this.inlineClassExtensionFunction.v2 with context $c"
- @kotlin.internal.DoNotInlineOnFirstStage
- inline val excludedReadOnlyInlineClassProperty: String
- get() = "excludedReadOnlyInlineClassProperty.v2"
-
- @kotlin.internal.DoNotInlineOnFirstStage
- context(c: String)
- inline val String.excludedReadOnlyInlineClassExtensionProperty: String
- get() = "$this.excludedReadOnlyInlineClassExtensionProperty.v2 with context $c"
-
inline val excludedReadOnlyInlineClassPropertyGetter: String
@kotlin.internal.DoNotInlineOnFirstStage
get() = "excludedReadOnlyInlineClassPropertyGetter.v2"
@@ -89,23 +54,6 @@
@kotlin.internal.DoNotInlineOnFirstStage
get() = "$this.excludedReadOnlyInlineClassExtensionPropertyGetter.v2 with context $c"
- var _excludedReadWriteInlineClassProperty = ""
- @kotlin.internal.DoNotInlineOnFirstStage
- inline var excludedReadWriteInlineClassProperty: String
- get() = _excludedReadWriteInlineClassProperty
- set(value) {
- _excludedReadWriteInlineClassProperty = "$value.v2"
- }
-
- var _excludedReadWriteInlineClassExtensionProperty = ""
- @kotlin.internal.DoNotInlineOnFirstStage
- context(c: String)
- inline var String.excludedReadWriteInlineClassExtensionProperty: String
- get() = _excludedReadWriteInlineClassExtensionProperty
- set(value) {
- _excludedReadWriteInlineClassExtensionProperty = "$this.$value.v2 with context $c"
- }
-
var _excludedReadWriteInlineClassPropertySetter = ""
inline var excludedReadWriteInlineClassPropertySetter: String
get() = _excludedReadWriteInlineClassPropertySetter
diff --git a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/l2.kt b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/l2.kt
index db469295..0c315db 100644
--- a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/l2.kt
+++ b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/l2.kt
@@ -51,38 +51,6 @@
inline fun defaultParamFunction3(param: String = C().inlineClassFunction()) = param
inline fun defaultParamFunction4(param: String = C().inlineClassFunctionWithParam()) = param
-object ReadOnlyPropertyAnnotated {
- fun directCall1() = excludedReadOnlyInlineProperty
- fun directCall2() = with("directContext") { "directReceiver".excludedReadOnlyInlineExtensionProperty }
- fun directCall3() = C().excludedReadOnlyInlineClassProperty
- fun directCall4() = C().run { with("directClassContext") { "directClassReceiver".excludedReadOnlyInlineClassExtensionProperty } }
- fun directCall5() = inlineCall1()
- fun directCall6() = inlineCall2()
- fun directCall7() = inlineCall3()
- fun directCall8() = inlineCall4()
- fun directCall9() = lambdaCall1()
- fun directCall10() = lambdaCall2()
- fun directCall11() = lambdaCall3()
- fun directCall12() = lambdaCall4()
- fun directCall13() = defaultParamFunction1()
- fun directCall14() = defaultParamFunction2()
-
- inline fun inlineCall1() = excludedReadOnlyInlineProperty
- inline fun inlineCall2() = with("inlineContext") { "inlineReceiver".excludedReadOnlyInlineExtensionProperty }
- inline fun inlineCall3() = C().excludedReadOnlyInlineClassProperty
- inline fun inlineCall4() = C().run { with("inlineClassContext") { "inlineClassReceiver".excludedReadOnlyInlineClassExtensionProperty } }
-
- inline fun useLambda(f: () -> String) = f()
- inline fun lambdaCall1() = useLambda { excludedReadOnlyInlineProperty }
- inline fun lambdaCall2() = useLambda { with("lambdaContext") { "lambdaReceiver".excludedReadOnlyInlineExtensionProperty } }
- inline fun lambdaCall3() = useLambda { C().excludedReadOnlyInlineClassProperty }
- inline fun lambdaCall4() =
- useLambda { C().run { with("lambdaClassContext") { "lambdaClassReceiver".excludedReadOnlyInlineClassExtensionProperty } } }
-
- inline fun defaultParamFunction1(param: String = excludedReadOnlyInlineProperty) = param
- inline fun defaultParamFunction2(param: String = C().excludedReadOnlyInlineClassProperty) = param
-}
-
object ReadOnlyGetterAnnotated {
fun directCall1() = excludedReadOnlyInlinePropertyGetter
fun directCall2() = with("directContext") { "directReceiver".excludedReadOnlyInlineExtensionPropertyGetter }
@@ -115,106 +83,6 @@
inline fun defaultParamFunction2(param: String = C().excludedReadOnlyInlineClassPropertyGetter) = param
}
-object ReadWritePropertyAnnotated {
- fun directCall1(): String {
- excludedReadWriteInlineProperty = "directSetterValue"
- return excludedReadWriteInlineProperty
- }
-
- fun directCall2(): String {
- with("directContext") {
- val s = "directReceiver"
- s.excludedReadWriteInlineExtensionProperty = "directSetterValue"
- return s.excludedReadWriteInlineExtensionProperty
- }
- }
-
- fun directCall3(): String {
- val c = C()
- c.excludedReadWriteInlineClassProperty = "directSetterValue"
- return c.excludedReadWriteInlineClassProperty
- }
-
- fun directCall4(): String {
- C().run {
- with("directClassContext") {
- val s = "directClassReceiver"
- s.excludedReadWriteInlineClassExtensionProperty = "directSetterValue"
- return s.excludedReadWriteInlineClassExtensionProperty
- }
- }
- }
-
- fun directCall5(): String = inlineCall1()
- fun directCall6(): String = inlineCall2()
- fun directCall7(): String = inlineCall3()
- fun directCall8(): String = inlineCall4()
- fun directCall9(): String = lambdaCall1()
- fun directCall10(): String = lambdaCall2()
- fun directCall11(): String = lambdaCall3()
- fun directCall12(): String = lambdaCall4()
-
- inline fun inlineCall1(): String {
- excludedReadWriteInlineProperty = "inlineSetterValue"
- return excludedReadWriteInlineProperty
- }
-
- inline fun inlineCall2(): String {
- with("inlineContext") {
- val s = "inlineReceiver"
- s.excludedReadWriteInlineExtensionProperty = "inlineSetterValue"
- return s.excludedReadWriteInlineExtensionProperty
- }
- }
-
- inline fun inlineCall3(): String {
- val c = C()
- c.excludedReadWriteInlineClassProperty = "inlineSetterValue"
- return c.excludedReadWriteInlineClassProperty
- }
-
- inline fun inlineCall4(): String {
- C().run {
- with("inlineClassContext") {
- val s = "inlineClassReceiver"
- s.excludedReadWriteInlineClassExtensionProperty = "inlineSetterValue"
- return s.excludedReadWriteInlineClassExtensionProperty
- }
- }
- }
-
- inline fun useLambda(f: () -> String) = f()
-
- inline fun lambdaCall1(): String = useLambda {
- excludedReadWriteInlineProperty = "lambdaSetterValue"
- excludedReadWriteInlineProperty
- }
-
- inline fun lambdaCall2(): String = useLambda {
- with("lambdaContext") {
- val s = "lambdaReceiver"
- s.excludedReadWriteInlineExtensionProperty = "lambdaSetterValue"
- s.excludedReadWriteInlineExtensionProperty
- }
- }
-
- inline fun lambdaCall3(): String = useLambda {
- val c = C()
- c.excludedReadWriteInlineClassProperty = "lambdaSetterValue"
- c.excludedReadWriteInlineClassProperty
- }
-
- inline fun lambdaCall4(): String = useLambda {
- C().run {
- with("lambdaClassContext") {
- val s = "lambdaClassReceiver"
- s.excludedReadWriteInlineClassExtensionProperty = "lambdaSetterValue"
- s.excludedReadWriteInlineClassExtensionProperty
- }
- }
- }
-}
-
object ReadWriteSetterAnnotated {
fun directCall1(): String {
excludedReadWriteInlinePropertySetter = "directSetterValueAnnotatedSetter"
diff --git a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/m.kt b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/m.kt
index 0948be9..0f3a4d1 100644
--- a/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/m.kt
+++ b/compiler/testData/klib/partial-linkage/functionExcludedFromFirstStageInlining/main/m.kt
@@ -34,25 +34,6 @@
expectSuccess("inlineClassFunction.v2") { directCall27() }
expectSuccess("inlineClassFunctionWithParam.v2: default.v2") { directCall28() }
- // Read-only property annotated:
- expectSuccess("excludedReadOnlyInlineProperty.v2") { ReadOnlyPropertyAnnotated.directCall1() }
- expectSuccess("directReceiver.excludedReadOnlyInlineExtensionProperty.v2 with context directContext") { ReadOnlyPropertyAnnotated.directCall2() }
- expectSuccess("excludedReadOnlyInlineClassProperty.v2") { ReadOnlyPropertyAnnotated.directCall3() }
- expectSuccess("directClassReceiver.excludedReadOnlyInlineClassExtensionProperty.v2 with context directClassContext") { ReadOnlyPropertyAnnotated.directCall4() }
-
- expectSuccess("excludedReadOnlyInlineProperty.v2") { ReadOnlyPropertyAnnotated.directCall5() }
- expectSuccess("inlineReceiver.excludedReadOnlyInlineExtensionProperty.v2 with context inlineContext") { ReadOnlyPropertyAnnotated.directCall6() }
- expectSuccess("excludedReadOnlyInlineClassProperty.v2") { ReadOnlyPropertyAnnotated.directCall7() }
- expectSuccess("inlineClassReceiver.excludedReadOnlyInlineClassExtensionProperty.v2 with context inlineClassContext") { ReadOnlyPropertyAnnotated.directCall8() }
-
- expectSuccess("excludedReadOnlyInlineProperty.v2") { ReadOnlyPropertyAnnotated.directCall9() }
- expectSuccess("lambdaReceiver.excludedReadOnlyInlineExtensionProperty.v2 with context lambdaContext") { ReadOnlyPropertyAnnotated.directCall10() }
- expectSuccess("excludedReadOnlyInlineClassProperty.v2") { ReadOnlyPropertyAnnotated.directCall11() }
- expectSuccess("lambdaClassReceiver.excludedReadOnlyInlineClassExtensionProperty.v2 with context lambdaClassContext") { ReadOnlyPropertyAnnotated.directCall12() }
-
- expectSuccess("excludedReadOnlyInlineProperty.v2") { ReadOnlyPropertyAnnotated.directCall13() }
- expectSuccess("excludedReadOnlyInlineClassProperty.v2") { ReadOnlyPropertyAnnotated.directCall14() }
-
// Read-only property getter annotated:
expectSuccess("excludedReadOnlyInlinePropertyGetter.v2") { ReadOnlyGetterAnnotated.directCall1() }
expectSuccess("directReceiver.excludedReadOnlyInlineExtensionPropertyGetter.v2 with context directContext") { ReadOnlyGetterAnnotated.directCall2() }
@@ -72,22 +53,6 @@
expectSuccess("excludedReadOnlyInlinePropertyGetter.v2") { ReadOnlyGetterAnnotated.directCall13() }
expectSuccess("excludedReadOnlyInlineClassPropertyGetter.v2") { ReadOnlyGetterAnnotated.directCall14() }
- // Read-write property annotated:
- expectSuccess("directSetterValue.v2") { ReadWritePropertyAnnotated.directCall1() }
- expectSuccess("directReceiver.directSetterValue.v2 with context directContext") { ReadWritePropertyAnnotated.directCall2() }
- expectSuccess("directSetterValue.v2") { ReadWritePropertyAnnotated.directCall3() }
- expectSuccess("directClassReceiver.directSetterValue.v2 with context directClassContext") { ReadWritePropertyAnnotated.directCall4() }
-
- expectSuccess("inlineSetterValue.v2") { ReadWritePropertyAnnotated.directCall5() }
- expectSuccess("inlineReceiver.inlineSetterValue.v2 with context inlineContext") { ReadWritePropertyAnnotated.directCall6() }
- expectSuccess("inlineSetterValue.v2") { ReadWritePropertyAnnotated.directCall7() }
- expectSuccess("inlineClassReceiver.inlineSetterValue.v2 with context inlineClassContext") { ReadWritePropertyAnnotated.directCall8() }
-
- expectSuccess("lambdaSetterValue.v2") { ReadWritePropertyAnnotated.directCall9() }
- expectSuccess("lambdaReceiver.lambdaSetterValue.v2 with context lambdaContext") { ReadWritePropertyAnnotated.directCall10() }
- expectSuccess("lambdaSetterValue.v2") { ReadWritePropertyAnnotated.directCall11() }
- expectSuccess("lambdaClassReceiver.lambdaSetterValue.v2 with context lambdaClassContext") { ReadWritePropertyAnnotated.directCall12() }
-
// Read-write property setter annotated:
expectSuccess("directSetterValueAnnotatedSetter.v2") { ReadWriteSetterAnnotated.directCall1() }
expectSuccess("directReceiverAnnotatedSetter.directSetterValueAnnotatedSetter.v2 with context directContextAnnotatedSetter") { ReadWriteSetterAnnotated.directCall2() }