From cd2fda4351eb073f4b7f691834193d5fc3f62e2a Mon Sep 17 00:00:00 2001 From: Robert Allan James Date: Sat, 12 Sep 2026 21:56:37 -0400 Subject: [PATCH] =?UTF-8?q?Add=20mkcapsule=20--resolve:=20build-time=20cla?= =?UTF-8?q?im=20registry=20for=20capsule=20block=20collisions=20(FABRIC-3.?= =?UTF-8?q?md=20=C2=A7XXIV)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Traced what a "Block NNNN" collision actually means before designing a fix for it: capsule_loader.c's block-write path routes through the generic block-subsystem API, which kernel_main.c registers as two devices in a fixed order -- the volatile ramdrive first (LBN 2048-3071), then Artemis's real virtio-blk device immediately after (LBN 3072+, backed by disk/artemis.img). Every capsule this project has lands in Artemis's persistent range, not the ramdrive, and blk_update()'s dirty-marking + repl.c's idle-loop flush write that content through to the real disk file on every boot. A block-number collision is therefore a silent, persistent overwrite of real disk content surviving reboots, not a transient RAM mixup. The existing collision gate (check_block_conflicts(), already a hard non-interactive build failure) already catches capsule-vs-capsule collisions across the whole flat range. The real gap: zero visibility into blocks something other than a capsule owns (Artemis's own non-capsule persistent data), and no device-boundary/capacity awareness at all. Added, scoped step by step before writing any code: - tools/capsule-claims.txt -- derived, auto-created/regenerated, git-ignored. Lets --resolve tell "this capsule's own content changed" apart from "genuinely new collision with something else." - tools/capsule-reserved.txt -- human-authored, git-tracked, seeded with nothing yet rather than guessed at. Checked by both the plain build gate (new check_reserved_conflicts()) and --resolve. - tools/patches/ -- git-tracked, one file per accepted interactive renumber; a structured old->new block list, not a generic diff, since that's the only thing a renumber ever changes. - mkcapsule --resolve -- the only interactive mkcapsule mode, a deliberate separate invocation from the plain build path (which stays non-interactive so CI never blocks on a prompt). Suggests a renumbering that preserves a capsule's own existing block spacing, prompts y/N, rewrites the .4th source in place on acceptance. Found and fixed a real bug during verification: the registry's empty-block-list case (workload-5.4th, zero Block headers) serialized with a stray trailing space that the reader parsed back as a phantom block 0, causing spurious re-registration every run -- caught by testing idempotency directly, not assuming a clean first run meant it worked. Verified: isolated collision tests confirm both accept and reject paths, confirm a resolved collision doesn't re-prompt the other side, confirm reserved-range collisions are caught by both --resolve and the plain build gate. Full 3-architecture rebuild via the real Makefile.starkernel succeeded clean; amd64 boots with an unchanged dict_hash/capsule_hash from every prior boot this session. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01EXieurDfDSsDFdnSyusuWo --- .gitignore | 6 + FABRIC-3.md | 105 + capsules/BLOCK_MAP.md | 2 +- disk/artemis.img | Bin 31457280 -> 31457280 bytes .../amd64/qemu-amd64-20260912-215248.log | 9035 +++++++++++++++++ tools/capsule-reserved.txt | 26 + tools/mkcapsule.c | 479 +- 7 files changed, 9651 insertions(+), 2 deletions(-) create mode 100644 logs/20260912-215248/amd64/qemu-amd64-20260912-215248.log create mode 100644 tools/capsule-reserved.txt diff --git a/.gitignore b/.gitignore index 82e3c07e..02a67222 100644 --- a/.gitignore +++ b/.gitignore @@ -68,3 +68,9 @@ tools/kconfig/.mconf.* tools/kconfig/.qconf.* /.config /.config.old + +# mkcapsule --resolve claim registry (FABRIC-3.md SXXIV) — pure derived +# state, auto-created/regenerated, never a source of truth. Its sibling +# tools/capsule-reserved.txt (human-authored) and tools/patches/ (decision +# record) are NOT ignored — those are tracked deliberately. +/tools/capsule-claims.txt diff --git a/FABRIC-3.md b/FABRIC-3.md index 008963e4..d63a8b51 100644 --- a/FABRIC-3.md +++ b/FABRIC-3.md @@ -3096,3 +3096,108 @@ the current `capsules/` tree or `doe.4th`'s own CSV header -- corrected to descr actually there. Verified: `mkcapsule --lint` clean, all 3 architectures build with zero new warnings, amd64 boots with an unchanged dict_hash/capsule_hash from every prior boot this session. +## XXIV. `mkcapsule --resolve`: block-number collisions are silent persistent-disk corruption, +not a transient RAM mixup -- traced fully, then given a real build-time fix (2026-09-12) + +**Scoping "add 3 workloads into the std79 factorial" surfaced a much bigger, longstanding +question.** Discussing which workloads to add and how (a genuine 5th factor was identified in +the process -- workload identity × placement mode, both worth varying independently, not +guessed at) led directly to Captain Bob's own instinct: "block collision is becoming an issue." +That was worth tracing to ground truth before designing anything, not just reassured against. + +**`Block NNNN` is not a compile-time label -- it's a real, addressed, persistent storage +write, confirmed by reading the actual write path rather than assumed from the file format +convention.** `capsule_loader.c`'s block-write function (`write_ramdrive_block`, a legacy name -- +its behavior is fully generic) calls `blk_get_buffer()`/`blk_update()`, the same block-subsystem +API every device uses. `kernel_main.c`'s own boot sequence registers exactly two devices, in a +fixed, confirmed order: the volatile ramdrive first (`capsule_blk_init`, LBN 2048-3071, resets +every boot), then Artemis's real virtio-blk device immediately after (LBN 3072 onward, ~22,998 +blocks per an earlier boot log) -- backed by the actual `disk/artemis.img` this repo has carried +in git all session. Every capsule this project has (`acl-std79.4th` at 4023+, the workload +capsules at 4406+/4606+, `messaging.4th` at 5003+) lands in Artemis's range, not the ramdrive. +`blk_update()` marks the target block dirty in Artemis's real BAM; `repl.c`'s idle loop +(`blk_vm_flush_all()`, ~1 Hz) writes dirty blocks through to the actual disk file. **A block- +number collision between two capsules is therefore a silent, persistent overwrite of real disk +content, on every boot, surviving reboots until something else happens to rewrite that block --** +not a transient RAM mixup that clears on restart, which is what "collision" had been read as +before this was traced. + +**The existing collision gate (`check_block_conflicts()`, already a hard, non-interactive build +failure -- not new) does catch this, for capsule-vs-capsule collisions specifically.** It's blind +to device topology entirely (treats every `Block NNNN` across every `.4th` file as one flat +integer space), which happens to be an accurate model of the real system's own flat LBN +addressing. The real gap: it only knows about `.4th` files it scans. It has zero visibility into +Artemis's own *non-capsule* persistent data (identity records, home-blocks fence, etc. -- real +data, not a `.4th` source file), and no awareness of the ramdrive/Artemis device boundary or +capacity limits at all. + +**Built, scoped step by step with Captain Bob before any code, per the same discipline as every +other fix this session:** a proper build-time linker for capsule block claims, not a runtime +mechanism -- "mkcapsule is our secret sauce linker" was the framing that stuck. Three pieces, +deliberately separated by persistence model: + +- **`tools/capsule-claims.txt`** -- fully derived, auto-created/regenerated, git-ignored. + Capsule name → content hash → claimed blocks. Exists so the interactive resolver (below) can + tell "this capsule's own content changed" apart from "this is a genuinely new collision with + something else" -- the plain build gate doesn't need this distinction (it just re-scans and + hard-fails every time), only the interactive tool does. +- **`tools/capsule-reserved.txt`** -- human-authored, git-tracked, seeded with nothing yet + (deliberately -- guessing at Artemis's real block usage would be worse than admitting it isn't + known yet). Format: `START-END description` per line. Both the plain build gate and + `--resolve` check every capsule's blocks against it. +- **`tools/patches/`** -- git-tracked, one file per *accepted* interactive renumber. Not a + generic line-diff (a renumber only ever changes `Block N` integers, never content, so a + structured `old -> new` list is more directly useful than a diff would be) -- a permanent + decision record, separate from the disposable registry. + +**`mkcapsule --resolve `** is the only interactive mkcapsule mode, and deliberately a +*separate* invocation from the plain `make` build path -- a human runs it on purpose when adding +something new; CI/unattended builds never see a prompt. Auto-creates the claims registry from a +fresh scan if missing. For each capsule: unchanged (same hash, same blocks as last run) is a +silent no-op; changed-but-still-free is a silent re-claim (logged, no prompt -- moving your own +capsule's own content around isn't a conflict); a genuine collision (with another capsule's +*current* blocks, or a reserved range) computes a suggested renumbering that preserves the +capsule's own existing block spacing (shifts the whole set by one delta, rather than reassigning +each block independently, so `workload-3.4th`'s 4606,4615,4625,...,4665 convention survives a +renumber intact) and prompts y/N. Accepting rewrites the `.4th` source in place and writes the +patch record; rejecting or finding no free shift within a bounded search leaves everything +untouched and marks the run failed. + +**The plain build gate gained the reserved-range check too** (`check_reserved_conflicts()`, +same hard-fail, non-interactive shape as the existing capsule-vs-capsule gate) -- closing half +of the visibility gap immediately, with the other half (auto-discovering Artemis's own real +block usage) left honestly unseeded rather than guessed at. + +**A real bug found and fixed during verification, not just a clean first pass:** the registry's +own empty-block-list case (`workload-5.4th`, a raw code capsule with zero `Block N` headers) +serialized with a stray trailing space, which the reader parsed back as a phantom block `0` -- +causing every re-run to spuriously "re-register" that one capsule forever. Caught by testing +idempotency directly (run `--resolve` twice with nothing changed, expect zero registrations the +second time) rather than assuming a clean first run meant the mechanism was correct. Fixed in +both the writer (no trailing space when a capsule has zero blocks) and the reader (defensively +skip whitespace-only tokens regardless). + +**Verified end to end, not just compiled:** an isolated test directory with a deliberate +capsule-vs-capsule collision confirmed both the reject path (declines, exits non-zero, zero +file changes) and the accept path (rewrites the source in place, writes the patch, and -- +correctly -- does *not* re-prompt for the second capsule in the same collision once the first +capsule's move already cleared it, since the live in-memory block state updates immediately +after an accepted renumber). A second isolated test confirmed reserved-range collisions are +caught identically by both `--resolve` and the plain build gate. Full 3-architecture rebuild via +the real `Makefile.starkernel` (not just a standalone `gcc` compile) succeeded clean; amd64 +boot-verified with an unchanged dict_hash/capsule_hash from every prior boot this session. + +**Explicitly deferred, not built:** a CI-side idea Bob raised -- on a missing registry or a +fresh conflict, check whether an existing patch in `tools/patches/` already resolves it before +failing the build outright. Reasonable, but needs its own careful design (reliably matching a +stored patch to a specific conflict) rather than folding into this pass. Also noted for later, +not now: Bob's idea of an LLM capsule someday improving the renumbering suggestion itself, once +`--resolve` has real mileage on it. + +**Next step, per Bob's own call:** `mkcapsule.c` has grown to 1600+ lines across genuinely +separable jobs (scanning/parsing, lint, manifest, conflict resolution, C-source codegen) and is +due for a decomposition into smaller logical units -- an ETL shape (extract: scan/parse capsule +files; transform: lint/manifest/conflict-resolve; load: C-source generation) was the starting +idea, to be done as its own clean pass once the workload-into-factorial design (the actual +reason this was scoped) resumes. + diff --git a/capsules/BLOCK_MAP.md b/capsules/BLOCK_MAP.md index 303d8055..938d76b4 100644 --- a/capsules/BLOCK_MAP.md +++ b/capsules/BLOCK_MAP.md @@ -1,5 +1,5 @@ # Capsule Block Manifest — Auto-generated - + diff --git a/disk/artemis.img b/disk/artemis.img index a8ab797cb31734c66eb065db65fc14e45e8075e8..513dc0a0e57db48ee1b5d5a83e97e4987acb9169 100644 GIT binary patch delta 6600 zcmeH~YfzNu700{qh%7G4D$DL-g%Z3h+muUM3u0Z0g<8xEm!MoGh{1T*EJ8)&WCB^z zSA!Z5DP7Xkg(axKi@S1jS5vVhCMtEAQ#QJP~t(xhWX;jXZF`vtk#8d;bMwx(8tN}Uj zAn_QkU&}MD87UEEOhn}}`%DV1$U+9W9b9DWw%92xujTQ5_H6_|Jb^C}c!Rxgz} zI&4aHEqnHE>Ji6#;fsEI#o-EHG`ZQnNAs8Y&U!r+C6*iW@e z!~We9Gv<+E4ao9mGRJtLr3>wDwGVUnoL2Swv7I)>ICjvlf)19Ao*Bm+gAnwm>i7xF z;RM-jT|a@ei_=5#h6xy%YN@0l_m)b{E_B)m9|Bxa@YERM!yI=r71}u?V4pu9L-Z)f zRdq&6?&frzR`D21nF9M4bN8bZr$M$H41Mg$-Kz$;z(11UK(&UY7%Y zwC~ugN0>Sc?EclYR7g0;!#gZk2n;vC5fGu4%h+}0>yP>FF!}Tpj^s%A!}u!JUc|Hg zK6Ka3?_0rkL2Zz-!}C9U3FlV>nKep3Rt=A>a>*wKEXEAXPxp@+_zrkZ z!ajcdd@;_?!WZhWohe4r3S|C)E|j7T zLa6cbylxud)Itq=uILPna2n*{pvohjj(QgXT-Drt1LqyMNW&sG7Pfk%C%KN>R+wjP7wFgM|L;2#@{OPp`m7g^dsa31YvIUIXyM2SkX@vZFksk9CxwKAycB&GL+lZJfqQ#@1BC{L@OL~~ zt7hFlO9LIPh5flipN>75qO?+nG)@~NV_QR-vF{u`q&ptoN@GX@xxAs9#*oajE7tk9 zVfpD`%bh_e#SD<^KU>g-<>zZ>IA&yNgJmo=b}xk#0`uS5hbUw%$bGxoFvMQO7pT4a z4bcX$%T}t}@u?Jp3>$yC9iK`Gr@vfr5bd0DunXcXBGMHgzfv}fSk4};zr)|CRmj)} zRb$BHR0CuD^%RBFfNXzbM#pzUYI(?QzZW{NX)`d}cWy)}HiEnoyA4C^7G6_(_CJWW zf}Q1ik!TyprU@s}ot*Z$^VA8<-3NAdYz#{A9LROei6^k%eojAn^8nF@YA&!`!X}l%gEuZf&v+t59${VzY_p zFt8K1A0;{*q&4y+(Gi^f+`vv^?r5+N%?m&&#(=zEHRmMej^lJo<|d-`VDDbJ^Q5Cx z9|a|M9H=BRnUe`sSBXpqa_fpuDQ^bIn{{6hoyF-J<@!#nq7dvg6VIX)*Mf|6Wp-i} zMVyunw-Idsd({h8qKiQ`%|AtS38!sNSr_Im2Rok4K`B;%{5oWA7v?r{da`T_(bZtL zJX1n+4ajYodx);(^z{uN5^V-Mef|}q8$r%`*-f;C(_5GQts5(`f*qPPh*GqH{BntZ zkEaq-eH8puc1FQZW$DaUdoZLAm`^hI_wY0H>rA#Q?+(4!avi*OCDZs`o6@uptw;rYib)`y?=Ne@h{ZZMhLd%043Dg8ppbN6(ylg9NCwD#dul@>nGbZ(brJ9SwU;g+lVbqJ^zJ(OJ|d2$zJnpvz-X-bD8(9( zlZ!XJgEei?!DXse2bZaz7xhty8JKPHHz}kM^K#H+?`j zLGIVTNgog{KCBe;UNhEo3+!w4f%HQ?1oBQ^5`7#DbNVlm8$^$Q-MX&}HWYkr#PhqP z=WgSA#a{9>pwh%k-@j4*c$XhN6Yx&JI|1(myc6(Fz&io&1iTaQPT+?VxE5k_ I-ak zck7u2nrct1&hSqVeSwIAd8-{X&>od3NH?(aPZW=%qC4TFZis~jcOP`0x&u zHi;|EeNfw8>|8E6U`$qNxz$0_h(ZeBm2|&4F)dA%D6yxiv~up;>%nzsXF>R#lu$$= zo7r#ugzOw^uo`_*E1ly1eB;y{#cYO{T(x+j3!?s#I{yK&1-H79cAYL%S(*TC+Fxcf@AmRqU1 zgD6x1E<5En!3rhD*xedGPW1ak?Fit^FLXb`2|CoUgMCX2zr`ATkaTC(T|}WD@I9Ss z672zI_claM!pPK#k^^g5UWEh?3d! zzCJyHyNrae`NLGQqX56^%)!zy+#oS1TBDG2I+uQmoeqm%d%nvkVGrZmMfL(#&6*H5 z{KHVVo!4xYac4h$ybYVKg33$l))aaBu&Cz3V>4^uv5h!o#n_A$oQ;c~E@mfSjf6Wq zxVsqJu4N0=+!!LW70d-I`Va*h;O>t{$ZliyyVm#;tlJ6U8>^l}6uJOa7dDn)Z3nYw zWz3`6eGo3GvlU_E{ea?i2R3dWV0PNW)g|9=Ia^{MW`FF->!qo>Am=yzk#zpX0RO(^ z4LWIVW~@hK_i?7Jgw8!ct_Zw19|+@H*ev*gLPU?_w%dAae@lKm|O1SIBzAhRTD1? z-%k+F(`CDxg|45EsK-Jc$h=TBA5oYFd^K)CJ+7(;`QX5xNDkI(xm7*&Br5=OI?khP z3Dm8d zD5VPU!e@v6C&kQCHhJz*iWQuUx!+JqHQ=WHaZIt-vYxu1NI!-?pv@ z*QCujy=Z2iT9Mm~wc{b|ajruY76P8x`#RYP%szDXB-zOjepKJpEEXrnLd)xVE|Hna z%uL5qEm$`T%qQP9APU*6Zu7zx>>`KR^Gv(Q&WCW);k{&=0Pn8+fb0ThyZ4Wfy%oaE zqxZ-z1T=PjLv|6fAB?58Vkcz~c7e9YQWFZ7u&FQEwfE6tz@@Cc=*fPWZM99??#^R+Ln)E;j6MO z7QQMcn=4M>0-fMoYB_X*y+glyiMtaq|EM=2C=6Qe=!)c{n4PJIY^4FR>rO7Bk6k1< zVu?RpKcWD8D|)7|y=VipcYDb89j+A*;k;`x)9~6ez{BNoLmy-DbOXGV5}>&Moz0KY zPBv(zONS!-B*4!}4hSj06V9|5UM{gLF~EB`)et6^o^kFV$(RLF+{d-VLN@UF1UDtU z!q&+#gv+IAYoq-_8dy81S#Zs6R}VQ z{I|i18HS`^8Q@xFHYns$*?kX5Mk`2>i+9RtrE1`u!iE{9m1@~ahf`95X{A<>isLpB z3pQX)sdI*Dr8c(GrIULUl++2*wJVQ_g)X*IpCN?BA!)k-uKx~0s9c&CFf{W=c#g(C zkp8jWq@?!xfm^nW&M*vafE}7Ged%~fH98^u+A|qpq~8RNh*=o!UBf=i^v}h^q`TmZ zg#>rO8H4{oma*%l_qsFiTYFI)s25-S^$#zZKi+-FSJ^iK-voRU@J+xs0pA3C6Yx#I VHv!)Sd=vQp30$3PbKjCE{{uLG=UV^( diff --git a/logs/20260912-215248/amd64/qemu-amd64-20260912-215248.log b/logs/20260912-215248/amd64/qemu-amd64-20260912-215248.log new file mode 100644 index 00000000..835a01ef --- /dev/null +++ b/logs/20260912-215248/amd64/qemu-amd64-20260912-215248.log @@ -0,0 +1,9035 @@ +[=3hBdsDxe: loading Boot0002 "UEFI QEMU DVD-ROM QM00005 " from PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0xFFFF,0x0) +BdsDxe: starting Boot0002 "UEFI QEMU DVD-ROM QM00005 " from PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0xFFFF,0x0) +[=3hStarKernel UEFI Loader +Loading kernel from ESP... +[CKPT 001] Entered efi_main - ConOut live +RAW SERIAL UP +[CKPT 002] Serial (COM1) initialized +Monolithic build - kernel linked directly +Collecting boot information... +CmdLine: parsed OK +[CKPT 004] Command line parsed +[CKPT 005] Kernel stack allocation decided +[CKPT 006] Boot info collected (ACPI table located) +GOP: linear framebuffer found +[CKPT 007] GOP: linear framebuffer found +[CKPT 008] About to enter ExitBootServices retry loop +EBS... +EBS OK +Calling kernel_main (monolithic)... + + + _____ _ _ __ _ + / ____| | | |/ / | | + | (___ | |_ __ _ _ __| ' / ___ _ __ _ __ ___| | + \___ \| __/ _` | '__| < / _ \ '__| '_ \ / _ \ | + ____) | || (_| | | | . \ __/ | | | | | __/ | + |_____/ \__\__,_|_| |_|\_\___|_| |_| |_|\___|_| + +LithosAnanke v2.0.0 +Architecture: amd64 +Build: Sep 12 2026 21:52:27 + +UEFI BootServices: EXITED + +=== StarKernel Boot Information === +Memory map entries: 131 +Total memory: 1023 MB +Usable memory: 968 MB +=================================== + +PMM initialized. +PMM statistics: + Total pages: 249366 + Free pages : 247843 + Used pages : 1523 + Total MB : 974 + Free MB : 968 + Used MB : 5 + +VMM initialized (mapped RAM, CR3 switched) +VMM initialized (mapped RAM, CR3 switched) +VMM self-test: mapped OK at 0xffff800000000000 +VMM self-test complete. + +IDT installed. + +APIC: init... +APIC: IA32_APIC_BASE MSR=0x00000000fee00900 +APIC: stale-ISR drain: 0 EOI(s) issued +APIC: initialized (xAPIC MMIO, TPR=0, SIVR=0x1FF, EOI-clear) +APIC: init done + +I/O APIC: init... +I/O APIC: base=0xfec00000, gsi_base=0, overrides=5 + override: source=00 gsi=2 flags=0x0000 + override: source=05 gsi=5 flags=0x000d + override: source=09 gsi=9 flags=0x000d + override: source=0a gsi=10 flags=0x000d + override: source=0b gsi=11 flags=0x000d +i8042: keyboard ACKed enable-scanning +i8042: IRQ1 enabled in controller config byte +I/O APIC: keyboard IRQ1 routed (masked) + +Timer: init... +Timer: init start +Timer: PM_TMR_BLK discovered from FADT at port 1544 +Timer: VM mode detected (hypervisor present). +Timer: HPET calibration disabled (VM-exit MMIO would poison timing). +Timer: WARNING: invariant TSC not present under hypervisor. +Timer: continuing in RELATIVE mode (no determinism guarantees). +Timer: RDTSCP not present; using RDTSC (less serialized). +Timer: CPUID frequency unavailable; trying PM Timer... +Timer: trust=1 (0=NONE,1=REL,2=ABS), TSC=2103570597 Hz +Timer: init done + +Kernel heap initialized. +Heap statistics: + Total bytes: 536870872 + Free bytes: 536870872 + Used bytes: 0 + Peak bytes: 0 + Heap base addr: 24641536 + Heap end addr: 561512448 + +Heartbeat: init... +APIC Timer: calibrating... +APIC Timer: apic_hz=1007508646, tick_hz=100, initial_count=10075086 +APIC Timer: configured (masked, ready to start) +Heartbeat: init done +Kernel initialization complete. +Boot successful! + +Stadium: 83886 cells (5242 KB), 50 VM slots +VM: bootstrap parity... +VM arena allocated: 0xffff900000000000 + (5 MB) +[HADES][INFO ] [KRELTSC: 0] Registering FORTH-79 Standard word set... +[HADES][INFO ] [KRELTSC: 4383876] Registering FORTH-79 arithmetic words... +[HADES][INFO ] [KRELTSC: 61107564] FORTH-79 Standard word set registration complete +[Hera] POST: Running comprehensive test suite... +[Hera] [HADES][INFO ] [KRELTSC: 90191619] Starting comprehensive FORTH-79 modular test suite... +[Hera] [HADES][INFO ] [KRELTSC: 91492779] ============================================== +[Hera] [HADES][INFO ] [KRELTSC: 92549961] +[Hera] === Testing Module: Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 93985395] Running Stack Words Tests (Module 1: Foundation)... +[Hera] [HADES][TEST ] [KRELTSC: 94991169] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 96047070] Testing word: DUP +[Hera] [HADES][TEST ] [KRELTSC: 96712602] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 97606404] Running DUP.basic: 5 DUP . . CR +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 108012996] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 109463886] Expected: Should print: 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 112690326] Running DUP.zero: 0 DUP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 113906289] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 115264695] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 118016577] Running DUP.negative: -42 DUP . . CR +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 119416563] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120786288] Expected: Should print: -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 123364815] Running DUP.max_int: 2147483647 DUP . . CR +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 124643715] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 125895693] Expected: Should duplicate max int +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 129501687] Running DUP.min_int: -2147483648 DUP . . CR +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 130949301] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 132334986] Expected: Should duplicate min int +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 135424212] Running DUP.empty_stack: DUP +[Hera] [HADES][ERROR] [KRELTSC: 136306905] DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 137110491] Expected error occurred +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 138574863] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 139654515] DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 140887971] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 142139571] Testing word: DROP +[Hera] [HADES][TEST ] [KRELTSC: 142855041] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 143625615] Running DROP.basic: 5 7 DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 144790128] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 146116278] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 148320480] Running DROP.zero: 42 0 DROP . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 149454690] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 150760134] Expected: Should drop zero, print 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 153090798] Running DROP.negative: 10 -5 DROP . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 154415352] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 155763741] Expected: Should drop negative, print 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 158130105] Running DROP.double_drop: 1 2 3 DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 159344892] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 160675305] Expected: Should print: 1 +[Hera] 1 +[Hera] [HADES][INFO ] [KRELTSC: 163641240] L8[TABLE]: Config 17 → 0 regime=2 score=26214 L1=0 L2=0 L3=0 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 166865832] Running DROP.triple_drop: 1 2 3 4 DROP DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 168146916] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 169456245] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 171739365] Running DROP.sequential: 5 DROP 6 DROP 7 . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 172946655] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 174299559] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 176608908] Running DROP.single_item: 99 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 177882474] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 179391975] Expected: Should empty stack, depth=0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 181706574] Running DROP.depth_change: DEPTH 1 2 DROP DEPTH SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 183219876] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 184514778] Expected: Should change depth by 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 186908589] Running DROP.preserve_depth: DEPTH 5 6 DROP DROP DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 188361705] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 189688821] Expected: Should preserve net depth +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 192164301] L8[TABLE]: Config 0 → 1 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 193562040] Running DROP.max_int: 2147483647 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 194803665] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 196118454] Expected: Should drop max int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 198390717] Running DROP.min_int: -2147483648 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 199625580] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 200890221] Expected: Should drop min int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 202987806] Running DROP.with_dup: 5 DUP DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 204265488] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 205589433] Expected: Should duplicate then drop +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 207925515] Running DROP.with_swap: 1 2 SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 209111112] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 210451038] Expected: Should swap then drop +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 212770803] Running DROP.complex: 1 2 3 ROT DROP SWAP DROP . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 214132464] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 215476884] Expected: Should handle complex sequence +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 218051463] Running DROP.empty_stack: DROP +[Hera] [HADES][ERROR] [KRELTSC: 219090984] DROP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 219832893] Expected error occurred +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 221268978] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 222149172] DROP: 15 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 223058997] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 224103936] Testing word: SWAP +[Hera] [HADES][TEST ] [KRELTSC: 224822850] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 225567195] Running SWAP.basic: 5 7 SWAP . . CR +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 226731330] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 228059412] Expected: Should print: 7 5 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 230486886] Running SWAP.same_values: 42 42 SWAP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 231747348] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 233071755] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 235538016] L8[TABLE]: Config 1 → 2 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 236680899] Running SWAP.zero_nonzero: 0 99 SWAP . . CR +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 237923973] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 239232483] Expected: Should print: 99 0 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 241800720] Running SWAP.negative: -5 10 SWAP . . CR +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 243017733] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 244334874] Expected: Should print: 10 -5 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 246779778] Running SWAP.one_item: 42 SWAP +[Hera] [HADES][ERROR] [KRELTSC: 247635255] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 248540943] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 249964407] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 250845840] Running SWAP.empty_stack: SWAP +[Hera] [HADES][ERROR] [KRELTSC: 251652534] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 252510867] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 253898610] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 254973768] SWAP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 255878259] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 256921056] Testing word: OVER +[Hera] [HADES][TEST ] [KRELTSC: 257632557] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 258390489] Running OVER.basic: 5 7 OVER . . . CR +[Hera] 5 7 5 +[Hera] [HADES][TEST ] [KRELTSC: 259655151] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 260989827] Expected: Should print: 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] [HADES][TEST ] [KRELTSC: 263401593] Running OVER.zeros: 0 0 OVER . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 264588996] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 265901055] Expected: Should print: 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 268442769] Running OVER.mixed: -1 42 OVER . . . CR +[Hera] -1 42 -1 +[Hera] [HADES][TEST ] [KRELTSC: 269662911] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 271002207] Expected: Should print: -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] [HADES][TEST ] [KRELTSC: 273596925] Running OVER.one_item: 42 OVER +[Hera] [HADES][ERROR] [KRELTSC: 274468719] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 275356431] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 276755010] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 277652298] Running OVER.empty_stack: OVER +[Hera] [HADES][ERROR] [KRELTSC: 278461869] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 279393576] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 280813239] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 281703534] OVER: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 282597777] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 283631628] Testing word: ROT +[Hera] [HADES][TEST ] [KRELTSC: 284328072] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 285082686] Running ROT.basic: 1 2 3 ROT . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 286285440] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 287605374] Expected: Should print: 2 3 1 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 290056473] Running ROT.zeros: 0 0 0 ROT . . . CR +[Hera] [HADES][INFO ] [KRELTSC: 291041121] L8[TABLE]: Config 2 → 3 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 292642854] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 293961297] Expected: Should print: 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 296429196] Running ROT.mixed: -1 0 1 ROT . . . CR +[Hera] -1 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 297639615] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 298937940] Expected: Should print: 0 1 -1 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 301460124] Running ROT.two_items: 1 2 ROT +[Hera] [HADES][ERROR] [KRELTSC: 302496726] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 303382905] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 305109609] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 305980269] Running ROT.one_item: 42 ROT +[Hera] [HADES][ERROR] [KRELTSC: 306812919] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 307667787] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 309082494] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 309955212] Running ROT.empty_stack: ROT +[Hera] [HADES][ERROR] [KRELTSC: 310764174] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 311607576] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 312974508] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 313776162] ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 314792205] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 315830550] Testing word: DEPTH +[Hera] [HADES][TEST ] [KRELTSC: 316622040] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 317578926] Running DEPTH.empty: DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 318708474] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 320041071] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 322307685] Running DEPTH.one_item: 42 DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 323505546] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 324882558] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 326981823] Running DEPTH.multiple: 1 2 3 DEPTH . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 328248354] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 329852901] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 332108154] DEPTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 333030054] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 334074468] Testing word: PICK +[Hera] [HADES][TEST ] [KRELTSC: 334780404] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 335505030] Running PICK.pick_0: 1 2 3 0 PICK . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 336845649] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 338197041] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 340437489] Running PICK.pick_1: 1 2 3 1 PICK . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 341561493] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 343186998] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][INFO ] [KRELTSC: 345173934] L8[TABLE]: Config 3 → 4 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 346566297] Running PICK.pick_2: 1 2 3 2 PICK . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 347718651] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 349110594] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 351337560] PICK: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 352248582] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 353274138] Testing word: ROLL +[Hera] [HADES][TEST ] [KRELTSC: 353972997] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 354801804] Running ROLL.roll_1: 1 2 3 1 ROLL . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 356223525] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 357565047] Expected: Should print: 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 360062304] Running ROLL.roll_2: 1 2 3 2 ROLL . . . CR +[Hera] 2 3 1 +[Hera] [HADES][TEST ] [KRELTSC: 361301052] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 362611305] Expected: Should print: 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] [HADES][TEST ] [KRELTSC: 365079519] ROLL: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 366013557] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 367042452] Testing word: ?DUP +[Hera] [HADES][TEST ] [KRELTSC: 367878987] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 368624928] Running ?DUP.nonzero: 42 ?DUP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 369889359] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 371209104] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 373592079] Running ?DUP.negative: -5 ?DUP . . CR +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 374757768] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 376096266] Expected: Should print: -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 378453810] Running ?DUP.zero: 0 ?DUP DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 379644720] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 381216276] Expected: Should not dup: depth 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 383495217] Running ?DUP.empty_stack: ?DUP +[Hera] [HADES][ERROR] [KRELTSC: 384350820] ?DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 385104384] Expected error occurred +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 386520288] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 387400923] ?DUP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 388322529] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 389360559] Testing word: -ROT +[Hera] [HADES][TEST ] [KRELTSC: 390060951] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 390824952] Running -ROT.basic: 1 2 3 -ROT . . . CR +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 392110467] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 393638112] Expected: Should print: 1 3 2 +[Hera] [HADES][INFO ] [KRELTSC: 394530297] L8[TABLE]: Config 4 → 5 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 397217730] Running -ROT.zeros: 0 0 0 -ROT . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 398410551] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 399737415] Expected: Should print: 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 402078180] Running -ROT.roundtrip: 1 2 3 -ROT ROT . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 403329633] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 404774811] Expected: Should restore original order +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 407570562] Running -ROT.two_items: 1 2 -ROT +[Hera] [HADES][ERROR] [KRELTSC: 408436791] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 409340232] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 410729886] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 411632256] Running -ROT.empty_stack: -ROT +[Hera] [HADES][ERROR] [KRELTSC: 412435779] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 413286090] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 414706341] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 415607598] -ROT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 416566164] === Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 error +[Hera] [HADES][INFO ] [KRELTSC: 417659508] +[Hera] === Testing Module: Return Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 418813731] Running Return Stack Words Tests (Module 2)... +[Hera] [HADES][TEST ] [KRELTSC: 419772759] â–¶ Testing module: src/test_runner/modules/return_stack_words_ +[Hera] [HADES][TEST ] [KRELTSC: 420828534] Testing word: >R +[Hera] [HADES][TEST ] [KRELTSC: 421511139] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 422262897] Running >R.basic: 42 >R R@ . R> . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 423721851] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 425029878] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 427474467] Running >R.zero: 0 >R R@ . R> . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 428632890] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 429949611] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 432544245] Running >R.negative: -123 >R R@ . R> . CR +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 433806030] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 435111390] Expected: Should print: -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 [HADES][INFO ] [KRELTSC: 437084445] L8[TABLE]: Config 5 → 6 regime=2 score=26214 L1=0 L2=0 L3=0 L + +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 438728661] Running >R.multiple: 1 2 >R >R R@ . R> . R@ . R> . CR +[Hera] 1 1 2 2 +[Hera] [HADES][TEST ] [KRELTSC: 440068587] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 441374514] Expected: Should print: 2 2 1 1 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] [HADES][TEST ] [KRELTSC: 444204579] Running >R.empty_stack: >R +[Hera] [HADES][ERROR] [KRELTSC: 445050081] >R: DSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 445745391] Expected error occurred +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 447149745] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 448026600] >R: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 448961037] â–¶ Testing module: src/test_runner/modules/return_stack_words_ +[Hera] [HADES][TEST ] [KRELTSC: 450006879] Testing word: R> +[Hera] [HADES][TEST ] [KRELTSC: 450704415] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 451456068] Running R>.basic: 42 >R R> . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 452555229] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 453852966] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 456274308] Running R>.lifo_order: 1 2 >R >R R> . R> . CR +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 457525950] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 458832696] Expected: Should print: 2 1 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 461264727] Running R>.empty_rstack: R> +[Hera] [HADES][ERROR] [KRELTSC: 462123564] R>: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 462818874] Expected error occurred +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 464263254] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 465197439] R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 466083030] â–¶ Testing module: src/test_runner/modules/return_stack_words_ +[Hera] [HADES][TEST ] [KRELTSC: 467094201] Testing word: R@ +[Hera] [HADES][TEST ] [KRELTSC: 467767461] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 468675648] Running R@.basic: 42 >R R@ . R> DROP CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 469878633] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 471166941] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 473528223] Running R@.non_destructive: 99 >R R@ R@ = . R> DROP CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 474890682] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 476197092] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 477958845] L8[TABLE]: Config 6 → 7 regime=2 score=26214 L1=0 L2=0 L3=0 L + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 479509044] Running R@.empty_rstack: R@ +[Hera] [HADES][ERROR] [KRELTSC: 480345411] R@: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 481241376] Expected error occurred +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 482714736] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 483641067] R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 484540077] === Return Stack Words Summary: 0 passed, 0 failed, 0 skipped, +[Hera] [HADES][INFO ] [KRELTSC: 485572899] +[Hera] === Testing Module: Memory Words === +[Hera] [HADES][INFO ] [KRELTSC: 486681174] Running Memory Words Tests (Module 3)... +[Hera] [HADES][TEST ] [KRELTSC: 487578462] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 488612649] Testing word: ! +[Hera] [HADES][TEST ] [KRELTSC: 489313251] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 490052871] Running !.basic: 42 HERE ! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 491582784] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 492890622] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 495406758] Running !.zero: 0 HERE ! HERE @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 496544664] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 497860671] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 500144127] Running !.negative: -999 HERE ! HERE @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 501401313] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 502703145] Expected: Should print: -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 505115898] Running !.overwrite: 111 HERE ! 222 HERE ! HERE @ . CR +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 506635374] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 507931935] Expected: Should print: 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 510367179] Running !.max_int: 2147483647 HERE ! HERE @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 511680414] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 512990142] Expected: Should store max int +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 515655546] Running !.min_int: -2147483648 HERE ! HERE @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 516969075] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 518415303] Expected: Should store min int +[Hera] [HADES][INFO ] [KRELTSC: 519288483] L8[TABLE]: Config 7 → 8 regime=2 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 522282558] Running !.empty_stack: ! +[Hera] [HADES][TEST ] [KRELTSC: 523107753] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 524496777] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 525379008] Running !.one_item: 42 ! +[Hera] [HADES][TEST ] [KRELTSC: 526162119] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 527561853] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 528438120] !: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 529369239] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 530393787] Testing word: @ +[Hera] [HADES][TEST ] [KRELTSC: 531191787] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 531930567] Running @.after_store: 123 HERE ! HERE @ . CR +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 533150667] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 534443616] Expected: Should print: 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 536839947] Running @.multiple_reads: 456 HERE ! HERE @ HERE @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 538168596] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 539471184] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 541897209] Running @.empty_stack: @ +[Hera] [HADES][TEST ] [KRELTSC: 542713920] Expected error occurred +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 544244988] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 545101872] @: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 546023268] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 547071567] Testing word: C! +[Hera] [HADES][TEST ] [KRELTSC: 547780170] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 548513133] Running C!.basic: 65 HERE C! HERE C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 550016901] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 551306028] Expected: Should print: 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 553700070] Running C!.zero: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 554912841] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 556390044] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 558713757] Running C!.high_byte: 255 HERE C! HERE C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 559964433] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 561283863] Expected: Should print: 255 +[Hera] 255 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 563129721] L8[TABLE]: Config 8 → 9 regime=2 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 564830469] Running C!.truncation: 256 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 566063001] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 567379533] Expected: Should print: 0 (truncated) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 569936556] C!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 570849930] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 571884306] Testing word: C@ +[Hera] [HADES][TEST ] [KRELTSC: 572569515] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 573352710] Running C@.after_cstore: 97 HERE C! HERE C@ . CR +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 574636251] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 575978067] Expected: Should print: 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 578375217] Running C@.zero_byte: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 579697986] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 581139027] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 583553943] C@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 584441172] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 585513411] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 586202547] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 586957581] Running ,.basic: 42 , HERE 8 - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 588270543] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 589729581] Expected: Should compile 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 592045062] Running ,.negative: -999 , HERE 8 - @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 593267304] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 594775398] Expected: Should compile -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 597208542] ,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 598093419] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 599115741] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 599805528] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 600541788] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 601878039] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 603209208] Expected: Should compile byte 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][INFO ] [KRELTSC: 604738029] L8[TABLE]: Config 9 → 10 regime=2 score=6553 L1=0 L2=0 L3=0 L +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 606929862] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 608064933] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 609415191] Expected: Should compile byte 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 611784705] C,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 612683190] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 613719435] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 614425098] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 615201636] Running 2,.roundtrip: 12345 67890 2, HERE 16 - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 616901418] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 618198042] Expected: Should print: 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 621130692] Running 2,.save-and-verify: 12345 67890 2, HERE 16 - 2@ 67890 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 622601889] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 623923860] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 626432520] 2,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 627333420] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 628352529] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 629048868] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 629801991] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 630931098] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 632388162] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 634663428] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 S +[Hera] [HADES][INFO ] [KRELTSC: 635791716] L8[TABLE]: Config 10 → 11 regime=2 score=6553 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 637155561] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 638469909] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes +[Hera] [HADES][TEST ] [KRELTSC: 639899799] HERE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 640788120] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 641826906] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 642525975] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 643262004] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 644787150] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 646125480] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 648503604] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 649762155] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 651110502] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 653441796] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 654749886] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 656064402] Expected: Should print: -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 658671993] ALLOT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 659582280] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 660645363] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 661349724] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 662099571] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 663279813] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 664575639] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 666830031] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 668041920] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 669529434] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 [HADES][INFO ] [KRELTSC: 670892292] L8[TABLE]: Config 11 → 12 regime=2 score=6553 L1=0 L2=0 L3=0 + +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 672645372] PAD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 673564206] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 674595138] Testing word: +! +[Hera] [HADES][TEST ] [KRELTSC: 675285912] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 676039518] Running +!.basic: 10 HERE ! 5 HERE +! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 677432637] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 678731676] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 681092475] Running +!.by_zero: 42 HERE ! 0 HERE +! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 682577994] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 683904606] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 686270466] Running +!.negative: 10 HERE ! -3 HERE +! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 687533742] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 688832025] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 691184403] Running +!.accumulate: 0 HERE ! 1 HERE +! 2 HERE +! 3 HERE +! +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 692558139] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 693854049] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][INFO ] [KRELTSC: 695561076] L8[TABLE]: Config 12 → 13 regime=2 score=6553 L1=0 L2=0 L3=0 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 697610886] Running +!.empty_stack: +! +[Hera] [HADES][TEST ] [KRELTSC: 698438223] Expected error occurred +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 699810090] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 700713699] +!: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 701587089] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 702655485] Testing word: -! +[Hera] [HADES][TEST ] [KRELTSC: 703325217] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 704071284] Running -!.basic: 10 HERE ! 3 HERE -! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 705431475] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 706748658] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 709280922] Running -!.by_zero: 42 HERE ! 0 HERE -! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 710552010] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 711849663] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 714287511] Running -!.negative: 10 HERE ! -5 HERE -! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 715589742] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 716873619] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 719277027] Running -!.empty_stack: -! +[Hera] [HADES][TEST ] [KRELTSC: 720386268] Expected error occurred +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 721765905] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 722636040] -!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 723531858] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 724550778] Testing word: 2! +[Hera] [HADES][TEST ] [KRELTSC: 725222274] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 725988585] Running 2!.basic: 11 22 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 727596408] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 728891772] Expected: Should print: 22 11 +[Hera] 11 22 +[Hera] 11 22 [HADES][INFO ] [KRELTSC: 730416897] L8[TABLE]: Config 13 → 14 regime=2 score=6553 L1=0 L2=0 L3=0 + +[Hera] 11 22 +[Hera] 11 22 +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 732427710] Running 2!.zeros: 0 0 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 733727463] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 735038325] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 737531361] Running 2!.negative: -1 -2 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 738909381] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 740215035] Expected: Should print: -2 -1 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 742789068] Running 2!.empty_stack: 2! +[Hera] [HADES][TEST ] [KRELTSC: 743641815] Expected error occurred +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 745148964] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 746033694] 2!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 746936001] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 747967962] Testing word: FILL +[Hera] [HADES][TEST ] [KRELTSC: 748683474] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 749419209] Running FILL.basic: HERE 8 65 FILL HERE C@ . HERE 1+ C@ . CR +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 751128378] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 752487645] Expected: Should print: 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 [HADES][INFO ] [KRELTSC: 754772529] L8[TABLE]: Config 14 → 15 regime=2 score=6553 L1=0 L2=0 L3=0 + +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 756046368] Running FILL.zero_n: HERE 0 88 FILL +[Hera] [HADES][TEST ] [KRELTSC: 756927108] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 758534595] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 759476277] Running FILL.zero_byte: HERE 4 0 FILL HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 760719687] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 762056148] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 764388723] Running FILL.empty_stack: FILL +[Hera] [HADES][TEST ] [KRELTSC: 765227778] Expected error occurred +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 766649877] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 767521419] FILL: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 768414927] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 769470891] Testing word: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 770280861] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 771009162] Running MOVE.basic: HERE 65 OVER C! HERE 1+ 66 OVER C! HERE H +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 772742460] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 774088413] Expected: Should print: 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 777051114] Running MOVE.zero_n: HERE HERE 8 + 0 MOVE +[Hera] [HADES][TEST ] [KRELTSC: 778002834] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 779304939] Expected: Should do nothing +[Hera] [HADES][INFO ] [KRELTSC: 780200589] L8[TABLE]: Config 15 → 16 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] [HADES][TEST ] [KRELTSC: 781493475] Running MOVE.empty_stack: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 782386101] Expected error occurred +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 783970908] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 784881447] MOVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 785775984] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 786823947] Testing word: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 787530975] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 788273724] Running ERASE.basic: HERE 4 65 FILL HERE 4 ERASE HERE C@ . HE +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 789793746] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 791128443] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 793733451] Running ERASE.zero_n: HERE 0 ERASE +[Hera] [HADES][TEST ] [KRELTSC: 794608899] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 796146729] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 797094480] Running ERASE.empty_stack: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 797945568] Expected error occurred +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 799363593] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 800244627] ERASE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 801198741] === Memory Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 802248972] +[Hera] === Testing Module: Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 803388894] Running Arithmetic Words Tests (Module 5)... +[Hera] [HADES][TEST ] [KRELTSC: 804317430] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 805400946] Testing word: + +[Hera] [HADES][TEST ] [KRELTSC: 806105433] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 806867271] Running +.basic: 5 7 + . CR +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 808209423] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 809630682] Expected: Should print: 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 811865922] Running +.zero_add: 42 0 + . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 812947380] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 814261833] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 816527061] Running +.negative: -5 3 + . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 817627902] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 818920515] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 821314095] Running +.both_negative: -5 -3 + . CR +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 822489696] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 823783128] Expected: Should print: -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] [HADES][INFO ] [KRELTSC: 825792030] L8[TABLE]: Config 16 → 18 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 827156568] Running +.overflow: 2147483647 1 + . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 828404556] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 829685913] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 832209756] Running +.underflow: -2147483648 -1 + . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 833720391] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 835029279] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 837636597] Running +.empty_stack: + +[Hera] [HADES][ERROR] [KRELTSC: 838439763] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 839176359] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 840571683] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 841499421] Running +.one_item: 42 + +[Hera] [HADES][ERROR] [KRELTSC: 842279046] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 843022824] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 844412562] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 845422116] +: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 846412392] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 847454895] Testing word: - +[Hera] [HADES][TEST ] [KRELTSC: 848142120] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 848888544] Running -.basic: 10 3 - . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 849976806] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 851282166] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 853486935] Running -.zero_sub: 42 0 - . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 854574714] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 855899205] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 858252465] Running -.from_zero: 0 5 - . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 859341735] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 860681367] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 862939392] Running -.negative: 5 -3 - . CR +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 864036432] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 865328247] Expected: Should print: 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 867556368] Running -.same_values: 42 42 - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 868701225] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 870007215] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 872378934] Running -.overflow: -2147483648 1 - . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 873601869] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 874914411] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 877498398] Running -.underflow: 2147483647 -1 - . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 878747394] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 880070268] Expected: Should overflow +[Hera] 2147483648 +[Hera] [HADES][INFO ] [KRELTSC: 881287701] L8[TABLE]: Config 18 → 19 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 883902768] Running -.empty_stack: - +[Hera] [HADES][ERROR] [KRELTSC: 884713284] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 885448851] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 886827270] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 887727120] Running -.one_item: 42 - +[Hera] [HADES][ERROR] [KRELTSC: 888502608] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 889225953] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 890596833] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 891490467] -: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 892383240] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 893434542] Testing word: * +[Hera] [HADES][TEST ] [KRELTSC: 894131196] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 894879195] Running *.basic: 6 7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 896213682] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 897536325] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 899775933] Running *.by_zero: 42 0 * . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 900876228] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 902187258] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 904394106] Running *.by_one: 42 1 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 905475606] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 906785901] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 909150081] Running *.by_negative: 6 -7 * . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 910293195] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 911598345] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 913888983] Running *.negative_negative: -6 -7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 915058095] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 916361187] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 918622278] Running *.large_numbers: 32767 2 * . CR +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 919717827] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 921432519] Expected: Should print: 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 923813226] Running *.overflow: 65536 65536 * . CR +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 925084293] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 926371530] Expected: May overflow +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 928873365] Running *.empty_stack: * +[Hera] [HADES][ERROR] [KRELTSC: 929676048] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 930415857] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 931812063] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 932702127] Running *.one_item: 42 * +[Hera] [HADES][ERROR] [KRELTSC: 933598197] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 934300899] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 935705883] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 936600063] *: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 937497645] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 938524272] Testing word: / +[Hera] [HADES][TEST ] [KRELTSC: 939217545] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 939973482] Running /.basic: 15 3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 941044650] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 942359838] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][INFO ] [KRELTSC: 944045550] L8[TABLE]: Config 19 → 20 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 945726390] Running /.by_one: 42 1 / . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 946932903] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 948227427] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 950458005] Running /.negative_dividend: -15 3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 951625143] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 952933065] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 955194996] Running /.negative_divisor: 15 -3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 956377968] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 957675222] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 960027033] Running /.both_negative: -15 -3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 961189656] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 962494575] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 964705266] Running /.truncation: 7 3 / . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 965809530] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 967144395] Expected: Should print: 2 (truncated) +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 969433878] Running /.by_zero: 42 0 / +[Hera] [HADES][ERROR] [KRELTSC: 970301115] /: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 971271819] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 972650889] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 973574259] Running /.empty_stack: / +[Hera] [HADES][ERROR] [KRELTSC: 974359365] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 975112467] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 976487484] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 977428305] Running /.one_item: 42 / +[Hera] [HADES][ERROR] [KRELTSC: 978204801] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 978906789] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 980310114] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 981209733] /: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 982171701] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 983228736] Testing word: MOD +[Hera] [HADES][TEST ] [KRELTSC: 984110862] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 984853086] Running MOD.basic: 17 5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 986327286] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 987660051] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 990021753] Running MOD.exact_division: 15 3 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 991209954] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 992542341] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 994907277] Running MOD.by_one: 42 1 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 996086868] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 997514763] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 999904332] Running MOD.negative_dividend: -17 5 MOD . CR +[Hera] [HADES][INFO ] [KRELTSC: 1000905885] L8[TABLE]: Config 20 → 21 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1002302259] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1003619526] Expected: Should handle negative +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1006067916] Running MOD.negative_divisor: 17 -5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1007310234] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1008719733] Expected: Should handle negative +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1011202206] Running MOD.small_by_large: 3 7 MOD . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1012402587] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1013740371] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1016063286] Running MOD.by_zero: 42 0 MOD +[Hera] [HADES][ERROR] [KRELTSC: 1016952804] MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1017699459] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1019102994] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1020002991] Running MOD.empty_stack: MOD +[Hera] [HADES][ERROR] [KRELTSC: 1020847380] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1021788390] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1023186486] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1024128126] Running MOD.one_item: 42 MOD +[Hera] [HADES][ERROR] [KRELTSC: 1024954812] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1025682021] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1027078815] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1027971462] MOD: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1028848191] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1029886158] Testing word: /MOD +[Hera] [HADES][TEST ] [KRELTSC: 1030592010] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1031339673] Running /MOD.basic: 17 5 /MOD . . CR +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 1032706941] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1034147877] Expected: Should print: 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 1036608174] Running /MOD.exact: 15 3 /MOD . . CR +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 1037783418] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1039122672] Expected: Should print: 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 1041621105] Running /MOD.negative: -17 5 /MOD . . CR +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1042854855] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1044183210] Expected: Should handle negative dividend +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1046868228] Running /MOD.by_zero: 42 0 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 1047761022] /MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1048546548] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1049956845] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1050875133] Running /MOD.empty_stack: /MOD +[Hera] [HADES][ERROR] [KRELTSC: 1051771770] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1052520042] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1053948651] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1054838946] Running /MOD.one_item: 42 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 1055669223] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1056409599] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1057824558] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1058711766] /MOD: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1059836736] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1060880100] Testing word: ABS +[Hera] [HADES][TEST ] [KRELTSC: 1061597712] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1062347202] Running ABS.positive: 42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1063570620] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1064889924] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1067156244] Running ABS.negative: -42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1068304503] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1069651632] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 1072052562] L8[TABLE]: Config 21 → 22 regime=2 score=26214 L1=0 L2=0 L3=1 + +[Hera] [HADES][TEST ] [KRELTSC: 1072988196] Running ABS.zero: 0 ABS . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1074132087] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1075473441] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1077685749] Running ABS.min_int: -2147483648 ABS . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1078954107] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1080279564] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1082931444] Running ABS.empty_stack: ABS +[Hera] [HADES][ERROR] [KRELTSC: 1083761616] ABS: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1084779150] Expected error occurred +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1086202362] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1087103514] ABS: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1088006619] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1089079698] Testing word: NEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1089798864] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1090572672] Running NEGATE.positive: 42 NEGATE . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 1091857200] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1093208214] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 1095521574] Running NEGATE.negative: -42 NEGATE . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1096865091] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1098256005] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1100513274] Running NEGATE.zero: 0 NEGATE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1101650802] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1103007381] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1105216350] Running NEGATE.min_int: -2147483648 NEGATE . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1106507241] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1107857352] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1110635064] Running NEGATE.empty_stack: NEGATE +[Hera] [HADES][ERROR] [KRELTSC: 1111539597] NEGATE: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1112314938] Expected error occurred +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1113743337] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1114640772] NEGATE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1115590056] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1116633987] Testing word: MIN +[Hera] [HADES][TEST ] [KRELTSC: 1117344921] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1118124798] Running MIN.basic: 5 3 MIN . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1119353403] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1120677243] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1122947301] Running MIN.equal: 42 42 MIN . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1124079264] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1125384981] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1127649075] Running MIN.negative: -5 -3 MIN . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1128824025] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1130168508] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1132436151] Running MIN.mixed: -1 1 MIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1133555430] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1134981939] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 1136700453] L8[TABLE]: Config 22 → 23 regime=2 score=52428 L1=0 L2=0 L3=1 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1138203150] Running MIN.one_item: 42 MIN +[Hera] [HADES][ERROR] [KRELTSC: 1139074293] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1139835900] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1141362495] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1142259762] Running MIN.empty_stack: MIN +[Hera] [HADES][ERROR] [KRELTSC: 1143139998] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1143863490] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1145274417] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1146179937] MIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1147270551] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1148312277] Testing word: MAX +[Hera] [HADES][TEST ] [KRELTSC: 1149020418] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1149788703] Running MAX.basic: 5 3 MAX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1151098977] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1152425043] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1154673702] Running MAX.equal: 42 42 MAX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1155943950] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1157201787] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1159757760] Running MAX.negative: -5 -3 MAX . CR +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 1160947914] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1162303380] Expected: Should print: -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 1164677388] Running MAX.mixed: -1 1 MAX . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1165829448] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1167202386] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1169542164] Running MAX.one_item: 42 MAX +[Hera] [HADES][ERROR] [KRELTSC: 1170484749] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1171263324] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1172961279] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1173847164] Running MAX.empty_stack: MAX +[Hera] [HADES][ERROR] [KRELTSC: 1174662489] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1175390601] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1176790041] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1177665636] MAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1178567124] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1179609123] Testing word: 1+ +[Hera] [HADES][TEST ] [KRELTSC: 1180295172] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1181059698] Running 1+.basic: 5 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1182129984] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1183433391] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1185815148] Running 1+.zero: 0 1+ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1186867500] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1188143208] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1190297577] Running 1+.negative: -1 1+ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1191384537] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1192676919] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1194848298] Running 1+.chain: 3 1+ 1+ 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1195978056] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1197334551] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1199793945] Running 1+.overflow: 2147483647 1+ . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1201018035] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1202329212] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 [HADES][INFO ] [KRELTSC: 1203853791] L8[TABLE]: Config 23 → 24 regime=2 score=6553 L1=0 L2=0 L3=1 + +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1205806644] Running 1+.empty_stack: 1+ +[Hera] [HADES][ERROR] [KRELTSC: 1206624468] 1+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1207358355] Expected error occurred +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1208737761] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1209614028] 1+: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1210637778] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1211673540] Testing word: 1- +[Hera] [HADES][TEST ] [KRELTSC: 1212412992] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1213168131] Running 1-.basic: 5 1- . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1214351145] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1215684624] Expected: Should print: 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1217866335] Running 1-.to_zero: 1 1- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1218938259] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1220268357] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1222624788] Running 1-.to_negative: 0 1- . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1223736150] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1225060767] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1227313773] Running 1-.chain: 6 1- 1- 1- . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1228441053] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1229761554] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1231959351] Running 1-.underflow: -2147483648 1- . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 1233237264] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1234542666] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 1237217436] Running 1-.empty_stack: 1- +[Hera] [HADES][ERROR] [KRELTSC: 1238026398] 1-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1238763183] Expected error occurred +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1240177554] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1241078454] 1-: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1241988741] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1243035507] Testing word: 2+ +[Hera] [HADES][TEST ] [KRELTSC: 1243750221] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1244511219] Running 2+.basic: 5 2+ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 1245675186] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1246971852] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 1249415370] Running 2+.zero: 0 2+ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1250475639] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1251764955] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1253921424] Running 2+.negative: -3 2+ . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1255024323] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1256323950] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1258550013] Running 2+.empty_stack: 2+ +[Hera] [HADES][ERROR] [KRELTSC: 1259367774] 2+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1260131460] Expected error occurred +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1261904280] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1262802513] 2+: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1263698667] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1264754862] Testing word: 2- +[Hera] [HADES][TEST ] [KRELTSC: 1265447169] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1266256110] Running 2-.basic: 7 2- . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1267534023] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1268876112] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1271121222] Running 2-.zero: 2 2- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1272167400] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1273593489] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1275020649] L8[TABLE]: Config 24 → 25 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1276760625] Running 2-.negative: 0 2- . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1277829357] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1279267080] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1281461265] Running 2-.empty_stack: 2- +[Hera] [HADES][ERROR] [KRELTSC: 1282116780] 2-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1282804824] Expected error occurred +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1284340197] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1285321821] 2-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1286474238] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1287579447] Testing word: 2* +[Hera] [HADES][TEST ] [KRELTSC: 1288316463] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1289102115] Running 2*.basic: 5 2* . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1290275511] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1291589124] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1293782931] Running 2*.zero: 0 2* . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1294841499] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1296147006] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1298663772] Running 2*.negative: -3 2* . CR +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 1299748128] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1301057604] Expected: Should print: -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 1303278564] Running 2*.one: 1 2* . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1304331609] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1305623172] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1307813472] Running 2*.large: 1073741823 2* . CR +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 1309013727] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1310307012] Expected: Should print: 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 1313129853] Running 2*.empty_stack: 2* +[Hera] [HADES][ERROR] [KRELTSC: 1313941461] 2*: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1314688893] Expected error occurred +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1316084280] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1316974701] 2*: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1317847230] â–¶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1318883370] Testing word: 2/ +[Hera] [HADES][TEST ] [KRELTSC: 1319568663] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1320309543] Running 2/.basic: 10 2/ . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1321472124] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1322768013] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1325329026] Running 2/.odd: 7 2/ . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1326367035] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1327767105] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1329933990] Running 2/.zero: 0 2/ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1331003793] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1332319401] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1334510793] Running 2/.negative_even: -10 2/ . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1335778563] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1337084007] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1339342074] Running 2/.one: 1 2/ . CR +[Hera] [HADES][INFO ] [KRELTSC: 1340220126] L8[TABLE]: Config 25 → 26 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1341599553] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1342923981] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1345126230] Running 2/.empty_stack: 2/ +[Hera] [HADES][ERROR] [KRELTSC: 1345999704] 2/: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1346737539] Expected error occurred +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1348157643] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1349263818] 2/: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1350274464] === Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 1351402857] +[Hera] === Testing Module: Logical Words === +[Hera] [HADES][INFO ] [KRELTSC: 1352591016] Running Logical Words Tests (Module 8)... +[Hera] [HADES][TEST ] [KRELTSC: 1353647106] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1354725351] Testing word: AND +[Hera] [HADES][TEST ] [KRELTSC: 1355418288] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1356193482] Running AND.both_true: -1 -1 AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1357435233] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1358792652] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1361211789] Running AND.first_false: 0 -1 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1362380943] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1363740126] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1365668031] Running AND.second_false: -1 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1367000964] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1368313611] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1370632536] Running AND.both_false: 0 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1371834954] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1373015511] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1375549812] Running AND.bitwise: 85 51 AND . CR +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 1376733582] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1378114962] Expected: Should print: 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 1380447180] Running AND.empty_stack: AND +[Hera] [HADES][ERROR] [KRELTSC: 1381290267] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1382058993] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1383444426] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1384330941] Running AND.one_item: 42 AND +[Hera] [HADES][ERROR] [KRELTSC: 1385273463] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1386112518] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1387737372] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1388648646] AND: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1389607926] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1390663785] Testing word: OR +[Hera] [HADES][TEST ] [KRELTSC: 1391384295] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1392161316] Running OR.both_true: -1 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1393399476] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1394720439] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1396962357] Running OR.first_false: 0 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1398113997] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1399890051] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1402181403] Running OR.second_false: -1 0 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1403362149] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1404674922] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1406395914] L8[TABLE]: Config 26 → 27 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1408068837] Running OR.both_false: 0 0 OR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1409211825] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1410496248] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1412930946] Running OR.bitwise: 85 51 OR . CR +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 1414074669] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1415405019] Expected: Should print: 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 1417713255] Running OR.empty_stack: OR +[Hera] [HADES][ERROR] [KRELTSC: 1418530533] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1419287751] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1420678665] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1421572929] Running OR.one_item: 42 OR +[Hera] [HADES][ERROR] [KRELTSC: 1422350622] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1423074072] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1424654091] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1425550749] OR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1426457823] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1427500578] Testing word: XOR +[Hera] [HADES][TEST ] [KRELTSC: 1428196539] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1428948276] Running XOR.both_true: -1 -1 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1430225916] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1431558534] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1433774832] Running XOR.first_false: 0 -1 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1434936657] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1436302665] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1438901457] Running XOR.second_false: -1 0 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1440070884] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1441387773] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1443697962] Running XOR.both_false: 0 0 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1444851933] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1446168507] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1448370966] Running XOR.bitwise: 85 51 XOR . CR +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 1449728007] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1451076837] Expected: Should print: 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 1453353342] Running XOR.empty_stack: XOR +[Hera] [HADES][ERROR] [KRELTSC: 1454193132] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1454950140] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1456366527] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1457284521] Running XOR.one_item: 42 XOR +[Hera] [HADES][ERROR] [KRELTSC: 1458089955] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1458810675] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1460222652] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1461086361] XOR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1462136592] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1463165319] Testing word: NOT +[Hera] [HADES][TEST ] [KRELTSC: 1463877849] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1464621879] Running NOT.true: -1 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1465814931] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1467127620] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1469333796] Running NOT.false: 0 NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1470433797] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1471760367] Expected: Should print: -1 +[Hera] [HADES][INFO ] [KRELTSC: 1472611539] L8[TABLE]: Config 27 → 28 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1475318166] Running NOT.positive: 42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1476431334] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1477757568] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1479945327] Running NOT.negative: -42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1481094615] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1482446343] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1484649075] Running NOT.empty_stack: NOT +[Hera] [HADES][ERROR] [KRELTSC: 1485487920] NOT: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1486240098] Expected error occurred +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1487924277] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1488841977] NOT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1489752453] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1490791155] Testing word: = +[Hera] [HADES][TEST ] [KRELTSC: 1491463680] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1492206996] Running =.equal: 42 42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1493314326] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1494618783] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1496844048] Running =.not_equal: 42 43 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1497965469] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1499398068] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1501909122] Running =.zero_equal: 0 0 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1503023298] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1504336302] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1506565221] Running =.negative_equal: -42 -42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1507759113] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1509065691] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1511274849] Running =.negative_positive: -42 42 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1512643083] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1513940778] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1516080405] Running =.empty_stack: = +[Hera] [HADES][ERROR] [KRELTSC: 1516928889] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1517647656] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1519025067] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1519902783] Running =.one_item: 42 = +[Hera] [HADES][ERROR] [KRELTSC: 1520687616] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1521402666] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1522811724] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1523690847] =: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1524818064] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1525868274] Testing word: <> +[Hera] [HADES][TEST ] [KRELTSC: 1526575701] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1527318891] Running <>.not_equal: 42 43 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1528584582] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1529896998] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1532135157] Running <>.equal: 42 42 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1533292593] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1534623342] Expected: Should print: 0 +[Hera] [HADES][INFO ] [KRELTSC: 1535482641] L8[TABLE]: Config 28 → 29 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1538222889] Running <>.zero_equal: 0 0 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1539364260] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1540696647] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1542905427] Running <>.negative: -42 42 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1544049633] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1545371016] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1547611737] Running <>.empty_stack: <> +[Hera] [HADES][ERROR] [KRELTSC: 1548437310] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1549174368] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1550834145] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1551736830] Running <>.one_item: 42 <> +[Hera] [HADES][ERROR] [KRELTSC: 1552539534] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1553262543] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1554685692] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1555588692] <>: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1556490789] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1557547383] Testing word: < +[Hera] [HADES][TEST ] [KRELTSC: 1558363653] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1559159385] Running <.less_than: 5 7 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1560403026] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1561709058] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1564342395] Running <.greater_than: 7 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1565500818] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1566808362] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1569013593] Running <.equal: 5 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1569973902] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1571258136] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1573428171] Running <.negative_positive: -5 5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1574714337] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1576094940] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1578303363] Running <.negative_negative: -7 -5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1579510086] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1580816076] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1583038464] Running <.empty_stack: < +[Hera] [HADES][ERROR] [KRELTSC: 1583845872] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1584576525] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1585979997] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1586873274] Running <.one_item: 42 < +[Hera] [HADES][ERROR] [KRELTSC: 1587844419] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1588540422] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1589921025] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1590810543] <: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1591697394] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1592733366] Testing word: > +[Hera] [HADES][TEST ] [KRELTSC: 1593438273] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1594196142] Running >.greater_than: 7 5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1595697243] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1596984774] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1598389632] L8[TABLE]: Config 29 → 30 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1600489296] Running >.less_than: 5 7 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1601655867] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1602978783] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1605126936] Running >.equal: 5 5 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1606199427] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1607476017] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1609632927] Running >.positive_negative: 5 -5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1610792988] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1612092951] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1614640083] Running >.negative_negative: -5 -7 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1615891809] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1617180768] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1619425017] Running >.empty_stack: > +[Hera] [HADES][ERROR] [KRELTSC: 1620240216] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1620983112] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1622351745] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1623248319] Running >.one_item: 42 > +[Hera] [HADES][ERROR] [KRELTSC: 1624034118] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1624723086] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1626270870] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1627167906] >: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1628039868] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1629081405] Testing word: 0= +[Hera] [HADES][TEST ] [KRELTSC: 1629773376] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1630532673] Running 0=.zero: 0 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1631724339] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1633042593] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1635292743] Running 0=.positive: 42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1636418595] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1637900439] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1640095254] Running 0=.negative: -42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1641202143] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1642526088] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1644716178] Running 0=.empty_stack: 0= +[Hera] [HADES][ERROR] [KRELTSC: 1645545426] 0=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1646322027] Expected error occurred +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1647709854] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1648632090] 0=: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1649514069] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1650700758] Testing word: 0< +[Hera] [HADES][TEST ] [KRELTSC: 1651366605] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1652104881] Running 0<.negative: -42 0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1653337014] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1654644243] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1656885153] Running 0<.zero: 0 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1657983999] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1659302001] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1661234904] L8[TABLE]: Config 30 → 31 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1662664164] Running 0<.positive: 42 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1663751208] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1665077484] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1667239665] Running 0<.empty_stack: 0< +[Hera] [HADES][ERROR] [KRELTSC: 1668058098] 0<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1668813258] Expected error occurred +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1670190837] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1671080082] 0<: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1671963972] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1673085603] Testing word: 0> +[Hera] [HADES][TEST ] [KRELTSC: 1673772912] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1674514716] Running 0>.positive: 42 0> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1675874634] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1677164118] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1679375439] Running 0>.zero: 0 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1680460719] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1681773849] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1683984603] Running 0>.negative: -42 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1685087733] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1686402186] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1688713194] Running 0>.empty_stack: 0> +[Hera] [HADES][ERROR] [KRELTSC: 1689516528] 0>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1690270638] Expected error occurred +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1691664429] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1692577782] 0>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1693468791] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1694513310] Testing word: 0<> +[Hera] [HADES][TEST ] [KRELTSC: 1695205659] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1695955737] Running 0<>.nonzero_pos: 42 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1697153724] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1698479349] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1700840253] Running 0<>.nonzero_neg: -1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1701978432] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1703285388] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1705523799] Running 0<>.zero: 0 0<> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1706604207] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1707894909] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1710074856] Running 0<>.empty_stack: 0<> +[Hera] [HADES][ERROR] [KRELTSC: 1710897930] 0<>: stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1711622262] Expected error occurred +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1713092157] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1714210617] 0<>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1715141001] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1716180291] Testing word: U< +[Hera] [HADES][TEST ] [KRELTSC: 1716866697] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1717620177] Running U<.less: 3 5 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1718815056] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1720144125] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1722419643] Running U<.equal: 5 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1723564878] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1724877546] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1727252289] Running U<.greater: 7 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1728350547] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1729675353] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1731399957] L8[TABLE]: Config 31 → 32 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1733065509] Running U<.zero_one: 0 1 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1734180126] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1735492542] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1737733977] Running U<.empty_stack: U< +[Hera] [HADES][ERROR] [KRELTSC: 1738814784] U<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1739547558] Expected error occurred +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1740929799] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1741806801] U<: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1742706861] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1743732732] Testing word: U> +[Hera] [HADES][TEST ] [KRELTSC: 1744434867] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1745183769] Running U>.greater: 5 3 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1746697449] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1748028093] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1750286475] Running U>.equal: 5 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1751597337] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1752927393] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1755089994] Running U>.less: 3 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1756171368] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1757478177] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1759715433] Running U>.one_zero: 1 0 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1760826501] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1762141962] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1764602007] Running U>.empty_stack: U> +[Hera] [HADES][ERROR] [KRELTSC: 1765430037] U>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1766168670] Expected error occurred +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1767560214] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1768442445] U>: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1769331942] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1770373500] Testing word: WITHIN +[Hera] [HADES][TEST ] [KRELTSC: 1771086198] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1771853601] Running WITHIN.in_range: 3 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1773166164] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1774481541] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1776875709] Running WITHIN.at_low: 1 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1778059101] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1779385167] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1781653734] Running WITHIN.at_high: 5 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1782931500] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1784278356] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1785974001] L8[TABLE]: Config 32 → 33 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1787673048] Running WITHIN.below: 0 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1789185993] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1790534361] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1792754922] Running WITHIN.above: 6 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1793910825] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1795276497] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1797493572] Running WITHIN.empty_stack: WITHIN +[Hera] [HADES][ERROR] [KRELTSC: 1798385001] WITHIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1799188860] Expected error occurred +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1800605751] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1801690716] WITHIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1802616165] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1803689580] Testing word: TRUE +[Hera] [HADES][TEST ] [KRELTSC: 1804396230] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1805159202] Running TRUE.value: TRUE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1806327075] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1807663641] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1809881304] Running TRUE.as_flag: TRUE 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1810987080] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1812339963] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1814800932] Running TRUE.in_and: TRUE TRUE AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1816010994] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1817343990] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1819617576] TRUE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1820533554] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1821558879] Testing word: FALSE +[Hera] [HADES][TEST ] [KRELTSC: 1822287201] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1823049291] Running FALSE.value: FALSE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1824215526] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1825552911] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1828017345] Running FALSE.as_flag: FALSE 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1829190888] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1830537702] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1832813430] Running FALSE.in_or: TRUE FALSE OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1834023114] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1835366841] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1837666509] FALSE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1838748345] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1839913509] Testing word: >= +[Hera] [HADES][TEST ] [KRELTSC: 1840608168] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1841372631] Running >=.less: 3 5 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1842613773] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1843939755] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1846029654] L8[TABLE]: Config 33 → 34 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1847443920] Running >=.greater: 5 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1848606585] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1849938468] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1852485684] Running >=.equal: 3 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1853589927] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1854893061] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1857137814] Running >=.negative: -1 0 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1858264191] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1859573142] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1861758591] Running >=.neg_neg: -1 -2 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1862884821] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1864339575] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1866435249] Running >=.underflow: >= +[Hera] [HADES][ERROR] [KRELTSC: 1867117392] >=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1868006742] Expected error occurred +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1869491442] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1870387743] >=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1871263044] â–¶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1872313842] Testing word: <= +[Hera] [HADES][TEST ] [KRELTSC: 1872999429] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1873736130] Running <=.less: 3 5 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1874931219] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1876229313] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1878752736] Running <=.greater: 5 3 <= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1879893813] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1881209883] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1883352471] Running <=.equal: 3 3 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1884421203] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1885735488] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1887932067] Running <=.negative: -1 0 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1889219787] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1890568848] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1892808057] Running <=.neg_neg: -2 -1 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1893927546] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1895243637] Expected: Should print: -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1896422304] L8[TABLE]: Config 34 → 35 regime=2 score=52428 L1=0 L2=1 L3=0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1898677053] Running <=.underflow: <= +[Hera] [HADES][ERROR] [KRELTSC: 1899498909] <=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1900224354] Expected error occurred +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1901748471] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1902635322] <=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1903766382] === Logical Words Summary: 0 passed, 0 failed, 0 skipped, 0 err +[Hera] [HADES][INFO ] [KRELTSC: 1904808591] +[Hera] === Testing Module: Mixed Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 1905989001] Running Mixed Arithmetic Words Tests (Module 7)... +[Hera] [HADES][TEST ] [KRELTSC: 1906950906] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 1908071655] Testing word: */ +[Hera] [HADES][TEST ] [KRELTSC: 1908779418] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1909612929] Running */.basic: 6 7 4 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1910932569] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1912273419] Expected: Should print: 10 (6*7/4) +[Hera] [HADES][TEST ] [KRELTSC: 1913185701] Running */.exact_division: 12 5 3 */ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 1914556035] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1915828782] Expected: Should print: 20 (12*5/3) +[Hera] [HADES][TEST ] [KRELTSC: 1916699883] Running */.zero_multiply: 0 999 123 */ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1917907824] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1919236788] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1920008055] Running */.by_one: 42 5 1 */ . CR +[Hera] 210 +[Hera] [HADES][TEST ] [KRELTSC: 1921179498] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1922481141] Expected: Should print: 210 (42*5/1) +[Hera] [HADES][TEST ] [KRELTSC: 1923355497] Running */.truncation: 7 3 2 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1924515327] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1925817390] Expected: Should print: 10 (21/2 truncated) +[Hera] [HADES][TEST ] [KRELTSC: 1926905736] Running */.negative_multiply: -6 7 4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1928236170] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1929549678] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1930345557] Running */.negative_divisor: 6 7 -4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1931600958] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1932912765] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1933715742] Running */.div_by_zero: 6 7 0 */ +[Hera] [HADES][ERROR] [KRELTSC: 1934607318] */: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1935347190] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1936730334] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1937638080] Running */.empty_stack: */ +[Hera] [HADES][ERROR] [KRELTSC: 1938461784] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1939270557] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1940693643] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1941587214] Running */.two_items: 1 2 */ +[Hera] [HADES][ERROR] [KRELTSC: 1942420368] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1943121915] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1944528936] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1945485990] */: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1946437164] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 1947465492] Testing word: */MOD +[Hera] [HADES][TEST ] [KRELTSC: 1948200513] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1948951767] Running */MOD.basic: 17 3 5 */MOD . . CR +[Hera] 10 1 +[Hera] [HADES][TEST ] [KRELTSC: 1950299673] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1951638528] Expected: Should print: 1 10 (51/5 = 10 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 1952818518] Running */MOD.exact_division: 15 4 3 */MOD . . CR +[Hera] 20 0 +[Hera] [HADES][TEST ] [KRELTSC: 1954121148] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1955457735] Expected: Should print: 0 20 (60/3 = 20 rem 0) +[Hera] [HADES][TEST ] [KRELTSC: 1956426381] Running */MOD.zero_multiply: 0 999 123 */MOD . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1957717398] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1959069210] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1959871452] Running */MOD.by_one: 42 5 1 */MOD . . CR +[Hera] 210 0 +[Hera] [HADES][TEST ] [KRELTSC: 1961218959] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1962556218] Expected: Should print: 0 210 +[Hera] [HADES][TEST ] [KRELTSC: 1963375071] Running */MOD.remainder: 7 8 5 */MOD . . CR +[Hera] 11 1 +[Hera] [HADES][TEST ] [KRELTSC: 1964673270] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1966006854] Expected: Should print: 1 11 (56/5 = 11 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 1966972581] Running */MOD.negative: -7 3 4 */MOD . . CR +[Hera] -5 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1968208158] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1969552305] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1970407887] Running */MOD.div_by_zero: 6 7 0 */MOD +[Hera] [HADES][ERROR] [KRELTSC: 1971351816] */MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1972110084] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1973530020] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1974414792] Running */MOD.empty_stack: */MOD +[Hera] [HADES][ERROR] [KRELTSC: 1975316196] */MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1976071902] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1977714018] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1978608975] */MOD: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1979531757] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 1980577620] Testing word: M+ +[Hera] [HADES][TEST ] [KRELTSC: 1981278369] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1982035923] Running M+.basic: 0 100 200 M+ . . CR +[Hera] 300 0 +[Hera] [HADES][TEST ] [KRELTSC: 1983400020] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1984715124] Expected: Should print: 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1985570307] Running M+.overflow: 0 2147483647 1 M+ . . CR +[Hera] 2147483648 0 +[Hera] [HADES][TEST ] [KRELTSC: 1986875625] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1988177772] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 1989007755] Running M+.negative: 0 -100 50 M+ . . CR +[Hera] -50 0 +[Hera] [HADES][TEST ] [KRELTSC: 1990371558] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1991692584] Expected: Should print: 50 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1992526158] Running M+.zero_add: 0 42 0 M+ . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 1993707282] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1995005649] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 1995818727] Running M+.both_negative: 0 -100 -200 M+ . . CR +[Hera] -300 0 +[Hera] [HADES][TEST ] [KRELTSC: 1997062368] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1998381084] Expected: Should print: -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1999238325] Running M+.empty_stack: M+ +[Hera] [HADES][TEST ] [KRELTSC: 2000065305] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2001462162] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2002505001] Running M+.one_item: 42 M+ +[Hera] [HADES][TEST ] [KRELTSC: 2003316777] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2004732198] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2005611090] M+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2006531919] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 2007579819] Testing word: M* +[Hera] [HADES][TEST ] [KRELTSC: 2008273722] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2009052675] Running M*.basic: 123 456 M* . . CR +[Hera] 0 56088 +[Hera] [HADES][TEST ] [KRELTSC: 2010331050] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2011655541] Expected: Should print: 56088 0 +[Hera] [HADES][TEST ] [KRELTSC: 2012506692] Running M*.by_zero: 999 0 M* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2013658773] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2014914090] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2015966316] Running M*.by_one: 42 1 M* . . CR +[Hera] 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 2017125411] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2018487408] Expected: Should print: 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 2019295047] Running M*.negative: -123 456 M* . . CR +[Hera] -1 -56088 +[Hera] [HADES][TEST ] [KRELTSC: 2020512039] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2021831175] Expected: Should print: -56088 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2022728589] Running M*.large_multiply: 65536 65536 M* . . CR +[Hera] 0 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 2024072631] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2025404703] Expected: Should handle large result +[Hera] [HADES][TEST ] [KRELTSC: 2026257681] Running M*.both_negative: -100 -200 M* . . CR +[Hera] 0 20000 +[Hera] [HADES][TEST ] [KRELTSC: 2027625600] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2028943644] Expected: Should print: 20000 0 +[Hera] [HADES][TEST ] [KRELTSC: 2029795383] Running M*.empty_stack: M* +[Hera] [HADES][TEST ] [KRELTSC: 2030642817] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2032049502] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2032917936] Running M*.one_item: 42 M* +[Hera] [HADES][TEST ] [KRELTSC: 2033716797] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2035102041] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2035996053] M*: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2036897793] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 2037961968] Testing word: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 2038712361] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2039452086] Running M/MOD.basic: 0 1000 100 M/MOD . . CR +[Hera] 10 0 +[Hera] [HADES][TEST ] [KRELTSC: 2041193532] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2042535705] Expected: Should print: 0 10 (1000/100) +[Hera] [HADES][TEST ] [KRELTSC: 2043428142] Running M/MOD.with_remainder: 0 1234 100 M/MOD . . CR +[Hera] 12 34 +[Hera] [HADES][TEST ] [KRELTSC: 2044731549] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2046075318] Expected: Should handle remainder +[Hera] [HADES][TEST ] [KRELTSC: 2046942240] Running M/MOD.double_dividend: 5001 0 10 M/MOD . . CR +[Hera] 1844674407370955161 6 +[Hera] [HADES][TEST ] [KRELTSC: 2048383764] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2049721779] Expected: Should print: 1 500 (5001/10) +[Hera] [HADES][TEST ] [KRELTSC: 2050677405] Running M/MOD.by_one: 0 42 1 M/MOD . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 2051860167] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2053376346] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 2054184573] Running M/MOD.negative_dividend: -1 1000 100 M/MOD . . CR +[Hera] -184467440737095506 -16 +[Hera] [HADES][TEST ] [KRELTSC: 2055739749] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2057091477] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2057929251] Running M/MOD.div_by_zero: 0 100 0 M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 2058863583] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2060276820] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 2061162474] Running M/MOD.empty_stack: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 2061998820] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2063397651] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2064282297] M/MOD: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2065326585] === Mixed Arithmetic Words Summary: 0 passed, 0 failed, 0 skipp +[Hera] [HADES][INFO ] [KRELTSC: 2066362935] +[Hera] === Testing Module: Double Words === +[Hera] [HADES][INFO ] [KRELTSC: 2067456321] Running Double Number Words Tests (Module 6)... +[Hera] [HADES][TEST ] [KRELTSC: 2068418037] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2069500629] Testing word: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 2070246780] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2071022478] Running 2DROP.basic: 1 2 3 4 2DROP . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 2072317821] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2073704577] Expected: Should print: 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 2074561776] Running 2DROP.zeros: 0 0 42 99 2DROP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2075865750] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2077233144] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2078317584] Running 2DROP.negative: -1 -2 100 200 2DROP . . CR +[Hera] -2 -1 +[Hera] [HADES][INFO ] [KRELTSC: 2092035204] L8[TABLE]: Config 35 → 36 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 2092879866] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2093923230] Expected: Should print: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 2094545061] Running 2DROP.exact_four: 10 20 30 40 2DROP DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 2095574754] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2097228945] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 2098168926] Running 2DROP.empty_stack: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 2099027994] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2100440517] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2101329531] Running 2DROP.one_item: 42 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 2102163378] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2103838107] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2104729032] 2DROP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2105652801] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2106684027] Testing word: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 2107389585] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2108172108] Running 2DUP.basic: 100 200 2DUP . . . . CR +[Hera] 200 100 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 2109539565] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2110845303] Expected: Should print: 100 200 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2111746539] Running 2DUP.zeros: 0 0 2DUP . . . . CR +[Hera] 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2112956139] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2114298648] Expected: Should print: 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2115129618] Running 2DUP.negative: -100 -200 2DUP . . . . CR +[Hera] -200 -100 -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2116752078] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2118072789] Expected: Should duplicate negatives +[Hera] [HADES][TEST ] [KRELTSC: 2118932277] Running 2DUP.depth_check: 10 20 2DUP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 2120171277] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2121496776] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 2122271508] Running 2DUP.empty_stack: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 2123098341] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2124503346] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2125380516] Running 2DUP.one_item: 42 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 2126214846] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2127609393] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2128651791] 2DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2129555106] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2130620919] Testing word: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 2131326981] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2132088714] Running 2OVER.basic: 10 20 30 40 2OVER . . . . . . CR +[Hera] 20 10 40 30 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 2133691371] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2135041356] Expected: Should print: 10 20 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 2135948262] Running 2OVER.zeros: 0 0 99 88 2OVER . . . . . . CR +[Hera] 0 0 88 99 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2137319562] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2138651403] Expected: Should print: 0 0 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2139539766] Running 2OVER.mixed: -1 2 -3 4 2OVER . . . . . . CR +[Hera] 2 -1 4 -3 2 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2141133687] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2142484575] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 2143340136] Running 2OVER.depth_check: 1 2 3 4 2OVER DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 2144617272] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2145969924] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 2146791129] Running 2OVER.three_items: 1 2 3 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 2147707800] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2149120176] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2150006187] Running 2OVER.empty_stack: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 2150843499] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2152274124] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2153316312] 2OVER: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2154236154] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2155285902] Testing word: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 2155994421] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2156744331] Running 2SWAP.basic: 10 20 30 40 2SWAP . . . . CR +[Hera] 20 10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 2158213701] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2159549280] Expected: Should print: 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 2160408768] Running 2SWAP.zeros: 0 0 99 88 2SWAP . . . . CR +[Hera] 0 0 88 99 +[Hera] [HADES][TEST ] [KRELTSC: 2161705287] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2163036897] Expected: Should print: 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2163917637] Running 2SWAP.same_pairs: 42 42 42 42 2SWAP . . . . CR +[Hera] 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 2165275896] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2166796527] Expected: Should print: 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 2167678779] Running 2SWAP.negative: -10 -20 30 40 2SWAP . . . . CR +[Hera] -20 -10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 2169063372] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2170408191] Expected: Should print: 30 40 -10 -20 +[Hera] [HADES][TEST ] [KRELTSC: 2171296470] Running 2SWAP.depth_check: 1 2 3 4 2SWAP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 2172570624] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2173916052] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 2174726904] Running 2SWAP.three_items: 1 2 3 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 2175637968] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2177063028] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2177950887] Running 2SWAP.empty_stack: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 2179005381] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2180422293] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2181296733] 2SWAP: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2182212585] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2183260989] Testing word: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 2183961150] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2184734370] Running 2ROT.basic: 10 20 30 40 50 60 2ROT . . . . . . CR +[Hera] 20 10 60 50 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 2186376066] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2187725631] Expected: Should print: 30 40 50 60 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 2188736319] Running 2ROT.zeros: 0 0 1 1 2 2 2ROT . . . . . . CR +[Hera] 0 0 2 2 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 2190140253] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2191789005] Expected: Should rotate with zeros +[Hera] [HADES][TEST ] [KRELTSC: 2192641374] Running 2ROT.negative: -1 -2 3 4 -5 -6 2ROT . . . . . . CR +[Hera] -2 -1 -6 -5 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 2194098879] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2195415621] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 2196253395] Running 2ROT.depth_check: 1 2 3 4 5 6 2ROT DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 2197543488] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2198860650] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 2199666504] Running 2ROT.five_items: 1 2 3 4 5 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 2200617636] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2202013044] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2202909639] Running 2ROT.empty_stack: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 2203971483] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2205450261] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2206328355] 2ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2207266131] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2208349815] Testing word: D+ +[Hera] [HADES][TEST ] [KRELTSC: 2209072887] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2209897809] Running D+.basic: 100 200 300 400 D+ . . CR +[Hera] 600 400 +[Hera] [HADES][TEST ] [KRELTSC: 2211413358] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2212785183] Expected: Should print: 400 600 +[Hera] [HADES][TEST ] [KRELTSC: 2213658006] Running D+.zero_add: 42 99 0 0 D+ . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2214935352] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2216599896] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2217454071] Running D+.negative: -100 -200 50 75 D+ . . CR +[Hera] -125 -50 +[Hera] [HADES][TEST ] [KRELTSC: 2218773186] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2220150387] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 2221060926] Running D+.carry: 2147483647 0 1 0 D+ . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2222412213] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2223789813] Expected: Should handle carry +[Hera] [HADES][TEST ] [KRELTSC: 2224620447] Running D+.both_negative: -100 -200 -300 -400 D+ . . CR +[Hera] -599 -400 +[Hera] [HADES][TEST ] [KRELTSC: 2225972553] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2227297590] Expected: Should add negatives +[Hera] [HADES][TEST ] [KRELTSC: 2228140005] Running D+.three_items: 1 2 3 D+ +[Hera] [HADES][TEST ] [KRELTSC: 2229244122] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2230646040] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2231549208] Running D+.empty_stack: D+ +[Hera] [HADES][TEST ] [KRELTSC: 2232346074] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2233774368] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2234740032] D+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2235684843] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2236778481] Testing word: D- +[Hera] [HADES][TEST ] [KRELTSC: 2237459154] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2238223680] Running D-.basic: 500 600 100 200 D- . . CR +[Hera] 400 [HADES][INFO ] [KRELTSC: 2239602099] L8[TABLE]: Config 36 → 37 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 400 +[Hera] [HADES][TEST ] [KRELTSC: 2240803803] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2242517571] Expected: Should print: 400 400 +[Hera] [HADES][TEST ] [KRELTSC: 2243389701] Running D-.zero_sub: 42 99 0 0 D- . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2244585105] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2245884459] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2246693190] Running D-.from_zero: 0 0 100 200 D- . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2247957180] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2249344923] Expected: Should print: -100 -200 +[Hera] [HADES][TEST ] [KRELTSC: 2250194184] Running D-.negative: 100 200 -50 -75 D- . . CR +[Hera] 274 150 +[Hera] [HADES][TEST ] [KRELTSC: 2251474764] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2252792073] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 2253719538] Running D-.borrow: 0 0 1 0 D- . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2255061123] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2256378705] Expected: Should handle borrow +[Hera] [HADES][TEST ] [KRELTSC: 2257200750] Running D-.same_values: 100 200 100 200 D- . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2258485656] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2259769974] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2260590297] Running D-.three_items: 1 2 3 D- +[Hera] [HADES][TEST ] [KRELTSC: 2261468034] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2262866172] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2263748844] Running D-.empty_stack: D- +[Hera] [HADES][TEST ] [KRELTSC: 2264568285] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2265989859] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2267051766] D-: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2267962704] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2269025745] Testing word: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 2269753689] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2270522667] Running DNEGATE.positive: 100 200 DNEGATE . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2271939831] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2273325369] Expected: Should negate positive double +[Hera] [HADES][TEST ] [KRELTSC: 2274231876] Running DNEGATE.negative: -100 -200 DNEGATE . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 2275565922] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2276923845] Expected: Should negate negative double +[Hera] [HADES][TEST ] [KRELTSC: 2277807147] Running DNEGATE.zero: 0 0 DNEGATE . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2279048457] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2280404049] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2281224183] Running DNEGATE.max_positive: 2147483647 0 DNEGATE . . CR +[Hera] -1 -2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2282642754] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2284019955] Expected: Should negate max positive +[Hera] [HADES][TEST ] [KRELTSC: 2284898574] Running DNEGATE.one_item: 42 DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 2285806299] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2287235769] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2288123313] Running DNEGATE.empty_stack: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 2288980995] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2290424955] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2291371320] DNEGATE: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2292428292] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2293468023] Testing word: DABS +[Hera] [HADES][TEST ] [KRELTSC: 2294180553] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2294926011] Running DABS.positive: 100 200 DABS . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 2296232211] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2297564913] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2298405144] Running DABS.negative: -100 -200 DABS . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 2299675686] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2301003054] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2301864453] Running DABS.zero: 0 0 DABS . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2302997634] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2304759618] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2305561440] Running DABS.mixed_sign: 100 -1 DABS . . CR +[Hera] 0 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2306869467] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2308208784] Expected: Should handle mixed sign +[Hera] [HADES][TEST ] [KRELTSC: 2309067096] Running DABS.min_double: -2147483648 -1 DABS . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2310397908] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2311732962] Expected: Should handle min double +[Hera] [HADES][TEST ] [KRELTSC: 2312637096] Running DABS.one_item: 42 DABS +[Hera] [HADES][TEST ] [KRELTSC: 2313527076] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2314948587] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2315921895] Running DABS.empty_stack: DABS +[Hera] [HADES][TEST ] [KRELTSC: 2317028406] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2318449833] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2319353757] DABS: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2320273053] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2321323452] Testing word: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 2322023445] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2322783750] Running DMIN.basic: 100 200 300 400 DMIN . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 2324242326] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2325559908] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2326381848] Running DMIN.equal: 42 99 42 99 DMIN . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2327678598] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2329020267] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2330181735] Running DMIN.negative: -100 -200 -50 -75 DMIN . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2331525798] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2332882020] Expected: Should find min negative +[Hera] [HADES][TEST ] [KRELTSC: 2333787729] Running DMIN.mixed: -100 -1 100 0 DMIN . . CR +[Hera] -1 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2335074987] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2336404287] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 2337277299] Running DMIN.three_items: 1 2 3 DMIN +[Hera] [HADES][TEST ] [KRELTSC: 2338202223] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2339610987] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2340489207] Running DMIN.empty_stack: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 2341292310] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2342946459] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2343855801] DMIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2344785009] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2345845887] Testing word: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 2346558795] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2347320381] Running DMAX.basic: 100 200 300 400 DMAX . . CR +[Hera] 400 300 +[Hera] [HADES][TEST ] [KRELTSC: 2348831310] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2350142319] Expected: Should print: 300 400 +[Hera] [HADES][TEST ] [KRELTSC: 2350972680] Running DMAX.equal: 42 99 42 99 DMAX . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2352280119] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2353589889] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2354483397] Running DMAX.negative: -300 -400 -100 -200 DMAX . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2355996531] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2357318901] Expected: Should find max negative +[Hera] [HADES][TEST ] [KRELTSC: 2358179586] Running DMAX.mixed: -100 -1 100 0 DMAX . . CR +[Hera] 0 100 +[Hera] [HADES][TEST ] [KRELTSC: 2359410249] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2360730645] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 2361601011] Running DMAX.three_items: 1 2 3 DMAX +[Hera] [HADES][TEST ] [KRELTSC: 2362506258] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2363951478] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2364842844] Running DMAX.empty_stack: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 2365661466] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2367220569] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2368174116] DMAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2369093013] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2370138687] Testing word: D= +[Hera] [HADES][TEST ] [KRELTSC: 2370854976] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2371622442] Running D=.equal: 100 200 100 200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2372941137] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2374261869] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2375053548] Running D=.not_equal_low: 100 200 101 200 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2376314829] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2377632663] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2378423187] Running D=.not_equal_high: 100 200 100 201 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2379739698] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2381051736] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2381855175] Running D=.zero_equal: 0 0 0 0 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2383002363] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2384312847] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2385107823] Running D=.negative_equal: -100 -200 -100 -200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2386383636] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2387716128] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2388519084] Running D=.three_items: 1 2 3 D= +[Hera] [HADES][TEST ] [KRELTSC: 2389391718] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2390803506] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2391694368] Running D=.empty_stack: D= +[Hera] [HADES][TEST ] [KRELTSC: 2392660683] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2394091959] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2394998172] D=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2395884771] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2396944116] Testing word: D< +[Hera] [HADES][TEST ] [KRELTSC: 2397647826] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2398438287] Running D<.less_than: 100 200 300 400 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2399994597] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2401437675] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2402247876] Running D<.greater_than: 300 400 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2403654078] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2405169921] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2405957442] Running D<.equal: 100 200 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2407221768] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2408525091] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2409328761] Running D<.negative_positive: -100 -1 100 0 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2410608102] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2411943429] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2412748275] Running D<.negative_negative: -300 -1 -100 -1 D< . CR +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 2414109033] L8[TABLE]: Config 37 → 38 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 2415250194] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2416570254] Expected: Should compare negatives +[Hera] [HADES][TEST ] [KRELTSC: 2417665173] Running D<.high_word_diff: 100 200 100 300 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2418979857] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2420390616] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2421288030] Running D<.three_items: 1 2 3 D< +[Hera] [HADES][TEST ] [KRELTSC: 2422216041] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2423663466] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2424580704] Running D<.empty_stack: D< +[Hera] [HADES][TEST ] [KRELTSC: 2425409196] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2426841291] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2427776967] D<: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2428705860] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2430029511] Testing word: D0= +[Hera] [HADES][TEST ] [KRELTSC: 2430747879] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2431548861] Running D0=.zero: 0 0 D0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2432752560] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2434059159] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2434842081] Running D0=.positive: 100 200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2436017178] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2437324239] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2438113797] Running D0=.negative: -100 -200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2439269511] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2440586085] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2441399709] Running D0=.zero_high: 0 100 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2442793836] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2444087541] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2444892303] Running D0=.zero_low: 100 0 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2446025841] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2447340378] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2448128109] Running D0=.one_item: 42 D0= +[Hera] [HADES][TEST ] [KRELTSC: 2448972435] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2450359464] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2451246630] Running D0=.empty_stack: D0= +[Hera] [HADES][TEST ] [KRELTSC: 2452053723] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2453455326] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2454356982] D0=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2455479369] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2456514501] Testing word: D0< +[Hera] [HADES][TEST ] [KRELTSC: 2457220878] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2457972342] Running D0<.negative: -100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2459222955] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2460555447] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2461370163] Running D0<.zero: 0 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2462499732] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2463844845] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2464645407] Running D0<.positive: 100 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2465779008] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2467099929] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2468133528] Running D0<.negative_high_only: 100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2469587715] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2470905549] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2471704158] Running D0<.large_negative: -1 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2472887613] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2474243373] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2475041499] Running D0<.one_item: 42 D0< +[Hera] [HADES][TEST ] [KRELTSC: 2475904536] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2477308533] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2478199983] Running D0<.empty_stack: D0< +[Hera] [HADES][TEST ] [KRELTSC: 2479104306] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2480718639] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2481613890] D0<: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2482531758] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2483587533] Testing word: S>D +[Hera] [HADES][TEST ] [KRELTSC: 2484303255] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2485063203] Running S>D.positive: 5 S>D . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2486313501] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2487620163] Expected: Should sign-extend positive: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2488563105] Running S>D.negative: -5 S>D . . CR +[Hera] -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 2489728542] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2491062336] Expected: Should sign-extend negative: -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 2491985790] Running S>D.zero: 0 S>D . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2493275610] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2494616481] Expected: Should sign-extend zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2495509023] Running S>D.max_int: 2147483647 S>D . . CR +[Hera] 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2496812220] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2498128563] Expected: Should extend max int: 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2499119154] Running S>D.min_int: -2147483648 S>D . . CR +[Hera] -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2500430142] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2501775780] Expected: Should extend min int: -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2502726639] Running S>D.empty_stack: S>D +[Hera] [HADES][TEST ] [KRELTSC: 2503573506] Expected error occurred +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2504976348] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2506082334] S>D: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2506983654] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2508046779] Testing word: D2* +[Hera] [HADES][TEST ] [KRELTSC: 2508751623] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2509526250] Running D2*.basic: 5 0 D2* . . CR +[Hera] 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 2510779593] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2512101438] Expected: Should double 5: 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 2512943580] Running D2*.zero: 0 0 D2* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2514080604] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2515397640] Expected: Should double zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2516265339] Running D2*.negative: -1 -1 D2* . . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 2517456900] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2518960878] Expected: Should double -1: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 2519819610] Running D2*.carry: 0 1 D2* . . CR +[Hera] 2 0 +[Hera] [HADES][TEST ] [KRELTSC: 2521017471] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2522421258] Expected: Should shift high cell: 0 2 +[Hera] [HADES][TEST ] [KRELTSC: 2523365544] Running D2*.empty_stack: D2* +[Hera] [HADES][TEST ] [KRELTSC: 2524272681] Expected error occurred +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2525780838] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2526772962] D2*: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2527742763] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2528869518] Testing word: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 2529616719] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2530618860] Running D2/.basic: 10 0 D2/ . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2532027162] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2533438047] Expected: Should halve 10: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2534335965] Running D2/.negative: -2 -1 D2/ . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2535616251] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2537106915] Expected: Should halve -2: -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2538020709] Running D2/.zero: 0 0 D2/ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2539206369] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2540609043] Expected: Should halve zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2541468342] Running D2/.odd: 3 0 D2/ . . CR +[Hera] 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 2542588965] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2544244332] Expected: Should truncate toward zero: 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 2545167765] Running D2/.empty_stack: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 2545991910] Expected error occurred +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2547405630] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2548284291] D2/: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2549192877] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2550216795] Testing word: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 2550903432] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2551659033] Running 2>R.roundtrip: 10 20 2>R 2R> . . CR +[Hera] 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 2553113430] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2554441575] Expected: Should store and retrieve: 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 2555375424] Running 2>R.depth_after: 1 2 2>R DEPTH . 2R> DROP DROP CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2557184637] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2558507070] Expected: Should empty data stack: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2559392136] Running 2>R.empty_stack: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 2560246374] Expected error occurred +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2561663160] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2562530292] 2>R: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2563430793] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2564495430] Testing word: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 2565193953] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2565952830] Running 2R>.roundtrip: 5 6 2>R 2R> . . CR +[Hera] 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 2567145504] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2568603933] Expected: Should retrieve double: 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 2569480263] Running 2R>.depth: 9 8 2>R 2R> DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 2570686419] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2571998394] Expected: Should push 2 items to data stack: 2 +[Hera] [HADES][TEST ] [KRELTSC: 2572959501] Running 2R>.empty_rstack: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 2573788224] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2575190394] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2576131257] 2R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2577047109] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2578080456] Testing word: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 2578790634] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2579543400] Running 2R@.peek: 3 4 2>R 2R@ . . 2R> DROP DROP CR +[Hera] 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 2580949182] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2582267373] Expected: Should peek: 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 2583064218] Running 2R@.non_destructive: 7 8 2>R 2R@ DROP DROP 2R> . . CR +[Hera] 8 7 +[Hera] [HADES][TEST ] [KRELTSC: 2584408659] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2585751483] Expected: Should leave rstack intact +[Hera] [HADES][TEST ] [KRELTSC: 2586631656] Running 2R@.empty_rstack: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 2587468800] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2588871999] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2589796377] 2R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2590753977] === Double Number Words Summary: 0 passed, 0 failed, 0 skipped, +[Hera] [HADES][INFO ] [KRELTSC: 2591801688] +[Hera] === Testing Module: Format Words === +[Hera] [HADES][INFO ] [KRELTSC: 2592921324] Running Format Words Tests (Module 10)... +[Hera] [HADES][TEST ] [KRELTSC: 2594170551] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2595227754] Testing word: BASE +[Hera] [HADES][TEST ] [KRELTSC: 2595930204] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2596691832] Running BASE.decimal: DECIMAL 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2597879109] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2599168887] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 2599988811] Running BASE.hex: HEX FF . CR +[Hera] FF +[Hera] [HADES][TEST ] [KRELTSC: 2601379116] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2602696194] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 2603480733] Running BASE.octal: OCTAL 52 . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2604636342] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2606141538] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 2606929920] Running BASE.base_store: 16 BASE ! 255 . CR +[Hera] 723 +[Hera] [HADES][TEST ] [KRELTSC: 2608223667] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2609527326] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 2610322680] Running BASE.base_fetch: BASE @ . CR +[Hera] 16 +[Hera] [HADES][TEST ] [KRELTSC: 2611444836] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2612769222] Expected: Should print current base +[Hera] [HADES][TEST ] [KRELTSC: 2613639882] BASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2614583223] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2615625642] Testing word: DECIMAL +[Hera] [HADES][TEST ] [KRELTSC: 2616366858] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2617113135] Running DECIMAL.from_hex: HEX FF DECIMAL . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2618522130] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2619881481] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 2620704891] Running DECIMAL.from_octal: OCTAL 52 DECIMAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2621944668] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2623298748] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 2624095740] Running DECIMAL.state_persist: DECIMAL 42 . CR 42 . CR HEX 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2625955269] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2627327094] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 2628167304] DECIMAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2629113081] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2630144223] Testing word: HEX +[Hera] [HADES][TEST ] [KRELTSC: 2630860239] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2631930252] Running HEX.from_decimal: DECIMAL 255 HEX . CR +[Hera] FF +[Hera] [HADES][TEST ] [KRELTSC: 2633279712] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2634594480] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 2635412010] Running HEX.from_octal: OCTAL 52 HEX . CR +[Hera] 2A +[Hera] [HADES][TEST ] [KRELTSC: 2636592735] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2637924912] Expected: Should print: 2A +[Hera] [HADES][TEST ] [KRELTSC: 2638726356] Running HEX.state_persist: HEX FF . CR DECIMAL 255 . CR +[Hera] FF +[Hera] [HADES][INFO ] [KRELTSC: 2640096837] L8[TABLE]: Config 38 → 39 regime=2 score=52428 L1=0 L2=1 L3=0 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2641490019] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2642787798] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 2643745461] HEX: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2644659339] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2645701401] Testing word: OCTAL +[Hera] [HADES][TEST ] [KRELTSC: 2646409521] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2647162602] Running OCTAL.from_decimal: DECIMAL 42 OCTAL . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2648411556] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2649773133] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 2650582725] Running OCTAL.from_hex: HEX 2A OCTAL . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2651858958] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2653170009] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 2653989240] Running OCTAL.state_persist: DECIMAL 42 . CR OCTAL 52 . CR +[Hera] 42 +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2655550968] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2657016243] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 2657840556] OCTAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2658753783] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2659809411] Testing word: <# +[Hera] [HADES][TEST ] [KRELTSC: 2660526372] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2661269436] Running <#.basic: DECIMAL 42 S>D <# #S #> TYPE CR +[Hera] 774763251095801167872 +[Hera] [HADES][TEST ] [KRELTSC: 2663539011] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2664836832] Expected: Should format number +[Hera] [HADES][TEST ] [KRELTSC: 2665657239] Running <#.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2666572020] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2667853839] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2668749846] Running <#.negative: -42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2670017280] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2671328121] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2672163900] <#: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2673076161] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2674118181] Testing word: # +[Hera] [HADES][TEST ] [KRELTSC: 2674804734] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2675562624] Running #.single_digit: 15 <# # #> TYPE CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2676856476] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2678144721] Expected: Should print rightmost digit +[Hera] [HADES][TEST ] [KRELTSC: 2679040371] Running #.multiple: 15 <# # # #> TYPE CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 2680208811] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2681682192] Expected: Should print digits right to left +[Hera] [HADES][TEST ] [KRELTSC: 2682594642] Running #.zero_pad: 5 <# # 0 # #> TYPE CR +[Hera] 05 +[Hera] [HADES][TEST ] [KRELTSC: 2683794582] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2685083436] Expected: Should handle zero padding +[Hera] [HADES][TEST ] [KRELTSC: 2685955293] #: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2686831014] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2687885550] Testing word: #S +[Hera] [HADES][TEST ] [KRELTSC: 2688559251] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2689308678] Running #S.basic: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2690458806] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2691754149] Expected: Should convert all digits +[Hera] [HADES][TEST ] [KRELTSC: 2692611054] Running #S.zero: 0 <# #S #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2693798982] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2695098336] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2695920759] Running #S.large: 1234567890 <# #S #> TYPE CR +[Hera] 1234567890 +[Hera] [HADES][TEST ] [KRELTSC: 2697202515] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2698513629] Expected: Should handle large numbers +[Hera] [HADES][TEST ] [KRELTSC: 2699391093] #S: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2700293064] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2701343505] Testing word: SIGN +[Hera] [HADES][TEST ] [KRELTSC: 2702060361] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2702804139] Running SIGN.negative: -42 ABS <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2704168740] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2705476998] Expected: Should add minus +[Hera] [HADES][TEST ] [KRELTSC: 2706420297] Running SIGN.positive: 42 <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2707700142] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2709127344] Expected: Should not add sign +[Hera] [HADES][TEST ] [KRELTSC: 2709932589] Running SIGN.zero: 0 <# #S SIGN #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2711142126] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2712450216] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2713276545] SIGN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2714187546] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2715253296] Testing word: #> +[Hera] [HADES][TEST ] [KRELTSC: 2715954717] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2716713489] Running #>.normal: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2717866578] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2719372383] Expected: Should terminate formatting +[Hera] [HADES][TEST ] [KRELTSC: 2720251779] Running #>.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2721159147] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2722451361] Expected: Should handle empty format +[Hera] [HADES][TEST ] [KRELTSC: 2723345877] Running #>.stack_effect: 42 <# #S #> SWAP . . CR +[Hera] 24 2 +[Hera] [HADES][TEST ] [KRELTSC: 2724591114] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2725888431] Expected: Should leave addr u +[Hera] [HADES][TEST ] [KRELTSC: 2726697036] #>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2727588003] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2728620342] Testing word: HOLD +[Hera] [HADES][TEST ] [KRELTSC: 2729340789] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2730074403] Running HOLD.basic: 42 <# 46 HOLD #S #> TYPE CR +[Hera] 42. +[Hera] [HADES][TEST ] [KRELTSC: 2731343580] Test passed +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2732856693] Expected: Should insert dot +[Hera] [HADES][TEST ] [KRELTSC: 2733683631] Running HOLD.overflow: <# 257 HOLD #> +[Hera] [HADES][ERROR] [KRELTSC: 2734600575] HOLD: byte out of range (257) +[Hera] [HADES][TEST ] [KRELTSC: 2735627895] Expected error occurred +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2737024626] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 2737885794] HOLD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2738820042] === Format Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 2739861768] +[Hera] === Testing Module: String Words === +[Hera] [HADES][INFO ] [KRELTSC: 2740972584] Running String Words Tests (Module 11)... +[Hera] [HADES][TEST ] [KRELTSC: 2741900007] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2742963342] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 2743676334] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2744596512] Running COUNT.basic: HERE S" Test" DROP COUNT . . CR +[Hera] 84 121 +[Hera] [HADES][TEST ] [KRELTSC: 2746423449] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2747775030] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 2748695250] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 2749973142] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2751333060] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 2752215249] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 2753614521] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2754965472] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 2755828719] Running COUNT.string_bounds: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2757312453] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2758661871] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 2759528037] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 2760397899] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2761211754] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2762611047] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2763519864] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2764458564] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2765504574] Testing word: -TRAILING +[Hera] [HADES][TEST ] [KRELTSC: 2766246462] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2767069620] Running -TRAILING.basic: HERE S" Test " -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2768643150] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2770160337] Expected: Should trim spaces +[Hera] [HADES][TEST ] [KRELTSC: 2770969320] Running -TRAILING.all_spaces: HERE S" " -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2772116235] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2773480206] Expected: Should handle all spaces +[Hera] [HADES][TEST ] [KRELTSC: 2774327514] Running -TRAILING.no_spaces: HERE S" Test" -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2775647259] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2776998567] Expected: Should handle no spaces +[Hera] [HADES][TEST ] [KRELTSC: 2777857824] Running -TRAILING.empty: HERE 0 -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2778919941] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2780290590] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 2781142287] -TRAILING: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2782265682] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2783299050] Testing word: CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 2784034701] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2784766131] Running CMOVE.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOV + +[Hera] [HADES][TEST ] [KRELTSC: 2786149023] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2787471834] Expected: Should copy string +[Hera] [HADES][TEST ] [KRELTSC: 2788305219] Running CMOVE.empty: HERE HERE 10 + 0 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 2789302110] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2790643317] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 2791527543] Running CMOVE.overlap: HERE DUP 1+ 5 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 2792499003] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2793822024] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 2794860684] Running CMOVE.bounds: HERE PAD 1000 CMOVE +[Hera] [HADES][ERROR] [KRELTSC: 2795824395] CMOVE: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 2796787224] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2798199369] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 2799063120] CMOVE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2799983340] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2801056881] Testing word: CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 2801784216] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2802543744] Running CMOVE>.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMO + +[Hera] [HADES][TEST ] [KRELTSC: 2803935246] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2805264399] Expected: Should copy backward +[Hera] [HADES][TEST ] [KRELTSC: 2806094172] Running CMOVE>.empty: HERE HERE 10 + 0 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 2807154672] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2808467802] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 2809349004] Running CMOVE>.overlap: HERE DUP 1+ 5 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 2810294760] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2811617760] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 2812437978] Running CMOVE>.bounds: HERE PAD 1000 CMOVE> +[Hera] [HADES][ERROR] [KRELTSC: 2813442135] CMOVE>: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 2814379701] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2815803627] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 2816614920] CMOVE>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2817548769] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2818593687] Testing word: COMPARE +[Hera] [HADES][TEST ] [KRELTSC: 2819345130] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2820317556] Running COMPARE.equal: HERE S" Test" HERE S" Test" COMPARE . +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2822048439] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2823394518] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 2824236933] Running COMPARE.less: HERE S" Test1" HERE S" Test2" COMPARE . +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2825593890] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2826932976] Expected: Should return -1 +[Hera] [HADES][TEST ] [KRELTSC: 2827720266] Running COMPARE.greater: HERE S" Test2" HERE S" Test1" COMPAR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2829094023] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2830453017] Expected: Should return 1 +[Hera] [HADES][TEST ] [KRELTSC: 2831235792] Running COMPARE.different_lengths: HERE S" Test" HERE S" Test +[Hera] [HADES][INFO ] [KRELTSC: 2832510114] L8[TABLE]: Config 39 → 40 regime=2 score=6553 L1=0 L2=1 L3=0 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2833888680] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2835260988] Expected: Should handle lengths +[Hera] [HADES][TEST ] [KRELTSC: 2836109808] Running COMPARE.empty: HERE 0 HERE 0 COMPARE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2837492847] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2838836238] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 2839663365] COMPARE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2840607588] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2841657210] Testing word: SEARCH +[Hera] [HADES][TEST ] [KRELTSC: 2842373835] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2843140125] Running SEARCH.found: HERE S" Testing" HERE S" Test" SEARCH . +[Hera] -1 15 120 +[Hera] [HADES][TEST ] [KRELTSC: 2845062234] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2846398044] Expected: Should find substring +[Hera] [HADES][TEST ] [KRELTSC: 2847255600] Running SEARCH.not_found: HERE S" Testing" HERE S" Xyz" SEARC +[Hera] -1 7 141 +[Hera] [HADES][TEST ] [KRELTSC: 2848696095] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2850065379] Expected: Should return false +[Hera] [HADES][TEST ] [KRELTSC: 2850896664] Running SEARCH.empty_pattern: HERE S" Test" HERE 0 SEARCH . . +[Hera] -1 4 145 +[Hera] [HADES][TEST ] [KRELTSC: 2852376933] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2853724062] Expected: Should handle empty pattern +[Hera] [HADES][TEST ] [KRELTSC: 2854608792] Running SEARCH.empty_string: HERE 0 HERE S" Test" SEARCH . . +[Hera] -1 30 120 +[Hera] [HADES][TEST ] [KRELTSC: 2856078918] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2857560342] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 2858526972] SEARCH: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2859465672] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2860489968] Testing word: SCAN +[Hera] [HADES][TEST ] [KRELTSC: 2861175807] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2861937750] Running SCAN.basic: HERE S" Test,Data" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2863279881] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2864616426] Expected: Should find space +[Hera] [HADES][TEST ] [KRELTSC: 2865423183] Running SCAN.not_found: HERE S" TestData" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2866527111] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2867851287] Expected: Should scan to end +[Hera] [HADES][TEST ] [KRELTSC: 2868670518] Running SCAN.empty: HERE 0 BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2869671588] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2871195978] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 2872031001] Running SCAN.all_delims: HERE S" " BL SCAN TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 2873401545] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2874729690] Expected: Should handle all delims +[Hera] [HADES][TEST ] [KRELTSC: 2875584516] SCAN: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2876509839] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2877570885] Testing word: SKIP +[Hera] [HADES][TEST ] [KRELTSC: 2878293180] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2879037168] Running SKIP.basic: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2880597510] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2881952388] Expected: Should skip spaces +[Hera] [HADES][TEST ] [KRELTSC: 2882913138] Running SKIP.no_delims: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2884232001] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2885604645] Expected: Should not skip +[Hera] [HADES][TEST ] [KRELTSC: 2886395106] Running SKIP.empty: HERE 0 BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2887439919] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2888776002] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 2889592755] Running SKIP.all_delims: HERE S" " BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2890681773] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2891956914] Expected: Should skip all +[Hera] [HADES][TEST ] [KRELTSC: 2892738030] SKIP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2893662849] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2894700438] Testing word: BLANK +[Hera] [HADES][TEST ] [KRELTSC: 2895599175] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2896347993] Running BLANK.basic: HERE 5 BLANK HERE 5 TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 2897851005] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2899203909] Expected: Should fill with spaces +[Hera] [HADES][TEST ] [KRELTSC: 2900048886] Running BLANK.zero: HERE 0 BLANK HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2901073560] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2902403175] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 2903276880] BLANK: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2904197646] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2905230993] Testing word: S" +[Hera] [HADES][TEST ] [KRELTSC: 2905934493] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2906671131] Running S".interpret_len: S" hello" . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2907946608] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2909265681] Expected: Should print: 5 (length) +[Hera] [HADES][TEST ] [KRELTSC: 2910159840] Running S".interpret_type: S" hello" TYPE CR +[Hera] hello +[Hera] [HADES][TEST ] [KRELTSC: 2911381620] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2912714742] Expected: Should print: hello +[Hera] [HADES][TEST ] [KRELTSC: 2913536052] Running S".empty: S" " . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2914634982] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2915955525] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2916753756] Running S".compile_type: : TSQ S" world" TYPE CR ; TSQ +[Hera] world +[Hera] [HADES][TEST ] [KRELTSC: 2920665447] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2921977044] Expected: Should print: world +[Hera] [HADES][TEST ] [KRELTSC: 2922817947] Running S".compile_len: : TSQ2 S" forth" SWAP DROP . CR ; TSQ +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2924466804] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2925760656] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 2926553427] Running S".compile_twice: : TSQ3 S" ab" TYPE S" cd" TYPE CR ; +[Hera] abcd +[Hera] [HADES][TEST ] [KRELTSC: 2928217467] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2929537317] Expected: Should print: abcd +[Hera] [HADES][TEST ] [KRELTSC: 2930351739] S": 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2931250476] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2932286091] Testing word: BL +[Hera] [HADES][TEST ] [KRELTSC: 2933193144] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2933948871] Running BL.value: BL . CR +[Hera] 32 +[Hera] [HADES][TEST ] [KRELTSC: 2935109751] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2936403267] Expected: Should print: 32 +[Hera] [HADES][TEST ] [KRELTSC: 2937237114] Running BL.as_char: BL EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 2938387116] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2939767824] Expected: Should emit a space +[Hera] [HADES][TEST ] [KRELTSC: 2940611688] Running BL.in_scan: HERE S" a b" BL SCAN SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 2941931160] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2943248784] Expected: Should find space at offset 1 +[Hera] [HADES][TEST ] [KRELTSC: 2944134732] BL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2945083260] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2946392589] Testing word: SOURCE +[Hera] [HADES][TEST ] [KRELTSC: 2947093212] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2947872795] Running SOURCE.returns_pair: SOURCE SWAP DROP 0< NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2949680475] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2951028171] Expected: Should return non-negative length +[Hera] [HADES][TEST ] [KRELTSC: 2952008052] Running SOURCE.has_addr: SOURCE DROP 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2953263789] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2954629482] Expected: Should return non-null address +[Hera] [HADES][TEST ] [KRELTSC: 2955540735] SOURCE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2956485441] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2957526999] Testing word: >IN +[Hera] [HADES][TEST ] [KRELTSC: 2958487455] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2959233900] Running >IN.initial: >IN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2960543355] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2961866355] Expected: Should return input offset +[Hera] [HADES][TEST ] [KRELTSC: 2962764441] Running >IN.advances: : TWIN >IN @ >IN @ - . CR ; TWIN +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2964508911] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2965810764] Expected: Should print: 0 (no advance inside compiled word) +[Hera] [HADES][TEST ] [KRELTSC: 2966885460] >IN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2967811833] === String Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 2968862736] +[Hera] === Testing Module: I/O Words === +[Hera] [HADES][INFO ] [KRELTSC: 2969938377] Running I/O Words Tests (Module 9)... +[Hera] [HADES][TEST ] [KRELTSC: 2971075065] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2972228259] Testing word: . +[Hera] [HADES][TEST ] [KRELTSC: 2972930268] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2973697545] Running ..positive: 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2974885851] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2976171030] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 2976967875] Running ..negative: -42 . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 2978061366] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2979385857] Expected: Should print: -42 +[Hera] [HADES][TEST ] [KRELTSC: 2980198893] Running ..zero: 0 . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2981234970] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2982516348] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2983586151] Running ..max_int: 2147483647 . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2984863959] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2986192335] Expected: Should print: 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2987053692] Running ..min_int: -2147483648 . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2988289332] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2989616133] Expected: Should print: -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2990491917] Running ..multiple: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 2991643977] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2992935057] Expected: Should print: 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 2993770395] Running ..empty_stack: . +[Hera] [HADES][TEST ] [KRELTSC: 2994615309] Expected error occurred +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2996300286] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2997244509] .: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2998223886] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2999215233] Testing word: CR +[Hera] [HADES][TEST ] [KRELTSC: 2999935155] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3000705813] Running CR.basic: 42 . CR 43 . CR +[Hera] 42 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 3002124426] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3003432621] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 3004347948] Running CR.multiple: CR CR CR + + + +[Hera] [HADES][TEST ] [KRELTSC: 3005228625] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3006567795] Expected: Should print multiple newlines +[Hera] [HADES][TEST ] [KRELTSC: 3007474554] Running CR.no_stack_effect: DEPTH CR DEPTH = . CR + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3008904087] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3010216377] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 3011070636] Running CR.after_output: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3012256485] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3013570182] Expected: Should work after output +[Hera] [HADES][TEST ] [KRELTSC: 3014453547] CR: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3015360306] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3016386744] Testing word: SPACE +[Hera] [HADES][TEST ] [KRELTSC: 3017122353] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3017877534] Running SPACE.basic: 42 . SPACE 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 3019167858] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3020488443] Expected: Should add space between numbers +[Hera] [HADES][TEST ] [KRELTSC: 3021595836] Running SPACE.multiple: SPACE SPACE SPACE +[Hera] [HADES][INFO ] [KRELTSC: 3023590605] L8[TABLE]: Config 40 → 0 regime=7 score=26214 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 3024752661] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3025885128] Expected: Should print multiple spaces +[Hera] [HADES][TEST ] [KRELTSC: 3026774667] Running SPACE.no_stack_effect: DEPTH SPACE DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3028090716] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3029438454] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 3030289059] Running SPACE.with_text: 65 EMIT SPACE 66 EMIT CR +[Hera] A B +[Hera] [HADES][TEST ] [KRELTSC: 3031569996] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3032913261] Expected: Should space between chars +[Hera] [HADES][TEST ] [KRELTSC: 3033922899] SPACE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3034838793] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3035873358] Testing word: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3036589836] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3037336491] Running SPACES.zero: 0 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3038279265] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3039607515] Expected: Should print no spaces +[Hera] [HADES][TEST ] [KRELTSC: 3040444848] Running SPACES.one: 1 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3041526684] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3042671646] Expected: Should print one space +[Hera] [HADES][TEST ] [KRELTSC: 3043513977] Running SPACES.multiple: 5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3044666499] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3045828156] Expected: Should print five spaces +[Hera] [HADES][TEST ] [KRELTSC: 3046862343] Running SPACES.large: 20 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3048088176] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3049249938] Expected: Should print twenty spaces +[Hera] [HADES][TEST ] [KRELTSC: 3050151489] Running SPACES.negative: -5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3051219024] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3052581420] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3053414679] Running SPACES.with_output: 42 . 3 SPACES 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 3054902487] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3056257113] Expected: Should space output +[Hera] [HADES][TEST ] [KRELTSC: 3057068427] Running SPACES.empty_stack: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3057975186] Expected error occurred +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3059623833] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3060554154] SPACES: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3061468179] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3062440941] Testing word: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 3063162690] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3063922470] Running EMIT.letter_A: 65 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 3065141940] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3066486591] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 3067323756] Running EMIT.letter_Z: 90 EMIT CR +[Hera] Z +[Hera] [HADES][TEST ] [KRELTSC: 3068452380] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3069796002] Expected: Should print: Z +[Hera] [HADES][TEST ] [KRELTSC: 3070591041] Running EMIT.digit: 48 EMIT CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3072013056] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3073347816] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3074132040] Running EMIT.space_char: 32 EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 3075246300] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3076569153] Expected: Should print space +[Hera] [HADES][TEST ] [KRELTSC: 3077385423] Running EMIT.newline: 10 EMIT + +[Hera] [HADES][TEST ] [KRELTSC: 3078217065] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3079539225] Expected: Should print newline +[Hera] [HADES][TEST ] [KRELTSC: 3080364861] Running EMIT.high_ascii: 127 EMIT CR +[Hera]  +[Hera] [HADES][TEST ] [KRELTSC: 3081501948] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3082809387] Expected: Should print DEL char +[Hera] [HADES][TEST ] [KRELTSC: 3083792922] Running EMIT.truncation: 321 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 3084915456] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3086240997] Expected: Should truncate to low byte +[Hera] [HADES][TEST ] [KRELTSC: 3087105000] Running EMIT.negative: -1 EMIT CR +[Hera] ÿ +[Hera] [HADES][TEST ] [KRELTSC: 3088200402] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3089506749] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3090355422] Running EMIT.sequence: 72 EMIT 73 EMIT 10 EMIT +[Hera] HI +[Hera] [HADES][TEST ] [KRELTSC: 3091563699] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3092898480] Expected: Should print: HI +[Hera] [HADES][TEST ] [KRELTSC: 3093682515] Running EMIT.empty_stack: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 3094582218] Expected error occurred +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3095975316] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3097190670] EMIT: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3098176956] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3099185712] Testing word: KEY +[Hera] [HADES][TEST ] [KRELTSC: 3099872475] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3100677678] KEY: 0 passed, 0 failed, 4 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3101570178] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3102569841] Testing word: ?KEY +[Hera] [HADES][TEST ] [KRELTSC: 3103280754] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3104027010] ?KEY: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3104946705] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3105936414] Testing word: TYPE +[Hera] [HADES][TEST ] [KRELTSC: 3106646823] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3107394717] Running TYPE.basic_string: HERE S" Hello" DUP >R HERE SWAP CM +[Hera] Hello +[Hera] [HADES][TEST ] [KRELTSC: 3108989499] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3110447151] Expected: Should print: Hello +[Hera] [HADES][TEST ] [KRELTSC: 3111260439] Running TYPE.empty_string: HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 3112280976] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3113620881] Expected: Should print nothing +[Hera] [HADES][TEST ] [KRELTSC: 3114455190] Running TYPE.single_char: HERE 65 OVER C! 1 TYPE CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 3115725522] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3117055347] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 3117837996] Running TYPE.numbers: HERE S" 12345" DUP >R HERE SWAP CMOVE H +[Hera] 12345 +[Hera] [HADES][TEST ] [KRELTSC: 3119262258] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3120626691] Expected: Should print: 12345 +[Hera] [HADES][TEST ] [KRELTSC: 3121589058] Running TYPE.zero_length: PAD 0 TYPE +[Hera] [HADES][TEST ] [KRELTSC: 3122495061] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3123827427] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 3124699620] Running TYPE.one_item: PAD TYPE +[Hera] [HADES][ERROR] [KRELTSC: 3125619609] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3126510912] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3128192970] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3129064092] Running TYPE.empty_stack: TYPE +[Hera] [HADES][ERROR] [KRELTSC: 3129949137] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3130705557] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3132138471] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3133031937] TYPE: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3134066985] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3135237945] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 3136138698] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3136932750] Running COUNT.basic: HERE S" Test" DROP C@ HERE 1+ SWAP COUNT +[Hera] 0 85 +[Hera] [HADES][TEST ] [KRELTSC: 3138439605] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3139794378] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 3140712939] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 3142033377] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3143389914] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 3144288399] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 3146101938] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3147865791] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 3148762827] Running COUNT.zero_addr_plus_one: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3150179004] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3151576890] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 3152447949] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 3153344145] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3154111422] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3155623800] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3156519072] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3157473228] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3158478393] Testing word: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3159398760] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3160217886] Running EXPECT.zero_length: PAD 0 EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3161527677] Test passed +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3162896961] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 3163787676] Running EXPECT.one_item: PAD EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3164746158] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3166205763] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3167093727] Running EXPECT.empty_stack: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3167977743] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3169543230] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3170452131] EXPECT: 3 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3171250950] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3172665804] Testing word: SPAN +[Hera] [HADES][TEST ] [KRELTSC: 3173531886] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3174340239] Running SPAN.zero_input: PAD 0 EXPECT SPAN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3175866057] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3177191514] Expected: Should show zero +[Hera] [HADES][TEST ] [KRELTSC: 3178020804] Running SPAN.variable_test: SPAN @ SPAN @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3179317029] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3180689547] Expected: Should be consistent +[Hera] [HADES][TEST ] [KRELTSC: 3181517829] Running SPAN.address_test: SPAN 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3182771781] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3184101858] Expected: Should be valid address +[Hera] [HADES][TEST ] [KRELTSC: 3185271600] SPAN: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3186210951] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3187242114] Testing word: WORD +[Hera] [HADES][TEST ] [KRELTSC: 3187961721] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3188727528] Running WORD.empty_input: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3190439574] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3191756169] Expected: Should handle empty input +[Hera] [HADES][TEST ] [KRELTSC: 3192638547] Running WORD.space_delim: 32 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3193579662] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3194896467] Expected: Should use space as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3195787917] Running WORD.newline_delim: 10 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3196751796] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3198206424] Expected: Should use newline as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3199145145] Running WORD.tab_delim: 9 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3200055600] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3201379461] Expected: Should use tab as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3202257933] Running WORD.comma_delim: 44 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3203181366] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3204483387] Expected: Should use comma as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3205402074] Running WORD.skip_leading: BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3206332458] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3207671418] Expected: Should skip leading spaces +[Hera] [HADES][TEST ] [KRELTSC: 3208543212] Running WORD.single_char: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3209923479] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3211254963] Expected: Should parse single character +[Hera] [HADES][TEST ] [KRELTSC: 3212194860] Running WORD.long_word: BL WORD COUNT 0 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3213466536] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3214804425] Expected: Should parse long word +[Hera] [HADES][TEST ] [KRELTSC: 3215672460] Running WORD.zero_delim: 0 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3216565044] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3217888569] Expected: Should handle null delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3218792787] Running WORD.high_ascii: 127 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3219693057] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3221026893] Expected: Should handle DEL delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3222004611] Running WORD.count_format: BL WORD C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3223414299] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3224759790] Expected: Should have count byte +[Hera] [HADES][TEST ] [KRELTSC: 3225588828] Running WORD.count_value: BL WORD COUNT SWAP DROP . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3226915944] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3228450309] Expected: Should return count +[Hera] [HADES][TEST ] [KRELTSC: 3229278633] Running WORD.empty_stack: WORD +[Hera] [HADES][TEST ] [KRELTSC: 3230187366] Expected error occurred +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3231581388] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3232464165] Running WORD.multi_delim: BL WORD DROP BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3233497365] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3234930384] Expected: Should handle multiple parses +[Hera] [HADES][TEST ] [KRELTSC: 3235859424] WORD: 14 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3236798334] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3237839388] Testing word: BASE_OUTPUT +[Hera] [HADES][TEST ] [KRELTSC: 3238613721] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3239368776] Running BASE_OUTPUT.decimal: 10 BASE ! 255 . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3240666744] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3242037372] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 3242849463] Running BASE_OUTPUT.hex: 16 BASE ! 255 . CR +[Hera] 597 +[Hera] [HADES][TEST ] [KRELTSC: 3244070235] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3245449410] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 3246261123] Running BASE_OUTPUT.octal: 8 BASE ! 64 . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 3247599411] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3248967204] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 3249790971] Running BASE_OUTPUT.binary: 5 2 BASE ! . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3250733472] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3252293289] Expected: Should print: 101 +[Hera] [HADES][TEST ] [KRELTSC: 3253122537] Running BASE_OUTPUT.base_restore: BASE @ DECIMAL 255 16 BA +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3254661837] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3256097082] Expected: Should restore base +[Hera] [HADES][TEST ] [KRELTSC: 3256954281] BASE_OUTPUT: 5 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3258022845] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3259084584] Testing word: FORMAT_COMBO +[Hera] [HADES][TEST ] [KRELTSC: 3260068812] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3261028155] Running FORMAT_COMBO.number_space_number: DECIMAL 42 . SPACE +[Hera] 42 [HADES][INFO ] [KRELTSC: 3262666155] L8[TABLE]: Config 0 → 1 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 3263792133] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3265038525] Expected: Should format: 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 3266097072] Running FORMAT_COMBO.multi_line: DECIMAL 1 . CR 2 . CR 3 . CR +[Hera] 1 +[Hera] 2 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3268057779] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3269481285] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 3270393777] Running FORMAT_COMBO.indented: DECIMAL 5 SPACES 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3271733430] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3273353958] Expected: Should indent number +[Hera] [HADES][TEST ] [KRELTSC: 3274176633] Running FORMAT_COMBO.table_format: DECIMAL 1 . 3 SPACES 10 . +[Hera] 1 10 100 +[Hera] [HADES][TEST ] [KRELTSC: 3275675592] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3277094016] Expected: Should format table +[Hera] [HADES][TEST ] [KRELTSC: 3277902243] FORMAT_COMBO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3278973453] === I/O Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors +[Hera] [HADES][INFO ] [KRELTSC: 3280016502] +[Hera] === Testing Module: Block Words === +[Hera] [HADES][INFO ] [KRELTSC: 3281113353] Running Block Words Tests (Module 16)... +[Hera] [HADES][TEST ] [KRELTSC: 3282015324] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3283073934] Testing word: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3283769475] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3284534505] Running BLOCK.basic: 1 BLOCK DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 3287003664] Test passed +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3288326601] Expected: Should return block address +[Hera] [HADES][TEST ] [KRELTSC: 3289211709] Running BLOCK.zero_block: 0 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3290097489] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3291507912] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3292328466] Running BLOCK.large_block: 65536 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3293250030] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3294649638] Expected: Should handle large number +[Hera] [HADES][TEST ] [KRELTSC: 3295528110] Running BLOCK.negative: -1 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3296368593] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3297887271] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3299053380] Running BLOCK.empty_stack: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3299907660] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3301298826] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3302218899] BLOCK: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3303183513] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3304217826] Testing word: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3304937727] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3305705760] Running BUFFER.basic: 1 BUFFER DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 3307401867] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3308768190] Expected: Should return buffer address +[Hera] [HADES][TEST ] [KRELTSC: 3309669573] Running BUFFER.zero_block: 0 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3310856052] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3312289050] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3313110654] Running BUFFER.flush_dirty: 2 BLOCK 1+ 2 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3314138709] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3315473112] Expected: Should flush if dirty +[Hera] [HADES][TEST ] [KRELTSC: 3316332327] Running BUFFER.empty_stack: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3317189463] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3318633129] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3319542534] BUFFER: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3320478966] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3321532137] Testing word: UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3322249392] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3323288724] Running UPDATE.basic: 1 BLOCK UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3324490449] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3325840035] Expected: Should mark block dirty +[Hera] [HADES][TEST ] [KRELTSC: 3326697780] Running UPDATE.multiple: 1 BLOCK UPDATE UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3327669387] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3329035080] Expected: Should handle multiple updates +[Hera] [HADES][TEST ] [KRELTSC: 3329930205] Running UPDATE.no_block: 0 SCR ! UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3330890430] Expected error occurred +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3332315595] Expected: Should error: blk=0 is invalid +[Hera] [HADES][TEST ] [KRELTSC: 3333231804] UPDATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3334148118] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3335313408] Testing word: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3336324369] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3337096602] Running SAVE-BUFFERS.basic: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3338297760] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3339702891] Expected: Should flush all buffers +[Hera] [HADES][TEST ] [KRELTSC: 3340571871] Running SAVE-BUFFERS.dirty_blocks: 1 BLOCK UPDATE SAVE-BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3341700096] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3343214931] Expected: Should save dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3344078808] Running SAVE-BUFFERS.no_dirty: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3345018831] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3346432320] Expected: Should handle no dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3347338197] SAVE-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3348634044] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3349758531] Testing word: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3350533767] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3351291195] Running EMPTY-BUFFERS.basic: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3352350414] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3353737296] Expected: Should invalidate all buffers +[Hera] [HADES][TEST ] [KRELTSC: 3354651720] Running EMPTY-BUFFERS.after_use: 1 BLOCK EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3355696260] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3357104247] Expected: Should invalidate used buffers +[Hera] [HADES][TEST ] [KRELTSC: 3358011132] Running EMPTY-BUFFERS.dirty_blocks: 1 BLOCK UPDATE EMPTY-BUFF +[Hera] [HADES][TEST ] [KRELTSC: 3359129298] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3360727482] Expected: Should handle dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3361753626] EMPTY-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3362839452] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3363889095] Testing word: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3364643415] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3365401599] Running FLUSH.basic: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3366298173] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3367660107] Expected: Should save and invalidate buffers +[Hera] [HADES][TEST ] [KRELTSC: 3368610315] Running FLUSH.dirty_blocks: 1 BLOCK UPDATE FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3369656262] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3371001774] Expected: Should flush dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3371881947] Running FLUSH.after_empty: EMPTY-BUFFERS FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3372918381] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3374043204] Expected: Should handle empty buffers +[Hera] [HADES][TEST ] [KRELTSC: 3375082935] FLUSH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3376026549] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3377075457] Testing word: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3377769675] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3378537456] Running LOAD.basic: 1 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3379553352] Test passed +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3380856150] Expected: Should interpret block 1 +[Hera] [HADES][TEST ] [KRELTSC: 3381728994] Running LOAD.zero_block: 0 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3382605975] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3384019905] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3384852345] Running LOAD.nonexistent: 9999 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3385966584] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3387374991] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 3388264866] Running LOAD.empty_stack: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3389097348] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3390502479] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3391384206] LOAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3392320512] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3393365241] Testing word: LIST +[Hera] [HADES][TEST ] [KRELTSC: 3394081488] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3394834863] Running LIST.basic: 1 LIST + +[Hera] Block 1 + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + + + +[Hera] [HADES][TEST ] [KRELTSC: 3412746477] Test passed +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3414076911] Expected: Should display block 1 +[Hera] [HADES][TEST ] [KRELTSC: 3414928986] Running LIST.zero_block: 0 LIST +[Hera] [HADES][TEST ] [KRELTSC: 3415802901] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3417231972] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3418066050] Running LIST.nonexistent: 9999 LIST +[Hera] [HADES][TEST ] [KRELTSC: 3418949289] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3420387159] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 3421285644] Running LIST.empty_stack: LIST +[Hera] [HADES][TEST ] [KRELTSC: 3422105337] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3423840210] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3424865850] LIST: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3425802660] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3426830274] Testing word: SCR +[Hera] [HADES][TEST ] [KRELTSC: 3427539591] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3428285616] Running SCR.basic: SCR @ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3429425223] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3430731759] Expected: Should show current block +[Hera] [HADES][TEST ] [KRELTSC: 3431603301] Running SCR.after_list: 1 LIST SCR @ . CR + +[Hera] Block 1 + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + + + +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3450187377] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3451528353] Expected: Should update after LIST +[Hera] [HADES][TEST ] [KRELTSC: 3452393595] Running SCR.after_load: 1 LOAD SCR @ . CR +[Hera] [HADES][TEST ] [KRELTSC: 3453318204] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3454650717] Expected: Should update after LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3455519529] SCR: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3456427338] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3457528599] Testing word: THRU +[Hera] [HADES][TEST ] [KRELTSC: 3458254548] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3459016008] Running THRU.single_block: 1 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3460162965] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3461634540] Expected: Should load single block (1-1) +[Hera] [HADES][TEST ] [KRELTSC: 3462449445] Running THRU.ascending: 1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3463362945] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3464922405] Expected: Should load blocks 1-3 in order +[Hera] [HADES][TEST ] [KRELTSC: 3465885906] Running THRU.descending: 3 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3466691697] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3468388392] Expected: Should auto-swap and load 1-3 +[Hera] [HADES][TEST ] [KRELTSC: 3469339671] Running THRU.same_block: 2 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3470237526] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3471614076] Expected: Should load single block (2-2) +[Hera] [HADES][TEST ] [KRELTSC: 3472580055] Running THRU.zero_start: 0 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3473718528] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3475179561] Expected: Should reject block 0 as start +[Hera] [HADES][TEST ] [KRELTSC: 3476139093] Running THRU.zero_end: 1 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3477002466] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3478434981] Expected: Should reject block 0 as end +[Hera] [HADES][TEST ] [KRELTSC: 3479323596] Running THRU.both_zero: 0 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3480162000] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3481563687] Expected: Should reject both blocks as 0 +[Hera] [HADES][TEST ] [KRELTSC: 3482463306] Running THRU.invalid_start: 9999 10000 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3483385647] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3484804008] Expected: Should reject invalid start block +[Hera] [HADES][TEST ] [KRELTSC: 3485718663] Running THRU.invalid_end: 1 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3486807009] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3488214744] Expected: Should reject invalid end block +[Hera] [HADES][TEST ] [KRELTSC: 3489121734] Running THRU.both_invalid: 9998 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3490035591] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3491446413] Expected: Should reject both invalid blocks +[Hera] [HADES][TEST ] [KRELTSC: 3492366822] Running THRU.empty_stack: THRU +[Hera] [HADES][TEST ] [KRELTSC: 3493181244] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3494583834] Expected: Should cause stack underflow (no args) +[Hera] [HADES][TEST ] [KRELTSC: 3495553131] Running THRU.one_arg: 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3496354974] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3497824491] Expected: Should cause stack underflow (one arg) +[Hera] [HADES][TEST ] [KRELTSC: 3498909141] Running THRU.small_range: 1 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3499821885] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3501196209] Expected: Should load 2-block range +[Hera] [HADES][TEST ] [KRELTSC: 3502060926] Running THRU.medium_range: 1 5 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3503012814] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3504384807] Expected: Should load 5-block range +[Hera] [HADES][TEST ] [KRELTSC: 3505297782] Running THRU.negative_start: -1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3506227662] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3507686343] Expected: Should handle negative start +[Hera] [HADES][TEST ] [KRELTSC: 3508625988] Running THRU.negative_end: 1 -3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3509538165] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3510962070] Expected: Should handle negative end +[Hera] [HADES][TEST ] [KRELTSC: 3512018622] Running THRU.both_negative: -3 -1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3512925024] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3514373037] Expected: Should handle both negative +[Hera] [HADES][TEST ] [KRELTSC: 3515363670] THRU: 17 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3516336789] === Block Words Summary: 0 passed, 0 failed, 0 skipped, 0 error +[Hera] [HADES][INFO ] [KRELTSC: 3517390653] +[Hera] === Testing Module: Dictionary Words === +[Hera] [HADES][INFO ] [KRELTSC: 3518534229] Running Dictionary Words Tests (Module 4)... +[Hera] [HADES][TEST ] [KRELTSC: 3519527550] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 3520272189] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3521061936] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3522291633] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3523662387] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 3524677569] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 S +[Hera] [HADES][TEST ] [KRELTSC: 3525897270] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3527244063] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes +[Hera] [HADES][TEST ] [KRELTSC: 3528315084] Running HERE.after_c_comma: HERE 65 C, HERE SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3529682184] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3531043887] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 3531850644] Running HERE.after_allot: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 3533215203] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3534563655] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 3535388052] Running HERE.stability: HERE DUP HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3536829282] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3538218306] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 3539068890] HERE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3540055995] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 3540802671] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3541560330] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 3542919114] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3544277394] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 3545098137] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3546365319] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3547754553] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3548568072] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 3550066359] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3551428944] Expected: Should print: -4 +[Hera] [HADES][TEST ] [KRELTSC: 3552239187] Running ALLOT.large: HERE 100 ALLOT HERE SWAP - . CR +[Hera] 100 +[Hera] [HADES][TEST ] [KRELTSC: 3553583187] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3554992917] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 3555844824] Running ALLOT.after_use: ALIGN HERE 10 ALLOT 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3557261778] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3558623628] Expected: Should store and retrieve +[Hera] [HADES][TEST ] [KRELTSC: 3559544121] Running ALLOT.empty_stack: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 3560425470] Expected error occurred +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3562106793] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3563013258] ALLOT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3563965797] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 3564673938] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3565461312] Running ,.basic: 42 , HERE 1 CELLS - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3566720745] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3568047525] Expected: Should compile 42 +[Hera] [HADES][TEST ] [KRELTSC: 3568865748] Running ,.negative: -999 , HERE 1 CELLS - @ . CR +[Hera] [HADES][INFO ] [KRELTSC: 3569966841] L8[TABLE]: Config 1 → 2 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 3571425942] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3572874018] Expected: Should compile -999 +[Hera] [HADES][TEST ] [KRELTSC: 3573707823] Running ,.zero: 0 , HERE 1 CELLS - @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3575101362] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3576490995] Expected: Should compile 0 +[Hera] [HADES][TEST ] [KRELTSC: 3577340760] Running ,.max_int: 2147483647 , HERE 1 CELLS - @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 3578730330] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3580071684] Expected: Should compile max int +[Hera] [HADES][TEST ] [KRELTSC: 3580940937] Running ,.min_int: -2147483648 , HERE 1 CELLS - @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 3582377925] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3583703655] Expected: Should compile min int +[Hera] [HADES][TEST ] [KRELTSC: 3584572488] Running ,.multiple: 10 , 20 , HERE 1 CELLS - @ . HERE 1 CELLS +[Hera] 20 20 +[Hera] [HADES][TEST ] [KRELTSC: 3585996897] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3587614086] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 3588507741] Running ,.empty_stack: , +[Hera] [HADES][TEST ] [KRELTSC: 3589335162] Expected error occurred +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3590817552] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3591707364] ,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3592594467] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 3593293683] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3594049620] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 3595267725] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3596575017] Expected: Should compile byte 65 +[Hera] [HADES][TEST ] [KRELTSC: 3597429192] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3598595175] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3600070446] Expected: Should compile byte 0 +[Hera] [HADES][TEST ] [KRELTSC: 3600882495] Running C,.high_byte: 255 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3602143524] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3603554220] Expected: Should compile byte 255 +[Hera] [HADES][TEST ] [KRELTSC: 3604618185] Running C,.truncation: 256 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3606043119] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3607333884] Expected: Should truncate to 0 +[Hera] [HADES][TEST ] [KRELTSC: 3608169012] Running C,.negative: -1 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3609378360] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3610687941] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3611509251] Running C,.multiple: 65 C, 66 C, HERE 2 - C@ . HERE 1 - C@ . +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 3613321887] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3614653182] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 3615506727] Running C,.empty_stack: C, +[Hera] [HADES][TEST ] [KRELTSC: 3616375476] Expected error occurred +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3617764752] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3618727224] C,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3619821051] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 3620673000] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3621457266] Running 2,.basic: 12345 67890 2, HERE 2 CELLS - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 3622929366] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3624219900] Expected: Should compile double +[Hera] [HADES][TEST ] [KRELTSC: 3625343673] Running 2,.zero: 0 0 2, HERE 2 CELLS - 2@ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 3626641557] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3627905463] Expected: Should compile zero double +[Hera] [HADES][TEST ] [KRELTSC: 3628753905] Running 2,.negative: -1000 -2000 2, HERE 2 CELLS - 2@ . . CR +[Hera] -2000 -1000 +[Hera] [HADES][TEST ] [KRELTSC: 3630176256] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3631460700] Expected: Should compile negative double +[Hera] [HADES][TEST ] [KRELTSC: 3632334321] Running 2,.large: 2147483647 -1 2, HERE 2 CELLS - 2@ . . CR +[Hera] -1 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 3633763791] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3635110920] Expected: Should compile large double +[Hera] [HADES][TEST ] [KRELTSC: 3635998716] Running 2,.one_item: 42 2, +[Hera] [HADES][TEST ] [KRELTSC: 3636906000] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3638339313] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3639228474] Running 2,.empty_stack: 2, +[Hera] [HADES][TEST ] [KRELTSC: 3640029351] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3641424486] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3642307452] 2,: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3643203648] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 3643900134] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3644648700] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3645799668] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3647107401] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 3647917833] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3649161747] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3650868837] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3651671247] Running PAD.stability: PAD DUP PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3652883178] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3654221907] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 3655029630] Running PAD.usable: PAD 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3656235345] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3657535644] Expected: Should be usable memory +[Hera] [HADES][TEST ] [KRELTSC: 3658393662] PAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3659293953] Testing word: SP@ +[Hera] [HADES][TEST ] [KRELTSC: 3660052347] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3660792198] Running SP@.depth_effect: 42 SP@ SWAP DROP SP@ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3662306739] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3663680139] Expected: Should show stack effect +[Hera] [HADES][TEST ] [KRELTSC: 3664552710] Running SP@.empty_stack: DEPTH 0= SP@ AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3665772348] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3667084764] Expected: Should work on empty stack +[Hera] [HADES][TEST ] [KRELTSC: 3667945806] Running SP@.multiple_items: 1 2 3 SP@ SWAP DROP SWAP DROP SWA +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3669330210] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3670664634] Expected: Should track changes +[Hera] [HADES][TEST ] [KRELTSC: 3671469165] SP@: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3672356289] Testing word: SP! +[Hera] [HADES][TEST ] [KRELTSC: 3673055799] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3673802013] Running SP!.basic_restore: 1 2 3 SP@ 4 5 6 DROP DROP DROP SP! +[Hera] 3 [HADES][TEST ] [KRELTSC: 3675459333] Test passed +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3676567335] Expected: Should restore stack +[Hera] [HADES][TEST ] [KRELTSC: 3677414160] Running SP!.invalid_addr: 0 SP! +[Hera] [HADES][TEST ] [KRELTSC: 3678270078] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3679703748] Expected: Should cause error +[Hera] [HADES][TEST ] [KRELTSC: 3680525457] Running SP!.empty_stack: SP! +[Hera] [HADES][TEST ] [KRELTSC: 3681381732] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3682826070] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3683749188] SP!: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3684631734] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 3685383408] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3686120991] Running LATEST.basic: LATEST LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3687432840] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3689149590] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 3689953491] Running LATEST.stability: LATEST DUP LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3691207779] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3692543001] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 3693341883] LATEST: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3694272813] Testing word: COMPILATION +[Hera] [HADES][TEST ] [KRELTSC: 3695024739] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3695773305] Running COMPILATION.here_comma_sequence: HERE 10 , 20 , 30 , +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3697133727] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3698517921] Expected: Should advance HERE by 12 +[Hera] [HADES][TEST ] [KRELTSC: 3699380055] Running COMPILATION.mixed_compilation: HERE 42 , 65 C, 100 20 +[Hera] [HADES][INFO ] [KRELTSC: 3701006862] L8[TABLE]: Config 2 → 3 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3702412770] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3703758240] Expected: Should advance correctly +[Hera] [HADES][TEST ] [KRELTSC: 3704621718] Running COMPILATION.allot_comma_combo: HERE 10 ALLOT 99 , HER +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3706009503] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3707368434] Expected: Should combine allot and comma +[Hera] [HADES][TEST ] [KRELTSC: 3708270216] Running COMPILATION.pad_isolation: PAD 999 OVER ! HERE 42 , P +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3709622406] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3710998116] Expected: PAD should be isolated +[Hera] [HADES][TEST ] [KRELTSC: 3711836604] COMPILATION: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3712961742] Testing word: STACK_MGMT +[Hera] [HADES][TEST ] [KRELTSC: 3714034947] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3714881121] Running STACK_MGMT.sp_round_trip: 42 43 SP@ >R 44 45 R> SP! . +[Hera] 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 3716275290] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3717643230] Expected: Should print: 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 3718458912] Running STACK_MGMT.depth_preservation: 1 2 3 DEPTH >R SP@ >R +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3719883237] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3721272030] Expected: Should preserve depth +[Hera] [HADES][TEST ] [KRELTSC: 3722107914] STACK_MGMT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3723133680] === Dictionary Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 3724159530] +[Hera] === Testing Module: Dictionary Manipulation Words === +[Hera] [HADES][INFO ] [KRELTSC: 3725564304] Running Dictionary Manipulation Words Tests (Module 14)... +[Hera] [HADES][TEST ] [KRELTSC: 3726708993] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3727776843] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 3728493636] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3729260745] Running CREATE.basic: CREATE test1 42 , test1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3731239617] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3732585444] Expected: Should create and store +[Hera] [HADES][TEST ] [KRELTSC: 3733449951] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 3734307591] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3735723663] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 3736563663] Running CREATE.redefine_shadows: CREATE T 1 , CREATE T 2 , T +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3738538692] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3739897938] Expected: Newest definition should win (prints 2) +[Hera] [HADES][TEST ] [KRELTSC: 3740853795] Running CREATE.duplicate: CREATE test2 CREATE test2 +[Hera] [HADES][TEST ] [KRELTSC: 3742303215] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3743613342] Expected: Should allow redefinition (latest shadows) +[Hera] [HADES][TEST ] [KRELTSC: 3744588456] CREATE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3745655550] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3746710590] Testing word: FORGET +[Hera] [HADES][TEST ] [KRELTSC: 3747421461] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3748172211] Running FORGET.basic: CREATE temp1 FORGET temp1 +[Hera] [HADES][TEST ] [KRELTSC: 3750092472] Test passed +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3751814199] Expected: Should forget word +[Hera] [HADES][TEST ] [KRELTSC: 3752657580] Running FORGET.nonexistent: FORGET nonexistent +[Hera] [HADES][TEST ] [KRELTSC: 3753760164] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3755192784] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 3756049647] Running FORGET.protected: FORGET FORGET +[Hera] [HADES][TEST ] [KRELTSC: 3756998301] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3758431614] Expected: Should protect system words +[Hera] [HADES][TEST ] [KRELTSC: 3759307188] FORGET: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3760227891] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3761282679] Testing word: FENCE +[Hera] [HADES][TEST ] [KRELTSC: 3762005877] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3762889158] Running FENCE.basic: CREATE fnc1 FENCE CREATE fnc2 FORGET fnc +[Hera] [HADES][TEST ] [KRELTSC: 3764897640] Test passed +[Hera] [HADES][TEST ] Testing FENCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3766215117] Expected: Should forget a word defined after FENCE +[Hera] [HADES][TEST ] [KRELTSC: 3767192373] Running FENCE.protects_older: CREATE fnc3 CREATE fnc4 FENCE F +[Hera] [HADES][TEST ] [KRELTSC: 3768789318] Expected error occurred +[Hera] [HADES][TEST ] Testing FENCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3770202282] Expected: Should refuse to forget a word defined before FEN +[Hera] [HADES][TEST ] [KRELTSC: 3771243798] Running FENCE.forget_latest_keeps_predecessor: CREATE fnc5 FE +[Hera] [HADES][TEST ] [KRELTSC: 3773096838] Test passed +[Hera] [HADES][TEST ] Testing FENCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3774415953] Expected: Forgetting the newest word must not disturb an ol +[Hera] [HADES][TEST ] [KRELTSC: 3775561419] FENCE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3776871063] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3777934734] Testing word: IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 3778668915] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3779430228] Running IMMEDIATE.basic: : test3 42 ; IMMEDIATE test3 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3781482138] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3782831367] Expected: Should execute immediately +[Hera] [HADES][TEST ] [KRELTSC: 3783728760] Running IMMEDIATE.already_immediate: : test4 43 ; IMMEDIATE I +[Hera] [HADES][TEST ] [KRELTSC: 3785065242] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3786424614] Expected: Should handle double immediate +[Hera] [HADES][TEST ] [KRELTSC: 3787323813] IMMEDIATE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3788517516] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3789968826] Testing word: FIND +[Hera] [HADES][TEST ] [KRELTSC: 3790671465] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3791408187] Running FIND.existing: FIND DUP . CR +[Hera] 35722304 +[Hera] [HADES][TEST ] [KRELTSC: 3792787614] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3794178675] Expected: Should find system word +[Hera] [HADES][TEST ] [KRELTSC: 3795012354] Running FIND.user_word: : test5 44 ; FIND test5 . CR +[Hera] 36048624 +[Hera] [HADES][TEST ] [KRELTSC: 3796595691] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3797883075] Expected: Should find user word +[Hera] [HADES][TEST ] [KRELTSC: 3798713961] Running FIND.nonexistent: FIND nonexistent . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3799947732] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3801280287] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 3802063335] Running FIND.empty: FIND +[Hera] [HADES][TEST ] [KRELTSC: 3803093805] Expected error occurred +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3804498117] Expected: Should error (no token) +[Hera] [HADES][TEST ] [KRELTSC: 3805350801] FIND: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3806260836] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3807307833] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3808063161] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3808820631] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3809844255] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3811222926] Expected: Should set current to context +[Hera] [HADES][TEST ] [KRELTSC: 3812116560] Running DEFINITIONS.multiple: FORTH DEFINITIONS DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3813205515] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3814561569] Expected: Should be idempotent +[Hera] [HADES][TEST ] [KRELTSC: 3815608734] DEFINITIONS: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3816661506] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3817719549] Testing word: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 3818429433] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3819198411] Running SMUDGE.during_def: : test6 SMUDGE 45 ; +[Hera] [HADES][TEST ] [KRELTSC: 3820443942] Test passed +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3821776203] Expected: Should hide incomplete def +[Hera] [HADES][TEST ] [KRELTSC: 3822650391] Running SMUDGE.outside_def: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 3823556877] Expected error occurred +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3824976120] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 3825858057] SMUDGE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3826776576] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3827934642] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 3828844614] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3829584381] Running LATEST.basic: LATEST @ . CR +[Hera] 35803728 +[Hera] [HADES][TEST ] [KRELTSC: 3830853852] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3832218117] Expected: Should show latest word +[Hera] [HADES][TEST ] [KRELTSC: 3833083359] Running LATEST.after_def: : test7 46 ; LATEST @ . CR +[Hera] 35842912 +[Hera] [HADES][TEST ] [KRELTSC: 3834681312] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3836018676] Expected: Should update after def +[Hera] [HADES][TEST ] [KRELTSC: 3836854728] Running LATEST.after_forget: CREATE test8 FORGET test8 LATEST +[Hera] 35842912 +[Hera] [HADES][TEST ] [KRELTSC: 3838591092] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3839937150] Expected: Should update after forget +[Hera] [HADES][TEST ] [KRELTSC: 3841106619] LATEST: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3842032593] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3843111993] Testing word: >BODY +[Hera] [HADES][TEST ] [KRELTSC: 3843834036] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3844844115] Running >BODY.basic: CREATE test9 ' test9 >BODY . CR +[Hera] 36050136 +[Hera] [HADES][TEST ] [KRELTSC: 3846738882] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3848074293] Expected: Should get param field +[Hera] [HADES][TEST ] [KRELTSC: 3848947851] Running >BODY.variable: VARIABLE var1 ' var1 >BODY . CR +[Hera] 36050600 +[Hera] [HADES][TEST ] [KRELTSC: 3850797237] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3852140523] Expected: Should get var storage +[Hera] [HADES][TEST ] [KRELTSC: 3853148103] Running >BODY.nonexistent: ' NONEXISTENT >BODY +[Hera] [HADES][ERROR] [KRELTSC: 3854233320] ': word 'NONEXISTENT' not found +[Hera] [HADES][TEST ] [KRELTSC: 3855252492] Expected error occurred +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3856654620] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 3857538279] >BODY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3858440964] â–¶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3859511691] Testing word: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 3860321283] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3861096225] Running HIDDEN.basic: : test10 HIDDEN 47 ; +[Hera] [HADES][TEST ] [KRELTSC: 3862351983] Test passed +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3863695878] Expected: Should hide word +[Hera] [HADES][TEST ] [KRELTSC: 3864486801] Running HIDDEN.outside_def: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 3865422519] Expected error occurred +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3866904090] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 3867791760] HIDDEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3868740393] === Dictionary Manipulation Words Summary: 0 passed, 0 failed, +[Hera] [HADES][INFO ] [KRELTSC: 3869776554] +[Hera] === Testing Module: Vocabulary Words === +[Hera] [HADES][INFO ] [KRELTSC: 3870888042] Running Vocabulary Words Tests (Module 15)... +[Hera] [HADES][TEST ] [KRELTSC: 3871840434] â–¶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 3872876847] Testing word: VOCABULARY +[Hera] [HADES][TEST ] [KRELTSC: 3873651537] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3874415643] Running VOCABULARY.basic: VOCABULARY TEST-VOC1 TEST-VOC1 DEFI +[Hera] [HADES][TEST ] [KRELTSC: 3879553146] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3880965858] Expected: Should create vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 3881826480] Running VOCABULARY.create_and_switch: VOCABULARY MYVOC MYVOC +[Hera] 36055024 +[Hera] [HADES][TEST ] [KRELTSC: 3886880319] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3888276987] Expected: Should create and switch +[Hera] [HADES][TEST ] [KRELTSC: 3889149096] Running VOCABULARY.word_isolation: VOCABULARY ISOLATED ISOLAT +[Hera] [HADES][TEST ] [KRELTSC: 3896650149] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3897654075] Expected: Should create word in isolated vocab +[Hera] [HADES][TEST ] [KRELTSC: 3898427127] Running VOCABULARY.cross_vocab_access: VOCABULARY V1 V1 DEFIN +[Hera] 11 +[Hera] [HADES][TEST ] [KRELTSC: 3906207438] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3907319430] Expected: Should access word across vocabs +[Hera] [HADES][TEST ] [KRELTSC: 3908260545] Running VOCABULARY.multiple_vocabs: VOCABULARY VA VOCABULARY +[Hera] [HADES][TEST ] [KRELTSC: 3913522473] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3914773821] Expected: Should create multiple vocabs +[Hera] [HADES][TEST ] [KRELTSC: 3915718758] Running VOCABULARY.duplicate: VOCABULARY TESTVOC VOCABULARY T +[Hera] [HADES][ERROR] [KRELTSC: 3917465097] VOCABULARY: duplicate 'TESTVOC' +[Hera] [HADES][TEST ] [KRELTSC: 3918376266] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3919825623] Expected: Should handle duplicate +[Hera] [HADES][TEST ] [KRELTSC: 3920678685] Running VOCABULARY.empty_name: VOCABULARY +[Hera] [HADES][ERROR] [KRELTSC: 3921617511] VOCABULARY: missing name +[Hera] [HADES][TEST ] [KRELTSC: 3922393083] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3923845695] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 3924715494] VOCABULARY: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3925710306] â–¶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 3926748945] Testing word: FORTH +[Hera] [HADES][TEST ] [KRELTSC: 3927455595] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3928264452] Running FORTH.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3932133534] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3933449373] Expected: Should select FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 3934309554] Running FORTH.persistence: FORTH : TEST1 42 ; TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3935989071] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3937338846] Expected: Should find word in FORTH +[Hera] [HADES][TEST ] [KRELTSC: 3938198985] Running FORTH.from_other: VOCABULARY OTHER-VOC OTHER-VOC FORT +[Hera] [HADES][TEST ] [KRELTSC: 3942913884] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3944232579] Expected: Should return to FORTH +[Hera] [HADES][TEST ] [KRELTSC: 3945099732] FORTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3945969153] â–¶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 3946965834] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3947738613] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3948481341] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3952207980] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3953794782] Expected: Should set current vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 3954811938] Running DEFINITIONS.new_vocab: VOCABULARY TEST-VOC6 TEST-VOC6 +[Hera] [HADES][TEST ] [KRELTSC: 3959464866] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3960883773] Expected: Should set new current +[Hera] [HADES][TEST ] [KRELTSC: 3961765899] Running DEFINITIONS.word_creation: VOCABULARY TEST-VOC7 TEST- +[Hera] [HADES][TEST ] [KRELTSC: 3966775470] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3968141226] Expected: Should create in correct vocab +[Hera] [HADES][TEST ] [KRELTSC: 3969046200] DEFINITIONS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3970024527] â–¶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 3971093490] Testing word: CONTEXT +[Hera] [HADES][TEST ] [KRELTSC: 3971854362] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3972625167] Running CONTEXT.basic: CONTEXT @ . CR +[Hera] 36061024 +[Hera] [HADES][TEST ] [KRELTSC: 3973882416] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3975431040] Expected: Should show current context +[Hera] [HADES][TEST ] [KRELTSC: 3976273455] Running CONTEXT.modify: CONTEXT @ 1+ CONTEXT ! +[Hera] [HADES][TEST ] [KRELTSC: 3977286138] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3978796143] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 3979863783] Running CONTEXT.initial: FORTH CONTEXT @ . CR +[Hera] 35813536 +[Hera] [HADES][TEST ] [KRELTSC: 3983782593] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3985159878] Expected: Should show FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 3986010252] CONTEXT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3986954307] â–¶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 3988007205] Testing word: CURRENT +[Hera] [HADES][TEST ] [KRELTSC: 3988737417] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3989496231] Running CURRENT.basic: CURRENT @ . CR +[Hera] 36061024 +[Hera] [HADES][TEST ] [KRELTSC: 3990764547] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3992342613] Expected: Should show current vocab +[Hera] [HADES][TEST ] [KRELTSC: 3993220119] Running CURRENT.after_def: VOCABULARY TEST-VOC8 TEST-VOC8 DEF +[Hera] 36057712 +[Hera] [HADES][TEST ] [KRELTSC: 3998203356] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3999554475] Expected: Should show new vocab +[Hera] [HADES][TEST ] [KRELTSC: 4000258458] Running CURRENT.protect: CURRENT @ 1+ CURRENT ! +[Hera] [HADES][INFO ] [KRELTSC: 4001200350] L8[TABLE]: Config 3 → 4 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] [HADES][TEST ] [KRELTSC: 4002239787] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4003947507] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 4004957565] CURRENT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4005921843] â–¶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 4006970226] Testing word: ORDER +[Hera] [HADES][TEST ] [KRELTSC: 4007695482] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4008472671] Running ORDER.basic: ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 4010571810] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4011902391] Expected: Should list search order +[Hera] [HADES][TEST ] [KRELTSC: 4012789473] Running ORDER.multiple: VOCABULARY TEST-VOC9 TEST-VOC9 DEFINI +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 4018376670] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4019654079] Expected: Should show all vocabs +[Hera] [HADES][TEST ] [KRELTSC: 4020465330] Running ORDER.after_forth: TEST-VOC9 FORTH ORDER +[Hera] Search order: + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 4024754076] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4026097425] Expected: Should show FORTH only +[Hera] [HADES][TEST ] [KRELTSC: 4026964536] ORDER: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4027743678] === Vocabulary Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 4028611314] +[Hera] === Testing Module: System Words === +[Hera] [HADES][INFO ] [KRELTSC: 4030254459] Running System Words Tests (Module 18)... +[Hera] [HADES][WARN ] [KRELTSC: 4031172999] Some system tests marked as unimplemented due to system-level e +[Hera] [HADES][TEST ] [KRELTSC: 4032247905] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4033373316] Testing word: QUIT +[Hera] [HADES][TEST ] [KRELTSC: 4034074674] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4034831514] Running QUIT.in_definition: : BAD-WORD QUIT ; +[Hera] [HADES][TEST ] [KRELTSC: 4036149348] Expected error occurred +[Hera] [HADES][TEST ] Testing QUIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4037552358] Expected: Should prevent compilation +[Hera] [HADES][TEST ] [KRELTSC: 4038432048] QUIT: 1 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4039423332] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4040456280] Testing word: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 4041161481] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4042176075] Running ABORT.basic: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 4043088042] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4044451740] Expected: Should clear stacks and return to QUIT +[Hera] [HADES][TEST ] [KRELTSC: 4045432566] Running ABORT.with_data: 1 2 3 ABORT DEPTH . CR +[Hera] [HADES][TEST ] [KRELTSC: 4046418621] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4047781017] Expected: Should clear stack +[Hera] [HADES][TEST ] [KRELTSC: 4048608081] Running ABORT.in_definition_runtime: : BAD-WORD ABORT ; 123 +[Hera] [HADES][TEST ] [KRELTSC: 4049993514] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4051331424] Expected: ABORT may appear in a definition; when executed i +[Hera] [HADES][TEST ] [KRELTSC: 4052397741] ABORT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4053314916] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4054509144] Testing word: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 4055295804] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4056059490] Running ABORT".condition_true: -1 ABORT" Error" + +[Hera] [HADES][TEST ] [KRELTSC: 4057409580] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4058755092] Expected: Should abort with message (no error; stacks clear +[Hera] [HADES][TEST ] [KRELTSC: 4059792996] Running ABORT".condition_false: 0 ABORT" Error" +[Hera] [HADES][TEST ] [KRELTSC: 4060746732] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4062076242] Expected: Should not abort +[Hera] [HADES][TEST ] [KRELTSC: 4062897699] Running ABORT".empty_stack: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 4063780224] Expected error occurred +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4065240144] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4066125840] ABORT": 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4067234409] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4068267903] Testing word: BYE +[Hera] [HADES][TEST ] [KRELTSC: 4068990765] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4069733031] BYE: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4070617005] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4071672633] Testing word: COLD +[Hera] [HADES][TEST ] [KRELTSC: 4072379220] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4073137341] COLD: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4074043533] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4075095108] Testing word: WARM +[Hera] [HADES][TEST ] [KRELTSC: 4075807869] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4076550198] WARM: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4077493497] === System Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 4078531947] +[Hera] === Testing Module: Defining Words === +[Hera] [HADES][INFO ] [KRELTSC: 4079841318] Running Defining Words Tests (Module 13)... +[Hera] [HADES][TEST ] [KRELTSC: 4080784470] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4081853160] Testing word: : +[Hera] [HADES][TEST ] [KRELTSC: 4082527407] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4083278241] Running :.basic: : TEST1 42 ; TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4084764411] Test passed +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4086073845] Expected: Should define and execute +[Hera] [HADES][TEST ] [KRELTSC: 4086941859] Running :.empty_name: : +[Hera] [HADES][TEST ] [KRELTSC: 4087739397] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4089139551] Expected: Should handle empty definition +[Hera] [HADES][TEST ] [KRELTSC: 4090078440] Running :.nested: : TEST3 : ; +[Hera] [HADES][ERROR] [KRELTSC: 4091263764] Nested ':' inside a definition is not allowed +[Hera] [HADES][TEST ] [KRELTSC: 4092437580] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4093828263] Expected: Should prevent nested definition +[Hera] [HADES][TEST ] [KRELTSC: 4094748777] :: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4095661605] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4096717842] Testing word: ; +[Hera] [HADES][TEST ] [KRELTSC: 4097395743] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4098169908] Running ;.alone: ; +[Hera] [HADES][TEST ] [KRELTSC: 4098976308] Expected error occurred +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4100370981] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4101283788] Running ;.immediate: : TEST4 42 ; IMMEDIATE TEST4 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4102873152] Test passed +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4104209949] Expected: Should handle immediate +[Hera] [HADES][TEST ] [KRELTSC: 4105221393] ;: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4106102028] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4107208224] Testing word: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 4107930288] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4108668585] Running CONSTANT.basic: 42 CONSTANT MEANING MEANING . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4110494724] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4111859976] Expected: Should create constant +[Hera] [HADES][TEST ] [KRELTSC: 4112716881] Running CONSTANT.zero: 0 CONSTANT ZERO ZERO . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4114362651] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4115749932] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 4116559566] Running CONSTANT.negative: -1 CONSTANT MINUS MINUS . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 4118373378] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4119772167] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 4120613868] Running CONSTANT.empty_stack: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 4121590326] Expected error occurred +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4123029477] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4123935774] CONSTANT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4124876553] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4125928317] Testing word: VARIABLE +[Hera] [HADES][TEST ] [KRELTSC: 4126651494] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4127417973] Running VARIABLE.basic: VARIABLE VAR1 42 VAR1 ! VAR1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4129233654] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4130903175] Expected: Should create variable +[Hera] [HADES][TEST ] [KRELTSC: 4131741180] Running VARIABLE.multiple: VARIABLE VAR2 VARIABLE VAR3 +[Hera] [HADES][TEST ] [KRELTSC: 4133265675] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4134623136] Expected: Should create multiple +[Hera] [HADES][TEST ] [KRELTSC: 4135457130] Running VARIABLE.store_fetch: VARIABLE VAR4 -99 VAR4 ! VAR4 @ +[Hera] -99 +[Hera] [HADES][TEST ] [KRELTSC: 4137085344] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4138444632] Expected: Should store/fetch +[Hera] [HADES][TEST ] [KRELTSC: 4139245614] VARIABLE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4140187968] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4141223205] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 4141941699] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4142902449] Running CREATE.basic: CREATE OBJ1 +[Hera] [HADES][TEST ] [KRELTSC: 4144077882] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4145412180] Expected: Should create word +[Hera] [HADES][TEST ] [KRELTSC: 4146234414] Running CREATE.with_data: CREATE OBJ2 42 , OBJ2 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4147828356] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4149219774] Expected: Should allow data +[Hera] [HADES][TEST ] [KRELTSC: 4150021449] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 4150890387] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4152302889] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 4153173087] CREATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4154095449] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4155318132] Testing word: DOES> +[Hera] [HADES][TEST ] [KRELTSC: 4156035492] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4156803168] Running DOES>.basic: : CONST CREATE , DOES> @ ; 42 CONST MEAN +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4159826958] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4161167997] Expected: Should define behavior +[Hera] [HADES][TEST ] [KRELTSC: 4162008480] Running DOES>.multiple: : ARRAY CREATE DOES> SWAP CELLS + ; C +[Hera] [HADES][TEST ] [KRELTSC: 4163695830] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4165014504] Expected: Should work with arrays +[Hera] [HADES][TEST ] [KRELTSC: 4165869225] Running DOES>.outside: DOES> +[Hera] [HADES][ERROR] [KRELTSC: 4166694567] DOES>: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4167587004] Expected error occurred +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4169112171] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4170031110] DOES>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4170955803] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4172018865] Testing word: [ +[Hera] [HADES][TEST ] [KRELTSC: 4172702814] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4173459738] Running [.basic: : TEST5 [ 42 ] LITERAL ; TEST5 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4175245305] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4176567360] Expected: Should enter interpret +[Hera] [HADES][TEST ] [KRELTSC: 4177402383] Running [.outside: [ +[Hera] [HADES][TEST ] [KRELTSC: 4178144250] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4179431151] Expected: Should be allowed outside definition (no error) +[Hera] [HADES][TEST ] [KRELTSC: 4180699845] [: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4181595495] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4182669981] Testing word: ] +[Hera] [HADES][TEST ] [KRELTSC: 4183349079] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4184107515] Running ].basic: [ 42 ] . CR +[Hera] [HADES][TEST ] [KRELTSC: 4185021078] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4186307391] Expected: Should resume compile +[Hera] [HADES][TEST ] [KRELTSC: 4187136618] Running ].nested: : TEST6 [ ] 42 ; TEST6 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4188695889] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4189969959] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4190810547] ]: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4191690237] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4192929384] Testing word: DEFER +[Hera] [HADES][TEST ] [KRELTSC: 4193639205] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4194393525] Running DEFER.basic: DEFER DF1 : DF1W 42 . CR ; ' DF1W IS DF1 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4196811087] Test passed +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4198130538] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 4198941390] Running DEFER.uninit: DEFER DF2 DF2 +[Hera] [HADES][ERROR] [KRELTSC: 4200101367] DEFER runtime: no target set for 'DF2' +[Hera] [HADES][TEST ] [KRELTSC: 4201025976] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4202429049] Expected: Should error: uninitialized deferred word +[Hera] [HADES][TEST ] [KRELTSC: 4203421698] DEFER: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4204319847] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4205654670] Testing word: IS +[Hera] [HADES][TEST ] [KRELTSC: 4206437235] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4207196826] Running IS.basic: DEFER IS1 : IS1W 99 . CR ; ' IS1W IS IS1 IS +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4209192855] Test passed +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4210472364] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4211273829] Running IS.not_defer: 42 IS DUP +[Hera] [HADES][ERROR] [KRELTSC: 4212152238] IS: 'DUP' was not created by DEFER +[Hera] [HADES][TEST ] [KRELTSC: 4213007505] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4214407050] Expected: Should error: DUP is not a DEFER word +[Hera] [HADES][TEST ] [KRELTSC: 4215374940] Running IS.not_found: 42 IS NOSUCH +[Hera] [HADES][ERROR] [KRELTSC: 4216263135] IS: word 'NOSUCH' not found +[Hera] [HADES][TEST ] [KRELTSC: 4217049522] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4218656967] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 4219558140] IS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4220452992] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4221479892] Testing word: DEFER@ +[Hera] [HADES][TEST ] [KRELTSC: 4222213590] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4222965012] Running DEFER@.basic: DEFER DFA1 : DFA1W 7 . CR ; ' DFA1W IS +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 4225120620] Test passed +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4226468421] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 4227251784] Running DEFER@.not_found: DEFER@ NOSUCH2 +[Hera] [HADES][ERROR] [KRELTSC: 4228177779] DEFER@: word 'NOSUCH2' not found +[Hera] [HADES][TEST ] [KRELTSC: 4229029728] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4230617328] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 4231509744] DEFER@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4232438679] â–¶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4233472635] Testing word: ['] +[Hera] [HADES][TEST ] [KRELTSC: 4234174098] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4234931589] Running ['].compile_xt: : BKT1 ['] DUP ; 77 BKT1 EXECUTE . . +[Hera] 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 4237050384] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4238368911] Expected: Should print: 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 4239179469] Running ['].pin_like: : BKT2 ['] DROP ; 1 2 BKT2 EXECUTE . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4240875765] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4242186543] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 4243192128] Running ['].not_found: : BKT3 ['] NOSUCHWORD ; +[Hera] [HADES][ERROR] [KRELTSC: 4244602845] [']': word 'NOSUCHWORD' not found +[Hera] [HADES][TEST ] [KRELTSC: 4245453492] Expected error occurred +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4246852407] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 4247724831] [']: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4248664329] === Defining Words Summary: 0 passed, 0 failed, 0 skipped, 0 er +[Hera] [HADES][INFO ] [KRELTSC: 4249733376] +[Hera] === Testing Module: Control Words === +[Hera] [HADES][INFO ] [KRELTSC: 4250835267] Running Control Words Tests (Module 12)... +[Hera] [HADES][TEST ] [KRELTSC: 4251774786] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4252815462] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 4253509911] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4254262614] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4256833665] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4258163259] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 4259005065] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 4260783282] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4262077848] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 4262902266] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; +[Hera] [HADES][INFO ] [KRELTSC: 4277356524] L8[TABLE]: Config 4 → 5 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4278469146] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4279667448] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4280698275] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4282637814] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4283965308] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4284903546] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 4285830192] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4286550408] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4288018224] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4288917969] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4289839659] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 4290533982] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4291307790] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4293335109] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4294647819] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 4295497626] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 4297195392] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4298530971] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 4299396360] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4301154123] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4302511563] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4303393962] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4305079779] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4306631994] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4307545326] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 4308370710] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4309073475] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4310520837] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4311425307] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4312458696] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4313561973] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4314298317] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4315081806] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 4316012862] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4316745405] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4318276683] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4319459424] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4320909495] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 4321620723] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4323087027] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4323956364] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4324874085] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4325594112] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4326368256] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 4327249542] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4327949409] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4329363297] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4330209261] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4331864082] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 4332562920] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4333974834] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4334840223] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4335739065] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4336780014] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 4337494182] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4338249027] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 4339183275] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4339881861] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4341290562] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4342127412] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4343419731] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 4344108678] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 4344790359] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4346212836] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 4347072828] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4347990129] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 4348704360] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4349461200] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 4350315312] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4351016397] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4352405358] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4353245211] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4354473879] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 4355140020] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 4355852340] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4357389288] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 4358256966] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4359155472] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4360211079] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4360925037] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4361685426] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4363879947] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4365236253] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 4366077891] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4368554505] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4370048823] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 4370902893] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 4371768534] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4372502001] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4373914314] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4374824349] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4375726446] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4376445549] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4377211650] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4379111793] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4380442479] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 4381500123] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] [HADES][INFO ] [KRELTSC: 4383279096] L8[TABLE]: Config 5 → 6 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4384731309] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4386046077] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 4386873099] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 4387674291] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4388376846] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4389781116] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4390670907] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4391581005] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4392606393] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 4393306575] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4394291286] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4396147917] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4397486499] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4398302706] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 4399671948] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4401001794] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 4401826611] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 4402705692] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4403417235] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4404843072] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4405703736] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4406824107] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 4407536511] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4408308702] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4410703941] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4412165142] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4412992437] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 4414541754] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4415850516] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 4416681759] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 4417491246] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4418191491] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4419827055] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4420696413] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4421605839] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4422626523] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4423360956] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4424102487] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4426037574] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4427373111] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 4428163089] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4429970286] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4431407904] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 4432586361] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 4433533776] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4434283686] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4435789848] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4436679114] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4437618444] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4438330953] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4439061648] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4440972627] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4442315871] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 4443106311] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4445041251] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4446367800] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 4447253685] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 4448083143] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4448802393] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4450232262] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4451089692] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4452010416] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4453071231] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 4453785924] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4454562021] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] [HADES][INFO ] [KRELTSC: 4456172721] L8[TABLE]: Config 6 → 7 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4457936721] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4459265139] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 4460102661] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 4461037602] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4461752106] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4463164503] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4464028548] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4464965400] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 4465678266] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4466414610] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4468326408] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4469929821] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 4470753441] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 4471599552] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4472324955] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4473747537] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4474615026] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4475533986] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4476585897] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 4477290531] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4478045712] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4480593306] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4482124017] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4482953055] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] -5 -4 -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 4484791563] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4486099968] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 4486933332] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4488193122] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4489476705] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 4490333946] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; +[Hera] 0 1 2 1 2 3 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4492645668] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4494010479] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4495152543] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4496054304] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 4496775276] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4497617502] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] 0 1 2 3 [HADES][INFO ] [KRELTSC: 4499781006] L8[TABLE]: Config 7 → 8 regime=7 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 4500945267] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4502244852] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4503078741] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] -5 -4 -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 4504888605] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4506202785] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 4507264797] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4508638071] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4509952839] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 4510828980] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; +[Hera] 0 1 2 1 2 3 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4512970434] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4514331024] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4515214032] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4516134378] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4517235618] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 4517948463] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4518735669] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4521556767] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4522944762] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4523834091] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4525199868] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4526520705] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 4527351696] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOO +[Hera] 0 1 2 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4529329959] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4530633072] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4531447914] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4532637732] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 4533349926] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4534114452] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4535955165] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4537249542] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4538070264] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4539354519] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4540663260] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 4541484801] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOO +[Hera] [HADES][INFO ] [KRELTSC: 4542993966] L8[TABLE]: Config 8 → 9 regime=7 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] 0 1 2 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4544784510] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4546097262] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4546948455] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4547852043] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4548927621] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4549635762] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4550389242] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4552306920] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4553642436] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 4554478362] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 4555361433] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4556065794] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4557593502] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 4558442154] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4559371026] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4560097458] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4560858813] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4562729661] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4564053249] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 4564884870] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 4565659644] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4566359910] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4567788351] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 4568646621] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4569688032] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4570790574] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4571506905] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4572269163] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] 0 2 4 6 8 +[Hera] [HADES][TEST ] [KRELTSC: 4574651970] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4576005378] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 4576796490] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST2 +[Hera] 10 9 8 7 6 5 4 3 2 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 4578856443] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4580177784] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4580967909] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TE +[Hera] 0 3 6 9 +[Hera] [HADES][TEST ] [KRELTSC: 4582830252] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4584160098] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 4585000329] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4585917000] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4586639106] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4587408399] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 4589086698] L8[TABLE]: Config 9 → 10 regime=7 score=6553 L1=0 L2=0 L3=0 L +[Hera] 0 2 4 6 8 +[Hera] [HADES][TEST ] [KRELTSC: 4590566526] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4591882407] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 4592700588] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST2 +[Hera] 10 9 8 7 6 5 4 3 2 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 4594917852] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4596244401] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4597045950] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TE +[Hera] 0 3 6 9 +[Hera] [HADES][TEST ] [KRELTSC: 4598870640] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4600186143] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 4601022321] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4601927589] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4602970092] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 4603651584] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4604399709] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4606133091] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4607661387] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4608596853] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4610353083] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4611662055] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4612462155] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4614117039] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4615403541] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4616205447] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4617952185] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4619259309] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4620241563] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4621183476] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 4621920030] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4622657550] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4624515882] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4625790519] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4626631044] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 4628417514] L8[TABLE]: Config 10 → 11 regime=7 score=6553 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 4629478476] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4630785705] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4631566674] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4633387206] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4634724360] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4635530928] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4637304084] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4638593799] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4639424706] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4640321532] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4641365547] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 4642056720] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4642827777] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4644816309] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4646457081] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4647332655] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; +[Hera] 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4649258040] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4650559263] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4651416336] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4652317026] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 4652998707] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4653764199] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4655736750] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4657052631] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4658115924] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; +[Hera] 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4660059306] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4661348769] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4662184737] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4663058778] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4664114175] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 4664829162] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4665575964] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4667321190] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4668645870] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 4669409745] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] [HADES][INFO ] [KRELTSC: 4671142770] L8[TABLE]: Config 11 → 12 regime=7 score=6553 L1=0 L2=0 L3=0 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4672567557] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4673880897] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4674684294] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 4676423661] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4677755208] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 4678565913] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4680234510] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4681565511] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4682378169] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4683568848] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 4684286166] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4685053485] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4686728760] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4688063457] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 4688855661] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4690569240] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4691914311] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4692703449] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 4694441220] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4696007211] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 4696798995] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4698493674] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4699825431] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4700639244] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4701565785] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4702606356] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 4703336463] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4704105588] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LO +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4706440116] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4707764229] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4708814355] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4710614706] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4711931637] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4712718381] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 4714612140] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4715930394] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 4716721695] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4717638639] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 4718365176] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4719113070] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LO +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4721100825] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4722415047] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4723214769] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 +[Hera] [HADES][INFO ] [KRELTSC: 4724835675] L8[TABLE]: Config 12 → 13 regime=7 score=6553 L1=0 L2=0 L3=0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4726222011] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4727559396] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4728345846] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 4730239374] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4731585642] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 4732365750] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4733432172] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4734458484] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 4735191237] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4735926846] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EX +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4737936924] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4739452137] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 4740238923] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EX +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4742121027] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4743425610] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4744243749] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4745159181] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 4746037254] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4746789054] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EX +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4748711121] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4750092690] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 4750896528] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EX +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4752801165] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4754134644] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4754927835] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4755829722] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4756890096] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 4757579001] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4758483933] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AG +[Hera] 3 [HADES][INFO ] [KRELTSC: 4760775516] L8[TABLE]: Config 13 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 + +[Hera] [HADES][TEST ] [KRELTSC: 4761676437] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4762998471] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4763775156] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4765716837] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4767058359] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4767854259] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4768781283] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 4769502675] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4770267516] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AG +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4772392674] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4773734112] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4774529130] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4776481626] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4777828503] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4778617851] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4779550713] â–¶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4780590654] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 4781384412] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4782135624] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 4785171909] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4786517358] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 4787319516] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 4789344252] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4790667693] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 4791455781] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 99 +[Hera] [HADES][INFO ] [KRELTSC: 4793873448] L8[TABLE]: Config 14 → 0 regime=6 score=26214 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 4794938484] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4796454411] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4797326751] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF +[Hera] 88 +[Hera] [HADES][TEST ] [KRELTSC: 4799360727] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4800672786] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 4801463982] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCA +[Hera] 55 +[Hera] [HADES][TEST ] [KRELTSC: 4803338988] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4804658523] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 4805445498] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4806355932] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 4807054938] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4807799199] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 4810005900] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4811351013] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 4812161088] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 4814191263] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4815501558] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 4816296765] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4818315474] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4819633854] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4820411946] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF +[Hera] 88 +[Hera] [HADES][TEST ] [KRELTSC: 4822592502] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4823931630] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 4824742797] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCA +[Hera] 55 +[Hera] [HADES][TEST ] [KRELTSC: 4826622360] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4827970287] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 4828784520] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4829745522] === Control Words Summary: 0 passed, 0 failed, 0 skipped, 0 err +[Hera] [HADES][INFO ] [KRELTSC: 4830815619] +[Hera] === Testing Module: StarForth Words === +[Hera] [HADES][INFO ] [KRELTSC: 4831943151] Running StarForth Words Tests (Module 17: StarForth Extensions) +[Hera] [HADES][TEST ] [KRELTSC: 4833004974] â–¶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 4834321317] Testing word: ENTROPY@ +[Hera] [HADES][TEST ] [KRELTSC: 4835046300] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4835820129] Running ENTROPY@.after_execution: : TESTWORD 1 1 + DROP ; TES +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4837710549] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4839164442] Expected: Should show execution count > 0 +[Hera] [HADES][TEST ] [KRELTSC: 4840075590] Running ENTROPY@.zero_initial: : NEWWORD ; ' NEWWORD ENTROPY@ +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4841819052] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4843162632] Expected: Should show 0 for unused word +[Hera] [HADES][TEST ] [KRELTSC: 4844053053] Running ENTROPY@.multiple_calls: : ENTTEST 1 DROP ; ENTTEST E +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4845755796] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4847321136] Expected: Should increment with each call +[Hera] [HADES][TEST ] [KRELTSC: 4848221763] Running ENTROPY@.null_addr: 0 ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 4849148178] ENTROPY@: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 4849948866] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4851397404] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 4852263402] Running ENTROPY@.empty_stack: ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 4853170791] ENTROPY@: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4853959950] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4855400718] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4856289165] ENTROPY@: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4857272784] â–¶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 4858306425] Testing word: ENTROPY! +[Hera] [HADES][TEST ] [KRELTSC: 4859275848] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4860110430] Running ENTROPY!.set_entropy: : ENTSET ; 42 ' ENTSET ENTROPY! +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4861979976] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4863330024] Expected: Should set entropy to 42 +[Hera] [HADES][TEST ] [KRELTSC: 4864176240] Running ENTROPY!.overwrite: : ENTOV ; 10 ' ENTOV ENTROPY! 20 +[Hera] [HADES][INFO ] [KRELTSC: 4865707602] L8[TABLE]: Config 0 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 4867115106] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4868435922] Expected: Should overwrite previous value +[Hera] [HADES][TEST ] [KRELTSC: 4869355911] Running ENTROPY!.zero_entropy: : ENTZERO ; 0 ' ENTZERO ENTROP +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4871009283] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4872692643] Expected: Should set entropy to 0 +[Hera] [HADES][TEST ] [KRELTSC: 4873548582] Running ENTROPY!.null_addr: 42 0 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4874497152] ENTROPY!: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 4875295383] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4876724727] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 4877590725] Running ENTROPY!.one_arg: 42 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4878479382] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4879269780] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4880713320] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4881597252] Running ENTROPY!.empty_stack: ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4882489941] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4883289747] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4884848703] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4885716129] ENTROPY!: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4886659680] â–¶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 4887692166] Testing word: WORD-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 4888466961] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4889230332] Running WORD-ENTROPY.display_all: 1 DUP DUP DUP DROP DROP DRO +[Hera] Word Usage Statistics (Execution Heat Counts): + +[Hera] ============================================= + +[Hera] DEFER@: 2 + +[Hera] IS: 5 + +[Hera] DEFER: 4 + +[Hera] WORD-ENTROPY: 1 + +[Hera] ENTROPY!: 7 + +[Hera] ENTROPY@: 8 + +[Hera] ENDCASE: 10 + +[Hera] ENDOF: 18 + +[Hera] OF: 18 + +[Hera] CASE: 10 + +[Hera] EXIT: 119 + +[Hera] UNLOOP: 6 + +[Hera] J: 58 + +[Hera] I: 212 + +[Hera] LEAVE: 6 + +[Hera] +LOOP: 6 + +[Hera] LOOP: 48 + +[Hera] DO: 42 + +[Hera] ?DO: 10 + +[Hera] UNTIL: 8 + +[Hera] AGAIN: 4 + +[Hera] REPEAT: 10 + +[Hera] WHILE: 10 + +[Hera] BEGIN: 20 + +[Hera] THEN: 32 + +[Hera] ELSE: 14 + +[Hera] IF: 32 + +[Hera] (LEAVE): 6 + +[Hera] (+LOOP): 40 + +[Hera] (LOOP): 152 + +[Hera] (DO): 48 + +[Hera] (?DO): 12 + +[Hera] (0BRANCH): 142 + +[Hera] (BRANCH): 72 + +[Hera] DOES>: 3 + +[Hera] does_rt: 1 + +[Hera] LITERAL: 1 + +[Hera] LIT: 305 + +[Hera] FENCE: 3 + +[Hera] FORGET: 7 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 23 + +[Hera] ;: 121 + +[Hera] :: 129 + +[Hera] ABORT": 3 + +[Hera] ABORT: 4 + +[Hera] QUIT: 1 + +[Hera] EXECUTE: 2 + +[Hera] ORDER: 3 + +[Hera] FORTH: 10 + +[Hera] CURRENT: 4 + +[Hera] CONTEXT: 5 + +[Hera] DEFINITIONS: 15 + +[Hera] VOCABULARY: 15 + +[Hera] ': 16 + +[Hera] FIND: 4 + +[Hera] >BODY: 2 + +[Hera] HIDDEN: 2 + +[Hera] SMUDGE: 2 + +[Hera] LATEST: 7 + +[Hera] SP@: 8 + +[Hera] SP!: 5 + +[Hera] PAD: 15 + +[Hera] 2,: 7 + +[Hera] C,: 10 + +[Hera] ,: 21 + +[Hera] ALLOT: 9 + +[Hera] ALIGN: 1 + +[Hera] HERE: 109 + +[Hera] SCR: 3 + +[Hera] THRU: 17 + +[Hera] LIST: 5 + +[Hera] LOAD: 5 + +[Hera] FLUSH: 3 + +[Hera] EMPTY-BUFFERS: 4 + +[Hera] SAVE-BUFFERS: 3 + +[Hera] UPDATE: 7 + +[Hera] BUFFER: 4 + +[Hera] BLOCK: 12 + +[Hera] SPACES: 10 + +[Hera] SPACE: 7 + +[Hera] TYPE: 43 + +[Hera] CR: 659 + +[Hera] EMIT: 15 + +[Hera] BLANK: 2 + +[Hera] SKIP: 4 + +[Hera] SCAN: 5 + +[Hera] SEARCH: 4 + +[Hera] COMPARE: 5 + +[Hera] CMOVE>: 4 + +[Hera] CMOVE: 6 + +[Hera] -TRAILING: 4 + +[Hera] LITERAL: 1 + +[Hera] [']: 3 + +[Hera] BL: 19 + +[Hera] SOURCE: 2 + +[Hera] >IN: 5 + +[Hera] S": 37 + +[Hera] (s"): 4 + +[Hera] WORD: 15 + +[Hera] SPAN: 4 + +[Hera] EXPECT: 4 + +[Hera] COUNT: 14 + +[Hera] OCTAL: 6 + +[Hera] HEX: 7 + +[Hera] DECIMAL: 14 + +[Hera] BASE: 9 + +[Hera] SIGN: 3 + +[Hera] HOLD: 2 + +[Hera] #>: 16 + +[Hera] #S: 11 + +[Hera] #: 5 + +[Hera] <#: 17 + +[Hera] .: 901 + +[Hera] D2/: 5 + +[Hera] D2*: 5 + +[Hera] D0<: 7 + +[Hera] D0=: 7 + +[Hera] 2R@: 3 + +[Hera] 2R>: 7 + +[Hera] 2>R: 7 + +[Hera] 2ROT: 6 + +[Hera] 2OVER: 6 + +[Hera] 2SWAP: 7 + +[Hera] 2DUP: 6 + +[Hera] 2DROP: 6 + +[Hera] D=: 7 + +[Hera] D<: 8 + +[Hera] DMIN: 6 + +[Hera] DMAX: 6 + +[Hera] DABS: 7 + +[Hera] DNEGATE: 6 + +[Hera] D-: 8 + +[Hera] D+: 7 + +[Hera] S>D: 7 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] M/MOD: 7 + +[Hera] M*: 8 + +[Hera] M+: 7 + +[Hera] FALSE: 18 + +[Hera] TRUE: 30 + +[Hera] WITHIN: 31 + +[Hera] U>: 25 + +[Hera] U<: 25 + +[Hera] <=: 31 + +[Hera] >=: 31 + +[Hera] >: 1 + +[Hera] <: 42 + +[Hera] =: 92 + +[Hera] 0<>: 3 + +[Hera] 0>: 8 + +[Hera] 0<: 5 + +[Hera] 0=: 47 + +[Hera] NOT: 1 + +[Hera] OR: 6 + +[Hera] AND: 7 + +[Hera] NEGATE: 6 + +[Hera] ABS: 1 + +[Hera] 1-: 36 + +[Hera] 1+: 80 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /: 1 + +[Hera] *: 8 + +[Hera] -: 30 + +[Hera] +: 51 + +[Hera] CELLS: 14 + +[Hera] 2@: 4 + +[Hera] C!: 5 + +[Hera] C@: 9 + +[Hera] !: 15 + +[Hera] @: 39 + +[Hera] R>: 5 + +[Hera] >R: 7 + +[Hera] DEPTH: 15 + +[Hera] OVER: 22 + +[Hera] SWAP: 41 + +[Hera] DUP: 144 + +[Hera] DROP: 51 + +[Hera] ------------------------------------- + +[Hera] Total executions: 5196 + +[Hera] Total words: 502 + +[Hera] Average executions per word: 10 + +[Hera] [HADES][TEST ] [KRELTSC: 4950055698] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4951477860] Expected: Should display all word entropy stats +[Hera] [HADES][TEST ] [KRELTSC: 4952426661] Running WORD-ENTROPY.after_execution: : WDENT 1 2 + DROP ; WD +[Hera] Word Usage Statistics (Execution Heat Counts): + +[Hera] ============================================= + +[Hera] WDENT: 2 + +[Hera] DEFER@: 2 + +[Hera] IS: 5 + +[Hera] DEFER: 4 + +[Hera] WORD-ENTROPY: 2 + +[Hera] ENTROPY!: 7 + +[Hera] ENTROPY@: 8 + +[Hera] ENDCASE: 10 + +[Hera] ENDOF: 18 + +[Hera] OF: 18 + +[Hera] CASE: 10 + +[Hera] EXIT: 121 + +[Hera] UNLOOP: 6 + +[Hera] J: 58 + +[Hera] I: 212 + +[Hera] LEAVE: 6 + +[Hera] +LOOP: 6 + +[Hera] LOOP: 48 + +[Hera] DO: 42 + +[Hera] ?DO: 10 + +[Hera] UNTIL: 8 + +[Hera] AGAIN: 4 + +[Hera] REPEAT: 10 + +[Hera] WHILE: 10 + +[Hera] BEGIN: 20 + +[Hera] THEN: 32 + +[Hera] ELSE: 14 + +[Hera] IF: 32 + +[Hera] (LEAVE): 6 + +[Hera] (+LOOP): 40 + +[Hera] (LOOP): 152 + +[Hera] (DO): 48 + +[Hera] (?DO): 12 + +[Hera] (0BRANCH): 142 + +[Hera] (BRANCH): 72 + +[Hera] DOES>: 3 + +[Hera] does_rt: 1 + +[Hera] LITERAL: 1 + +[Hera] LIT: 309 + +[Hera] FENCE: 3 + +[Hera] FORGET: 7 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 23 + +[Hera] ;: 122 + +[Hera] :: 130 + +[Hera] ABORT": 3 + +[Hera] ABORT: 4 + +[Hera] QUIT: 1 + +[Hera] EXECUTE: 2 + +[Hera] ORDER: 3 + +[Hera] FORTH: 10 + +[Hera] CURRENT: 4 + +[Hera] CONTEXT: 5 + +[Hera] DEFINITIONS: 15 + +[Hera] VOCABULARY: 15 + +[Hera] ': 16 + +[Hera] FIND: 4 + +[Hera] >BODY: 2 + +[Hera] HIDDEN: 2 + +[Hera] SMUDGE: 2 + +[Hera] LATEST: 7 + +[Hera] SP@: 8 + +[Hera] SP!: 5 + +[Hera] PAD: 15 + +[Hera] 2,: 7 + +[Hera] C,: 10 + +[Hera] ,: 21 + +[Hera] ALLOT: 9 + +[Hera] ALIGN: 1 + +[Hera] HERE: 109 + +[Hera] SCR: 3 + +[Hera] THRU: 17 + +[Hera] LIST: 5 + +[Hera] LOAD: 5 + +[Hera] FLUSH: 3 + +[Hera] EMPTY-BUFFERS: 4 + +[Hera] SAVE-BUFFERS: 3 + +[Hera] UPDATE: 7 + +[Hera] BUFFER: 4 + +[Hera] BLOCK: 12 + +[Hera] SPACES: 10 + +[Hera] SPACE: 7 + +[Hera] TYPE: 43 + +[Hera] CR: 659 + +[Hera] EMIT: 15 + +[Hera] BLANK: 2 + +[Hera] SKIP: 4 + +[Hera] SCAN: 5 + +[Hera] SEARCH: 4 + +[Hera] COMPARE: 5 + +[Hera] CMOVE>: 4 + +[Hera] CMOVE: 6 + +[Hera] -TRAILING: 4 + +[Hera] LITERAL: 1 + +[Hera] [']: 3 + +[Hera] BL: 19 + +[Hera] SOURCE: 2 + +[Hera] >IN: 5 + +[Hera] S": 37 + +[Hera] (s"): 4 + +[Hera] WORD: 15 + +[Hera] SPAN: 4 + +[Hera] EXPECT: 4 + +[Hera] COUNT: 14 + +[Hera] OCTAL: 6 + +[Hera] HEX: 7 + +[Hera] DECIMAL: 14 + +[Hera] BASE: 9 + +[Hera] SIGN: 3 + +[Hera] HOLD: 2 + +[Hera] #>: 16 + +[Hera] #S: 11 + +[Hera] #: 5 + +[Hera] <#: 17 + +[Hera] .: 901 + +[Hera] D2/: 5 + +[Hera] D2*: 5 + +[Hera] D0<: 7 + +[Hera] D0=: 7 + +[Hera] 2R@: 3 + +[Hera] 2R>: 7 + +[Hera] 2>R: 7 + +[Hera] 2ROT: 6 + +[Hera] 2OVER: 6 + +[Hera] 2SWAP: 7 + +[Hera] 2DUP: 6 + +[Hera] 2DROP: 6 + +[Hera] D=: 7 + +[Hera] D<: 8 + +[Hera] DMIN: 6 + +[Hera] DMAX: 6 + +[Hera] DABS: 7 + +[Hera] DNEGATE: 6 + +[Hera] D-: 8 + +[Hera] D+: 7 + +[Hera] S>D: 7 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] M/MOD: 7 + +[Hera] M*: 8 + +[Hera] M+: 7 + +[Hera] FALSE: 18 + +[Hera] TRUE: 30 + +[Hera] WITHIN: 31 + +[Hera] U>: 25 + +[Hera] U<: 25 + +[Hera] <=: 31 + +[Hera] >=: 31 + +[Hera] >: 1 + +[Hera] <: 42 + +[Hera] =: 92 + +[Hera] 0<>: 3 + +[Hera] 0>: 8 + +[Hera] 0<: 5 + +[Hera] 0=: 47 + +[Hera] NOT: 1 + +[Hera] OR: 6 + +[Hera] AND: 7 + +[Hera] NEGATE: 6 + +[Hera] ABS: 1 + +[Hera] 1-: 36 + +[Hera] 1+: 80 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /: 1 + +[Hera] *: 8 + +[Hera] -: 30 + +[Hera] +: 54 + +[Hera] CELLS: 14 + +[Hera] 2@: 4 + +[Hera] C!: 5 + +[Hera] C@: 9 + +[Hera] !: 15 + +[Hera] @: 39 + +[Hera] R>: 5 + +[Hera] >R: 7 + +[Hera] DEPTH: 15 + +[Hera] OVER: 22 + +[Hera] SWAP: 41 + +[Hera] DUP: 144 + +[Hera] DROP: 54 + +[Hera] ------------------------------------- + +[Hera] Total executions: 5213 + +[Hera] Total words: 503 + +[Hera] Average executions per word: 10 + +[Hera] [HADES][TEST ] [KRELTSC: 5014021551] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5015381595] Expected: Should show defined word entropy +[Hera] [HADES][TEST ] [KRELTSC: 5016310341] Running WORD-ENTROPY.stack_preserved: DEPTH WORD-ENTROPY DEPT +[Hera] Word Usage Statistics (Execution Heat Counts): + +[Hera] ============================================= + +[Hera] WDENT: 2 + +[Hera] DEFER@: 2 + +[Hera] IS: 5 + +[Hera] DEFER: 4 + +[Hera] WORD-ENTROPY: 3 + +[Hera] ENTROPY!: 7 + +[Hera] ENTROPY@: 8 + +[Hera] ENDCASE: 10 + +[Hera] ENDOF: 18 + +[Hera] OF: 18 + +[Hera] CASE: 10 + +[Hera] EXIT: 121 + +[Hera] UNLOOP: 6 + +[Hera] J: 58 + +[Hera] I: 212 + +[Hera] LEAVE: 6 + +[Hera] +LOOP: 6 + +[Hera] LOOP: 48 + +[Hera] DO: 42 + +[Hera] ?DO: 10 + +[Hera] UNTIL: 8 + +[Hera] AGAIN: 4 + +[Hera] REPEAT: 10 + +[Hera] WHILE: 10 + +[Hera] BEGIN: 20 + +[Hera] THEN: 32 + +[Hera] ELSE: 14 + +[Hera] IF: 32 + +[Hera] (LEAVE): 6 + +[Hera] (+LOOP): 40 + +[Hera] (LOOP): 152 + +[Hera] (DO): 48 + +[Hera] (?DO): 12 + +[Hera] (0BRANCH): 142 + +[Hera] (BRANCH): 72 + +[Hera] DOES>: 3 + +[Hera] does_rt: 1 + +[Hera] LITERAL: 1 + +[Hera] LIT: 309 + +[Hera] FENCE: 3 + +[Hera] FORGET: 7 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 23 + +[Hera] ;: 122 + +[Hera] :: 130 + +[Hera] ABORT": 3 + +[Hera] ABORT: 4 + +[Hera] QUIT: 1 + +[Hera] EXECUTE: 2 + +[Hera] ORDER: 3 + +[Hera] FORTH: 10 + +[Hera] CURRENT: 4 + +[Hera] CONTEXT: 5 + +[Hera] DEFINITIONS: 15 + +[Hera] VOCABULARY: 15 + +[Hera] ': 16 + +[Hera] FIND: 4 + +[Hera] >BODY: 2 + +[Hera] HIDDEN: 2 + +[Hera] SMUDGE: 2 + +[Hera] LATEST: 7 + +[Hera] SP@: 8 + +[Hera] SP!: 5 + +[Hera] PAD: 15 + +[Hera] 2,: 7 + +[Hera] C,: 10 + +[Hera] ,: 21 + +[Hera] ALLOT: 9 + +[Hera] ALIGN: 1 + +[Hera] HERE: 109 + +[Hera] SCR: 3 + +[Hera] THRU: 17 + +[Hera] LIST: 5 + +[Hera] LOAD: 5 + +[Hera] FLUSH: 3 + +[Hera] EMPTY-BUFFERS: 4 + +[Hera] SAVE-BUFFERS: 3 + +[Hera] UPDATE: 7 + +[Hera] BUFFER: 4 + +[Hera] BLOCK: 12 + +[Hera] SPACES: 10 + +[Hera] SPACE: 7 + +[Hera] TYPE: 43 + +[Hera] CR: 659 + +[Hera] EMIT: 15 + +[Hera] BLANK: 2 + +[Hera] SKIP: 4 + +[Hera] SCAN: 5 + +[Hera] SEARCH: 4 + +[Hera] COMPARE: 5 + +[Hera] CMOVE>: 4 + +[Hera] CMOVE: 6 + +[Hera] -TRAILING: 4 + +[Hera] LITERAL: 1 + +[Hera] [']: 3 + +[Hera] BL: 19 + +[Hera] SOURCE: 2 + +[Hera] >IN: 5 + +[Hera] S": 37 + +[Hera] (s"): 4 + +[Hera] WORD: 15 + +[Hera] SPAN: 4 + +[Hera] EXPECT: 4 + +[Hera] COUNT: 14 + +[Hera] OCTAL: 6 + +[Hera] HEX: 7 + +[Hera] DECIMAL: 14 + +[Hera] BASE: 9 + +[Hera] SIGN: 3 + +[Hera] HOLD: 2 + +[Hera] #>: 16 + +[Hera] #S: 11 + +[Hera] #: 5 + +[Hera] <#: 17 + +[Hera] .: 901 + +[Hera] D2/: 5 + +[Hera] D2*: 5 + +[Hera] D0<: 7 + +[Hera] D0=: 7 + +[Hera] 2R@: 3 + +[Hera] 2R>: 7 + +[Hera] 2>R: 7 + +[Hera] 2ROT: 6 + +[Hera] 2OVER: 6 + +[Hera] 2SWAP: 7 + +[Hera] 2DUP: 6 + +[Hera] 2DROP: 6 + +[Hera] D=: 7 + +[Hera] D<: 8 + +[Hera] DMIN: 6 + +[Hera] DMAX: 6 + +[Hera] DABS: 7 + +[Hera] DNEGATE: 6 + +[Hera] D-: 8 + +[Hera] D+: 7 + +[Hera] S>D: 7 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] M/MOD: 7 + +[Hera] M*: 8 + +[Hera] M+: 7 + +[Hera] FALSE: 18 + +[Hera] TRUE: 30 + +[Hera] WITHIN: 31 + +[Hera] U>: 25 + +[Hera] U<: 25 + +[Hera] <=: 31 + +[Hera] >=: 31 + +[Hera] >: 1 + +[Hera] <: 42 + +[Hera] =: 92 + +[Hera] 0<>: 3 + +[Hera] 0>: 8 + +[Hera] 0<: 5 + +[Hera] 0=: 47 + +[Hera] NOT: 1 + +[Hera] OR: 6 + +[Hera] AND: 7 + +[Hera] NEGATE: 6 + +[Hera] ABS: 1 + +[Hera] 1-: 36 + +[Hera] 1+: 80 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /: 1 + +[Hera] *: 8 + +[Hera] -: 30 + +[Hera] +: 54 + +[Hera] CELLS: 14 + +[Hera] 2@: 4 + +[Hera] C!: 5 + +[Hera] C@: 9 + +[Hera] !: 15 + +[Hera] @: 39 + +[Hera] R>: 5 + +[Hera] >R: 7 + +[Hera] DEPTH: 16 + +[Hera] OVER: 22 + +[Hera] SWAP: 41 + +[Hera] DUP: 144 + +[Hera] DROP: 54 + +[Hera] ------------------------------------- + +[Hera] Total executions: 5215 + +[Hera] Total words: 503 + +[Hera] Average executions per word: 10 + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5077621290] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5079017118] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 5079855270] WORD-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5080821606] â–¶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5081885025] Testing word: RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 5082641445] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5083393917] Running RESET-ENTROPY.reset_defined: : RESETTEST 1 DROP ; RES +[Hera] [HADES][TEST ] [KRELTSC: 5085309033] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5086687956] Expected: Should reset all entropy counters +[Hera] [HADES][TEST ] [KRELTSC: 5087621973] Running RESET-ENTROPY.double_reset: RESET-ENTROPY RESET-ENTRO +[Hera] [HADES][TEST ] [KRELTSC: 5088747510] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5090145963] Expected: Should handle multiple resets +[Hera] [HADES][TEST ] [KRELTSC: 5091040920] Running RESET-ENTROPY.after_usage: 1 DUP DUP DUP DROP DROP DR +[Hera] [HADES][TEST ] [KRELTSC: 5092186281] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5093573415] Expected: Should reset after word usage +[Hera] [HADES][TEST ] [KRELTSC: 5094481938] RESET-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5095468308] â–¶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5096530425] Testing word: TOP-WORDS +[Hera] [HADES][TEST ] [KRELTSC: 5097284304] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5098234239] Running TOP-WORDS.display_top5: : TOPTEST 1 DROP ; TOPTEST TO +[Hera] Top 5 most frequently used words: + +[Hera] ================================== + +[Hera] 1. DROP: 6 + +[Hera] 2. TOPTEST: 5 + +[Hera] 3. EXIT: 5 + +[Hera] 4. LIT: 5 + +[Hera] 5. TOP-WORDS: 1 + +[Hera] [HADES][TEST ] [KRELTSC: 5102971335] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5104333080] Expected: Should display top 5 hot words +[Hera] [HADES][TEST ] [KRELTSC: 5105245866] Running TOP-WORDS.display_top10: 10 TOP-WORDS +[Hera] Top 10 most frequently used words: + +[Hera] ================================== + +[Hera] 1. DROP: 6 + +[Hera] 2. TOPTEST: 5 + +[Hera] 3. EXIT: 5 + +[Hera] 4. LIT: 5 + +[Hera] 5. TOP-WORDS: 2 + +[Hera] 6. ;: 1 + +[Hera] 7. :: 1 + +[Hera] [HADES][TEST ] [KRELTSC: 5109529131] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5111121036] Expected: Should display top 10 words +[Hera] [HADES][TEST ] [KRELTSC: 5111990793] Running TOP-WORDS.after_reset: RESET-ENTROPY 5 TOP-WORDS +[Hera] Top 5 most frequently used words: + +[Hera] ================================== + +[Hera] 1. TOP-WORDS: 1 + +[Hera] [HADES][TEST ] [KRELTSC: 5114499138] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5115852126] Expected: Should handle display after reset +[Hera] [HADES][TEST ] [KRELTSC: 5116789209] Running TOP-WORDS.single_word: 1 TOP-WORDS +[Hera] Top 1 most frequently used words: + +[Hera] ================================== + +[Hera] 1. TOP-WORDS: 2 + +[Hera] [HADES][TEST ] [KRELTSC: 5119073379] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5120427543] Expected: Should display top 1 word +[Hera] [HADES][TEST ] [KRELTSC: 5121288543] Running TOP-WORDS.large_count: 100 TOP-WORDS +[Hera] Top 100 most frequently used words: + +[Hera] ================================== + +[Hera] 1. TOP-WORDS: 3 + +[Hera] [HADES][TEST ] [KRELTSC: 5123904408] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5125269450] Expected: Should handle large count +[Hera] [HADES][TEST ] [KRELTSC: 5126135217] Running TOP-WORDS.zero_count: 0 TOP-WORDS +[Hera] TOP-WORDS: invalid count 0 + +[Hera] [HADES][TEST ] [KRELTSC: 5127568005] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5128903458] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 5129787894] Running TOP-WORDS.negative_count: -5 TOP-WORDS +[Hera] TOP-WORDS: invalid count -5 + +[Hera] [HADES][TEST ] [KRELTSC: 5131233471] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5132573040] Expected: Should handle negative count +[Hera] [HADES][TEST ] [KRELTSC: 5133465078] Running TOP-WORDS.empty_stack: TOP-WORDS +[Hera] [HADES][ERROR] [KRELTSC: 5134376961] TOP-WORDS: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5135178258] Expected error occurred +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5136896730] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5137795719] TOP-WORDS: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5138736351] â–¶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5139798804] Testing word: (- +[Hera] [HADES][TEST ] [KRELTSC: 5140501695] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5141272752] Running (-.comment_line: (- This is a comment +[Hera] 1 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 5142744495] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5143524918] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5144830656] Expected: Should ignore rest of line +[Hera] [HADES][TEST ] [KRELTSC: 5145681975] Running (-.mid_line: 1 (- comment here +[Hera] 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 5146874523] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5147637600] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5149071375] Expected: Should work mid-expression +[Hera] [HADES][TEST ] [KRELTSC: 5149931745] Running (-.no_stack_effect: DEPTH (- comment +[Hera] DEPTH = . CR +[Hera] [HADES][WARN ] [KRELTSC: 5151213207] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5151970782] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5153263941] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 5154111291] Running (-.multiple: 1 (- first +[Hera] 2 (- second +[Hera] + . CR +[Hera] [HADES][WARN ] [KRELTSC: 5155588158] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5156363457] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5157676755] Expected: Should handle multiple comments +[Hera] [HADES][TEST ] [KRELTSC: 5158615728] (-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5159540631] === StarForth Words Summary: 0 passed, 0 failed, 0 skipped, 0 e +[Hera] [HADES][INFO ] [KRELTSC: 5160616062] +[Hera] === Testing Module: ACL Words === +[Hera] [HADES][INFO ] [KRELTSC: 5162002692] Running ACL Words Tests (Module 24)... +[Hera] [HADES][WARN ] [KRELTSC: 5166235284] ACL: denied '__acl_deny_test__' +[Hera] [HADES][INFO ] [KRELTSC: 5168197041] SKIP: STRICT mode test (ACL.4th not loaded) +[Hera] [HADES][INFO ] [KRELTSC: 5169511767] SKIP: ACL-TTL-COMPUTE (ACL.4th not loaded) +[Hera] [HADES][WARN ] [KRELTSC: 5170799760] vm_create_word: cannot shadow pinned word '__acl_shadow_target_ +[Hera] [HADES][TEST ] [KRELTSC: 5175258480] === ACL Words Summary: 29 passed, 0 failed, 0 skipped, 0 errors +[Hera] [HADES][INFO ] [KRELTSC: 5176338300] +[Hera] === Testing Module: Mama FORTH Words === +[Hera] [HADES][INFO ] [KRELTSC: 5177487819] Running Mama FORTH Words Tests (Capsule System M7.1)... +[Hera] [HADES][TEST ] [KRELTSC: 5178486747] Testing word: CAPSULE-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 5179214649] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5179948368] CAPSULE-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5180952504] Testing word: CAPSULE@ +[Hera] [HADES][TEST ] [KRELTSC: 5181728160] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5182484706] CAPSULE@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5183404590] Testing word: CAPSULE-FLAGS@ +[Hera] [HADES][TEST ] [KRELTSC: 5184251562] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5184990804] CAPSULE-FLAGS@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5186169156] Testing word: CAPSULE-LEN@ +[Hera] [HADES][TEST ] [KRELTSC: 5187074634] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5187831957] CAPSULE-LEN@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5188806294] Testing word: CAPSULE-HASH@ +[Hera] [HADES][TEST ] [KRELTSC: 5189582328] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5190342843] CAPSULE-HASH@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5191318524] Testing word: MAMA-VM-ID +[Hera] [HADES][TEST ] [KRELTSC: 5192074251] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5192825547] MAMA-VM-ID: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5193774957] Testing word: VM-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 5194514493] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5195271984] VM-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5196215010] Testing word: CAPSULE-BIRTH +[Hera] [HADES][TEST ] [KRELTSC: 5196993249] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5197738728] CAPSULE-BIRTH: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5198846835] Testing word: CAPSULE-RUN +[Hera] [HADES][TEST ] [KRELTSC: 5199591306] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5200334811] CAPSULE-RUN: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5201304486] Testing word: CAPSULE-TEST +[Hera] [HADES][TEST ] [KRELTSC: 5202083334] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5202849939] CAPSULE-TEST: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5203861362] === Mama FORTH Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 5204910984] +[Hera] === Testing Module: Q48.16 Words === +[Hera] [HADES][INFO ] [KRELTSC: 5205992673] Running Q48.16 Words Tests (Module 25)... +[Hera] [HADES][TEST ] [KRELTSC: 5206916400] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5207945610] Testing word: Q.+ +[Hera] [HADES][TEST ] [KRELTSC: 5208637833] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5209421721] Running Q.+.basic: 1 Q.FROM-INT 2 Q.FROM-INT Q.+ Q.TO-INT . C +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5211046008] Test passed +[Hera] [HADES][TEST ] Testing Q.+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5212341372] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5214674388] Q.+: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5215624764] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5216673063] Testing word: Q.- +[Hera] [HADES][TEST ] [KRELTSC: 5217386559] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5218135314] Running Q.-.basic: 5 Q.FROM-INT 2 Q.FROM-INT Q.- Q.TO-INT . C +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5219543805] Test passed +[Hera] [HADES][TEST ] Testing Q.- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5220870543] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][INFO ] [KRELTSC: 5222741412] L8[TABLE]: Config 14 → 0 regime=3 score=26214 L1=0 L2=0 L3=0 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5224600878] Q.-: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5225531010] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5226549468] Testing word: Q.* +[Hera] [HADES][TEST ] [KRELTSC: 5227245807] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5227985070] Running Q.*.basic: 3 Q.FROM-INT 4 Q.FROM-INT Q.* Q.TO-INT . C +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 5229407337] Test passed +[Hera] [HADES][TEST ] Testing Q.* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5230730484] Expected: Should print: 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 5233072278] Q.*: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5233991931] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5235016080] Testing word: Q./ +[Hera] [HADES][TEST ] [KRELTSC: 5235718740] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5236697781] Running Q./.basic: 10 Q.FROM-INT 2 Q.FROM-INT Q./ Q.TO-INT . +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 5238200142] Test passed +[Hera] [HADES][TEST ] Testing Q./ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5239544667] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 5241876297] Running Q./.by_zero: 5 Q.FROM-INT 0 Q.FROM-INT Q./ Q.TO-INT . +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5243261016] Test passed +[Hera] [HADES][TEST ] Testing Q./ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5244597729] Expected: Should print: 0 (division by zero yields q=0) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5247132681] Q./: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5248027071] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5249286399] Testing word: Q.ABS +[Hera] [HADES][TEST ] [KRELTSC: 5249996661] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5250771246] Running Q.ABS.basic: 3 Q.FROM-INT Q.NEG Q.ABS Q.TO-INT . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5252179653] Test passed +[Hera] [HADES][TEST ] Testing Q.ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5253511431] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5255748813] Q.ABS: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5256670881] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5257707441] Testing word: Q.NEG +[Hera] [HADES][TEST ] [KRELTSC: 5258425599] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5259183300] Running Q.NEG.basic: 5 Q.FROM-INT Q.NEG Q.TO-INT . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 5260448844] Test passed +[Hera] [HADES][TEST ] Testing Q.NEG ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5262023382] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 5264342328] Q.NEG: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5265244971] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5266263891] Testing word: Q.LOG +[Hera] [HADES][TEST ] [KRELTSC: 5266975266] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5267726856] Running Q.LOG.of_one: Q.1 Q.LOG Q.TO-INT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5269017705] Test passed +[Hera] [HADES][TEST ] Testing Q.LOG ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5270377014] Expected: Should print: 0 (ln 1.0 = 0) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 5272169805] L8[TABLE]: Config 0 → 1 regime=3 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5273810031] Q.LOG: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5274939852] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5275966479] Testing word: Q.EXP +[Hera] [HADES][TEST ] [KRELTSC: 5276667795] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5277402690] Running Q.EXP.of_zero: Q.0 Q.EXP Q.TO-INT . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5278722981] Test passed +[Hera] [HADES][TEST ] Testing Q.EXP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5280052701] Expected: Should print: 1 (e^0 = 1) +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5282384289] Q.EXP: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5283305265] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5284354278] Testing word: Q.SQRT +[Hera] [HADES][TEST ] [KRELTSC: 5285071974] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5285806680] Running Q.SQRT.of_four: 4 Q.FROM-INT Q.SQRT Q.TO-INT . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 5287464924] Test passed +[Hera] [HADES][TEST ] Testing Q.SQRT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5288809617] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 5291280876] Q.SQRT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5292199479] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5293224615] Testing word: Q.SIN +[Hera] [HADES][TEST ] [KRELTSC: 5293932735] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5294709042] Running Q.SIN.of_zero: Q.0 Q.SIN Q.TO-INT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5296128390] Test passed +[Hera] [HADES][TEST ] Testing Q.SIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5297459748] Expected: Should print: 0 (sin 0 = 0) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5299944090] Q.SIN: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5300863680] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5301917145] Testing word: Q.COS +[Hera] [HADES][TEST ] [KRELTSC: 5302631523] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5303388825] Running Q.COS.of_zero: Q.0 Q.COS Q.TO-INT . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5304808131] Test passed +[Hera] [HADES][TEST ] Testing Q.COS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5306149359] Expected: Should print: 1 (cos 0 = 1) +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5308447536] Q.COS: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5309380902] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5310381489] Testing word: Q.FROM-INT +[Hera] [HADES][TEST ] [KRELTSC: 5311132344] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5312129508] Running Q.FROM-INT.round_trip: 7 Q.FROM-INT Q.TO-INT . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5313447678] Test passed +[Hera] [HADES][TEST ] Testing Q.FROM-INT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5314816878] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5317061484] Q.FROM-INT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5318032167] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5319067782] Testing word: Q.TO-INT +[Hera] [HADES][TEST ] [KRELTSC: 5319830607] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5320576170] Running Q.TO-INT.of_one: Q.1 Q.TO-INT . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5321740893] Test passed +[Hera] [HADES][TEST ] Testing Q.TO-INT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5323101588] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5325494475] Q.TO-INT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5326456023] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5327471121] Testing word: Q.1 +[Hera] [HADES][TEST ] [KRELTSC: 5328179367] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5328951705] Running Q.1.raw_value: Q.1 . CR +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5330085936] Test passed +[Hera] [HADES][TEST ] Testing Q.1 ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5331476556] Expected: Should print: 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5333893173] Q.1: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5334814674] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5335826139] Testing word: Q.0 +[Hera] [HADES][TEST ] [KRELTSC: 5336535267] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5337497823] Running Q.0.raw_value: Q.0 . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5338579932] Test passed +[Hera] [HADES][TEST ] Testing Q.0 ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5339898144] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5342100183] Q.0: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5343025401] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5344117170] Testing word: Q.SCALE +[Hera] [HADES][TEST ] [KRELTSC: 5344835055] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5345632656] Running Q.SCALE.raw_value: Q.SCALE . CR +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5347043205] Test passed +[Hera] [HADES][TEST ] Testing Q.SCALE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5348469021] Expected: Should print: 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5351224725] Q.SCALE: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5352215211] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5353296396] Testing word: Q.= +[Hera] [HADES][TEST ] [KRELTSC: 5354057709] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5354829942] Running Q.=.equal: Q.1 Q.1 Q.= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5356153194] Test passed +[Hera] [HADES][TEST ] Testing Q.= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5357850855] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 5359386501] L8[TABLE]: Config 1 → 2 regime=3 score=26214 L1=0 L2=0 L3=0 L + +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5361307119] Running Q.=.not_equal: Q.1 Q.0 Q.= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5362749693] Test passed +[Hera] [HADES][TEST ] Testing Q.= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5364063768] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5366393088] Q.=: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5367302577] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5368355391] Testing word: Q.< +[Hera] [HADES][TEST ] [KRELTSC: 5369048139] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5369788074] Running Q.<.true: Q.0 Q.1 Q.< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5371019136] Test passed +[Hera] [HADES][TEST ] Testing Q.< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5372348898] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5374778199] Running Q.<.false: Q.1 Q.0 Q.< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5375908083] Test passed +[Hera] [HADES][TEST ] Testing Q.< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5377228668] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5379542679] Q.<: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5380451685] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5381488497] Testing word: Q.> +[Hera] [HADES][TEST ] [KRELTSC: 5382187755] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5382942453] Running Q.>.true: Q.1 Q.0 Q.> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5384137290] Test passed +[Hera] [HADES][TEST ] Testing Q.> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5385464469] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5387962062] Running Q.>.false: Q.0 Q.1 Q.> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5389124895] Test passed +[Hera] [HADES][TEST ] Testing Q.> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5390451066] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5392767954] Q.>: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5393689434] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5394719190] Testing word: Q.0= +[Hera] [HADES][TEST ] [KRELTSC: 5395452573] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5396197086] Running Q.0=.true: Q.0 Q.0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5397385476] Test passed +[Hera] [HADES][TEST ] Testing Q.0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5398712424] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5401137546] Running Q.0=.false: Q.1 Q.0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5402280303] Test passed +[Hera] [HADES][TEST ] Testing Q.0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5403614706] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5405914836] Q.0=: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5406837975] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5407880415] Testing word: Q.MAX +[Hera] [HADES][TEST ] [KRELTSC: 5408589564] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5409354510] Running Q.MAX.basic: 3 Q.FROM-INT 7 Q.FROM-INT Q.MAX Q.TO-INT +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5410786458] Test passed +[Hera] [HADES][TEST ] Testing Q.MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5412216957] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][INFO ] [KRELTSC: 5414383527] L8[TABLE]: Config 2 → 3 regime=3 score=26214 L1=0 L2=0 L3=0 L +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5415768771] Q.MAX: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5416700352] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5417720070] Testing word: Q.MIN +[Hera] [HADES][TEST ] [KRELTSC: 5418442260] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5419202649] Running Q.MIN.basic: 3 Q.FROM-INT 7 Q.FROM-INT Q.MIN Q.TO-INT +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5420643795] Test passed +[Hera] [HADES][TEST ] Testing Q.MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5421974124] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5424265413] Q.MIN: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5425403928] â–¶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5426655129] Testing word: Q.PRINT +[Hera] [HADES][TEST ] [KRELTSC: 5427400104] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5428150245] Running Q.PRINT.of_one: Q.1 Q.PRINT CR +[Hera] 1.5u +[Hera] [HADES][TEST ] [KRELTSC: 5429666613] Test passed +[Hera] [HADES][TEST ] Testing Q.PRINT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5431025607] Expected: Should print: 1.00000 +[Hera] 1.5u +[Hera] 1.5u +[Hera] 1.5u +[Hera] 1.5u +[Hera] 1.5u +[Hera] [HADES][TEST ] [KRELTSC: 5433367674] Q.PRINT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5434348773] === Q48.16 Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 5435405934] +[Hera] === Testing Module: Inference Engine Words === +[Hera] [HADES][INFO ] [KRELTSC: 5436581472] Running Inference Engine Words Tests (Module 26)... +[Hera] [HADES][TEST ] [KRELTSC: 5437685610] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5438744871] Testing word: Q.VARIANCE +[Hera] [HADES][TEST ] [KRELTSC: 5439511665] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5440257501] Running Q.VARIANCE.three_cells: 100 HERE ! 200 HERE 8 + ! 300 +[Hera] 6666 +[Hera] [HADES][TEST ] [KRELTSC: 5442028515] Test passed +[Hera] [HADES][TEST ] Testing Q.VARIANCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5443385388] Expected: Should print population variance of {100,200,300} +[Hera] [HADES][TEST ] [KRELTSC: 5444442927] Q.VARIANCE: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5445430788] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5446476882] Testing word: INFER-DECAY-SLOPE +[Hera] [HADES][TEST ] [KRELTSC: 5447278767] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5448053289] Running INFER-DECAY-SLOPE.three_cells: 300 HERE ! 200 HERE 8 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5450137875] Test passed +[Hera] [HADES][TEST ] Testing INFER-DECAY-SLOPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5451572826] Expected: Should print decay slope for a decreasing traject +[Hera] [HADES][TEST ] [KRELTSC: 5452608504] INFER-DECAY-SLOPE: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5453597373] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5454660183] Testing word: INFER-WINDOW-WIDTH +[Hera] [HADES][TEST ] [KRELTSC: 5455482249] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5456251899] Running INFER-WINDOW-WIDTH.three_cells: 100 HERE ! 200 HERE 8 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5458104960] Test passed +[Hera] [HADES][TEST ] Testing INFER-WINDOW-WIDTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5459550075] Expected: Should print an inferred window width (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5460596652] INFER-WINDOW-WIDTH: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5461596945] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5462828952] Testing word: INFER-RUN +[Hera] [HADES][TEST ] [KRELTSC: 5463568551] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5464314345] Running INFER-RUN.basic: INFER-RUN +[Hera] [HADES][TEST ] [KRELTSC: 5468893395] Test passed +[Hera] [HADES][TEST ] Testing INFER-RUN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5470221099] Expected: Should run without error +[Hera] [HADES][TEST ] [KRELTSC: 5471075526] INFER-RUN: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5472134073] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5473188063] Testing word: INFER-WINDOW@ +[Hera] [HADES][TEST ] [KRELTSC: 5473940325] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5474709555] Running INFER-WINDOW@.after_run: INFER-RUN INFER-WINDOW@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5477372628] Test passed +[Hera] [HADES][TEST ] Testing INFER-WINDOW@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5478765306] Expected: Should print last adaptive_window_width (no error +[Hera] [HADES][TEST ] [KRELTSC: 5479818708] INFER-WINDOW@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5480791869] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5481875763] Testing word: INFER-DECAY@ +[Hera] [HADES][TEST ] [KRELTSC: 5482662465] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5483429007] Running INFER-DECAY@.after_run: INFER-RUN INFER-DECAY@ Q.TO-I +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5485848018] Test passed +[Hera] [HADES][TEST ] Testing INFER-DECAY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5487210267] Expected: Should print last adaptive_decay_slope (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5488470603] INFER-DECAY@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5489859606] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5490981909] Testing word: INFER-VARIANCE@ +[Hera] [HADES][TEST ] [KRELTSC: 5491785369] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5492525661] Running INFER-VARIANCE@.after_run: INFER-RUN INFER-VARIANCE@ +[Hera] 1169 +[Hera] [HADES][TEST ] [KRELTSC: 5494957713] Test passed +[Hera] [HADES][TEST ] Testing INFER-VARIANCE@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5496369564] Expected: Should print last window_variance_q48 (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5497395141] INFER-VARIANCE@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5498391024] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5499446232] Testing word: INFER-FIT@ +[Hera] [HADES][TEST ] [KRELTSC: 5500210905] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5500960248] Running INFER-FIT@.after_run: INFER-RUN INFER-FIT@ Q.TO-INT . +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5503419180] Test passed +[Hera] [HADES][TEST ] Testing INFER-FIT@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5504823135] Expected: Should print last slope_fit_quality_q48 (no error +[Hera] [HADES][TEST ] [KRELTSC: 5505901926] INFER-FIT@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5506875045] â–¶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5507951106] Testing word: INFER-EARLY-EXIT@ +[Hera] [HADES][TEST ] [KRELTSC: 5508778485] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5509536417] Running INFER-EARLY-EXIT@.after_run: INFER-RUN INFER-EARLY-EX +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5513500188] Test passed +[Hera] [HADES][TEST ] Testing INFER-EARLY-EXIT@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5514892215] Expected: Should print 0 or 1 (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5516121639] INFER-EARLY-EXIT@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5517225504] === Inference Engine Words Summary: 0 passed, 0 failed, 0 skipp +[Hera] [HADES][INFO ] [KRELTSC: 5518301586] +[Hera] === Testing Module: Physics Freeze Words === +[Hera] [HADES][INFO ] [KRELTSC: 5519456859] Running Physics Freeze Words Tests (Module 27)... +[Hera] [HADES][TEST ] [KRELTSC: 5520429222] â–¶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5521490961] Testing word: FREEZE-WORD +[Hera] [HADES][TEST ] [KRELTSC: 5522268927] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5523033873] Running FREEZE-WORD.basic: : __freeze_test_word__ ; S" __free +[Hera] 245 +[Hera] [HADES][TEST ] [KRELTSC: 5524980132] Test passed +[Hera] [HADES][TEST ] Testing FREEZE-WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5526382974] Expected: Should print: -1 (word is now frozen) +[Hera] [HADES][TEST ] [KRELTSC: 5527342422] FREEZE-WORD: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5528622729] â–¶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5529749946] Testing word: UNFREEZE-WORD +[Hera] [HADES][TEST ] [KRELTSC: 5530528374] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5531268834] Running UNFREEZE-WORD.basic: : __unfreeze_test_word__ ; S" __ +[Hera] 270 +[Hera] [HADES][TEST ] [KRELTSC: 5533156062] Test passed +[Hera] [HADES][TEST ] Testing UNFREEZE-WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5534521839] Expected: Should print: 0 (freeze cleared) +[Hera] [HADES][TEST ] [KRELTSC: 5535447981] UNFREEZE-WORD: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5536429458] â–¶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5537467236] Testing word: FROZEN? +[Hera] [HADES][TEST ] [KRELTSC: 5538246798] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5539011366] Running FROZEN?.not_frozen: : __frozen_test_word__ ; S" __fro +[Hera] 224 +[Hera] [HADES][TEST ] [KRELTSC: 5541119493] Test passed +[Hera] [HADES][TEST ] Testing FROZEN? ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5542488924] Expected: Should print: 0 (freshly defined word is not froz +[Hera] [HADES][TEST ] [KRELTSC: 5543618178] Running FROZEN?.not_found: S" __nonexistent_freeze_xyz__" FRO +[Hera] 245 +[Hera] [HADES][TEST ] [KRELTSC: 5545137423] Test passed +[Hera] [HADES][TEST ] Testing FROZEN? ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5546500344] Expected: Should print: 0 (not-found treated as not frozen) +[Hera] [HADES][TEST ] [KRELTSC: 5547538038] FROZEN?: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5548481841] â–¶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5549518212] Testing word: HEAT! +[Hera] [HADES][TEST ] [KRELTSC: 5550221649] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5550983445] Running HEAT!.basic: : __heat_store_test_word__ ; 999 S" __he +[Hera] 249 +[Hera] [HADES][TEST ] [KRELTSC: 5553201003] Test passed +[Hera] [HADES][TEST ] Testing HEAT! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5554526166] Expected: Should print: 999 +[Hera] [HADES][TEST ] [KRELTSC: 5555344368] HEAT!: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5556336639] â–¶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5557470345] Testing word: HEAT@ +[Hera] [HADES][TEST ] [KRELTSC: 5558237454] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5559038058] Running HEAT@.of_fresh_word: : __heat_fetch_test_word__ ; S" +[Hera] 224 +[Hera] [HADES][TEST ] [KRELTSC: 5560887717] Test passed +[Hera] [HADES][TEST ] Testing HEAT@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5562238227] Expected: Should print: 0 (freshly defined word has zero he +[Hera] [HADES][TEST ] [KRELTSC: 5563321029] HEAT@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5564261871] â–¶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5565716688] Testing word: DECAY-RATE@ +[Hera] [HADES][TEST ] [KRELTSC: 5566519938] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5567343243] Running DECAY-RATE@.basic: DECAY-RATE@ . CR +[Hera] 224 +[Hera] [HADES][TEST ] [KRELTSC: 5568811143] Test passed +[Hera] [HADES][TEST ] Testing DECAY-RATE@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5570202561] Expected: Should print the compile-time DECAY_RATE_PER_US_Q +[Hera] [HADES][TEST ] [KRELTSC: 5571271314] DECAY-RATE@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5572305396] === Physics Freeze Words Summary: 0 passed, 0 failed, 0 skipped +[Hera] [HADES][INFO ] [KRELTSC: 5573428644] FINAL TEST SUMMARY: +[Hera] [HADES][INFO ] [KRELTSC: 5574165156] Total tests run: 1050 +[Hera] [HADES][INFO ] [KRELTSC: 5574936129] Passed: 1012 +[Hera] [HADES][INFO ] [KRELTSC: 5575712499] Failed: 0 +[Hera] [HADES][INFO ] [KRELTSC: 5576454030] Stubs (not yet implemented): 38 +[Hera] [HADES][INFO ] [KRELTSC: 5577295710] Errors: 0 +[Hera] [HADES][INFO ] [KRELTSC: 5578418265] ALL IMPLEMENTED TESTS PASSED! +[Hera] [HADES][INFO ] [KRELTSC: 5579267694] Contract checks (A4'/A1): all passed +[Hera] [HADES][INFO ] [KRELTSC: 5580158451] ============================================== +[Hera] PARITY:M7.1a word_count=516 here=0x00000000000000d8 latest_id=685 hash=0x7115aea435fe9a8f +[Hera] PARITY:OK +[Hera] POST: PASSED +[Hera] [HAL][exec] regions frozen: +[Hera] kernel.text: [0x000000003d726000, 0x000000003d771fea) +[Hera] VM: parity bootstrap complete +[Hera] PCI: init... +[Hera] PCI: ECAM mapped (amd64) +[Hera] virtio-blk: found device +[Hera] Artemis: virtio-blk attached +[Hera] virtio-rng: found device +[Hera] rng: backend = virtio-rng +[Hera] entropy: ready +[Hera] virtio-input: no device on PCI bus 0 +[Hera] Init: Mama birth... +[Hera] [HADES][WARN ] [KRELTSC: 5725727091] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 5736780105] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 5907334146] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 5911020612] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 6186118365] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 6372944340] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6413092917] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6415724091] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6418280400] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6428863938] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6431869962] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6444853737] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6456420810] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6467856045] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6487394613] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6490020327] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6492850182] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6495544230] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6507612804] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6520184433] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6523118742] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6541003329] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6543944694] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6555761919] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6567791559] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6586847442] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6599124630] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6611615325] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6614493291] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6617673384] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6629555877] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6656353494] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6659146578] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6670164942] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6673216515] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6684851040] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6687432045] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6716413914] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6727716828] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6730364256] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6733055805] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6745972254] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6758594976] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6787132485] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6790217280] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6793063263] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6795686919] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6808497654] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6820369878] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6841161432] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6853032858] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6871406241] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6889882230] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6906386802] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6928097463] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6937745766] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6980334186] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6989997651] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7000506156] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7017027654] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7028185143] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7043563149] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7057533063] vm_dictionary_track_entry: out of stable IDs, disabling metrics + +[Hera] ================================================ +[Hera] LithosAnanke — FORTH-79 bare-metal kernel +[Hera] Stadium step one: Hera alone +[Hera] ================================================ +[Hera] Hera [live] +[Hera] ================================================ + +[Hera] (no identity) +[Hera] PARITY:MAMA_INIT capsule_id=0x1ef4939ed32ec1e6 mode=m capsule_hash=0x1ef4939ed32ec1e6 dict_hash=0xc8f4b09e36f4fc4a +[Hera] Init: Mama birth OK +[Hera] ACL: CAPSULE-BIRTH pinned STRICT +[Hera] ACL: BIRTH pinned STRICT +[Hera] Starting heartbeat... +[Hera] APIC Timer: started (LVT=0x00020020 ICR=10075086) +[Hera] I/O APIC: keyboard IRQ1 unmasked +[Hera] Heartbeat running. +[Hera] Stadium words: promotions=715 evictions=0 +[Hera] Stadium conservation: resident_sum=47641 reservoir=17895 sum=65536 (Q48_ONE=65536) +[Hera] Stadium quota grant self-test: OK +[Hera] Hera reservoir=17895 +[Hera] test-vm reservoir=65536 +[Hera] Startup: birthing Hermes (fleet foundation)... +[Hermes] (no identity) +[Hermes] PARITY:BIRTH vm_id=0xbc2ca8d118904a3b-0xa5c18737a93e539d capsule_id=0x2df61924448a6812 mode=p capsule_hash=0x2df61924448a6812 dict_hash=0x0046d7d93aa33935 +[Hera] BIRTH: Hermes live +[Hera] Startup: Hermes live +[Hera] Startup: birthing Artemis (fleet foundation)... +[Artemis] Artemis: LithosAnanke disk -- resuming +[Artemis] Artemis: persist-read... +[Artemis] PASS: persist-read +[Artemis] Artemis ready +[Artemis] Artemis: 22998 data blocks +[Artemis] K-total=[HADES][WARN ] [KRELTSC: 10018787646] INFERENCE: Output validation failed, ignoring results +[Artemis] 0.5u +[Artemis] ARTEMIS-K=1.5u +[Artemis] (no identity) +[Artemis] [HADES][WARN ] [KRELTSC: 15658099884] ( Unterminated comment +[Artemis] PARITY:BIRTH vm_id=0xe9d4524e32e842d2-0xa7c734250974dd94 capsule_id=0xac215ecb873c4db3 mode=p capsule_hash=0xac215ecb873c4db3 dict_hash=0x0e9e13b9c3a08542 +[Hera] BIRTH: Artemis live +[Hera] Startup: Artemis live +[Hera] Heartbeat: 395 ticks, trust=0x00010000, variance=0x00000000 +[Hera] blkio_usb: MSC device ready +[Hera] Zuse: identity confirmed from attached thumbdrive +[Hera] LithosAnanke v2.0.0 +[Hera] StarForth Version 3.1.0 + +[Hera] StarForth Emergency CLI +[Hera] FORTH-79 interpreter — type BYE or power off to exit + +[Hera] (zuse) ok> header \ No newline at end of file diff --git a/tools/capsule-reserved.txt b/tools/capsule-reserved.txt new file mode 100644 index 00000000..e8fac66b --- /dev/null +++ b/tools/capsule-reserved.txt @@ -0,0 +1,26 @@ +# capsule-reserved.txt — human-authored, git-tracked block ranges NOT +# owned by any capsule (FABRIC-3.md §XXIV, 2026-09-12). +# +# mkcapsule can already catch a capsule colliding with ANOTHER capsule -- +# every capsule is a .4th file it scans. It has zero visibility into a +# block something else owns: Artemis's own non-capsule persistent data +# (identity records, home-blocks fence, etc.), or anything similar added +# later. This file is how a human tells it. +# +# Format, one range per line: +# START-END description +# +# START and END are inclusive logical block numbers (LBN). Lines starting +# with '#' and blank lines are ignored. Checked by both the plain build +# gate (check_reserved_conflicts(), hard-fails on collision) and +# `mkcapsule --resolve` (suggests renumbering around these too). +# +# Known device boundaries, for reference when adding entries (not +# reserved ranges themselves -- ramdrive is legitimately shared/reused by +# capsules; only entries below reserve anything): +# 2048-3071 volatile ramdrive (capsule_loader.c, KRD_MAX_BLOCKS=1024) +# 3072+ Artemis's real virtio-blk device (persistent, disk/artemis.img) +# +# No ranges reserved yet -- seed this file as Artemis's own actual block +# usage becomes known (e.g. from block_subsystem.c's BAM/home-blocks +# fence accounting), rather than guessing. diff --git a/tools/mkcapsule.c b/tools/mkcapsule.c index 60d66ad5..1c737904 100644 --- a/tools/mkcapsule.c +++ b/tools/mkcapsule.c @@ -11,6 +11,18 @@ mkcapsule --lint lint all .4th files mkcapsule --manifest print block manifest to stdout mkcapsule --manifest write block manifest to file + mkcapsule --resolve interactive block-conflict + resolver (FABRIC-3.md SXXIV) + + --resolve is the only interactive mode -- never part of the plain build + path above, which stays non-interactive so CI/unattended builds never + block on a prompt. It maintains tools/capsule-claims.txt (auto-created, + derived, git-ignored) and checks against tools/capsule-reserved.txt + (human-authored, git-tracked, blocks something other than a capsule + owns -- e.g. Artemis's own non-capsule persistent data). On a genuine + conflict it suggests a renumbering that preserves the capsule's own + existing block spacing, prompts y/N, and on acceptance rewrites the + .4th source in place and records the decision in tools/patches/. Build mode generates a C source file containing: - capsule_arena[] (all payload bytes concatenated) @@ -40,6 +52,7 @@ #include #include #include +#include #include "pkcs8_ed25519.h" #include "starkernel/ed25519.h" @@ -887,6 +900,456 @@ static int check_block_conflicts(void) { return conflicts > 0 ? 1 : 0; } +/*=========================================================================== + * Reserved Ranges (FABRIC-3.md SXXIV, 2026-09-12) + * + * capsule-reserved.txt is human-authored and git-tracked -- mkcapsule can + * discover collisions between capsules on its own (they're all .4th files + * it scans), but it has zero visibility into blocks something OTHER than a + * capsule owns (Artemis's own non-capsule identity/home-blocks data, e.g.) + * unless a human tells it. Never auto-created, never auto-modified: a + * missing file just means "nothing reserved yet," not an error. + *===========================================================================*/ +#define RESERVED_FILE_PATH "tools/capsule-reserved.txt" +#define CLAIMS_FILE_PATH "tools/capsule-claims.txt" +#define PATCHES_DIR_PATH "tools/patches" +#define MAX_RESERVED_RANGES 256 + +typedef struct { + int start; + int end; /* inclusive */ + char desc[256]; +} ReservedRange; + +static ReservedRange reserved_ranges[MAX_RESERVED_RANGES]; +static int reserved_count = 0; + +/* load_reserved_ranges: parse "START-END description" lines, '#'-comments + * and blank lines ignored. Missing file -> reserved_count stays 0, silently + * (this file is optional until a human seeds it). */ +static void load_reserved_ranges(const char *path) { + reserved_count = 0; + FILE *f = fopen(path, "r"); + if (!f) return; + + char line[512]; + while (fgets(line, sizeof(line), f)) { + char *p = line; + while (*p == ' ' || *p == '\t') p++; + if (*p == '#' || *p == '\n' || *p == '\0') continue; + + int start = 0, end = 0; + int consumed = 0; + if (sscanf(p, "%d-%d%n", &start, &end, &consumed) != 2) continue; + if (reserved_count >= MAX_RESERVED_RANGES) break; + + ReservedRange *r = &reserved_ranges[reserved_count]; + r->start = start; + r->end = end; + p += consumed; + while (*p == ' ' || *p == '\t') p++; + size_t dlen = strcspn(p, "\r\n"); + if (dlen >= sizeof(r->desc)) dlen = sizeof(r->desc) - 1; + memcpy(r->desc, p, dlen); + r->desc[dlen] = '\0'; + reserved_count++; + } + fclose(f); +} + +/* reserved_owner_of: returns the reserved range covering lbn, or NULL. */ +static const ReservedRange *reserved_owner_of(int lbn) { + for (int i = 0; i < reserved_count; i++) { + if (lbn >= reserved_ranges[i].start && lbn <= reserved_ranges[i].end) + return &reserved_ranges[i]; + } + return NULL; +} + +/* check_reserved_conflicts: hard build-gate companion to + * check_block_conflicts() -- same manifest_entries scan, checked against + * capsule-reserved.txt instead of against each other. Call AFTER + * check_block_conflicts() has already populated manifest_entries via its + * own nftw scan (avoids scanning the directory twice). */ +static int check_reserved_conflicts(void) { + load_reserved_ranges(RESERVED_FILE_PATH); + if (reserved_count == 0) return 0; + + int conflicts = 0; + for (int i = 0; i < manifest_count; i++) { + for (int j = 0; j < manifest_entries[i].block_count; j++) { + int lbn = manifest_entries[i].blocks[j]; + const ReservedRange *r = reserved_owner_of(lbn); + if (r) { + fprintf(stderr, + "mkcapsule: ERROR: block %d (%s) falls inside reserved " + "range %d-%d: %s\n", + lbn, manifest_entries[i].name, r->start, r->end, r->desc); + conflicts++; + } + } + } + if (conflicts > 0) { + fprintf(stderr, + "mkcapsule: ERROR: %d capsule block(s) collide with reserved " + "ranges in %s\n", conflicts, RESERVED_FILE_PATH); + } + return conflicts > 0 ? 1 : 0; +} + +/*=========================================================================== + * Claim Registry + Interactive Resolve (mkcapsule --resolve) + * + * capsule-claims.txt is auto-created/regenerated -- pure derived state, + * never hand-edited, git-ignored. Unlike the plain build gate (which just + * re-scans and hard-fails every time, no memory needed), --resolve needs + * to tell "this capsule's own content changed" apart from "a genuinely new + * collision with something else," which needs the previous run's state. + *===========================================================================*/ +typedef struct { + char name[CAPSULE_NAME_MAX]; + uint64_t hash; + int blocks[MAX_BLOCKS_PER_CAPSULE]; + int block_count; +} ClaimEntry; + +static ClaimEntry claim_registry[MAX_CAPSULES]; +static int claim_count = 0; + +static ClaimEntry *find_claim(const char *name) { + for (int i = 0; i < claim_count; i++) { + if (strcmp(claim_registry[i].name, name) == 0) return &claim_registry[i]; + } + return NULL; +} + +/* load_claims_registry: parse " ,,..." lines. + * Missing file -> claim_count stays 0 (fresh baseline, not an error -- + * this is the auto-create case). */ +static void load_claims_registry(const char *path) { + claim_count = 0; + FILE *f = fopen(path, "r"); + if (!f) return; + + char line[2048]; + while (fgets(line, sizeof(line), f)) { + if (line[0] == '#' || line[0] == '\n' || line[0] == '\0') continue; + if (claim_count >= MAX_CAPSULES) break; + + char name[CAPSULE_NAME_MAX]; + char hashbuf[32]; + char blocklist[1600] = ""; + int nf = sscanf(line, "%511s %31s %1599[^\n]", name, hashbuf, blocklist); + if (nf < 2) continue; /* nf==3 has a block list; nf==2 is a valid + * empty-block-list entry (raw code capsule, + * no "Block N" headers at all) */ + + ClaimEntry *e = &claim_registry[claim_count]; + snprintf(e->name, CAPSULE_NAME_MAX, "%s", name); + e->hash = strtoull(hashbuf, NULL, 16); + e->block_count = 0; + + char *tok = strtok(blocklist, ","); + while (tok && e->block_count < MAX_BLOCKS_PER_CAPSULE) { + while (*tok == ' ') tok++; /* defensive: tolerate stray + * whitespace from older/ + * hand-written registry files */ + if (*tok == '\0') { tok = strtok(NULL, ","); continue; } + e->blocks[e->block_count++] = (int)strtol(tok, NULL, 10); + tok = strtok(NULL, ","); + } + claim_count++; + } + fclose(f); +} + +static void save_claims_registry(const char *path) { + FILE *f = fopen(path, "w"); + if (!f) { + fprintf(stderr, "mkcapsule: WARNING: could not write %s\n", path); + return; + } + fprintf(f, "# DO NOT EDIT — re-run mkcapsule --resolve to refresh.\n" + "# This file is derived state, not a source of truth (the\n" + "# .4th files themselves are) -- git-ignored on purpose.\n"); + for (int i = 0; i < claim_count; i++) { + ClaimEntry *e = &claim_registry[i]; + fprintf(f, "%s %016" PRIx64, e->name, e->hash); + for (int j = 0; j < e->block_count; j++) { + fprintf(f, "%s%d", j == 0 ? " " : ",", e->blocks[j]); + } + fprintf(f, "\n"); + } + fclose(f); +} + +/* blocks_free_at_delta: true if shifting every block in `blocks` by `delta` + * lands on numbers that are simultaneously free -- not claimed by any OTHER + * current capsule (manifest_entries, ground truth for this run, excluding + * `skip_idx` itself) and not inside a reserved range. */ +static int blocks_free_at_delta(const int *blocks, int block_count, int delta, + int skip_idx) { + for (int j = 0; j < block_count; j++) { + int candidate = blocks[j] + delta; + if (candidate < 2048) return 0; /* system-reserved floor */ + if (reserved_owner_of(candidate)) return 0; + for (int i = 0; i < manifest_count; i++) { + if (i == skip_idx) continue; + for (int k = 0; k < manifest_entries[i].block_count; k++) { + if (manifest_entries[i].blocks[k] == candidate) return 0; + } + } + /* also check other candidates within the SAME shifted set don't + * collide with each other (only possible if the caller passes a + * pathological blocks[] with duplicate relative offsets) */ + for (int j2 = 0; j2 < j; j2++) { + if (blocks[j2] + delta == candidate) return 0; + } + } + return 1; +} + +/* suggest_renumbering: preserves the capsule's own existing relative + * spacing (workload-3.4th's 4606,4615,4625,... convention, e.g.) by + * searching for a single shift delta that lands every block on free + * ground at once, rather than reassigning each block independently. */ +#define MAX_DELTA_SEARCH 20000 +static int suggest_renumbering(const int *blocks, int block_count, + int skip_idx, int *out_delta) { + for (int delta = 0; delta <= MAX_DELTA_SEARCH; delta += 1) { + if (blocks_free_at_delta(blocks, block_count, delta, skip_idx)) { + *out_delta = delta; + return 1; + } + } + return 0; +} + +/* rewrite_block_headers: in-place rewrite of a capsule's own "Block N" + * header lines to "Block N+delta", preserving everything else in the file + * byte-for-byte (content, comments, formatting). Returns 1 on success. */ +static int rewrite_block_headers(const char *fpath, int delta) { + FILE *f = fopen(fpath, "rb"); + if (!f) return 0; + fseek(f, 0, SEEK_END); + long sz = ftell(f); + rewind(f); + uint8_t *data = malloc((size_t)sz + 1); + if (!data || fread(data, 1, (size_t)sz, f) != (size_t)sz) { + free(data); fclose(f); return 0; + } + fclose(f); + + FILE *out = fopen(fpath, "wb"); + if (!out) { free(data); return 0; } + + size_t pos = 0; + while (pos < (size_t)sz) { + size_t start = pos; + while (pos < (size_t)sz && data[pos] != '\n') pos++; + size_t line_len = pos - start; + int has_nl = (pos < (size_t)sz); + + if (line_len >= 7 && + data[start+0]=='B' && data[start+1]=='l' && data[start+2]=='o' && + data[start+3]=='c' && data[start+4]=='k' && data[start+5]==' ') { + int bn = (int)strtol((const char *)(data + start + 6), NULL, 10); + fprintf(out, "Block %d", bn + delta); + } else { + fwrite(data + start, 1, line_len, out); + } + if (has_nl) { fputc('\n', out); pos++; } + } + fclose(out); + free(data); + return 1; +} + +/* write_renumber_patch: permanent, git-tracked decision record -- not a + * generic diff (the only thing a renumber ever changes is Block header + * integers, so a structured before/after list is more directly useful + * than a line diff would be). */ +static void write_renumber_patch(const char *capsule_name, const int *old_blocks, + int block_count, int delta, + const char *reason) { + mkdir(PATCHES_DIR_PATH, 0755); /* ignore EEXIST */ + + time_t now = time(NULL); + struct tm *tm_ptr = gmtime(&now); + char stamp[32]; + strftime(stamp, sizeof(stamp), "%Y%m%dT%H%M%SZ", tm_ptr); + + char safe_name[CAPSULE_NAME_MAX]; + size_t k; + for (k = 0; capsule_name[k] && k < sizeof(safe_name) - 1; k++) { + char c = capsule_name[k]; + safe_name[k] = (c == '/' || c == ':') ? '_' : c; + } + safe_name[k] = '\0'; + + char path[MAX_PATH_LEN]; + snprintf(path, sizeof(path), "%s/%s-%s.patch", PATCHES_DIR_PATH, stamp, safe_name); + + FILE *f = fopen(path, "w"); + if (!f) { + fprintf(stderr, "mkcapsule: WARNING: could not write patch record %s\n", path); + return; + } + fprintf(f, "# mkcapsule --resolve renumber patch\n"); + fprintf(f, "# capsule: %s\n", capsule_name); + fprintf(f, "# timestamp: %s\n", stamp); + fprintf(f, "# reason: %s\n", reason); + for (int j = 0; j < block_count; j++) { + fprintf(f, "%d -> %d\n", old_blocks[j], old_blocks[j] + delta); + } + fclose(f); + fprintf(stderr, "mkcapsule: wrote patch record %s\n", path); +} + +/* prompt_yes_no: reads one line from stdin, true only on 'y'/'Y'. */ +static int prompt_yes_no(const char *question) { + fprintf(stderr, "%s [y/N] ", question); + char reply[16]; + if (!fgets(reply, sizeof(reply), stdin)) return 0; + return (reply[0] == 'y' || reply[0] == 'Y'); +} + +/* cmd_resolve: mkcapsule --resolve -- see main()'s usage text and + * FABRIC-3.md SXXIV for the full design. Deliberately the ONLY interactive + * mkcapsule mode; the plain build path (check_block_conflicts/ + * check_reserved_conflicts) stays non-interactive so CI/unattended builds + * never block on a prompt. */ +static int cmd_resolve(const char *dir) { + base_dir = dir; + base_dir_len = strlen(base_dir); + while (base_dir_len > 0 && base_dir[base_dir_len - 1] == '/') base_dir_len--; + + manifest_count = 0; + if (nftw(base_dir, manifest_file, 20, FTW_PHYS) != 0) { + fprintf(stderr, "mkcapsule: ERROR: directory scan failed\n"); + return 1; + } + + load_reserved_ranges(RESERVED_FILE_PATH); + + int fresh_registry = (access(CLAIMS_FILE_PATH, F_OK) != 0); + load_claims_registry(CLAIMS_FILE_PATH); + if (fresh_registry) { + fprintf(stderr, "mkcapsule --resolve: %s not found, creating fresh " + "baseline from current state\n", CLAIMS_FILE_PATH); + } + + int registered = 0, updated = 0, resolved = 0, rejected = 0; + + for (int i = 0; i < manifest_count; i++) { + ManifestEntry *m = &manifest_entries[i]; + ClaimEntry *prior = find_claim(m->name); + + if (prior && prior->hash == m->hash && + prior->block_count == m->block_count && + memcmp(prior->blocks, m->blocks, + (size_t)m->block_count * sizeof(int)) == 0) { + continue; /* unchanged, nothing to do */ + } + + /* Does this capsule's CURRENT block set collide with anything else + * live right now (ground truth = this run's fresh scan), or with + * a reserved range? Fresh-registered-or-updated-in-place capsules + * whose own new content simply doesn't collide need no prompt -- + * only an actual collision needs a human decision. */ + int collides = 0; + for (int j = 0; j < m->block_count && !collides; j++) { + int lbn = m->blocks[j]; + if (reserved_owner_of(lbn)) { collides = 1; break; } + for (int k = 0; k < manifest_count; k++) { + if (k == i) continue; + for (int b = 0; b < manifest_entries[k].block_count; b++) { + if (manifest_entries[k].blocks[b] == lbn) { collides = 1; break; } + } + if (collides) break; + } + } + + if (!collides) { + ClaimEntry *dest = prior ? prior : &claim_registry[claim_count++]; + snprintf(dest->name, CAPSULE_NAME_MAX, "%s", m->name); + dest->hash = m->hash; + dest->block_count = m->block_count; + memcpy(dest->blocks, m->blocks, (size_t)m->block_count * sizeof(int)); + if (prior) { updated++; fprintf(stderr, "mkcapsule --resolve: %s updated (no conflict)\n", m->name); } + else { registered++; fprintf(stderr, "mkcapsule --resolve: %s registered\n", m->name); } + continue; + } + + /* Real conflict -- try to suggest a renumbering. */ + fprintf(stderr, "\nmkcapsule --resolve: CONFLICT for %s:\n", m->name); + for (int j = 0; j < m->block_count; j++) { + int lbn = m->blocks[j]; + const ReservedRange *r = reserved_owner_of(lbn); + if (r) { + fprintf(stderr, " block %d is reserved: %s\n", lbn, r->desc); + continue; + } + for (int k = 0; k < manifest_count; k++) { + if (k == i) continue; + for (int b = 0; b < manifest_entries[k].block_count; b++) { + if (manifest_entries[k].blocks[b] == lbn) { + fprintf(stderr, " block %d also claimed by %s\n", + lbn, manifest_entries[k].name); + } + } + } + } + + int delta; + if (suggest_renumbering(m->blocks, m->block_count, i, &delta)) { + fprintf(stderr, " suggested renumbering (shift by %+d):\n", delta); + for (int j = 0; j < m->block_count; j++) { + fprintf(stderr, " %d -> %d\n", m->blocks[j], m->blocks[j] + delta); + } + char fpath[MAX_PATH_LEN]; + snprintf(fpath, sizeof(fpath), "%s/%s", base_dir, m->name); + /* capsule name uses ':' for subdirectories; the real path uses '/' */ + for (char *p = fpath; *p; p++) if (*p == ':') *p = '/'; + + if (prompt_yes_no(" Accept this renumbering?")) { + if (rewrite_block_headers(fpath, delta)) { + char reason[256]; + snprintf(reason, sizeof(reason), + "block conflict, resolved via --resolve"); + write_renumber_patch(m->name, m->blocks, m->block_count, + delta, reason); + for (int j = 0; j < m->block_count; j++) m->blocks[j] += delta; + ClaimEntry *dest = prior ? prior : &claim_registry[claim_count++]; + snprintf(dest->name, CAPSULE_NAME_MAX, "%s", m->name); + dest->hash = m->hash; + dest->block_count = m->block_count; + memcpy(dest->blocks, m->blocks, (size_t)m->block_count * sizeof(int)); + resolved++; + } else { + fprintf(stderr, " ERROR: could not rewrite %s\n", fpath); + rejected++; + } + } else { + fprintf(stderr, " rejected -- %s left unchanged\n", m->name); + rejected++; + } + } else { + fprintf(stderr, " no free renumbering found within +%d of any " + "existing block -- resolve %s by hand\n", + MAX_DELTA_SEARCH, m->name); + rejected++; + } + } + + save_claims_registry(CLAIMS_FILE_PATH); + + fprintf(stderr, "\nmkcapsule --resolve: %d registered, %d updated, " + "%d resolved, %d rejected/unresolved\n", + registered, updated, resolved, rejected); + return rejected > 0 ? 1 : 0; +} + /*=========================================================================== * C Source Generation *===========================================================================*/ @@ -1154,6 +1617,15 @@ int main(int argc, char **argv) { return 0; } + /* --resolve mode: interactive block-conflict resolver (FABRIC-3.md + * SXXIV). The ONLY interactive mkcapsule mode -- deliberately a + * separate, deliberate invocation, never part of the plain `make` + * build path (that stays non-interactive so CI/unattended builds + * never block on a prompt). */ + if (argc == 3 && strcmp(argv[1], "--resolve") == 0) { + return cmd_resolve(argv[2]); + } + /* --lint mode: validate all .4th files without generating C output */ if (argc == 3 && strcmp(argv[1], "--lint") == 0) { base_dir = argv[2]; @@ -1191,6 +1663,8 @@ int main(int argc, char **argv) { " %s --lint lint all .4th files\n" " %s --manifest [--sign-key ] []\n" " print/write block manifest\n" + " %s --resolve interactive block-conflict\n" + " resolver (see file header)\n" "\n" "Lint checks (per .4th file):\n" " - each block opens with 'Block N'\n" @@ -1206,7 +1680,7 @@ int main(int argc, char **argv) { "\n" "Names are colon-separated relative paths (e.g. core:init.4th).\n" "Files whose encoded name exceeds %d bytes are skipped with a warning.\n", - argv[0], argv[0], argv[0], CAPSULE_NAME_MAX - 1); + argv[0], argv[0], argv[0], argv[0], CAPSULE_NAME_MAX - 1); return 1; } @@ -1224,6 +1698,9 @@ int main(int argc, char **argv) { if (check_block_conflicts() != 0) { return 1; } + if (check_reserved_conflicts() != 0) { + return 1; + } fprintf(stderr, "mkcapsule: scanning %s\n", base_dir);