FIR: use Kotlin String constructors instead of java.lang ones

#KT-38437 fixed
This commit is contained in:
Ilya Kirillov
2020-04-21 22:03:58 +03:00
parent 9b943e3a5a
commit fdfb544730
4 changed files with 64 additions and 7 deletions
@@ -0,0 +1,22 @@
// FULL_JDK
fun consumeString(s: String) {}
fun foo(
byteArray: ByteArray,
charArray: CharArray,
intArray: IntArray,
charset: java.nio.charset.Charset,
stringBuilder: java.lang.StringBuilder,
stringBuffer: java.lang.StringBuffer
) {
consumeString(String())
consumeString(String(byteArray, 0, 1, charset))
consumeString(String(byteArray, charset))
consumeString(String(byteArray))
consumeString(String(charArray))
consumeString(String(charArray, 0, 1))
consumeString(String(intArray, 0, 1))
consumeString(String(stringBuffer))
consumeString(String(stringBuilder))
}
@@ -0,0 +1,14 @@
FILE: stringConstructors.kt
public final fun consumeString(s: R|kotlin/String|): R|kotlin/Unit| {
}
public final fun foo(byteArray: R|kotlin/ByteArray|, charArray: R|kotlin/CharArray|, intArray: R|kotlin/IntArray|, charset: R|java/nio/charset/Charset|, stringBuilder: R|java/lang/StringBuilder|, stringBuffer: R|java/lang/StringBuffer|): R|kotlin/Unit| {
R|/consumeString|(R|kotlin/String.String|())
R|/consumeString|(R|kotlin/text/String|(R|<local>/byteArray|, Int(0), Int(1), R|<local>/charset|))
R|/consumeString|(R|kotlin/text/String|(R|<local>/byteArray|, R|<local>/charset|))
R|/consumeString|(R|kotlin/text/String|(R|<local>/byteArray|))
R|/consumeString|(R|kotlin/text/String|(R|<local>/charArray|))
R|/consumeString|(R|kotlin/text/String|(R|<local>/charArray|, Int(0), Int(1)))
R|/consumeString|(R|kotlin/text/String|(R|<local>/intArray|, Int(0), Int(1)))
R|/consumeString|(R|kotlin/text/String|(R|<local>/stringBuffer|))
R|/consumeString|(R|kotlin/text/String|(R|<local>/stringBuilder|))
}