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
This commit is contained in:
Alexander Udalov
2017-09-13 16:16:32 +03:00
parent 7d80afbe63
commit 234148518e
14 changed files with 0 additions and 436 deletions
@@ -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.<!LATEINIT_INTRINSIC_CALL_ON_NON_LITERAL!>isInitialized<!>
}
fun onNonLateinit() {
this::nonLateInit.<!LATEINIT_INTRINSIC_CALL_ON_NON_LATEINIT!>isInitialized<!>
}
inline fun inlineFun() {
this::x.<!LATEINIT_INTRINSIC_CALL_IN_INLINE_FUNCTION!>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.<!LATEINIT_INTRINSIC_CALL_ON_NON_ACCESSIBLE_PROPERTY!>isInitialized<!>
}
fun onNonLateinit() {
Foo()::nonLateInit.<!LATEINIT_INTRINSIC_CALL_ON_NON_LATEINIT!>isInitialized<!>
}
object Unrelated {
fun onNonAccessible() {
Foo()::x.<!LATEINIT_INTRINSIC_CALL_ON_NON_ACCESSIBLE_PROPERTY!>isInitialized<!>
}
}
class FooImpl : Foo() {
fun onNonAccessible() {
this::x.<!LATEINIT_INTRINSIC_CALL_ON_NON_ACCESSIBLE_PROPERTY!>isInitialized<!>
}
}
// FILE: other.kt
class OtherFooImpl : Foo() {
fun onNonAccessible() {
this::x.<!LATEINIT_INTRINSIC_CALL_ON_NON_ACCESSIBLE_PROPERTY!>isInitialized<!>
}
}
@@ -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
}