diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java index 6ab401cebc029..f8258b30d6563 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirBlackBoxCodegenBasedTestGenerated.java @@ -49375,6 +49375,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java index 4518d46eabbf0..517bd093205b8 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirReversedBlackBoxCodegenBasedTestGenerated.java @@ -49375,6 +49375,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java index 2ec2c21bdbf06..ca861938674f3 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java @@ -49076,6 +49076,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java index 91fc23c0f93d9..1bf713a47acff 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java @@ -49076,6 +49076,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/loops/Utils.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/loops/Utils.kt index df9ae7804f1fc..3052b8f22a399 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/loops/Utils.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/loops/Utils.kt @@ -85,50 +85,15 @@ internal val IrExpression.canChangeValueDuringExecution: Boolean internal val IrExpression.canHaveSideEffects: Boolean get() = !isTrivial() -private fun Any?.toByte(): Byte? = - when (this) { - is Number -> toByte() - is Char -> code.toByte() - else -> null - } - -private fun Any?.toShort(): Short? = - when (this) { - is Number -> toShort() - is Char -> code.toShort() - else -> null - } - -private fun Any?.toInt(): Int? = - when (this) { - is Number -> toInt() - is Char -> code - else -> null - } - -private fun Any?.toLong(): Long? = - when (this) { - is Number -> toLong() - is Char -> code.toLong() - else -> null - } - -private fun Any?.toFloat(): Float? = - when (this) { - is Number -> toFloat() - is Char -> code.toFloat() - else -> null - } - -private fun Any?.toDouble(): Double? = - when (this) { - is Number -> toDouble() - is Char -> code.toDouble() - else -> null - } - internal val IrExpression.constLongValue: Long? - get() = if (this is IrConst) value.toLong() else null + get() = when { + this !is IrConst -> null + type.isUByte() -> (value as? Number)?.toLong()?.toUByte()?.toLong() + type.isUShort() -> (value as? Number)?.toLong()?.toUShort()?.toLong() + type.isUInt() -> (value as? Number)?.toLong()?.toUInt()?.toLong() + type.isChar() -> (value as? Char)?.code?.toLong() + else -> (value as? Number)?.toLong() + } /** * If [expression] can have side effects ([IrExpression.canHaveSideEffects]), this function creates a temporary local variable for that @@ -174,15 +139,31 @@ internal fun IrExpression.castIfNecessary(targetClass: IrClass) = when { // This expression's type could be Nothing from an exception throw. type == targetClass.defaultType || type.isNothing() -> this - this is IrConst && targetClass.defaultType.isPrimitiveType() -> { // TODO: convert unsigned too? + this is IrConst && targetClass.defaultType.isPrimitiveType() -> { val targetType = targetClass.defaultType + val longOrSmallerValue = constLongValue + val uLongValue = if (targetType.isULong()) longOrSmallerValue!!.toULong() else null when (targetType.getPrimitiveType()) { - PrimitiveType.BYTE -> IrConstImpl.byte(startOffset, endOffset, targetType, value.toByte()!!) - PrimitiveType.SHORT -> IrConstImpl.short(startOffset, endOffset, targetType, value.toShort()!!) - PrimitiveType.INT -> IrConstImpl.int(startOffset, endOffset, targetType, value.toInt()!!) - PrimitiveType.LONG -> IrConstImpl.long(startOffset, endOffset, targetType, value.toLong()!!) - PrimitiveType.FLOAT -> IrConstImpl.float(startOffset, endOffset, targetType, value.toFloat()!!) - PrimitiveType.DOUBLE -> IrConstImpl.double(startOffset, endOffset, targetType, value.toDouble()!!) + PrimitiveType.BYTE -> IrConstImpl.byte(startOffset, endOffset, targetType, longOrSmallerValue!!.toByte()) + PrimitiveType.SHORT -> IrConstImpl.short(startOffset, endOffset, targetType, longOrSmallerValue!!.toShort()) + PrimitiveType.INT -> IrConstImpl.int(startOffset, endOffset, targetType, longOrSmallerValue!!.toInt()) + PrimitiveType.LONG -> IrConstImpl.long(startOffset, endOffset, targetType, longOrSmallerValue!!.toLong()) + PrimitiveType.FLOAT -> { + val floatValue = when (val value = value) { + is Float -> value + is Double -> value.toFloat() + else -> uLongValue?.toFloat() ?: longOrSmallerValue?.toFloat() + } + IrConstImpl.float(startOffset, endOffset, targetType, floatValue!!) + } + PrimitiveType.DOUBLE -> { + val doubleValue = when (val value = value) { + is Float -> value.toDouble() + is Double -> value + else -> uLongValue?.toDouble() ?: longOrSmallerValue?.toDouble() + } + IrConstImpl.double(startOffset, endOffset, targetType, doubleValue!!) + } else -> error("Cannot cast expression of type ${type.render()} to ${targetType.render()}") } } diff --git a/compiler/testData/codegen/box/ranges/unsigned/kt67383.kt b/compiler/testData/codegen/box/ranges/unsigned/kt67383.kt new file mode 100644 index 0000000000000..523683274f7e9 --- /dev/null +++ b/compiler/testData/codegen/box/ranges/unsigned/kt67383.kt @@ -0,0 +1,211 @@ +// WITH_STDLIB +// IGNORE_BACKEND: JVM + +fun ubyte_rangeTo() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MIN_VALUE..UByte.MAX_VALUE) { + ints.add(b.toInt()) + if (++counter > 256) error("Something went wrong") + } + require(ints == (0..255).toList()) { ints.toString() } +} + +fun ubyte_downTo() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MAX_VALUE downTo UByte.MIN_VALUE) { + ints.add(b.toInt()) + if (++counter > 256) error("Something went wrong") + } + require(ints == (255 downTo 0).toList()) { ints.toString() } +} + +fun ubyte_rangeUntil() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MIN_VALUE.. 255) error("Something went wrong") + } + require(ints == (0..<255).toList()) { ints.toString() } +} + +fun ubyte_rangeTo2() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MIN_VALUE..UByte.MAX_VALUE step 2) { + ints.add(b.toInt()) + if (++counter > 256) error("Something went wrong") + } + require(ints == (0..255 step 2).toList()) { ints.toString() } +} + +fun ubyte_downTo2() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MAX_VALUE downTo UByte.MIN_VALUE step 2) { + ints.add(b.toInt()) + if (++counter > 256) error("Something went wrong") + } + require(ints == (255 downTo 0 step 2).toList()) { ints.toString() } +} + +fun ubyte_rangeUntil2() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MIN_VALUE.. 255) error("Something went wrong") + } + require(ints == (0..<255 step 2).toList()) { ints.toString() } +} + +fun ubyte_rangeTo3() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MIN_VALUE..UByte.MAX_VALUE step 3) { + ints.add(b.toInt()) + if (++counter > 256) error("Something went wrong") + } + require(ints == (0..255 step 3).toList()) { ints.toString() } +} + +fun ubyte_downTo3() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MAX_VALUE downTo UByte.MIN_VALUE step 3) { + ints.add(b.toInt()) + if (++counter > 256) error("Something went wrong") + } + require(ints == (255 downTo 0 step 3).toList()) { ints.toString() } +} + +fun ubyte_rangeUntil3() { + var counter = 0 + val ints = mutableListOf() + for (b in UByte.MIN_VALUE.. 255) error("Something went wrong") + } + require(ints == (0..<255 step 3).toList()) { ints.toString() } +} + +fun ushort_rangeTo() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MIN_VALUE..UShort.MAX_VALUE) { + ints.add(b.toInt()) + if (++counter > 65536) error("Something went wrong") + } + require(ints == (0..65535).toList()) { ints.toString() } +} + +fun ushort_downTo() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MAX_VALUE downTo UShort.MIN_VALUE) { + ints.add(b.toInt()) + if (++counter > 65536) error("Something went wrong") + } + require(ints == (65535 downTo 0).toList()) { ints.toString() } +} + +fun ushort_rangeUntil() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MIN_VALUE.. 65535) error("Something went wrong") + } + require(ints == (0..<65535).toList()) { ints.toString() } +} + +fun ushort_rangeTo2() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MIN_VALUE..UShort.MAX_VALUE step 2) { + ints.add(b.toInt()) + if (++counter > 65536) error("Something went wrong") + } + require(ints == (0..65535 step 2).toList()) { ints.toString() } +} + +fun ushort_downTo2() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MAX_VALUE downTo UShort.MIN_VALUE step 2) { + ints.add(b.toInt()) + if (++counter > 65536) error("Something went wrong") + } + require(ints == (65535 downTo 0 step 2).toList()) { ints.toString() } +} + +fun ushort_rangeUntil2() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MIN_VALUE.. 65535) error("Something went wrong") + } + require(ints == (0..<65535 step 2).toList()) { ints.toString() } +} + +fun ushort_rangeTo3() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MIN_VALUE..UShort.MAX_VALUE step 3) { + ints.add(b.toInt()) + if (++counter > 65536) error("Something went wrong") + } + require(ints == (0..65535 step 3).toList()) { ints.toString() } +} + +fun ushort_downTo3() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MAX_VALUE downTo UShort.MIN_VALUE step 3) { + ints.add(b.toInt()) + if (++counter > 65536) error("Something went wrong") + } + require(ints == (65535 downTo 0 step 3).toList()) { ints.toString() } +} + +fun ushort_rangeUntil3() { + var counter = 0 + val ints = mutableListOf() + for (b in UShort.MIN_VALUE.. 65535) error("Something went wrong") + } + require(ints == (0..<65535 step 3).toList()) { ints.toString() } +} + +fun box(): String { + ubyte_rangeTo() + ubyte_downTo() + ubyte_rangeUntil() + + ubyte_rangeTo2() + ubyte_downTo2() + ubyte_rangeUntil2() + + ubyte_rangeTo3() + ubyte_downTo3() + ubyte_rangeUntil3() + + + ushort_rangeTo() + ushort_downTo() + ushort_rangeUntil() + + ushort_rangeTo2() + ushort_downTo2() + ushort_rangeUntil2() + + ushort_rangeTo3() + ushort_downTo3() + ushort_rangeUntil3() + + return "OK" +} diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java index ae6b714e26c26..3d7d8a9a2d0a2 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/JvmAbiConsistencyTestBoxGenerated.java @@ -48250,6 +48250,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java index fe0e04370d25a..7f2f47b1df521 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java @@ -45334,6 +45334,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java index 77e24a6095155..647385db1c8fe 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java @@ -48250,6 +48250,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java index 10ad1e3d64bf5..3adbc9a52fdd0 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java @@ -48250,6 +48250,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java index 8d5f68cf4a233..60028c82daf73 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/inlineScopes/FirBlackBoxCodegenTestWithInlineScopesGenerated.java @@ -48250,6 +48250,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 08b8f94c599a4..84261bbab4cda 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -38498,6 +38498,11 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { runTest("compiler/testData/codegen/box/ranges/unsigned/outOfBoundsInMixedContains.kt"); diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java index 785a2bdd05604..32855d4472bfe 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsCodegenBoxTestGenerated.java @@ -37154,6 +37154,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java index 81ab4fca1c7ca..2eb6c7e044c78 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/fir/FirJsES6CodegenBoxTestGenerated.java @@ -37154,6 +37154,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java index 1ea9088895e1e..1a36ed6313d3b 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsCodegenBoxTestGenerated.java @@ -36496,6 +36496,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java index 64b47c6e1789e..8d6e9f6e96e3c 100644 --- a/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java +++ b/js/js.tests/tests-gen/org/jetbrains/kotlin/js/test/ir/IrJsES6CodegenBoxTestGenerated.java @@ -36496,6 +36496,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java index 79762b2752ff4..2fedbfe2c8e5f 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestGenerated.java @@ -40374,6 +40374,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java index cda2afe463a2d..1b782f403163c 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/FirNativeCodegenBoxTestNoPLGenerated.java @@ -41294,6 +41294,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java index 0df643c1bcf1a..0490ffd63d826 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestGenerated.java @@ -38783,6 +38783,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java index 9f72625e433b1..36d5da4eda5bf 100644 --- a/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java +++ b/native/native.tests/tests-gen/org/jetbrains/kotlin/konan/test/blackbox/NativeCodegenBoxTestNoPLGenerated.java @@ -39690,6 +39690,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java index d9de12728677a..ae9fb9d3d86d1 100644 --- a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java +++ b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/FirWasmJsCodegenBoxTestGenerated.java @@ -37016,6 +37016,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() { diff --git a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java index bd14f8236edd4..9ea7e83f57c21 100644 --- a/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java +++ b/wasm/wasm.tests/tests-gen/org/jetbrains/kotlin/wasm/test/K1WasmCodegenBoxTestGenerated.java @@ -36358,6 +36358,12 @@ public void testKt36953_continue() { runTest("compiler/testData/codegen/box/ranges/unsigned/kt36953_continue.kt"); } + @Test + @TestMetadata("kt67383.kt") + public void testKt67383() { + runTest("compiler/testData/codegen/box/ranges/unsigned/kt67383.kt"); + } + @Test @TestMetadata("outOfBoundsInMixedContains.kt") public void testOutOfBoundsInMixedContains() {