Skip to content

tclsh/wish: mk install builds the test interpreters; harnesses say wh… - #603

Merged
staalmannen merged 1 commit into
mainfrom
claude/upgrade-ape-c-library-mmZGd
Oct 7, 2026
Merged

staalmannen merged 1 commit into
mainfrom
claude/upgrade-ape-c-library-mmZGd

Conversation

@staalmannen

Copy link
Copy Markdown
Owner

…ich they are

mk distclean' removed cmd/tclsh/tcltest -- it is in that mkfile's CLEANFILES -- and mk install' did not rebuild it, because it was a V: target reachable from nothing. The next whole-suite run therefore used plain tclsh, where `package require tcl::test' fails:

before: Total 68118 Passed 62138 Skipped 5916 Failed 64
after: Total 66970 Passed 55700 Skipped 11233 Failed 37

mutex.test requires the package at the top level and brodnik.test's try {package require tcl::test}' has no handler clause, so both abort on that line -- which is the Test files exiting with errors' entry that named the cause. Everything constrained on a testing command skipped, and the failure count FELL by 27.

tcltest is a file target with `install:V: tcltest' beside it now; every V: rule for a target runs in Plan 9 mk, so it is built beside tclsh without being installed into $BIN. cmd/wish/tktest had the same asymmetry -- its clean:V: removes it -- and gets the same fix.

tcl-runall.tcl REFUSES to run without tcl::test, naming the two commands that fix it, with $APEXP_TCL_ANYSHELL=1 as the escape for asking what the installed tclsh does. tk-runall.tcl warns instead, since no Tk file aborts and only comparability is lost; its marker is testbitmap, which tkTest.c:222 registers unconditionally where testmetrics and testmenubar are behind platform ifdefs.

Also recorded in CLAUDE.md: structalign-test's three runs (14 failures under pcc -9', 0 under pcc', section 8 passing in both), and cfront no longer faulting at pc=0x280db8 -- it exits 5 with real C++ diagnostics and its output grew 1265 -> 5747 bytes, which is the name' 144 -> 152 prediction confirmed behaviourally. pcc -9' is the one command that would separate -J from the sualign fix there.

Claude-Session: https://claude.ai/code/session_01WGAwvvTwDg2yknFkmZ3qzs

…ich they are

`mk distclean' removed cmd/tclsh/tcltest -- it is in that mkfile's
CLEANFILES -- and `mk install' did not rebuild it, because it was a
V: target reachable from nothing. The next whole-suite run therefore
used plain tclsh, where `package require tcl::test' fails:

  before:  Total 68118  Passed 62138  Skipped  5916  Failed 64
  after:   Total 66970  Passed 55700  Skipped 11233  Failed 37

mutex.test requires the package at the top level and brodnik.test's
`try {package require tcl::test}' has no handler clause, so both
abort on that line -- which is the `Test files exiting with errors'
entry that named the cause. Everything constrained on a testing
command skipped, and the failure count FELL by 27.

tcltest is a file target with `install:V: tcltest' beside it now;
every V: rule for a target runs in Plan 9 mk, so it is built beside
tclsh without being installed into $BIN. cmd/wish/tktest had the
same asymmetry -- its clean:V: removes it -- and gets the same fix.

tcl-runall.tcl REFUSES to run without tcl::test, naming the two
commands that fix it, with $APEXP_TCL_ANYSHELL=1 as the escape for
asking what the installed tclsh does. tk-runall.tcl warns instead,
since no Tk file aborts and only comparability is lost; its marker
is testbitmap, which tkTest.c:222 registers unconditionally where
testmetrics and testmenubar are behind platform ifdefs.

Also recorded in CLAUDE.md: structalign-test's three runs (14
failures under `pcc -9', 0 under `pcc', section 8 passing in both),
and cfront no longer faulting at pc=0x280db8 -- it exits 5 with real
C++ diagnostics and its output grew 1265 -> 5747 bytes, which is the
`name' 144 -> 152 prediction confirmed behaviourally. `pcc -9' is
the one command that would separate -J from the sualign fix there.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WGAwvvTwDg2yknFkmZ3qzs
@staalmannen
staalmannen merged commit ae68ea5 into main Oct 7, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants