@@ -2232,12 +2232,22 @@ open class KotlinFileExtractor(
22322232 isBuiltinCall(c, " <unsafe-coerce>" , " kotlin.jvm.internal" ) -> {
22332233
22342234 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)
22362236 return
22372237 }
22382238
22392239 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)
22412251 return
22422252 }
22432253
@@ -2249,8 +2259,8 @@ open class KotlinFileExtractor(
22492259 tw.writeHasLocation(id, locId)
22502260 tw.writeCallableEnclosingExpr(id, callable)
22512261 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)
22542264 }
22552265 isBuiltinCallInternal(c, " dataClassArrayMemberToString" ) -> {
22562266 val arrayArg = c.getValueArgument(0 )
0 commit comments