Flash 31 lines
// `**` array repetition: `[_]u8{0} ** SIZE` builds an array by repeating a
// comptime-known operand — the canonical zero-init for fixed buffers, lookup
// tables, and pointer slots. The shapes here are the load-bearing ones:
// a struct-field default sized by a named constant, the anonymous-tuple
// form `.{0} ** N`, a typed non-u8 element (`[_]?*T{null} ** 64`), and a
// parenthesized count expression.
//
// Lives in examples/register/ (post-v0.5 grammar — the frozen stage0
// bootstrap compiler cannot parse it; gated by `zig build fixpoint`).
pub const SIZE u64 = 4096
pub const KlogRing = struct {
buf [SIZE]u8 = [_]u8{0} ** SIZE,
head u64 = 0,
}
pub const Dirent = struct {
name [32]u8 = .{0} ** 32,
d_type u8 = 0,
_pad [7]u8 = .{0} ** 7,
}
pub const TaskStruct = struct {
pid u32 = 0,
}
pub var task [64]?*mut TaskStruct = [_]?*mut TaskStruct{null} ** 64
var pool [1024 * 1024]u8 align(4096) = [_]u8{0} ** (1024 * 1024)