From 234148518ed6491e4cb2c951727cd05be0f96426 Mon Sep 17 00:00:00 2001 From: Alexander Udalov Date: Wed, 13 Sep 2017 16:16:32 +0300 Subject: [PATCH] Temporarily remove isInitialized and tests, but keep the implementation This is needed because we want the compiler code to stay as much the same in master and in 1.2 as possible --- .../innerSubclass.kt | 35 -------- .../sideEffects.kt | 21 ----- .../simpleIsInitialized.kt | 36 -------- .../topLevelProperty.kt | 12 --- .../testsWithStdLib/lateinit/isInitialized.kt | 88 ------------------- .../lateinit/isInitialized.txt | 78 ---------------- .../ir/IrBlackBoxCodegenTestGenerated.java | 33 ------- .../DiagnosticsTestWithStdLibGenerated.java | 15 ---- ...ticsTestWithStdLibUsingJavacGenerated.java | 15 ---- .../codegen/BlackBoxCodegenTestGenerated.java | 33 ------- .../LightAnalysisModeTestGenerated.java | 33 ------- .../semantics/JsCodegenBoxTestGenerated.java | 9 -- .../stdlib/src/kotlin/internal/Annotations.kt | 9 -- libraries/stdlib/src/kotlin/util/Lateinit.kt | 19 ---- 14 files changed, 436 deletions(-) delete mode 100644 compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt delete mode 100644 compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt delete mode 100644 compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/simpleIsInitialized.kt delete mode 100644 compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt delete mode 100644 compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.kt delete mode 100644 compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.txt delete mode 100644 libraries/stdlib/src/kotlin/util/Lateinit.kt diff --git a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt b/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt deleted file mode 100644 index 78947e1a378..00000000000 --- a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt +++ /dev/null @@ -1,35 +0,0 @@ -// TARGET_BACKEND: JVM -// LANGUAGE_VERSION: 1.2 -// WITH_RUNTIME - -open class Foo { - lateinit var bar: String - - private lateinit var baz: String - - fun test(): String { - val isBarInitialized: () -> Boolean = { this::bar.isInitialized } - if (isBarInitialized()) return "Fail 1" - bar = "bar" - if (!isBarInitialized()) return "Fail 2" - baz = "baz" - return InnerSubclass().testInner() - } - - inner class InnerSubclass : Foo() { - fun testInner(): String { - // This is access to InnerSubclass.bar which is inherited from Foo.bar - if (this::bar.isInitialized) return "Fail 3" - bar = "OK" - if (!this::bar.isInitialized) return "Fail 4" - - // This is access to Foo.bar declared lexically above - if (!this@Foo::bar.isInitialized) return "Fail 5" - return "OK" - } - } -} - -fun box(): String { - return Foo().test() -} diff --git a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt b/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt deleted file mode 100644 index e6d1e9f8a4c..00000000000 --- a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt +++ /dev/null @@ -1,21 +0,0 @@ -// TARGET_BACKEND: JVM -// LANGUAGE_VERSION: 1.2 -// WITH_RUNTIME - -class Foo { - lateinit var bar: String - - fun test(): String { - var state = 0 - if (run { state++; this }::bar.isInitialized) return "Fail 1" - - bar = "A" - if (!run { state++; this }::bar.isInitialized) return "Fail 3" - - return if (state == 2) "OK" else "Fail: state=$state" - } -} - -fun box(): String { - return Foo().test() -} diff --git a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/simpleIsInitialized.kt b/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/simpleIsInitialized.kt deleted file mode 100644 index a91306584e4..00000000000 --- a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/simpleIsInitialized.kt +++ /dev/null @@ -1,36 +0,0 @@ -// TARGET_BACKEND: JVM -// LANGUAGE_VERSION: 1.2 -// WITH_RUNTIME - -// FILE: J.java - -public class J { - public static void deinitialize(Foo foo) { - foo.bar = null; - } -} - -// FILE: main.kt - -class Foo { - lateinit var bar: String - - fun test(): String { - if (this::bar.isInitialized) return "Fail 1" - J.deinitialize(this) - if (this::bar.isInitialized) return "Fail 2" - - bar = "A" - if (!this::bar.isInitialized) return "Fail 3" - J.deinitialize(this) - if (this::bar.isInitialized) return "Fail 4" - - bar = "OK" - if (!this::bar.isInitialized) return "Fail 5" - return bar - } -} - -fun box(): String { - return Foo().test() -} diff --git a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt b/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt deleted file mode 100644 index 4be6e0b48bf..00000000000 --- a/compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt +++ /dev/null @@ -1,12 +0,0 @@ -// TARGET_BACKEND: JVM -// LANGUAGE_VERSION: 1.2 -// WITH_RUNTIME - -lateinit var bar: String - -fun box(): String { - if (::bar.isInitialized) return "Fail 1" - bar = "OK" - if (!::bar.isInitialized) return "Fail 2" - return bar -} diff --git a/compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.kt b/compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.kt deleted file mode 100644 index 9264c2b8174..00000000000 --- a/compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.kt +++ /dev/null @@ -1,88 +0,0 @@ -// !DIAGNOSTICS: -UNUSED_VARIABLE -NOTHING_TO_INLINE -// !API_VERSION: 1.2 -// FILE: test.kt - -interface Base { - var x: String -} - -open class Foo : Base { - override lateinit var x: String - private lateinit var y: String - - var nonLateInit: Int = 1 - - fun ok() { - val b: Boolean = this::x.isInitialized - - val otherInstance = Foo() - otherInstance::x.isInitialized - - (this::x).isInitialized - (@Suppress("ALL") (this::x)).isInitialized - - object { - fun local() { - class Local { - val xx = this@Foo::x.isInitialized - val yy = this@Foo::y.isInitialized - } - } - } - } - - fun onLiteral() { - val p = this::x - p.isInitialized - } - - fun onNonLateinit() { - this::nonLateInit.isInitialized - } - - inline fun inlineFun() { - this::x.isInitialized - - object { - val z = this@Foo::x.isInitialized - } - } - - inner class InnerSubclass : Foo() { - fun innerOk() { - // This is access to Foo.x declared lexically above - this@Foo::x.isInitialized - - // This is access to InnerSubclass.x which is inherited from Foo.x - this::x.isInitialized - } - } -} - -fun onNonAccessible() { - Foo()::x.isInitialized -} - -fun onNonLateinit() { - Foo()::nonLateInit.isInitialized -} - -object Unrelated { - fun onNonAccessible() { - Foo()::x.isInitialized - } -} - -class FooImpl : Foo() { - fun onNonAccessible() { - this::x.isInitialized - } -} - -// FILE: other.kt - -class OtherFooImpl : Foo() { - fun onNonAccessible() { - this::x.isInitialized - } -} diff --git a/compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.txt b/compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.txt deleted file mode 100644 index 5dac30967cc..00000000000 --- a/compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.txt +++ /dev/null @@ -1,78 +0,0 @@ -package - -public fun onNonAccessible(): kotlin.Unit -public fun onNonLateinit(): kotlin.Unit - -public interface Base { - public abstract var x: kotlin.String - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String -} - -public open class Foo : Base { - public constructor Foo() - public final var nonLateInit: kotlin.Int - public open override /*1*/ lateinit var x: kotlin.String - private final lateinit var y: kotlin.String - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public final inline fun inlineFun(): kotlin.Unit - public final fun ok(): kotlin.Unit - public final fun onLiteral(): kotlin.Unit - public final fun onNonLateinit(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String - - public final inner class InnerSubclass : Foo { - public constructor InnerSubclass() - public final override /*1*/ /*fake_override*/ var nonLateInit: kotlin.Int - public open override /*1*/ lateinit /*fake_override*/ var x: kotlin.String - invisible_fake final override /*1*/ lateinit /*fake_override*/ var y: kotlin.String - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public final inline override /*1*/ /*fake_override*/ fun inlineFun(): kotlin.Unit - public final fun innerOk(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun ok(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun onLiteral(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun onNonLateinit(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String - } -} - -public final class FooImpl : Foo { - public constructor FooImpl() - public final override /*1*/ /*fake_override*/ var nonLateInit: kotlin.Int - public open override /*1*/ lateinit /*fake_override*/ var x: kotlin.String - invisible_fake final override /*1*/ lateinit /*fake_override*/ var y: kotlin.String - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public final inline override /*1*/ /*fake_override*/ fun inlineFun(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun ok(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun onLiteral(): kotlin.Unit - public final fun onNonAccessible(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun onNonLateinit(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String -} - -public final class OtherFooImpl : Foo { - public constructor OtherFooImpl() - public final override /*1*/ /*fake_override*/ var nonLateInit: kotlin.Int - public open override /*1*/ lateinit /*fake_override*/ var x: kotlin.String - invisible_fake final override /*1*/ lateinit /*fake_override*/ var y: kotlin.String - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public final inline override /*1*/ /*fake_override*/ fun inlineFun(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun ok(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun onLiteral(): kotlin.Unit - public final fun onNonAccessible(): kotlin.Unit - public final override /*1*/ /*fake_override*/ fun onNonLateinit(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String -} - -public object Unrelated { - private constructor Unrelated() - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public final fun onNonAccessible(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String -} diff --git a/compiler/tests-ir-jvm/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-ir-jvm/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java index 0f7c525884a..a0916dfc998 100644 --- a/compiler/tests-ir-jvm/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-ir-jvm/tests/org/jetbrains/kotlin/codegen/ir/IrBlackBoxCodegenTestGenerated.java @@ -13582,39 +13582,6 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes doTest(fileName); } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize") - @TestDataPath("$PROJECT_ROOT") - @RunWith(JUnit3RunnerWithInners.class) - public static class IsInitializedAndDeinitialize extends AbstractIrBlackBoxCodegenTest { - public void testAllFilesPresentInIsInitializedAndDeinitialize() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JVM, true); - } - - @TestMetadata("innerSubclass.kt") - public void testInnerSubclass() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt"); - doTest(fileName); - } - - @TestMetadata("sideEffects.kt") - public void testSideEffects() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt"); - doTest(fileName); - } - - @TestMetadata("simpleIsInitialized.kt") - public void testSimpleIsInitialized() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/simpleIsInitialized.kt"); - doTest(fileName); - } - - @TestMetadata("topLevelProperty.kt") - public void testTopLevelProperty() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt"); - doTest(fileName); - } - } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/local") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java index b1481a4af0e..42de2143933 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/DiagnosticsTestWithStdLibGenerated.java @@ -1356,21 +1356,6 @@ public class DiagnosticsTestWithStdLibGenerated extends AbstractDiagnosticsTestW } } - @TestMetadata("compiler/testData/diagnostics/testsWithStdLib/lateinit") - @TestDataPath("$PROJECT_ROOT") - @RunWith(JUnit3RunnerWithInners.class) - public static class Lateinit extends AbstractDiagnosticsTestWithStdLib { - public void testAllFilesPresentInLateinit() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/testsWithStdLib/lateinit"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.ANY, true); - } - - @TestMetadata("isInitialized.kt") - public void testIsInitialized() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.kt"); - doTest(fileName); - } - } - @TestMetadata("compiler/testData/diagnostics/testsWithStdLib/native") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) diff --git a/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java b/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java index fe0be12ead3..e8eb40d96a3 100644 --- a/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/checkers/javac/DiagnosticsTestWithStdLibUsingJavacGenerated.java @@ -1356,21 +1356,6 @@ public class DiagnosticsTestWithStdLibUsingJavacGenerated extends AbstractDiagno } } - @TestMetadata("compiler/testData/diagnostics/testsWithStdLib/lateinit") - @TestDataPath("$PROJECT_ROOT") - @RunWith(JUnit3RunnerWithInners.class) - public static class Lateinit extends AbstractDiagnosticsTestWithStdLibUsingJavac { - public void testAllFilesPresentInLateinit() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/diagnostics/testsWithStdLib/lateinit"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.ANY, true); - } - - @TestMetadata("isInitialized.kt") - public void testIsInitialized() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/diagnostics/testsWithStdLib/lateinit/isInitialized.kt"); - doTest(fileName); - } - } - @TestMetadata("compiler/testData/diagnostics/testsWithStdLib/native") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java index 6d3e8bae856..74b9e236cc0 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/BlackBoxCodegenTestGenerated.java @@ -13582,39 +13582,6 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { doTest(fileName); } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize") - @TestDataPath("$PROJECT_ROOT") - @RunWith(JUnit3RunnerWithInners.class) - public static class IsInitializedAndDeinitialize extends AbstractBlackBoxCodegenTest { - public void testAllFilesPresentInIsInitializedAndDeinitialize() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JVM, true); - } - - @TestMetadata("innerSubclass.kt") - public void testInnerSubclass() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt"); - doTest(fileName); - } - - @TestMetadata("sideEffects.kt") - public void testSideEffects() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt"); - doTest(fileName); - } - - @TestMetadata("simpleIsInitialized.kt") - public void testSimpleIsInitialized() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/simpleIsInitialized.kt"); - doTest(fileName); - } - - @TestMetadata("topLevelProperty.kt") - public void testTopLevelProperty() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt"); - doTest(fileName); - } - } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/local") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) diff --git a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 50c1fab87e0..4c6f6d88d16 100644 --- a/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -13582,39 +13582,6 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes doTest(fileName); } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize") - @TestDataPath("$PROJECT_ROOT") - @RunWith(JUnit3RunnerWithInners.class) - public static class IsInitializedAndDeinitialize extends AbstractLightAnalysisModeTest { - public void testAllFilesPresentInIsInitializedAndDeinitialize() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JVM, true); - } - - @TestMetadata("innerSubclass.kt") - public void testInnerSubclass() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/innerSubclass.kt"); - doTest(fileName); - } - - @TestMetadata("sideEffects.kt") - public void testSideEffects() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/sideEffects.kt"); - doTest(fileName); - } - - @TestMetadata("simpleIsInitialized.kt") - public void testSimpleIsInitialized() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/simpleIsInitialized.kt"); - doTest(fileName); - } - - @TestMetadata("topLevelProperty.kt") - public void testTopLevelProperty() throws Exception { - String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize/topLevelProperty.kt"); - doTest(fileName); - } - } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/local") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) diff --git a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java index a016270c9a9..0cc7030b0c7 100644 --- a/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java +++ b/js/js.tests/test/org/jetbrains/kotlin/js/test/semantics/JsCodegenBoxTestGenerated.java @@ -15058,15 +15058,6 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest { doTest(fileName); } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize") - @TestDataPath("$PROJECT_ROOT") - @RunWith(JUnit3RunnerWithInners.class) - public static class IsInitializedAndDeinitialize extends AbstractJsCodegenBoxTest { - public void testAllFilesPresentInIsInitializedAndDeinitialize() throws Exception { - KotlinTestUtils.assertAllTestsPresentByMetadata(this.getClass(), new File("compiler/testData/codegen/box/properties/lateinit/isInitializedAndDeinitialize"), Pattern.compile("^(.+)\\.kt$"), TargetBackend.JS, true); - } - } - @TestMetadata("compiler/testData/codegen/box/properties/lateinit/local") @TestDataPath("$PROJECT_ROOT") @RunWith(JUnit3RunnerWithInners.class) diff --git a/libraries/stdlib/src/kotlin/internal/Annotations.kt b/libraries/stdlib/src/kotlin/internal/Annotations.kt index 8b7071bedb3..a6b986bfb75 100644 --- a/libraries/stdlib/src/kotlin/internal/Annotations.kt +++ b/libraries/stdlib/src/kotlin/internal/Annotations.kt @@ -65,12 +65,3 @@ internal annotation class InlineOnly @Target(AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY) @Retention(AnnotationRetention.BINARY) internal annotation class DynamicExtension - -/** - * The value of this parameter should be a property reference expression (`this::foo`), referencing a `lateinit` property, - * the backing field of which is accessible at the point where the corresponding argument is passed. - */ -@Target(AnnotationTarget.VALUE_PARAMETER) -@Retention(AnnotationRetention.BINARY) -@SinceKotlin("1.2") -internal annotation class AccessibleLateinitPropertyLiteral diff --git a/libraries/stdlib/src/kotlin/util/Lateinit.kt b/libraries/stdlib/src/kotlin/util/Lateinit.kt deleted file mode 100644 index a7f9602b3a6..00000000000 --- a/libraries/stdlib/src/kotlin/util/Lateinit.kt +++ /dev/null @@ -1,19 +0,0 @@ -@file:kotlin.jvm.JvmName("LateinitKt") -@file:kotlin.jvm.JvmVersion -@file:Suppress("unused") - -package kotlin - -import kotlin.internal.InlineOnly -import kotlin.internal.AccessibleLateinitPropertyLiteral -import kotlin.reflect.KProperty0 - -/** - * Returns `true` if this lateinit property has been assigned a value, and `false` otherwise. - * - * Cannot be used in an inline function, to avoid binary compatibility issues. - */ -@SinceKotlin("1.2") -@InlineOnly -inline val @receiver:AccessibleLateinitPropertyLiteral KProperty0<*>.isInitialized: Boolean - get() = throw NotImplementedError("Implementation is intrinsic")