// !DIAGNOSTICS: -UNUSED_PARAMETER -UNUSED_VARIABLE // !LANGUAGE: -TypeEnhancementImprovementsInStrictMode // FULL_JDK // FILE: MapLike.java import java.util.Map; public class MapLike<@org.jetbrains.annotations.NotNull K, V> { void putAll(Map map); } // FILE: ListLike.java import java.util.Collection; public class ListLike> {} // FILE: main.kt fun test0(map : MapLike<Int?, Int>) {} fun test11(map : MapLike<K, K>) {} fun test12(map : MapLike<K?, K>) {} fun test13(map : MapLike) {} fun test14(map : MapLike<K?, K>) {} class Foo typealias A = MapLike typealias A2 = Foo> typealias A3 = ListLike> fun main1(x: A<Int?>) {} fun main2(x: A2<Int?>) {} fun main3(x: A3) {} fun main3() { val x = A3() // TODO: support reporting errors on typealias constructor calls val x2 = A() // TODO: support reporting errors on typealias constructor calls val y: A3 = A3() }