//! returns: 0
//! Test read-only data access for `record` types.
record Point {
    x: i32,
    y: i32,
}

record Mixed {
    a: u8,
    b: u16,
    c: u32,
    d: bool,
}

constant ORIGIN: Point = Point { x: 0, y: 0 };
constant P1: Point = Point { x: 100, y: -50 };
constant M1: Mixed = Mixed { a: 255, b: 1000, c: 100000, d: true };

@default fn main() -> i32 {
    assert ORIGIN.x == 0;
    assert ORIGIN.y == 0;

    assert P1.x == 100;
    assert P1.y == -50;

    assert M1.a == 255;
    assert M1.b == 1000;
    assert M1.c == 100000;
    assert M1.d == true;

    return 0;
}
