@@ -83,6 +83,8 @@ internal class LincheckClassVisitor(
83
83
fun MethodVisitor.newAdapter () = GeneratorAdapter (this , access, methodName, desc)
84
84
fun MethodVisitor.newNonRemappingAdapter () = GeneratorAdapterWithoutLocals (this , access, methodName, desc)
85
85
86
+ val isStatic = access and ACC_STATIC != 0
87
+
86
88
if (instrumentationMode == STRESS ) {
87
89
return if (methodName != " <clinit>" && methodName != " <init>" ) {
88
90
CoroutineCancellabilitySupportTransformer (mv, access, className, methodName, desc)
@@ -118,7 +120,7 @@ internal class LincheckClassVisitor(
118
120
analyzerAdapter
119
121
}
120
122
val locals: Map <Int , List <LocalVariableInfo >> = methods[methodName + desc]?.variables ? : emptyMap()
121
- mv = LocalVariablesAccessTransformer (fileName, className, methodName, mv.newAdapter(), locals)
123
+ mv = LocalVariablesAccessTransformer (fileName, className, methodName, mv.newAdapter(), desc, isStatic, locals)
122
124
123
125
// Inline method call transformer relies on the original variables' indices, so it should go before (in FIFO order)
124
126
// all transformers which can create local variables.
@@ -263,7 +265,7 @@ internal class LincheckClassVisitor(
263
265
aa
264
266
}
265
267
val locals: Map <Int , List <LocalVariableInfo >> = methods[methodName + desc]?.variables ? : emptyMap()
266
- mv = LocalVariablesAccessTransformer (fileName, className, methodName, mv.newAdapter(), locals)
268
+ mv = LocalVariablesAccessTransformer (fileName, className, methodName, mv.newAdapter(), desc, isStatic, locals)
267
269
// Inline method call transformer relies on the original variables' indices, so it should go before (in FIFO order)
268
270
// all transformers which can create local variables.
269
271
// We cannot use trick with
@@ -308,6 +310,8 @@ internal open class ManagedStrategyMethodVisitor(
308
310
adapter.push(codeLocationId)
309
311
}
310
312
313
+ protected fun isKnownLineNumber (): Boolean = lineNumber > 0
314
+
311
315
override fun visitLineNumber (line : Int , start : Label ) {
312
316
lineNumber = line
313
317
super .visitLineNumber(line, start)
0 commit comments