Files
kotlin-fork/compiler/testData/ir/irText/expressions/signedToUnsignedConversions.fir.kt.txt
T
2024-02-16 10:19:38 +00:00

73 lines
1.3 KiB
Kotlin
Vendored

// FILE: signedToUnsignedConversions_annotation.kt
package kotlin.internal
open annotation class ImplicitIntegerCoercion : Annotation {
constructor() /* primary */ {
super/*Any*/()
/* <init>() */
}
}
// FILE: signedToUnsignedConversions_test.kt
@ImplicitIntegerCoercion
val NON_CONST: Int
field = 255
get
fun takeLong(@ImplicitIntegerCoercion l: Long) {
}
fun takeUByte(@ImplicitIntegerCoercion u: UByte) {
}
fun takeUBytes(@ImplicitIntegerCoercion vararg u: UByte) {
}
fun takeUInt(@ImplicitIntegerCoercion u: UInt) {
}
fun takeULong(@ImplicitIntegerCoercion u: ULong) {
}
fun takeUShort(@ImplicitIntegerCoercion u: UShort) {
}
fun test() {
takeUByte(u = 255.toUByte())
takeUByte(u = 255.toUByte())
takeUShort(u = 255.toUShort())
takeUShort(u = 256.toUShort())
takeUInt(u = 255.toUInt())
takeULong(u = 255.toULong())
takeUBytes(u = [255.toUByte(), 255.toUByte(), 42B])
}
@ImplicitIntegerCoercion
const val BIGGER_THAN_UBYTE: Int
field = 256
get
@ImplicitIntegerCoercion
const val EXPLICIT_INT: Int
field = 255
get
@ImplicitIntegerCoercion
const val IMPLICIT_INT: Int
field = 255
get
@ImplicitIntegerCoercion
const val LONG_CONST: Long
field = 255L
get
@ImplicitIntegerCoercion
const val UINT_CONST: UInt
field = 42
get