15 lines
366 B
Plaintext
15 lines
366 B
Plaintext
foo = macro[T](addr: &u64, count: u64) []T
|
|
{
|
|
>pointer: &T = #pointer_cast(addr);
|
|
return pointer[..count];
|
|
}
|
|
|
|
[export] main = fn [cc(c)] () s32
|
|
{
|
|
>some_var: u64 = 0xaaaaaaaaaaaaaaaa;
|
|
>result: []&u8 = foo[&u8](&some_var, 1);
|
|
if (#int_from_pointer(result.pointer) != 0xaaaaaaaaaaaaaaaa) #trap();
|
|
if (result.length != 1) #trap();
|
|
return 0;
|
|
}
|