import "libc.hff"; struct Node { link *Node, value T, fn ok(self Node) void { } } struct Bit { fn neg(x T) T { return ~x; } } extern fn main() void { let n Node = {#null, 0}; let n Node = {&n, 1}; let x int #?; printf("n %d\n", n.value); printf("n link %d\n", n.link.value); let x Node = {}; n->ok(); x->ok(); Bit:neg(3); Bit:neg(3); }