Inline properties support in incremental compilation
Original commit: a090133581
This commit is contained in:
+48
@@ -443,6 +443,18 @@ public class ExperimentalIncrementalJpsTestGenerated extends AbstractExperimenta
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassValProperty")
|
||||
public void testInlineClassValProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineClassValProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassVarProperty")
|
||||
public void testInlineClassVarProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineClassVarProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineFunctionRemoved")
|
||||
public void testInlineFunctionRemoved() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineFunctionRemoved/");
|
||||
@@ -479,6 +491,30 @@ public class ExperimentalIncrementalJpsTestGenerated extends AbstractExperimenta
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelFunctionWithJvmName")
|
||||
public void testInlineTopLevelFunctionWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelFunctionWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelValProperty")
|
||||
public void testInlineTopLevelValProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelValProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelValPropertyWithJvmName")
|
||||
public void testInlineTopLevelValPropertyWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelValPropertyWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelVarProperty")
|
||||
public void testInlineTopLevelVarProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelVarProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTwoFunctionsOneChanged")
|
||||
public void testInlineTwoFunctionsOneChanged() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTwoFunctionsOneChanged/");
|
||||
@@ -845,6 +881,12 @@ public class ExperimentalIncrementalJpsTestGenerated extends AbstractExperimenta
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("topLevelFunctionWithJvmName")
|
||||
public void testTopLevelFunctionWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/topLevelFunctionWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("topLevelMembersInTwoFiles")
|
||||
public void testTopLevelMembersInTwoFiles() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/topLevelMembersInTwoFiles/");
|
||||
@@ -857,6 +899,12 @@ public class ExperimentalIncrementalJpsTestGenerated extends AbstractExperimenta
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("topLevelPropertyWithJvmName")
|
||||
public void testTopLevelPropertyWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/topLevelPropertyWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("traitClassObjectConstantChanged")
|
||||
public void testTraitClassObjectConstantChanged() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/");
|
||||
|
||||
+48
@@ -443,6 +443,18 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest {
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassValProperty")
|
||||
public void testInlineClassValProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineClassValProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineClassVarProperty")
|
||||
public void testInlineClassVarProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineClassVarProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineFunctionRemoved")
|
||||
public void testInlineFunctionRemoved() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineFunctionRemoved/");
|
||||
@@ -479,6 +491,30 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest {
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelFunctionWithJvmName")
|
||||
public void testInlineTopLevelFunctionWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelFunctionWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelValProperty")
|
||||
public void testInlineTopLevelValProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelValProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelValPropertyWithJvmName")
|
||||
public void testInlineTopLevelValPropertyWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelValPropertyWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTopLevelVarProperty")
|
||||
public void testInlineTopLevelVarProperty() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTopLevelVarProperty/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("inlineTwoFunctionsOneChanged")
|
||||
public void testInlineTwoFunctionsOneChanged() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/inlineTwoFunctionsOneChanged/");
|
||||
@@ -845,6 +881,12 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest {
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("topLevelFunctionWithJvmName")
|
||||
public void testTopLevelFunctionWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/topLevelFunctionWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("topLevelMembersInTwoFiles")
|
||||
public void testTopLevelMembersInTwoFiles() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/topLevelMembersInTwoFiles/");
|
||||
@@ -857,6 +899,12 @@ public class IncrementalJpsTestGenerated extends AbstractIncrementalJpsTest {
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("topLevelPropertyWithJvmName")
|
||||
public void testTopLevelPropertyWithJvmName() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/topLevelPropertyWithJvmName/");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("traitClassObjectConstantChanged")
|
||||
public void testTraitClassObjectConstantChanged() throws Exception {
|
||||
String fileName = KotlinTestUtils.navigationMetadata("jps-plugin/testData/incremental/pureKotlin/traitClassObjectConstantChanged/");
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
package usage
|
||||
|
||||
class Usage {
|
||||
val x = inline.A().f
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/inline/A.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/inline.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/Usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/usage/Usage.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/Usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,6 @@
|
||||
package inline
|
||||
|
||||
class A {
|
||||
inline val f: Int
|
||||
get() = 0
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
package inline
|
||||
|
||||
class A {
|
||||
inline val f: Int
|
||||
get() = 1
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/inline/A.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/inline.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,9 @@
|
||||
package inline
|
||||
|
||||
class A {
|
||||
inline var f: Int
|
||||
get() = 0
|
||||
set(p: Int) {
|
||||
0
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package inline
|
||||
|
||||
class A {
|
||||
inline var f: Int
|
||||
get() = 0
|
||||
set(p: Int) {
|
||||
1
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
package usage
|
||||
|
||||
fun a() {
|
||||
inline.A().f = 1
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
package usage2
|
||||
|
||||
fun b() {
|
||||
inline.A().f
|
||||
}
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/inline/InlineKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/inline.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
package inline
|
||||
|
||||
@JvmName("test") inline fun g() = 0
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
package inline
|
||||
|
||||
@JvmName("test") inline fun g() = 1
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
package usage
|
||||
|
||||
val x = inline.g()
|
||||
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/inline/InlineKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/inline.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,4 @@
|
||||
package inline
|
||||
|
||||
inline val f: Int
|
||||
get() = 0
|
||||
@@ -0,0 +1,4 @@
|
||||
package inline
|
||||
|
||||
inline val f: Int
|
||||
get() = 1
|
||||
@@ -0,0 +1,3 @@
|
||||
package usage
|
||||
|
||||
val x = inline.f
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/inline/InlineKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/inline.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
package inline
|
||||
|
||||
inline val f: Int
|
||||
@JvmName("getG") get() = 0
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
package inline
|
||||
|
||||
inline val f: Int
|
||||
@JvmName("getG") get() = 1
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
package usage
|
||||
|
||||
val x = inline.f
|
||||
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/inline/InlineKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/inline.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,5 @@
|
||||
package inline
|
||||
|
||||
inline var f: Int
|
||||
get() = 0
|
||||
set(p: Int) {0}
|
||||
@@ -0,0 +1,5 @@
|
||||
package inline
|
||||
|
||||
inline var f: Int
|
||||
get() = 0
|
||||
set(p: Int) { 1 }
|
||||
@@ -0,0 +1,5 @@
|
||||
package usage
|
||||
|
||||
fun a() {
|
||||
inline.f = 1
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
package usage2
|
||||
|
||||
fun b() {
|
||||
inline.f
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/inline/FunctionKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/function.kt
|
||||
End of files
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/inline/FunctionKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/function.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,3 @@
|
||||
package inline
|
||||
|
||||
@JvmName("oldName") fun g() = 0
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
package inline
|
||||
|
||||
@JvmName("newName") fun g() = 1
|
||||
@@ -0,0 +1,3 @@
|
||||
package usage
|
||||
|
||||
val x = inline.g()
|
||||
@@ -0,0 +1,20 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/test/PropertyKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/property.kt
|
||||
End of files
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
================ Step #1 =================
|
||||
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/test/PropertyKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/property.kt
|
||||
End of files
|
||||
Marked as dirty by Kotlin:
|
||||
src/usage.kt
|
||||
Exit code: ADDITIONAL_PASS_REQUIRED
|
||||
------------------------------------------
|
||||
Cleaning output files:
|
||||
out/production/module/META-INF/module.kotlin_module
|
||||
out/production/module/usage/UsageKt.class
|
||||
End of files
|
||||
Compiling files:
|
||||
src/usage.kt
|
||||
End of files
|
||||
Exit code: OK
|
||||
------------------------------------------
|
||||
@@ -0,0 +1,4 @@
|
||||
package test
|
||||
|
||||
val g: Int
|
||||
@JvmName("oldName") get() = 0
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
package test
|
||||
|
||||
val g: Int
|
||||
@JvmName("newName") get() = 0
|
||||
@@ -0,0 +1,3 @@
|
||||
package usage
|
||||
|
||||
val x = test.g
|
||||
Reference in New Issue
Block a user