[FIR] K2: Fix disappeared diagnostic UNDERSCORE_USAGE_WITHOUT_BACKTICKS on types
^KT-59985 Fixed Merge-request: KT-MR-12282 Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
This commit is contained in:
committed by
Space Team
parent
80f86a3527
commit
56eedfebee
+21
-10
@@ -12,23 +12,34 @@ class Bar2<K : <!UNRESOLVED_REFERENCE!>_<!>>
|
||||
class Bar3<K> where K : <!UNRESOLVED_REFERENCE!>_<!>
|
||||
class Bar4<<!UNDERSCORE_IS_RESERVED!>_<!>>
|
||||
|
||||
typealias A1<<!UNDERSCORE_IS_RESERVED!>_<!>> = <!TYPEALIAS_SHOULD_EXPAND_TO_CLASS!>_<!>
|
||||
typealias A1<<!UNDERSCORE_IS_RESERVED!>_<!>> = <!TYPEALIAS_SHOULD_EXPAND_TO_CLASS, UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>
|
||||
typealias A11<<!UNDERSCORE_IS_RESERVED!>_<!>> = Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>
|
||||
typealias A12<<!UNDERSCORE_IS_RESERVED!>_<!>> = Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>>
|
||||
typealias A2<T> = Foo<<!UNRESOLVED_REFERENCE!>_<!>>
|
||||
typealias A3<T> = (<!UNRESOLVED_REFERENCE!>_<!>) -> T
|
||||
typealias A4<T> = (T) -> () -> <!UNRESOLVED_REFERENCE!>_<!>
|
||||
typealias A5<T> = (T) -> (((<!UNRESOLVED_REFERENCE!>_<!>))) -> T
|
||||
|
||||
fun foo1(x: <!UNDERSCORE_USAGE_WITHOUT_BACKTICKS, UNRESOLVED_REFERENCE!>_<!>) {}
|
||||
fun foo2(x: Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS, UNRESOLVED_REFERENCE!>_<!>>) {}
|
||||
fun foo1(x: <!UNRESOLVED_REFERENCE!>_<!>) {}
|
||||
fun foo2(x: Foo<<!UNRESOLVED_REFERENCE!>_<!>>) {}
|
||||
fun foo21(x: Foo<Foo<<!UNRESOLVED_REFERENCE!>_<!>>>) {}
|
||||
fun foo3(): <!UNRESOLVED_REFERENCE!>_<!> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun foo5(): Foo<<!UNRESOLVED_REFERENCE!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K, <!UNDERSCORE_IS_RESERVED!>_<!>> foo6(): Foo<_> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : _, <!UNDERSCORE_IS_RESERVED!>_<!>> foo7(): Foo<_> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun foo4(): Foo<<!UNRESOLVED_REFERENCE!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun foo5(): Foo<Foo<<!UNRESOLVED_REFERENCE!>_<!>>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K, <!UNDERSCORE_IS_RESERVED!>_<!>> foo6(): Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : <!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>, <!UNDERSCORE_IS_RESERVED!>_<!>> foo7(): <!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>, <!UNDERSCORE_IS_RESERVED!>_<!>> foo8(): Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>>, <!UNDERSCORE_IS_RESERVED!>_<!>> foo9(): Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
|
||||
fun <!UNRESOLVED_REFERENCE!>_<!>.foo10() {}
|
||||
fun Foo<<!UNRESOLVED_REFERENCE!>_<!>>.foo11() {}
|
||||
fun Foo<Foo<<!UNRESOLVED_REFERENCE!>_<!>>>.foo12() {}
|
||||
|
||||
class AA1 : <!UNRESOLVED_REFERENCE!>_<!>
|
||||
class AA2 : <!FINAL_SUPERTYPE, SUPERTYPE_NOT_INITIALIZED!>Foo<<!UNRESOLVED_REFERENCE, UNRESOLVED_REFERENCE!>_<!>><!>
|
||||
|
||||
fun <`_`> bar(): Foo<_> = TODO()
|
||||
fun <`_`> bar(): Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>> = TODO()
|
||||
fun <`_`> bar1(): Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>> = TODO()
|
||||
|
||||
fun test() {
|
||||
val x1 = foo<Int, (<!UNRESOLVED_REFERENCE!>_<!>) -> Unit> { { it } }
|
||||
@@ -42,8 +53,8 @@ fun test() {
|
||||
val z32: Pair<<!UNRESOLVED_REFERENCE!>_<!>, Float> = 1 to 1f
|
||||
val z34: Pair<((<!UNRESOLVED_REFERENCE!>_<!>)), Float> = 1 to 1f
|
||||
|
||||
val x8: (Float) -> Int = { x: <!UNDERSCORE_USAGE_WITHOUT_BACKTICKS, UNRESOLVED_REFERENCE!>_<!> -> 10 }
|
||||
val x9: (Foo<Float>) -> Int = { x: Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS, UNRESOLVED_REFERENCE!>_<!>> -> 10 }
|
||||
val x8: (Float) -> Int = { x: <!UNRESOLVED_REFERENCE!>_<!> -> 10 }
|
||||
val x9: (Foo<Float>) -> Int = { x: Foo<<!UNRESOLVED_REFERENCE!>_<!>> -> 10 }
|
||||
|
||||
val x10 = object : <!UNRESOLVED_REFERENCE!>_<!> {}
|
||||
val x11 = object : <!FINAL_SUPERTYPE!>Foo<<!UNRESOLVED_REFERENCE!>_<!>><!>() {}
|
||||
@@ -56,7 +67,7 @@ fun test() {
|
||||
|
||||
val x12: Foo<@<!UNRESOLVED_REFERENCE!>_<!> Int>? = null
|
||||
val x13: Foo<@<!UNRESOLVED_REFERENCE!>_<!>() Int>? = null
|
||||
val x14: Foo<@Anno(<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS, UNRESOLVED_REFERENCE!>_<!>) Int>? = null
|
||||
val x14: Foo<@Anno(<!UNRESOLVED_REFERENCE!>_<!>) Int>? = null
|
||||
|
||||
val x15: <!UNRESOLVED_REFERENCE!>_<!><<!UNRESOLVED_REFERENCE!>_<!>>? = null
|
||||
}
|
||||
|
||||
+13
-2
@@ -13,6 +13,8 @@ class Bar3<K> where K : <!UNRESOLVED_REFERENCE!>_<!>
|
||||
class Bar4<<!UNDERSCORE_IS_RESERVED!>_<!>>
|
||||
|
||||
typealias A1<<!UNDERSCORE_IS_RESERVED!>_<!>> = <!TYPEALIAS_SHOULD_EXPAND_TO_CLASS, UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>
|
||||
typealias A11<<!UNDERSCORE_IS_RESERVED!>_<!>> = Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>
|
||||
typealias A12<<!UNDERSCORE_IS_RESERVED!>_<!>> = Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>>
|
||||
typealias A2<T> = Foo<<!UNRESOLVED_REFERENCE!>_<!>>
|
||||
typealias A3<T> = (<!UNRESOLVED_REFERENCE!>_<!>) -> T
|
||||
typealias A4<T> = (T) -> () -> <!UNRESOLVED_REFERENCE!>_<!>
|
||||
@@ -20,15 +22,24 @@ typealias A5<T> = (T) -> (((<!UNRESOLVED_REFERENCE!>_<!>))) -> T
|
||||
|
||||
fun foo1(x: <!UNRESOLVED_REFERENCE!>_<!>) {}
|
||||
fun foo2(x: Foo<<!UNRESOLVED_REFERENCE!>_<!>>) {}
|
||||
fun foo21(x: Foo<Foo<<!UNRESOLVED_REFERENCE!>_<!>>>) {}
|
||||
fun foo3(): <!UNRESOLVED_REFERENCE!>_<!> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun foo5(): Foo<<!UNRESOLVED_REFERENCE!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun foo4(): Foo<<!UNRESOLVED_REFERENCE!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun foo5(): Foo<Foo<<!UNRESOLVED_REFERENCE!>_<!>>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K, <!UNDERSCORE_IS_RESERVED!>_<!>> foo6(): Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : <!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>, <!UNDERSCORE_IS_RESERVED!>_<!>> foo7(): Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : <!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>, <!UNDERSCORE_IS_RESERVED!>_<!>> foo7(): <!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>, <!UNDERSCORE_IS_RESERVED!>_<!>> foo8(): Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
fun <K : Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>>, <!UNDERSCORE_IS_RESERVED!>_<!>> foo9(): Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>> {<!NO_RETURN_IN_FUNCTION_WITH_BLOCK_BODY!>}<!>
|
||||
|
||||
fun <!UNRESOLVED_REFERENCE!>_<!>.foo10() {}
|
||||
fun Foo<<!UNRESOLVED_REFERENCE!>_<!>>.foo11() {}
|
||||
fun Foo<Foo<<!UNRESOLVED_REFERENCE!>_<!>>>.foo12() {}
|
||||
|
||||
class AA1 : <!UNRESOLVED_REFERENCE!>_<!>
|
||||
class AA2 : <!FINAL_SUPERTYPE, SUPERTYPE_NOT_INITIALIZED!>Foo<<!UNRESOLVED_REFERENCE!>_<!>><!>
|
||||
|
||||
fun <`_`> bar(): Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>> = TODO()
|
||||
fun <`_`> bar1(): Foo<Foo<<!UNDERSCORE_USAGE_WITHOUT_BACKTICKS!>_<!>>> = TODO()
|
||||
|
||||
fun test() {
|
||||
val x1 = foo<Int, (<!UNRESOLVED_REFERENCE!>_<!>) -> Unit> { { <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>it<!> } }
|
||||
|
||||
+12
-2
@@ -1,14 +1,22 @@
|
||||
package
|
||||
|
||||
public fun </*0*/ _> bar(): Foo<_>
|
||||
public fun </*0*/ _> bar1(): Foo<Foo<_>>
|
||||
public fun </*0*/ K, /*1*/ T> foo(/*0*/ x: (K) -> T): kotlin.Pair<K, T>
|
||||
public fun foo1(/*0*/ x: [Error type: Unresolved type for _]): kotlin.Unit
|
||||
public fun foo2(/*0*/ x: Foo<[Error type: Unresolved type for _]>): kotlin.Unit
|
||||
public fun foo21(/*0*/ x: Foo<Foo<[Error type: Unresolved type for _]>>): kotlin.Unit
|
||||
public fun foo3(): [Error type: Unresolved type for _]
|
||||
public fun foo5(): Foo<[Error type: Unresolved type for _]>
|
||||
public fun foo4(): Foo<[Error type: Unresolved type for _]>
|
||||
public fun foo5(): Foo<Foo<[Error type: Unresolved type for _]>>
|
||||
public fun </*0*/ K, /*1*/ _> foo6(): Foo<_>
|
||||
public fun </*0*/ K : _, /*1*/ _> foo7(): Foo<_>
|
||||
public fun </*0*/ K : _, /*1*/ _> foo7(): _
|
||||
public fun </*0*/ K : Foo<_>, /*1*/ _> foo8(): Foo<_>
|
||||
public fun </*0*/ K : Foo<Foo<_>>, /*1*/ _> foo9(): Foo<Foo<_>>
|
||||
public fun test(): kotlin.Unit
|
||||
public fun [Error type: Unresolved type for _].foo10(): kotlin.Unit
|
||||
public fun Foo<[Error type: Unresolved type for _]>.foo11(): kotlin.Unit
|
||||
public fun Foo<Foo<[Error type: Unresolved type for _]>>.foo12(): kotlin.Unit
|
||||
|
||||
public final class AA1 {
|
||||
public constructor AA1()
|
||||
@@ -74,6 +82,8 @@ public final class Foo</*0*/ K> {
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
public typealias A1</*0*/ _> = _
|
||||
public typealias A11</*0*/ _> = Foo<_>
|
||||
public typealias A12</*0*/ _> = Foo<Foo<_>>
|
||||
public typealias A2</*0*/ T> = Foo<[Error type: Unresolved type for _]>
|
||||
public typealias A3</*0*/ T> = ([Error type: Unresolved type for _]) -> T
|
||||
public typealias A4</*0*/ T> = (T) -> () -> [Error type: Unresolved type for _]
|
||||
|
||||
Reference in New Issue
Block a user