@@ -2232,12 +2232,22 @@ open class KotlinFileExtractor(
2232
2232
isBuiltinCall(c, " <unsafe-coerce>" , " kotlin.jvm.internal" ) -> {
2233
2233
2234
2234
if (c.valueArgumentsCount != 1 ) {
2235
- logger.errorElement(" Expected to find only one argument for a kotlin.jvm.internal.<unsafe-coerce>() call" , c)
2235
+ logger.errorElement(" Expected to find one argument for a kotlin.jvm.internal.<unsafe-coerce>() call, but found ${c.valueArgumentsCount} " , c)
2236
2236
return
2237
2237
}
2238
2238
2239
2239
if (c.typeArgumentsCount != 2 ) {
2240
- logger.errorElement(" Expected to find two type arguments for a kotlin.jvm.internal.<unsafe-coerce>() call" , c)
2240
+ logger.errorElement(" Expected to find two type arguments for a kotlin.jvm.internal.<unsafe-coerce>() call, but found ${c.typeArgumentsCount} " , c)
2241
+ return
2242
+ }
2243
+ val valueArg = c.getValueArgument(0 )
2244
+ if (valueArg == null ) {
2245
+ logger.errorElement(" Cannot find value argument for a kotlin.jvm.internal.<unsafe-coerce>() call" , c)
2246
+ return
2247
+ }
2248
+ val typeArg = c.getTypeArgument(1 )
2249
+ if (typeArg == null ) {
2250
+ logger.errorElement(" Cannot find type argument for a kotlin.jvm.internal.<unsafe-coerce>() call" , c)
2241
2251
return
2242
2252
}
2243
2253
@@ -2249,8 +2259,8 @@ open class KotlinFileExtractor(
2249
2259
tw.writeHasLocation(id, locId)
2250
2260
tw.writeCallableEnclosingExpr(id, callable)
2251
2261
tw.writeStatementEnclosingExpr(id, enclosingStmt)
2252
- extractTypeAccessRecursive(c.getTypeArgument( 1 ) !! , locId, id, 0 , callable, enclosingStmt)
2253
- extractExpressionExpr(c.getValueArgument( 0 ) !! , callable, id, 1 , enclosingStmt)
2262
+ extractTypeAccessRecursive(typeArg , locId, id, 0 , callable, enclosingStmt)
2263
+ extractExpressionExpr(valueArg , callable, id, 1 , enclosingStmt)
2254
2264
}
2255
2265
isBuiltinCallInternal(c, " dataClassArrayMemberToString" ) -> {
2256
2266
val arrayArg = c.getValueArgument(0 )
0 commit comments