Files
kotlin-fork/compiler/testData/diagnostics/tests/evaluate/numberBinaryOperationsCall.fir.kt
T
Dmitriy Novozhilov 52b72a7dac [FIR] Implement Int -> Long conversions for literals and operators over them
^KT-38895
^KT-50996 Fixed
^KT-51000 Fixed
^KT-51003 Fixed
^KT-51018 Fixed
2022-02-07 13:36:36 +03:00

28 lines
779 B
Kotlin
Vendored

// !LANGUAGE: -ApproximateIntegerLiteralTypesInReceiverPosition
fun fooInt(p: Int) = p
fun fooLong(p: Long) = p
fun fooByte(p: Byte) = p
fun fooShort(p: Short) = p
fun test() {
fooInt(1.plus(1))
fooByte(<!ARGUMENT_TYPE_MISMATCH!>1.plus(1)<!>)
fooLong(1.plus(1))
fooShort(<!ARGUMENT_TYPE_MISMATCH!>1.plus(1)<!>)
fooInt(1.times(1))
fooByte(<!ARGUMENT_TYPE_MISMATCH!>1.times(1)<!>)
fooLong(1.times(1))
fooShort(<!ARGUMENT_TYPE_MISMATCH!>1.times(1)<!>)
fooInt(1.div(1))
fooByte(<!ARGUMENT_TYPE_MISMATCH!>1.div(1)<!>)
fooLong(1.div(1))
fooShort(<!ARGUMENT_TYPE_MISMATCH!>1.div(1)<!>)
fooInt(1.rem(1))
fooByte(<!ARGUMENT_TYPE_MISMATCH!>1.rem(1)<!>)
fooLong(1.rem(1))
fooShort(<!ARGUMENT_TYPE_MISMATCH!>1.rem(1)<!>)
}