@@ -103,12 +103,10 @@ class BackendUtils(val postProcessor: PostProcessor) {
103
103
// stack map frames and invokes the `getCommonSuperClass` method. This method expects all
104
104
// ClassBTypes mentioned in the source code to exist in the map.
105
105
106
- val serlamObjDesc = MethodBType (jliSerializedLambdaRef :: Nil , ObjectRef ).descriptor
107
-
108
- val mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC , " $deserializeLambda$" , serlamObjDesc, null , null )
106
+ val mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC , " $deserializeLambda$" , serializedLamdaObjDesc, null , null )
109
107
def emitLambdaDeserializeIndy (targetMethods : Seq [Handle ]): Unit = {
110
108
mv.visitVarInsn(ALOAD , 0 )
111
- mv.visitInvokeDynamicInsn(" lambdaDeserialize" , serlamObjDesc , jliLambdaDeserializeBootstrapHandle, targetMethods : _* )
109
+ mv.visitInvokeDynamicInsn(" lambdaDeserialize" , serializedLamdaObjDesc , jliLambdaDeserializeBootstrapHandle, targetMethods : _* )
112
110
}
113
111
114
112
val targetMethodGroupLimit = 255 - 1 - 3 // JVM limit. See See MAX_MH_ARITY in CallSite.java
@@ -133,6 +131,11 @@ class BackendUtils(val postProcessor: PostProcessor) {
133
131
mv.visitInsn(ARETURN )
134
132
}
135
133
134
+ private lazy val serializedLamdaObjDesc = {
135
+ import coreBTypes .{ObjectRef , jliSerializedLambdaRef }
136
+ MethodBType (jliSerializedLambdaRef :: Nil , ObjectRef ).descriptor
137
+ }
138
+
136
139
/**
137
140
* Visit the class node and collect all referenced nested classes.
138
141
*/
0 commit comments