slovo/tests/u32-numeric-primitive.surface.lower
2026-05-22 08:38:43 +02:00

58 lines
1.1 KiB
Plaintext

program main
fn base() -> u32
u32 1073741824
fn adjust(value: u32, delta: u32) -> u32
binary +
var value
var delta
fn doubled(value: u32) -> u32
binary *
var value
u32 2
fn local_total() -> u32
local let offset: u32
u32 15
call adjust
call doubled
call base
var offset
fn high_enough(value: u32) -> bool
if
binary >
var value
u32 2147483660
binary <
var value
u32 2147483670
bool false
fn exact_u32() -> bool
binary =
call local_total
u32 2147483663
fn main() -> i32
call std.io.print_u32
call local_total
if
call high_enough
call local_total
int 0
int 1
test "u32 arithmetic returns exact fixture value"
call exact_u32
test "u32 comparison works in predicates"
call high_enough
call local_total
test "u32 division and ordering"
if
binary >=
binary /
call local_total
u32 3
u32 715827887
binary <=
binary /
call local_total
u32 3
u32 715827887
bool false