mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-08 15:53:19 +00:00
19 lines
411 B
Kotlin
Vendored
19 lines
411 B
Kotlin
Vendored
// !LANGUAGE: -ProhibitOperatorMod
|
|
|
|
class A() {
|
|
var x = 5
|
|
}
|
|
|
|
operator fun A.modAssign(y: Int) { throw RuntimeException("mod has been called instead of rem") }
|
|
operator fun A.remAssign(y: Int) { x %= y + 1 }
|
|
|
|
fun box(): String {
|
|
val original = A()
|
|
val a = original
|
|
|
|
a %= 2
|
|
if (a !== original) return "Fail 1: $a !== $original"
|
|
if (a.x != 2) return "Fail 2: ${a.x} != 2"
|
|
|
|
return "OK"
|
|
} |