[FE] Consider derived class tag on caching substitution scopes
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
// FIR_IDENTICAL
|
||||
|
||||
// MODULE: lib
|
||||
|
||||
// FILE: lib.kt
|
||||
package lib
|
||||
|
||||
abstract class Base<in T>
|
||||
|
||||
|
||||
// MODULE: test(lib)
|
||||
|
||||
// FILE: foo.kt
|
||||
package test
|
||||
|
||||
import lib.Base
|
||||
|
||||
class Foo {
|
||||
private inner class FooImpl : Base<Any?>()
|
||||
}
|
||||
|
||||
// FILE: bar.kt
|
||||
package test
|
||||
|
||||
import lib.Base
|
||||
|
||||
class Bar {
|
||||
private inner class BarImpl : Base<Any?>()
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
// -- Module: <lib> --
|
||||
package
|
||||
|
||||
package lib {
|
||||
|
||||
public abstract class Base</*0*/ in T> {
|
||||
public constructor Base</*0*/ in T>()
|
||||
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
|
||||
}
|
||||
}
|
||||
|
||||
// -- Module: <test> --
|
||||
package
|
||||
|
||||
package test {
|
||||
|
||||
public final class Bar {
|
||||
public constructor Bar()
|
||||
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
|
||||
|
||||
private final inner class BarImpl : lib.Base<kotlin.Any?> {
|
||||
public constructor BarImpl()
|
||||
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 final class Foo {
|
||||
public constructor Foo()
|
||||
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
|
||||
|
||||
private final inner class FooImpl : lib.Base<kotlin.Any?> {
|
||||
public constructor FooImpl()
|
||||
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
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user