byte :: i8; ubyte :: u8; short :: i16; ushort :: u16; int :: i32; uint :: u32; long :: i64; ulong :: u64; short_float :: f16; float :: f32; double :: f64; long_double :: f128; usize :: u64; array :: (t:type) -> type { return struct { ptr : *t; length : usize; }; }; array_int :: array(u64); array_int1 :: array(u64); array_int2 :: array(i64); main :: () -> void { print_u64 (if array_int == array_int1 1 else 0); print_u64 (if array_int == array_int2 1 else 0); }; comptime { main(); };