# Build outputs.
/out/

# Stray executables produced by ad-hoc `ww build` runs in the project
# root. Real source for these lives under selfhost/test/ as .ww files.
/loop
/sym_link

# Per-module build artifacts. The .combined.ww files under selfhost/
# are intentionally tracked — they're frozen bootstrap inputs.
selfhost/**/*.o
selfhost/**/*.s

# Test-probe leftovers. `ww build` drops .combined.ww next to the
# source; the selfhost/test/ probes don't need them tracked.
selfhost/test/*.combined.ww

# examples/ build outputs. Each example has its own Makefile that
# leaves the .s/.o/.combined.ww plus a stripped binary behind.
examples/**/*.o
examples/**/*.s
examples/**/*.combined.ww
examples/snake/snake

# Stage-0 binaries under bootstrap/<arch>/. Untracked by default —
# committing them is the v1.0 lock per PLAN.md (the new trust
# surface). `make bootstrap-snapshot` populates the dir from the
# current wwstage; `make nocc` verifies they self-reproduce.
# To ship, `git add -f bootstrap/amd64/{ww,w6c,w6a,w6l}` explicitly.
bootstrap/*/*
