slovo/tests/integer-to-string.surface.lower
2026-05-22 08:38:43 +02:00

74 lines
1.7 KiB
Plaintext

program main
fn i32_zero_text() -> string
call std.num.i32_to_string
int 0
fn i32_negative_text() -> string
call std.num.i32_to_string
int -7
fn i32_high_text() -> string
call std.num.i32_to_string
int 2147483647
fn i64_low_text() -> string
call std.num.i64_to_string
i64 -9223372036854775808
fn i64_high_text() -> string
call std.num.i64_to_string
i64 9223372036854775807
fn i64_beyond_i32_text() -> string
call std.num.i64_to_string
i64 2147483648
fn main() -> i32
call std.io.print_string
call i32_zero_text
call std.io.print_string
call i32_negative_text
call std.io.print_string
call i32_high_text
call std.io.print_string
call i64_low_text
call std.io.print_string
call i64_high_text
call std.io.print_string
call i64_beyond_i32_text
if
binary =
call std.string.len
call i64_high_text
int 19
int 0
int 1
test "i32 zero to string"
binary =
call i32_zero_text
string "0"
test "i32 negative to string"
binary =
call i32_negative_text
string "-7"
test "i32 high to string"
binary =
call i32_high_text
string "2147483647"
test "i32 negative string length"
binary =
call std.string.len
call i32_negative_text
int 2
test "i64 low to string"
binary =
call i64_low_text
string "-9223372036854775808"
test "i64 high to string"
binary =
call i64_high_text
string "9223372036854775807"
test "i64 beyond i32 to string"
binary =
call i64_beyond_i32_text
string "2147483648"
test "i64 low string length"
binary =
call std.string.len
call i64_low_text
int 20