b2005302dc
Also, do not try to use invokedynamic on SAM calls with intersection
types, because intersection type is not allowed as an immediate type
projection of a supertype, and constructing a fake override in
LambdaMetafactoryArgumentsBuilder led to an exception. This fixes the
problem which was worked around earlier in e6c089ef, effectively
reverting that commit.
The main motivation for this change is that LambdaMetafactory also
doesn't generate generic signature for SAM wrapper classes at runtime.
Since these classes are synthetic, nobody should rely on the fact that
they have generic supertypes, which was observable only via Java
reflection.
#KT-46149 Fixed
#KT-46238 Fixed
18 lines
854 B
Plaintext
Vendored
18 lines
854 B
Plaintext
Vendored
@kotlin.Metadata
|
|
final class<<T:Ljava/lang/Object;>Ljava/lang/Object;LSam;> TKt$specializedSam$1 {
|
|
// source: 't.kt'
|
|
<null> method <init>(p0: kotlin.jvm.functions.Function0): void
|
|
public synthetic bridge <null> method get(): java.lang.Object
|
|
public final <null> method get(): java.lang.String
|
|
enclosing method TKt.specializedSam(Lkotlin/jvm/functions/Function0;)Ljava/lang/String;
|
|
synthetic final field <null> $f: kotlin.jvm.functions.Function0
|
|
inner (anonymous) class TKt$specializedSam$1
|
|
}
|
|
|
|
@kotlin.Metadata
|
|
public final class<null> TKt {
|
|
// source: 't.kt'
|
|
public final static <(Lkotlin/jvm/functions/Function0<Ljava/lang/String;>;)Ljava/lang/String;> method specializedSam(@org.jetbrains.annotations.NotNull p0: kotlin.jvm.functions.Function0): java.lang.String
|
|
inner (anonymous) class TKt$specializedSam$1
|
|
}
|