forth: LSHIFT/RSHIFT + 32-bit arith truncation + early binding (Hayes 174→268)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Has been cancelled

This commit is contained in:
2026-04-24 22:26:58 +00:00
parent 387a6e7f5d
commit 8e1466032a
7 changed files with 143 additions and 45 deletions

View File

@@ -3,15 +3,15 @@
| metric | value |
| ----------------- | ----: |
| chunks available | 638 |
| chunks fed | 590 |
| total | 590 |
| pass | 174 |
| fail | 0 |
| error | 416 |
| percent | 29% |
| chunks fed | 638 |
| total | 638 |
| pass | 268 |
| fail | 2 |
| error | 368 |
| percent | 42% |
- **Source**: `gerryjackson/forth2012-test-suite` `src/core.fr`
- **Generated**: 2026-04-24T21:06:54Z
- **Generated**: 2026-04-24T22:26:31Z
- **Note**: completed
A "chunk" is any preprocessed segment ending at a `}T` (every Hayes test
@@ -23,8 +23,6 @@ covers tests whose `->` / `}T` comparison mismatched.
### Chunk cap
`conformance.sh` processes the first `$MAX_CHUNKS` chunks (default
**590**). Past that, `core.fr` ships tests that rely on unsigned
integer wrap-around (e.g. `COUNT-BITS` using `BEGIN DUP WHILE … 2*
REPEAT`), which never terminates on our bignum-based interpreter. The
cap should rise as those tests unblock — run with `MAX_CHUNKS=639
./conformance.sh` once they do.
**638**, i.e. the whole Hayes Core file). Lower the cap temporarily
while iterating on primitives if a regression re-opens an infinite
loop in later tests.