[FIR-TEST] Add new testdata generated after changes in previous commit

This commit is contained in:
Dmitriy Novozhilov
2019-12-11 16:16:22 +03:00
parent e9c02a1cca
commit 2536fa0cd5
4578 changed files with 104067 additions and 1 deletions
@@ -0,0 +1,21 @@
// FILE: f1.kt
// SKIP_TXT
package kotlin
class Unit
// FILE: f2.kt
class C: MutableIterator<Int> {
override fun remove(): Unit {
throw UnsupportedOperationException()
}
override fun next(): Int {
throw UnsupportedOperationException()
}
override fun hasNext(): Boolean {
throw UnsupportedOperationException()
}
}
@@ -0,0 +1,29 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// MODULE: m1
// FILE: a.kt
package p
public class A
public class M1 {
public val a: A = A()
}
// MODULE: m2
// FILE: b.kt
package p
public class A<T>
public fun foo(a: A<Int>) {
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test() {
foo(M1().a)
}
@@ -0,0 +1,29 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// MODULE: m1
// FILE: a.kt
package p
public class A<T>
public class M1 {
public val a: A<Int> = A<Int>()
}
// MODULE: m2
// FILE: b.kt
package p
public class A
public fun foo(a: A) {
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test() {
<!INAPPLICABLE_CANDIDATE!>foo<!>(M1().a)
}
@@ -0,0 +1,32 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// MODULE: m1
// FILE: a.kt
package p
public class A
public class B {
public val a: A = A()
}
// MODULE: m2
// FILE: b.kt
package p
public class A {
val x = 1
}
public fun foo(a: A) {
a.x + 1
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test() {
foo(B().a)
}
@@ -0,0 +1,68 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// MODULE: m1
// FILE: a.kt
package p
public class A {
public class B
public object C
companion object {
public class D {
public object E
}
public class G
}
public inner class F
}
public class M1 {
public val a: A = A()
public val b: A.B = A.B()
public val c: A.C = A.C
public val d: A.Companion.D = A.Companion.D()
public val e: A.Companion.D.E = A.Companion.D.E
public val f: A.F = A().F()
public val g: A.Companion.G = A.Companion.G()
}
// MODULE: m2
// FILE: b.kt
package p
public class A {
public class B
public class C
companion object {
public class D {
public class E
}
}
public class G
public inner class F
}
public fun a(p: A) {}
public fun b(p: A.B) {}
public fun c(p: A.C) {}
public fun d(p: A.Companion.D) {}
public fun e(p: A.Companion.D.E) {}
public fun f(p: A.F) {}
public fun g(p: A.G) {}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test(m1: M1) {
a(m1.a)
b(m1.b)
c(m1.c)
d(m1.d)
e(m1.e)
f(m1.f)
<!INAPPLICABLE_CANDIDATE!>g<!>(m1.g)
}
@@ -0,0 +1,30 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// MODULE: m1
// FILE: a.kt
package p
public interface A
public class B : A
public class M1 {
public val b: B = B()
}
// MODULE: m2
// FILE: b.kt
package p
public interface A
public fun foo(a: A) {
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test() {
foo(M1().b)
}
@@ -0,0 +1,30 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// MODULE: m1
// FILE: a.kt
package p
public class A<X, Y>
public class M1 {
public val a: A<Int> = A<Int, Int>()
}
// MODULE: m2
// FILE: b.kt
package p
public class A<X, Y>
public fun foo(a: A<Int>) {
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test() {
foo(M1().a)
<!INAPPLICABLE_CANDIDATE!>foo<!>(1) // error type on the declaration site
}
@@ -0,0 +1,42 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// MODULE: m1
// FILE: a.kt
package p
public interface A<T>
public interface C
public interface D<T>
public class B : A<Int>, C, D<Int>
public class M1 {
public val b: B = B()
}
// MODULE: m2
// FILE: b.kt
package p
public interface A
public interface C<T>
public interface D<T>
public fun a(a: A) {
}
public fun c(c: C<Int>) {
}
public fun d(d: D<Int>) {
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test() {
<!INAPPLICABLE_CANDIDATE!>a<!>(M1().b) // Type arguments do not match
c(M1().b) // Type arguments do not match
d(M1().b) // Type arguments do match
}
@@ -0,0 +1,23 @@
// MODULE: m1
// FILE: a.kt
package p
public class A
public class B {
public val a: A = A()
}
// MODULE: m2(m1)
// FILE: b.kt
package p
class A {
fun foo() {}
}
fun test() {
val a: A = B().a
a.foo()
}
@@ -0,0 +1,23 @@
// MODULE: m1
// FILE: a.kt
package p
public class A
public class B {
public val a: A = A()
}
// MODULE: m2(m1)
// FILE: b.kt
package p
class A {
fun foo() {}
}
fun test() {
val a = B().a
a.foo()
}
@@ -0,0 +1,38 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE
// MODULE: m1
// FILE: a.kt
package p
public class A {
public fun m1() {}
}
public class M1 {
public val a: A = A()
}
// MODULE: m2
// FILE: b.kt
package p
public class A {
public fun m2() {}
}
public class M2 {
public val a: A = A()
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test(a: A) {
a.m1()
M1().a.m1()
M2().a.<!UNRESOLVED_REFERENCE!>m2<!>()
}
@@ -0,0 +1,22 @@
// !WITH_NEW_INFERENCE
// !DIAGNOSTICS: -UNUSED_VARIABLE
// MODULE: m1
// FILE: a.kt
package p
public class A
public class B {
public val a: A = A()
}
// MODULE: m2(m1)
// FILE: b.kt
import p.*
class A
fun test() {
val a: A = B().a
}
@@ -0,0 +1,29 @@
// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER
// MODULE: m1
// FILE: a.kt
package p
public class A<T>
public class M1 {
public val a: A<Int> = A()
}
// MODULE: m2
// FILE: b.kt
package p
public class A<T>
public fun foo(a: A<Int>) {
}
// MODULE: m3(m1, m2)
// FILE: b.kt
import p.*
fun test() {
foo(M1().a)
}