AtlatestRepositoryfolio

folio / tree / test / transcripts / f2aarm5-toolchain-0.18.5.txt

1F2a ARM 5 -- THE 0.18.5+ BRANCH OF THE READER-PATHOLOGY ASSERTION
2================================================================
3
4WHY THIS FILE EXISTS. Arm 5's reader-pathology check is toolchain-conditional:
5below sigil 0.18.5 it REQUIRES the documented t-f6e098 pathology (contained by a
6ulimit), at 0.18.5 and above it REQUIRES a clean diagnostic. The committed
7gate-green.txt exercises the FIRST branch, because the pinned compiler is
80.18.3-dev. Until this run the SECOND branch had never executed -- an untested
9conditional branch inside a regression arm is the vacuous-check family this phase
10spent its time hunting. The arm asserted it would flip; nothing had shown it
11does. It does.
13THE INSTRUMENT, AND WHAT IT MAY NOT BE USED FOR. Released sigil 0.18.5 CARRIES
14the LICM `(not x)` wrong-code miscompile -- this binary is literally the
15toolchain that built the BLIND folio sitting beside it in the same reproducer
16directory. It is the correct instrument for the question asked here ("what does
17RELEASED 0.18.5 do with the `(}` shape") and it is NOT a qualification toolchain.
18folio builds at `optimize: 0`, where LICM does not run. Every number below is
19labelled: released 0.18.5, MISCOMPILE PRESENT. A separate XDG_CACHE_HOME is used
20so 0.18.3-dev and 0.18.5 artifacts never share one cache.
22F2a is re-qualified when 0.18.6 ships -- the first toolchain carrying the LICM
23fix, and the right qualification target.
25THE MATCHED PAIR, same fixture (test/fixtures/f2a-reader-oom.sgd, `@p[(]{trigger}`),
26same `ulimit -v 1500000`, same passive parse path; only the compiler differs:
28 0.18.3-dev+0ed19fd1 FATAL: Out of memory allocating 56 bytes
29 (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 the
33 standard reader reported: read-syntax:
34 .../f2a-reader-oom.sgd:8:6: unexpected '{' (a '(' named
35 there is this parser's substitution for the opening '[')
36 -- LOCATED, and it explains the substitution that makes
37 the underlying reader message confusing. EXIT 0.
39t-f6e098's record is accurate: it is genuinely fixed in 0.18.5.
41NOTE THE MARKER BELOW. A selective run prints F2A_GATE_ARM_5_GREEN and can never
42print F2A_GATE_GREEN, so this file cannot be quoted as a gate pass.
43================================================================
44=== F2a gate ===============================================
45repo : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector @ 7d838e21dbf1f95f95f07924f60bdf1e3d747ade
46compiler : sigil 0.18.5 (a256db1d)
47sigil-doc : 6d090f36e07236c8ee09044f60cdb19f932c4afd v0.1.2 (via dev-redirects)
48sigil-doc dirty : 0 files
49python3 : Python 3.11.14 (via guix shell python)
50compiler path : /home/daviwil/reproducers/folio-blind-scanner-2026-08-11/sigil-0.18.5-static
51redirects : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector/dev-redirects.sgl
52sigil-doc dir : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector/../sigil-doc
53stdlib root : /home/daviwil/Projects/Code/sigil/task-f2a-passive-inspector/../sigil/packages/sigil-stdlib/src
54XDG_CACHE_HOME : /tmp/f2a-cache-185
55============================================================
56--- arm 1: build
57arm 1 OK: bundle built, 131 modules
58--- arm 5: diagnostics
59 (BOM fixture: 3 divergent node span(s) -- byte != scalar at the very first node)
60arm 5 reader-pathology: compiler 0.18.5 >= 0.18.5, clean diagnostic REQUIRED and observed
61arm 5 OK: located diagnostics for parse-error and no-language-header; BOM/shebang/corpus clean and byte-verified
63F2A_GATE_ARM_5_GREEN (SELECTIVE RUN -- this is NOT a full gate and must never be quoted as one)