[FIR] Fix false positive TYPE_VARIANCE_CONFLICT in nested class ^KT-49078 Fixed

This commit is contained in:
Ivan Kochurkin
2021-10-04 18:31:13 +03:00
committed by TeamCityServer
parent 6c7c1a7a0d
commit cc4dac5bec
8 changed files with 74 additions and 1 deletions
@@ -0,0 +1,7 @@
// FIR_IDENTICAL
// KT-49078
class CidrMemoryData<T> {
interface Data<out T>
abstract class AbstractData<out T, E : Data<T>>
}
@@ -0,0 +1,21 @@
package
public final class CidrMemoryData</*0*/ T> {
public constructor CidrMemoryData</*0*/ 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
public abstract class AbstractData</*0*/ out T, /*1*/ E : CidrMemoryData.Data<T>> {
public constructor AbstractData</*0*/ out T, /*1*/ E : CidrMemoryData.Data<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
}
public interface Data</*0*/ out 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
}
}
@@ -0,0 +1,21 @@
package
public final class CidrMemoryData</*0*/ T> {
public constructor CidrMemoryData</*0*/ 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
public abstract class AbstractData</*0*/ out T, /*1*/ E : CidrMemoryData.Data<T>> {
public constructor AbstractData</*0*/ out T, /*1*/ E : CidrMemoryData.Data<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
}
public interface Data</*0*/ out 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
}
}