oden/fine/tests/expression/assignment.fine
John Doty f20f5a5e03 [fine] Assignments!
And new error capabilities!
2024-01-19 19:08:17 -08:00

34 lines
690 B
Text

fun test() -> f64 {
let x = 12;
let y = 13;
let z = 2;
x = y = z;
x
}
// @no-errors
// @compiles-to:
// | function << module >> (0 args, 0 locals):
// | strings (0):
// | code (2):
// | 0: PushNothing
// | 1: Return
// | function test (0 args, 3 locals):
// | strings (0):
// | code (14):
// | 0: PushFloat(12.0)
// | 1: StoreLocal(0)
// | 2: PushFloat(13.0)
// | 3: StoreLocal(1)
// | 4: PushFloat(2.0)
// | 5: StoreLocal(2)
// | 6: LoadLocal(2)
// | 7: Dup
// | 8: StoreLocal(1)
// | 9: Dup
// | 10: StoreLocal(0)
// | 11: Discard
// | 12: LoadLocal(0)
// | 13: Return
// |
// @eval: Float(2.0)