Handle IllegalArgumentException in trimMargin intrinsics on JVM

#KT-38537 Fixed
This commit is contained in:
Alexander Udalov
2020-05-01 12:51:46 +02:00
parent 261ed46341
commit 2793187bda
9 changed files with 51 additions and 2 deletions
@@ -44,7 +44,11 @@ class StringTrimLowering(val context: CommonBackendContext) : FileLoweringPass,
val prefixArgument = call.getValueArgument(0)
val newString = if (prefixArgument != null) {
val prefixString = prefixArgument.getConstantString() ?: return call
receiverString.trimMargin(prefixString)
try {
receiverString.trimMargin(prefixString)
} catch (e: IllegalArgumentException) {
return call
}
} else {
receiverString.trimMargin()
}