f70ae2df3a
That issue might be fixed via changing TypeVariableMarker.shouldBeFlexible at ConeConstraintSystemUtilContext but this and some other tricks have been added because of incorrect handling of constraints where type variable has a flexible bound ^KT-51168 Fixed
43 lines
1.4 KiB
Plaintext
Vendored
43 lines
1.4 KiB
Plaintext
Vendored
FILE: LinkedList.kt
|
|
package foo
|
|
|
|
public final class LinkedList<T> : R|java/util/LinkedList<T>| {
|
|
public constructor<T>(): R|foo/LinkedList<T>| {
|
|
super<R|java/util/LinkedList<T>|>()
|
|
}
|
|
|
|
}
|
|
FILE: HashSet.kt
|
|
package util
|
|
|
|
public final class HashSet<T> : R|java/util/HashSet<T>| {
|
|
public constructor<T>(): R|util/HashSet<T>| {
|
|
super<R|java/util/HashSet<T>|>()
|
|
}
|
|
|
|
}
|
|
FILE: main.kt
|
|
package foo
|
|
|
|
public final class LinkedHashMap<K, V> : R|java/util/LinkedHashMap<K, V>| {
|
|
public constructor<K, V>(): R|foo/LinkedHashMap<K, V>| {
|
|
super<R|java/util/LinkedHashMap<K, V>|>()
|
|
}
|
|
|
|
}
|
|
public final fun test_1(): R|kotlin/Unit| {
|
|
lval map: R|util/HashMap<kotlin/Int, kotlin/Int>| = R|util/HashMap.HashMap|<R|kotlin/Int|, R|kotlin/Int|>()
|
|
}
|
|
public final fun test_2(): R|kotlin/Unit| {
|
|
lval set: R|util/HashSet<kotlin/Int>| = R|util/HashSet.HashSet|<R|kotlin/Int|>()
|
|
}
|
|
public final fun test_3(): R|kotlin/Unit| {
|
|
lval list: R|foo/ArrayList<kotlin/Int>| = R|foo/ArrayList.ArrayList|<R|kotlin/Int|>()
|
|
}
|
|
public final fun test_4(): R|kotlin/Unit| {
|
|
lval list: R|foo/LinkedList<kotlin/Int>| = R|foo/LinkedList.LinkedList|<R|kotlin/Int|>()
|
|
}
|
|
public final fun test_5(): R|kotlin/Unit| {
|
|
lval map: R|foo/LinkedHashMap<kotlin/Int, kotlin/Int>| = R|foo/LinkedHashMap.LinkedHashMap|<R|kotlin/Int|, R|kotlin/Int|>()
|
|
}
|