Introduce FIR_IDENTICAL for FIR vs old frontend tests #KT-36879 Fixed

This commit is contained in:
Mikhail Glukhikh
2020-03-04 17:54:33 +03:00
parent 186e0b0cba
commit 8884cbe415
2268 changed files with 1175 additions and 19754 deletions
@@ -1,37 +0,0 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
open class A {
companion object {
fun bar() = 1
}
init {
val a: Int = foo()
val b: Int = bar()
}
}
open class B: A() {
companion object {
fun bar() = ""
}
init {
val a: String = foo()
val b: String = bar()
}
}
fun A.Companion.foo() = 1
fun B.Companion.foo() = ""
class C: A() {
init {
val a: Int = foo()
val b: Int = bar()
}
}
class D: B() {
init {
val a: String = foo()
val b: String = bar()
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_VARIABLE
open class A {
companion object {
@@ -1,22 +0,0 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
open class A {
companion object {
fun foo() = 1
fun bar(a: String) = a
}
}
open class B: A() {
companion object {
fun foo() = ""
fun bar(a: Int) = a
}
}
class C: B() {
init {
val a: String = foo()
val b: Int = bar(1)
val c: String = bar("")
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_VARIABLE
open class A {
companion object {
@@ -1,43 +0,0 @@
// FILE: I.java
public interface I {
int a = 1;
}
// FILE: C.java
public class C implements I {
static int b = 1;
static void bar() {}
}
// FILE: K.kt
open class K : C()
// FILE: D.java
public class D extends K {
static int c = 1;
static void baz() {}
}
// FILE: test.kt
fun test() {
I.a
C.a
C.b
C.bar()
K.<!UNRESOLVED_REFERENCE!>a<!>
K.<!UNRESOLVED_REFERENCE!>b<!>
K.<!UNRESOLVED_REFERENCE!>bar<!>()
D.a
D.b
D.c
D.bar()
D.baz()
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// FILE: I.java
public interface I {
@@ -1,37 +0,0 @@
// FILE: K.kt
open class K {
companion object {
fun foo() {}
}
}
// FILE: D.java
class D extends K {
static int b = 1;
static void bar() {}
}
// FILE: K.kt
class K2 {
companion object {
fun baz() {}
}
}
// FILE: test.kt
fun test() {
K.foo()
D.b
D.bar()
D.<!UNRESOLVED_REFERENCE!>foo<!>()
K2.<!UNRESOLVED_REFERENCE!>b<!>
K2.<!UNRESOLVED_REFERENCE!>bar<!>()
K2.<!UNRESOLVED_REFERENCE!>foo<!>()
K2.baz()
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// FILE: K.kt
open class K {
@@ -1,55 +0,0 @@
// FILE: I.java
public interface I {
int a = 1;
}
// FILE: C.java
public class C implements I {
static int b = 1;
static void bar() {}
}
// FILE: K.kt
open class K : C(), I
// FILE: D.java
public class D extends K implements I {
static int c = 1;
static void baz() {}
}
// FILE: E.java
public class E extends D implements I {
static int a = 1;
}
// FILE: test.kt
fun test() {
I.a
C.a
C.b
C.bar()
K.<!UNRESOLVED_REFERENCE!>a<!>
K.<!UNRESOLVED_REFERENCE!>b<!>
K.<!UNRESOLVED_REFERENCE!>bar<!>()
D.a
D.b
D.c
D.bar()
D.baz()
E.a
E.b
E.c
E.bar()
E.baz()
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// FILE: I.java
public interface I {
@@ -1,20 +0,0 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
static void foo() {}
static int bar() { return 1; }
}
// FILE: B.java
public class B extends A {
static void foo() {}
static long bar() { return 1; }
}
// FILE: 1.kt
class E: B() {
init {
foo()
val a: Long = bar()
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
@@ -1,50 +0,0 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
static void foo() {}
static int bar() {return 1;}
}
// FILE: B.java
public class B extends A {}
// FILE: C.java
public class C {
static void bar() {}
}
// FILE: 1.kt
import A.foo
import B.bar
class E: A() {
init {
foo()
bar()
}
}
class F: B() {
init {
foo()
bar()
}
}
// FILE: 2.kt
import C.bar
class Z: A() {
init {
val a: Int = bar()
}
}
// FILE: 3.kt
import C.*
class Q: A() {
init {
val a: Int = bar()
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
@@ -1,59 +0,0 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
static byte foo = 1;
static int bar = 2;
}
// FILE: B.java
public class B extends A {}
// FILE: C.java
public class C {
static long bar = 3;
}
// FILE: 1.kt
import A.foo
import B.bar
class E: A() {
init {
foo
bar
}
}
class F: B() {
init {
foo
bar
}
}
// FILE: 2.kt
import C.bar
class Z: A() {
init {
val a: Int = bar
}
}
// FILE: 3.kt
import C.*
class Q: A() {
init {
val a: Int = bar
}
}
// FILE: 4.kt
val bar = ""
class W: A() {
init {
val a: Int = bar
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
@@ -1,36 +0,0 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
static void foo() {}
}
// FILE: 1.kt
open class B : A() {
companion object {
fun foo() = 1
}
init {
val a: Int = foo()
}
}
class C: B() {
init {
val a: Int = foo()
}
}
// FILE: X.java
public class X extends B {
static double foo() {
return 1.0;
}
}
// FILE: 2.kt
class Y: X() {
init {
val a: Double = foo()
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_VARIABLE
// FILE: A.java
public class A {
@@ -1,51 +0,0 @@
// FILE: A.java
public class A {
public static void foo() {}
}
// FILE: B.java
public class B extends A {
public static void bar() {}
}
// FILE: 1.kt
open class X: A() {
init {
foo()
A.foo()
}
}
open class Y: B() {
init {
foo()
A.foo()
B.foo()
bar()
B.bar()
}
}
class XN: X() {
init {
foo()
A.foo()
X.<!UNRESOLVED_REFERENCE!>foo<!>()
XN.<!UNRESOLVED_REFERENCE!>foo<!>()
}
}
class YN: Y() {
init {
foo()
A.foo()
Y.<!UNRESOLVED_REFERENCE!>foo<!>()
YN.<!UNRESOLVED_REFERENCE!>foo<!>()
bar()
B.bar()
Y.<!UNRESOLVED_REFERENCE!>bar<!>()
YN.<!UNRESOLVED_REFERENCE!>bar<!>()
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// FILE: A.java
public class A {
public static void foo() {}
@@ -1,27 +0,0 @@
// FILE: A.java
public class A {
public static void foo() {}
}
// FILE: 1.kt
open class B: A()
// FILE: C.java
public class C extends B {
public static void bar() {}
}
// FILE: 2.kt
class D: C() {
init {
foo()
A.foo()
B.<!UNRESOLVED_REFERENCE!>foo<!>()
C.foo()
D.<!UNRESOLVED_REFERENCE!>foo<!>()
bar()
C.bar()
D.<!UNRESOLVED_REFERENCE!>bar<!>()
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// FILE: A.java
public class A {
public static void foo() {}