AtlatestRepositoryfolio
folio / tree / test / transcripts / f2aarm5-toolchain-0.18.5.txt
1
F2a ARM 5 -- THE 0.18.5+ BRANCH OF THE READER-PATHOLOGY ASSERTION2
================================================================4
WHY THIS FILE EXISTS. Arm 5's reader-pathology check is toolchain-conditional:5
below sigil 0.18.5 it REQUIRES the documented t-f6e098 pathology (contained by a6
ulimit), at 0.18.5 and above it REQUIRES a clean diagnostic. The committed7
gate-green.txt exercises the FIRST branch, because the pinned compiler is8
0.18.3-dev. Until this run the SECOND branch had never executed -- an untested9
conditional branch inside a regression arm is the vacuous-check family this phase10
spent its time hunting. The arm asserted it would flip; nothing had shown it11
does. It does.13
THE INSTRUMENT, AND WHAT IT MAY NOT BE USED FOR. Released sigil 0.18.5 CARRIES14
the LICM `(not x)` wrong-code miscompile -- this binary is literally the15
toolchain that built the BLIND folio sitting beside it in the same reproducer16
directory. It is the correct instrument for the question asked here ("what does17
RELEASED 0.18.5 do with the `(}` shape") and it is NOT a qualification toolchain.18
folio builds at `optimize: 0`, where LICM does not run. Every number below is19
labelled: released 0.18.5, MISCOMPILE PRESENT. A separate XDG_CACHE_HOME is used20
so 0.18.3-dev and 0.18.5 artifacts never share one cache.22
F2a is re-qualified when 0.18.6 ships -- the first toolchain carrying the LICM23
fix, and the right qualification target.25
THE MATCHED PAIR, same fixture (test/fixtures/f2a-reader-oom.sgd, `@p[(]{trigger}`),26
same `ulimit -v 1500000`, same passive parse path; only the compiler differs:28
0.18.3-dev+0ed19fd1 FATAL: Out of memory allocating 56 bytes29
(allocated: 1180309387, threshold: 2360618774)31
0.18.5 (a256db1d) .../f2a-reader-oom.sgd:8:3: sigil/doc: unexpected EOF;32
missing ']'; while delimiting this argument group the33
standard reader reported: read-syntax:34
.../f2a-reader-oom.sgd:8:6: unexpected '{' (a '(' named35
there is this parser's substitution for the opening '[')36
-- LOCATED, and it explains the substitution that makes37
the underlying reader message confusing. EXIT 0.39
t-f6e098's record is accurate: it is genuinely fixed in 0.18.5.41
NOTE THE MARKER BELOW. A selective run prints F2A_GATE_ARM_5_GREEN and can never42
print F2A_GATE_GREEN, so this file cannot be quoted as a gate pass.43
================================================================44
=== F2a gate ===============================================45
repo : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector @ 7d838e21dbf1f95f95f07924f60bdf1e3d747ade46
compiler : sigil 0.18.5 (a256db1d)47
sigil-doc : 6d090f36e07236c8ee09044f60cdb19f932c4afd v0.1.2 (via dev-redirects)48
sigil-doc dirty : 0 files49
python3 : Python 3.11.14 (via guix shell python)50
compiler path : /home/daviwil/reproducers/folio-blind-scanner-2026-08-11/sigil-0.18.5-static51
redirects : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector/dev-redirects.sgl52
sigil-doc dir : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector/../sigil-doc53
stdlib root : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector/../sigil/packages/sigil-stdlib/src54
XDG_CACHE_HOME : /tmp/f2a-cache-18555
============================================================56
--- arm 1: build57
arm 1 OK: bundle built, 131 modules58
--- arm 5: diagnostics59
(BOM fixture: 3 divergent node span(s) -- byte != scalar at the very first node)60
arm 5 reader-pathology: compiler 0.18.5 >= 0.18.5, clean diagnostic REQUIRED and observed61
arm 5 OK: located diagnostics for parse-error and no-language-header; BOM/shebang/corpus clean and byte-verified63
F2A_GATE_ARM_5_GREEN (SELECTIVE RUN -- this is NOT a full gate and must never be quoted as one)