hylo
hylo copied to clipboard
Generic if-let failurea
on requirements-machine
extension Optional where T: Movable {
public fun postfix!() sink -> T {
if let r: T = self { return r }
else { fatal_error("force unwrapping nil") }
}
}
public fun main() {
let x = 42 as Optional<Int>
print(x!) // fatal error
}
extension Optional where T: Movable {
public fun postfix!() sink -> T {
var me = self
if let r: T = me { return r }
else { fatal_error("force unwrapping nil") }
}
}
public fun main() {
let x = 42 as Optional<Int>
print(x!) // prints garbage, for me
}