Files
spl/stage1/test12.spl

28 lines
508 B
Plaintext

fn main() i32 {
/* address-of and postfix deref */
var x := 42;
var p := &x;
var v := p.*;
if v != 42 { ret 1; }
/* null pointer */
var np: *i32 = null;
if np != null { ret 2; }
if np == null {} else { ret 3; }
/* pointer to struct — auto-deref on .field */
type Point = struct {
a: i32,
b: i32,
};
var pt: Point;
pt.a = 10;
pt.b = 20;
var pp := &pt;
if pp.a != 10 { ret 4; }
if pp.b != 20 { ret 5; }
ret 0;
}