test/wcc: retire 990_selfhost; its live assertions move to their owners

Every probe's assertion is owned by a current gate: the compile and
link probes by make all and the bootstrap fixed point; build/run and
cs/ww byte identity by the fixture corpus, test-data-byteid, and
989_lib_byteid; wwstage driver and toolchain parity by 993/995;
checker-diagnostic parity by the corpus' both-stage //ww:error rows.
The wwdump -t/-a dump-parity probes gated the frontend port's
convergence, which the compiler-output identity gates now own end to
end; carrier ran green at retirement.

What was still uniquely alive migrates: smoke.ww becomes corpus
fixture selfhost_smoke (upgraded from a cstage-only build to both
frontends, byte-identical, exit 42 on both toolchains; corpus pins
move to 1,225/763/2,450 with the new identity hash in the same
commit), and sym_link.ww's scope/sym behavior rows become in-language
lib/ww/syntax/symtest.ww under LIBRARY_TESTS. uses.ww (parser-stub-era
-a fixture) and the already-orphaned tagged_ptr_ret.ww/trypromote.ww
retire with the probe corpus. Bootstrap native gates drop to six;
frontend numeric-sync comments now cite the rule-6 mirror instead of
the retired diff probe.
This commit is contained in:
2026-08-07 23:31:59 +09:00
parent cdc8bda721
commit 83c8a4f34f
15 changed files with 84 additions and 1090 deletions

View File

@@ -159,7 +159,7 @@ $(BIN)/w6l: $(W6L_OBJ) | $(BIN)
$(OBJ)/w6l/%.o: cmd/w6l/%.c cmd/w6l/l.h | $(OBJ)/w6l
$(CC) $(CFLAGS) -Icmd/w6l -c -o $@ $<
# ---- ww-side wwdump (the lexer port, exercised by 990_selfhost) --------
# ---- ww-side wwdump (the frontend dump tool; oracle for 950/994) -------
# Built via the user-facing ww driver. The frontend (lex, tok, ast,
# parse, typ, sym) is the `syntax` package in lib/ww/syntax/; the
# compiler-only bits (check, cgen*) stay in selfhost/cmd/wcc/. Output named wwdump_ww
@@ -403,7 +403,7 @@ BYTEID_WRAPPER_SOURCES = test/wcc/631_def_neg_global.c \
test/wcc/989_m2wwi_run.c test/wcc/989_structlocal_frame.c \
test/wcc/989_wwileaf_run.c test/wcc/989_lib_byteid.c
BOOTSTRAP_WRAPPER_SOURCES = test/wcc/950_selfcheck.c \
test/wcc/990_selfhost.c test/wcc/991_w6a_ww.c \
test/wcc/991_w6a_ww.c \
test/wcc/992_w6l_ww.c test/wcc/993_ww_ww.c \
test/wcc/994_w6c_ww.c test/wcc/995_self_rebuild.c
PLATFORM_WRAPPER_SOURCES = test/wcc/996_dyn_ww.c
@@ -438,6 +438,7 @@ $(BIN)/test_%: test/wcc/%.c test/wcc/wwtestpkg.h $(WRAPPER_TOOLS) | $(BIN)
# launchers added no assertion beyond this exit status.
LIBRARY_TESTS = lib/errors/errnotest.ww lib/ascii/asciitest.ww \
lib/ww/syntax/toktest.ww lib/ww/syntax/asttest.ww \
lib/ww/syntax/symtest.ww \
lib/strconv/test/ftostest.ww lib/strconv/test/stoftest.ww \
lib/strconv/test/inttest.ww lib/strings/stringstest.ww \
lib/bytes/bytestest.ww lib/encoding/utf8/utf8test.ww \
@@ -576,7 +577,7 @@ test-lang-byteid: $(BIN)/ww $(BIN)/w6c $(BIN)/w6c_ww
# .s and their both-stage reject parity is owned by the fixture corpus.
DATABYTEID_DIR = $(OUT)/databyteid
DATABYTEID_FILES = $(wildcard test/wcc/data/*/case.ww)
DATABYTEID_EXPECTED_MIN = 910
DATABYTEID_EXPECTED_MIN = 911
# Known cs!=ww divergences (loud over blind, the 989_lib_byteid DIVERGE
# discipline): each entry must still build on both stages AND still differ.
# When a compiler fix lands the entry fails demanding graduation out of