Skip to content

Commit a8715cf

Browse files
committed
1 parent 4930818 commit a8715cf

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ These differ from older Zig versions and are critical to get right:
8686

8787
## Current Status
8888

89-
Full pipeline working: Source → Lex → Parse → Naming → Resolve → TypeCheck → Lower → CodegenC → zig cc. Functions, let/var, assignments, if/else, for loops, literals, binary/unary ops, and calls all compile and run. Type checking validates variable/assignment/return type mismatches, function argument counts and types, ordering comparison operands, and naming conventions. Diagnostics use Rust-style rich format with source context, caret annotations, notes/help/hints, "did you mean?" suggestions, and error count summaries. Missing in lower.zig: for-in, switch, structs, defer, closures, channels, error handling.
89+
Full pipeline working: Source → Lex → Parse → Naming → Resolve → TypeCheck → Lower → CodegenC → zig cc. Implemented end to end: functions (with parameters), let/var, assignments, if/else, all loop forms (`for cond`, `for i in a..b`, `for x in slice`, `for i, v in slice`, break/continue), switch (multi-pattern arms, wildcard, string subjects, `.ok`/`.err` on error unions), structs with Go-style methods (&T/@T/value receivers), non-capturing closures and function values, error unions (`!T`, bare `!`, `try` propagation, `errors.new`), slices (alloc/append/len/index with runtime bounds checks), channels and `run` spawning (user main runs as a green thread). Memory safety: epoch-based generational references with quarantined free lists — stale references always fail their check deterministically; checked dereference costs ~3 ns. Constructs without a lowering (sum types, interfaces, maps, nullable, anonymous structs, capturing closures) produce compile errors instead of miscompiling. Diagnostics use Rust-style rich format with source context, caret annotations, notes/help/hints, "did you mean?" suggestions, and error count summaries.
9090

9191
## Self-Improvement
9292

0 commit comments

Comments
 (0)