KT-6751 References to type arguments of a type argument not resolved when wrong number of them
#KT-6751 Fixed
This commit is contained in:
+3
-3
@@ -12,7 +12,7 @@ package p {
|
||||
|
||||
public final class M1 {
|
||||
public constructor M1()
|
||||
public final val a: [ERROR : A<Int>]
|
||||
public final val a: [ERROR : A]<kotlin.Int>
|
||||
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
|
||||
@@ -24,7 +24,7 @@ package p {
|
||||
package
|
||||
|
||||
package p {
|
||||
public fun foo(/*0*/ a: [ERROR : A<Int>]): kotlin.Unit
|
||||
public fun foo(/*0*/ a: [ERROR : A]<kotlin.Int>): kotlin.Unit
|
||||
|
||||
public final class A</*0*/ X, /*1*/ Y> {
|
||||
public constructor A</*0*/ X, /*1*/ Y>()
|
||||
@@ -41,7 +41,7 @@ package
|
||||
internal fun test(): kotlin.Unit
|
||||
|
||||
package p {
|
||||
public fun foo(/*0*/ a: [ERROR : A<Int>]): kotlin.Unit
|
||||
public fun foo(/*0*/ a: [ERROR : A]<kotlin.Int>): kotlin.Unit
|
||||
|
||||
public final class A</*0*/ X, /*1*/ Y> {
|
||||
// -- Module: <m1> --
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package
|
||||
|
||||
internal val b: [ERROR : B<*>]
|
||||
internal val b: [ERROR : B]<out [ERROR : *]>
|
||||
|
||||
internal final class B {
|
||||
public constructor B()
|
||||
|
||||
@@ -48,7 +48,7 @@ internal trait Test</*0*/ in I, /*1*/ out O, /*2*/ P> {
|
||||
internal abstract fun neOk32(/*0*/ i: [ERROR : Inv]): kotlin.Unit
|
||||
internal abstract fun neOk33(/*0*/ i: Inv<[ERROR : No type element]>): kotlin.Unit
|
||||
internal abstract fun neOk34(/*0*/ i: Inv<[ERROR : C]>): kotlin.Unit
|
||||
internal abstract fun neOk35(/*0*/ i: [ERROR : Inv<P, P>]): kotlin.Unit
|
||||
internal abstract fun neOk35(/*0*/ i: [ERROR : Inv]<P, P>): kotlin.Unit
|
||||
internal abstract fun neOk4(/*0*/ i: Inv<I>): kotlin.Unit
|
||||
internal abstract fun neOk5(/*0*/ i: Inv<O>): kotlin.Unit
|
||||
internal abstract fun neOk6(/*0*/ i: In<In<O>>): kotlin.Unit
|
||||
|
||||
@@ -45,7 +45,7 @@ internal trait Test</*0*/ in I, /*1*/ out O, /*2*/ P> {
|
||||
internal abstract var neOk32: [ERROR : Inv]
|
||||
internal abstract var neOk33: Inv<[ERROR : No type element]>
|
||||
internal abstract var neOk34: Inv<[ERROR : C]>
|
||||
internal abstract var neOk35: [ERROR : Inv<P, P>]
|
||||
internal abstract var neOk35: [ERROR : Inv]<P, P>
|
||||
internal abstract var neOk4: Inv<I>
|
||||
internal abstract var neOk5: Inv<O>
|
||||
internal abstract var neOk6: In<In<O>>
|
||||
|
||||
@@ -37,7 +37,7 @@ internal trait Test</*0*/ in I, /*1*/ out O, /*2*/ P> {
|
||||
internal abstract fun neOk32(): [ERROR : Inv]
|
||||
internal abstract fun neOk33(): Inv<[ERROR : No type element]>
|
||||
internal abstract fun neOk34(): Inv<[ERROR : C]>
|
||||
internal abstract fun neOk35(): [ERROR : Inv<P, P>]
|
||||
internal abstract fun neOk35(): [ERROR : Inv]<P, P>
|
||||
internal abstract fun neOk4(): Inv<I>
|
||||
internal abstract fun neOk5(): Inv<O>
|
||||
internal abstract fun neOk6(): Pair<In<O>, I>
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
val foo: Pair<Pair<List<Int>>, String> = null!!
|
||||
/*
|
||||
psi: Pair<Pair<List<Int>>, String>
|
||||
type: Pair<[ERROR : Pair<List<Int>>], String>
|
||||
type: Pair<[ERROR : Pair]<List<Int>>, String>
|
||||
typeParameter: <out A> defined in kotlin.Pair
|
||||
typeProjection: [ERROR : Pair<List<Int>>]
|
||||
typeProjection: [ERROR : Pair]<List<Int>>
|
||||
psi: Pair<List<Int>>
|
||||
type: [ERROR : Pair<List<Int>>]
|
||||
type: [ERROR : Pair]<List<Int>>
|
||||
typeParameter: null
|
||||
typeProjection: List<Int>
|
||||
psi: List<Int>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
val foo: List<in Int, out Int> = null!!
|
||||
/*
|
||||
psi: List<in Int, out Int>
|
||||
type: [ERROR : List<in Int, out Int>]
|
||||
type: [ERROR : List]<in Int, out Int>
|
||||
typeParameter: null
|
||||
typeProjection: Int
|
||||
psi: Int
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
val foo: List<String, List<Int>> = null!!
|
||||
/*
|
||||
psi: List<String, List<Int>>
|
||||
type: [ERROR : List<String, List<Int>>]
|
||||
type: [ERROR : List]<String, List<Int>>
|
||||
typeParameter: null
|
||||
typeProjection: String
|
||||
psi: String
|
||||
|
||||
@@ -3,11 +3,19 @@ fun <T> getT(): T = null!!
|
||||
val foo = getT<Pair<Pair<List<Int>>, String>>()
|
||||
/*
|
||||
psi: val foo = getT<Pair<Pair<List<Int>>, String>>()
|
||||
type: Pair<[ERROR : Pair<List<Int>>], String>
|
||||
type: Pair<[ERROR : Pair]<List<Int>>, String>
|
||||
typeParameter: <out A> defined in kotlin.Pair
|
||||
typeProjection: [ERROR : Pair<List<Int>>]
|
||||
typeProjection: [ERROR : Pair]<List<Int>>
|
||||
psi: val foo = getT<Pair<Pair<List<Int>>, String>>()
|
||||
type: [ERROR : Pair<List<Int>>]
|
||||
type: [ERROR : Pair]<List<Int>>
|
||||
typeParameter: null
|
||||
typeProjection: List<Int>
|
||||
psi: val foo = getT<Pair<Pair<List<Int>>, String>>()
|
||||
type: List<Int>
|
||||
typeParameter: <out E> defined in kotlin.List
|
||||
typeProjection: Int
|
||||
psi: val foo = getT<Pair<Pair<List<Int>>, String>>()
|
||||
type: Int
|
||||
|
||||
typeParameter: <out B> defined in kotlin.Pair
|
||||
typeProjection: String
|
||||
|
||||
@@ -3,5 +3,14 @@ fun <T> getT(): T = null!!
|
||||
val foo = getT<List<in Int, out Int>>()
|
||||
/*
|
||||
psi: val foo = getT<List<in Int, out Int>>()
|
||||
type: [ERROR : List<in Int, out Int>]
|
||||
type: [ERROR : List]<in Int, out Int>
|
||||
typeParameter: null
|
||||
typeProjection: in Int
|
||||
psi: val foo = getT<List<in Int, out Int>>()
|
||||
type: Int
|
||||
|
||||
typeParameter: null
|
||||
typeProjection: out Int
|
||||
psi: val foo = getT<List<in Int, out Int>>()
|
||||
type: Int
|
||||
*/
|
||||
@@ -3,5 +3,18 @@ fun <T> getT(): T = null!!
|
||||
val foo = getT<List<String, List<Int>>>()
|
||||
/*
|
||||
psi: val foo = getT<List<String, List<Int>>>()
|
||||
type: [ERROR : List<String, List<Int>>]
|
||||
type: [ERROR : List]<String, List<Int>>
|
||||
typeParameter: null
|
||||
typeProjection: String
|
||||
psi: val foo = getT<List<String, List<Int>>>()
|
||||
type: String
|
||||
|
||||
typeParameter: null
|
||||
typeProjection: List<Int>
|
||||
psi: val foo = getT<List<String, List<Int>>>()
|
||||
type: List<Int>
|
||||
typeParameter: <out E> defined in kotlin.List
|
||||
typeProjection: Int
|
||||
psi: val foo = getT<List<String, List<Int>>>()
|
||||
type: Int
|
||||
*/
|
||||
Reference in New Issue
Block a user