@@ -835,12 +835,12 @@ open class KotlinFileExtractor(
835
835
forceExtractFunction(f, parentId, extractBody, extractMethodAndParameterTypeAccesses, typeSubstitution, classTypeArgsIncludingOuterClasses).also {
836
836
// The defaults-forwarder function is a static utility, not a member, so we only need to extract this for the unspecialised instance of this class.
837
837
if (classTypeArgsIncludingOuterClasses.isNullOrEmpty())
838
- extractDefaultsFunction(f, parentId, extractBody)
838
+ extractDefaultsFunction(f, parentId, extractBody, extractMethodAndParameterTypeAccesses )
839
839
extractGeneratedOverloads(f, parentId, null , extractBody, extractMethodAndParameterTypeAccesses, typeSubstitution, classTypeArgsIncludingOuterClasses)
840
840
}
841
841
}
842
842
843
- private fun extractDefaultsFunction (f : IrFunction , parentId : Label <out DbReftype >, extractBody : Boolean ) {
843
+ private fun extractDefaultsFunction (f : IrFunction , parentId : Label <out DbReftype >, extractBody : Boolean , extractMethodAndParameterTypeAccesses : Boolean ) {
844
844
if (f.valueParameters.none { it.defaultValue != null })
845
845
return
846
846
@@ -852,7 +852,8 @@ open class KotlinFileExtractor(
852
852
val allParamTypeResults = parameterTypes.mapIndexed { i, paramType ->
853
853
val paramId = tw.getLabelFor<DbParam >(getValueParameterLabel(id, i))
854
854
extractValueParameter(paramId, paramType, " p$i " , locId, id, i, paramId, isVararg = false , syntheticParameterNames = true , isCrossinline = false , isNoinline = false ).also {
855
- extractTypeAccess(useType(paramType), locId, paramId, - 1 )
855
+ if (extractMethodAndParameterTypeAccesses)
856
+ extractTypeAccess(useType(paramType), locId, paramId, - 1 )
856
857
}
857
858
}
858
859
val paramsSignature = allParamTypeResults.joinToString(separator = " ," , prefix = " (" , postfix = " )" ) { it.javaResult.signature }
@@ -863,7 +864,7 @@ open class KotlinFileExtractor(
863
864
extractConstructor(constrId, shortName, paramsSignature, parentId, constrId)
864
865
} else {
865
866
val methodId = id.cast<DbMethod >()
866
- extractMethod(methodId, locId, shortName, erase(f.returnType), paramsSignature, parentId, methodId, origin = null , extractTypeAccess = true )
867
+ extractMethod(methodId, locId, shortName, erase(f.returnType), paramsSignature, parentId, methodId, origin = null , extractTypeAccess = extractMethodAndParameterTypeAccesses )
867
868
addModifiers(id, " static" )
868
869
}
869
870
tw.writeHasLocation(id, locId)
0 commit comments