Skip call to the underlying value of inline class
This commit is contained in:
+16
@@ -0,0 +1,16 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
inline class UInt(val value: Int) {
|
||||
operator fun plus(other: UInt) = UInt(value + other.value)
|
||||
fun otherValue(other: UInt) = other.value
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val a = UInt(10)
|
||||
val b = UInt(20)
|
||||
if (a.otherValue(b) != 20) return "fail 1"
|
||||
|
||||
if ((a + b).value != 30) return "fail 2"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
// !LANGUAGE: +InlineClasses
|
||||
|
||||
inline class UInt(val value: Int)
|
||||
|
||||
fun box(): String {
|
||||
val a = UInt(123)
|
||||
if(a.value != 123) return "fail"
|
||||
|
||||
val c = a.value.hashCode()
|
||||
if (c.hashCode() != 123.hashCode()) return "fail"
|
||||
|
||||
val b = UInt(100).value + a.value
|
||||
if (b != 223) return "faile"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
Reference in New Issue
Block a user