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

60 lines
1.2 KiB
Plaintext

program main
fn base() -> u64
u64 4294967296
fn adjust(value: u64, delta: u64) -> u64
binary +
var value
var delta
fn doubled(value: u64) -> u64
binary *
var value
u64 2
fn local_total() -> u64
local let offset: u64
u64 19
call adjust
binary /
call doubled
call base
u64 2
var offset
fn high_enough(value: u64) -> bool
if
binary >
var value
u64 4294967300
binary <
var value
u64 4294967320
bool false
fn exact_u64() -> bool
binary =
call local_total
u64 4294967315
fn main() -> i32
call std.io.print_u64
call local_total
if
call high_enough
call local_total
int 0
int 1
test "u64 arithmetic returns exact fixture value"
call exact_u64
test "u64 comparison works in predicates"
call high_enough
call local_total
test "u64 division and ordering"
if
binary >=
binary /
call local_total
u64 5
u64 858993463
binary <=
binary /
call local_total
u64 5
u64 858993463
bool false