Introduce FIR_IDENTICAL for FIR vs old frontend tests #KT-36879 Fixed
This commit is contained in:
@@ -1,24 +0,0 @@
|
||||
// FILE: test.kt
|
||||
|
||||
public interface Test {
|
||||
fun test(): String {
|
||||
return "123";
|
||||
}
|
||||
}
|
||||
|
||||
interface KTrait : Test {
|
||||
fun ktest() {
|
||||
super.test()
|
||||
|
||||
test()
|
||||
}
|
||||
}
|
||||
|
||||
class A : KTrait {
|
||||
fun b() {
|
||||
super.test()
|
||||
|
||||
test()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// FILE: test.kt
|
||||
|
||||
public interface Test {
|
||||
|
||||
-51
@@ -1,51 +0,0 @@
|
||||
// Check that it works with inherited members
|
||||
//
|
||||
// DeeperBase DeeperInterface
|
||||
// | |
|
||||
// DeepBase DeepInterface
|
||||
// \ /
|
||||
// \/
|
||||
// DeepDerived
|
||||
//
|
||||
|
||||
open class DeeperBase {
|
||||
open fun deeperBaseFun() {}
|
||||
|
||||
open val deeperBaseProp: Int
|
||||
get() = 333
|
||||
}
|
||||
|
||||
open class DeepBase : DeeperBase() {
|
||||
}
|
||||
|
||||
interface DeeperInterface {
|
||||
fun deeperInterfaceFun() {}
|
||||
}
|
||||
|
||||
interface DeepInterface : DeeperInterface {
|
||||
fun deepInterfaceFun() {}
|
||||
}
|
||||
|
||||
class DeepDerived : DeepBase(), DeepInterface {
|
||||
override fun deeperBaseFun() {}
|
||||
|
||||
override val deeperBaseProp: Int
|
||||
get() = 444
|
||||
|
||||
override fun deeperInterfaceFun() {}
|
||||
override fun deepInterfaceFun() {}
|
||||
|
||||
fun callsSuperDeeperBaseFun() {
|
||||
super.deeperBaseFun()
|
||||
}
|
||||
|
||||
fun getsSuperDeeperBaseProp(): Int =
|
||||
super.deeperBaseProp
|
||||
|
||||
fun callsSuperInterfaceFuns() {
|
||||
super.deeperInterfaceFun()
|
||||
super.deepInterfaceFun()
|
||||
super<DeepInterface>.deeperInterfaceFun()
|
||||
super<DeepInterface>.deepInterfaceFun()
|
||||
}
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// Check that it works with inherited members
|
||||
//
|
||||
// DeeperBase DeeperInterface
|
||||
|
||||
-22
@@ -1,22 +0,0 @@
|
||||
open class GenericBaseClass<T> {
|
||||
open fun foo(x: T): T = x
|
||||
}
|
||||
|
||||
interface GenericBaseInterface<T> {
|
||||
fun bar(x: T): T = x
|
||||
}
|
||||
|
||||
class GenericDerivedClass<T> : GenericBaseClass<T>(), GenericBaseInterface<T> {
|
||||
override fun foo(x: T): T = super.foo(x)
|
||||
override fun bar(x: T): T = super.bar(x)
|
||||
}
|
||||
|
||||
class SpecializedDerivedClass : GenericBaseClass<Int>(), GenericBaseInterface<String> {
|
||||
override fun foo(x: Int): Int = super.foo(x)
|
||||
override fun bar(x: String): String = super.bar(x)
|
||||
}
|
||||
|
||||
class MixedDerivedClass<T> : GenericBaseClass<Int>(), GenericBaseInterface<T> {
|
||||
override fun foo(x: Int): Int = super.foo(x)
|
||||
override fun bar(x: T): T = super.bar(x)
|
||||
}
|
||||
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
open class GenericBaseClass<T> {
|
||||
open fun foo(x: T): T = x
|
||||
}
|
||||
|
||||
-8
@@ -1,8 +0,0 @@
|
||||
interface IWithToString {
|
||||
override fun toString(): String
|
||||
}
|
||||
|
||||
class A : IWithToString {
|
||||
// Should be Any#toString(), even though IWithToString defines an abstract toString.
|
||||
override fun toString(): String = super.toString()
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
interface IWithToString {
|
||||
override fun toString(): String
|
||||
}
|
||||
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
interface IFoo
|
||||
|
||||
interface IBar
|
||||
|
||||
class A : IFoo, IBar {
|
||||
// Unqualified 'super' should be resolved to 'Any'.
|
||||
override fun equals(other: Any?): Boolean = super.equals(other)
|
||||
override fun hashCode(): Int = super.hashCode()
|
||||
override fun toString(): String = super.toString()
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
interface IFoo
|
||||
|
||||
interface IBar
|
||||
|
||||
Reference in New Issue
Block a user