From 3d0b9351bdb22a3df32b50d4335fd775ea89938f Mon Sep 17 00:00:00 2001 From: Robert Allan James Date: Wed, 5 Aug 2026 13:37:10 -0400 Subject: [PATCH] starkernel: item 4.1 -- hot words onto the Stadium, density-ranked eviction MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Punch list §25 item 4.1 complete. Replaces the round-robin hotwords cache with Stadium density-ranked admission/eviction on the kernel side, via the §17.7 reservoir mechanism and a kernel-side word_id -> cell_index map (no DictEntry change, dict_hash untouched). Adds stadium_birth_hera() to close the cell-0 panic hazard, STADIUM_WORD_HEAT_QUANTUM/STADIUM_WORD_COOL_RATE_Q48 Kconfig knobs (flagged untuned), and a stadium_word_forget() FORGET coherence hook to close a recycled-word_id aliasing gap. Verified: all five hotwords_cache_* call sites in dictionary_management.c bypassed under __STARKERNEL__; word dispatch feeds the Stadium at all three vm_core.c physics_execution_heat_increment() sites; hosted make unaffected; all three architectures booted to ok> with matching dict_hash (0x3d4e1daf289da94f) and matching conservation stats (promotions=354 evictions=0, resident_sum=65536 reservoir=0 sum=65536). Co-Authored-By: Claude Sonnet 5 --- FABRIC.md | 97 +- Kconfig.kernel | 30 + Makefile.starkernel | 5 +- capsules/BLOCK_MAP.md | 2 +- .../runs/doe-aarch64-20260805-130919.csv | 59 + .../runs/doe-amd64-20260805-130800.csv | 59 + .../runs/doe-riscv64-20260805-131030.csv | 59 + include/starforth_config.h | 10 + include/starkernel/vm/stadium.h | 66 + include/starkernel/vm/stadium_words.h | 138 + lfs/amd64/starforth | Bin 671136 -> 1487016 bytes .../amd64/qemu-amd64-20260805-130800.log | 10368 +++++++++++++++ .../aarch64/qemu-aarch64-20260805-130919.log | 10349 +++++++++++++++ .../riscv64/qemu-riscv64-20260805-131030.log | 10415 ++++++++++++++++ src/dictionary_management.c | 44 +- src/starkernel/kernel_main.c | 14 + src/starkernel/vm/stadium.c | 78 + src/starkernel/vm/stadium_words.c | 231 + src/starkernel/vm/vm_core.c | 9 + 19 files changed, 32009 insertions(+), 24 deletions(-) create mode 100644 experiments/bare_metal/runs/doe-aarch64-20260805-130919.csv create mode 100644 experiments/bare_metal/runs/doe-amd64-20260805-130800.csv create mode 100644 experiments/bare_metal/runs/doe-riscv64-20260805-131030.csv create mode 100644 include/starkernel/vm/stadium_words.h create mode 100644 logs/20260805-130800/amd64/qemu-amd64-20260805-130800.log create mode 100644 logs/20260805-130919/aarch64/qemu-aarch64-20260805-130919.log create mode 100644 logs/20260805-131030/riscv64/qemu-riscv64-20260805-131030.log create mode 100644 src/starkernel/vm/stadium_words.c diff --git a/FABRIC.md b/FABRIC.md index 3e7382a..1deca77 100644 --- a/FABRIC.md +++ b/FABRIC.md @@ -1210,6 +1210,45 @@ reservoir-based O(1) touch/cool transfer, Option B's starter-grant admission (no increment/decay behaviour and `dict_hash` remain explicitly out of scope — nothing in item 4.1 touches either.** +#### Two rulings made during item 4.1's implementation, 2026-08-05 + +A pre-coding design pass surfaced two problems this section had not accounted for. Both were +taken to Captain Bob before any file was touched; both are now closed. + +1. **Cell-0 panic hazard.** `stadium_boot_init()` grants Hera's quota with `free_head = 0` so + the first-ever admission pops cell 0 — documented as preserving item 3.6's "Hera is + patron zero." But nothing had ever actually birthed Hera into the Stadium; item 4.1's + first word dispatch would have made an ordinary, evictable word the accidental occupant + of cell 0, arming `stadium_evict()`'s hard panic guard for the day something tried to + reap it. **Ruled: birth Hera for real, as part of item 4.1** (a deliberate scope addition, + not silently folded in) — `stadium_birth_hera()` admits a pinned, zero-heat, mass-1 + candidate into cell 0 before anything else can reach it. Zero heat means no reservoir + transfer is needed for her admission; conservation holds trivially at boot. +2. **Quantum/cool-rate underspecification.** The quantum this section names as + Kconfig-tunable had no defensible starting value, and the cooling coefficient wasn't + named as a *fraction of the patron's own current heat per tick* until this pass — the + naive reading (reusing `execution_heat`'s flat per-tick decay shape directly) can zero a + cell in one tick, since Q48_ONE (65536) is a much smaller number than it looks at a + glance. **Ruled: two new Kconfig knobs**, `STADIUM_WORD_HEAT_QUANTUM` (default 2048 = + Q48_ONE ÷ `HOTWORDS_CACHE_SIZE`, i.e. one "cache slot's worth" of the mechanism this item + retires) and `STADIUM_WORD_COOL_RATE_Q48` (default 21845, reusing + `INITIAL_DECAY_SLOPE_Q48`'s numeric value but reinterpreted as a fraction-of-current-heat + removed per tick, unit-safe for a conserved share — NOT the same quantity as + `execution_heat`'s decay, just a reasonable starting magnitude borrowed from it). Both + flagged in their Kconfig help text as untuned placeholders, DoE work for item 5.1, same + treatment as `STADIUM_MEMORY_PERCENT`. + +**Noted in passing, not fixed:** Kconfig/`menuconfig` itself has never been exercised +end-to-end in this repo — every knob added so far, including these two, has only been +verified via its `Makefile.starkernel` default, never through an actual `menuconfig` → +`.config` → build round trip. Filed at §25.7. + +**Also found, reported not fixed (§25.7):** `stadium_admit()` never writes +`stadium_owner[idx]` on either the free-list-pop or the eviction-fallback path. Harmless +today — every cell's owner byte is already `0` (Hera) from `stadium_boot_init()`, and Hera is +the only VM with a quota — but once item 4.2 restores Hermes, a resident's evict-credit would +flow to the wrong VM's reservoir unless this is fixed first. + --- ## 18. The engine — L0 @@ -3226,7 +3265,7 @@ document and committing that amendment as its own item.* *One subsystem at a time, converted completely. Never two live heat mechanisms at once (§11).* -- [ ] **4.1 — Hot words onto the Stadium.** Replaces the round-robin eviction with density +- [x] **4.1 — Hot words onto the Stadium.** Replaces the round-robin eviction with density ranking, via the reservoir mechanism (§17.7) and a kernel-side `word_id → cell_index` map (no `DictEntry` change, decided 2026-08-05). *Refs:* §17.3, §17.7. @@ -3235,25 +3274,38 @@ document and committing that amendment as its own item.* > `stats.promotions`" presumed reusing the old cache's `HotwordsStats`, which this item > retires on the kernel side rather than extends. > - > *Done when:* - > - Kernel builds only: `hotwords_cache_lookup()`/`hotwords_cache_evict_*()` call sites in - > `dictionary_management.c` are bypassed under `__STARKERNEL__`, per §17.3's resolution — - > the old cache's *effect* retires there; its code stays compiled and untouched. - > - Word dispatch feeds the Stadium: an already-resident word gets the reservoir-quantum - > touch (§17.7); a non-resident word attempts `stadium_admit()` with a starter-quantum - > candidate on every dispatch (Option B). - > - New Stadium-side promotion/eviction counters exist (same shape as - > `HotwordsStats.promotions`/`.evictions`, not that struct) and are observable via a - > diagnostic word or boot console output. - > - Hosted builds are unaffected — `execution_heat`, the old cache, and its stats keep - > working exactly as today; no shared-source behaviour changes for hosted. - > - All three architectures boot to `ok>`/`zuse)ok>` with logs under `logs/`. `dict_hash` - > is expected to still match the pre-4.1 baseline exactly, since it hashes only name and - > `execution_heat`, and neither changes under this item — a mismatch means something - > leaked into the hashed fields and is a regression, not something to explain away. + > **Done, 2026-08-05.** Two rulings made mid-implementation (§17.7's addendum): Hera is now + > actually birthed into cell 0 (`stadium_birth_hera()`, a deliberate scope addition, not + > silently folded in) closing the cell-0 panic hazard the original design left open; the + > quantum/cool-rate got two new Kconfig knobs (`STADIUM_WORD_HEAT_QUANTUM`, + > `STADIUM_WORD_COOL_RATE_Q48`) with derived-not-fabricated defaults, flagged untuned. A + > third addition, required for the item's own correctness rather than scope creep: a FORGET + > coherence hook (`stadium_word_forget()`, called from `vm_dictionary_untrack_entry()`) + > reclaims a resident word's cell before its `word_id` is recycled, closing an aliasing gap + > of the same shape as the 2026-08-02 `block_words.c` bug. + > + > *Acceptance, verified:* + > - Kernel builds only: all five `hotwords_cache_*` call sites in `dictionary_management.c` + > (not just the two originally named) are bypassed under `__STARKERNEL__`. + > - Word dispatch feeds the Stadium at all three of `vm_core.c`'s + > `physics_execution_heat_increment()` call sites — an already-resident word gets the + > reservoir-quantum touch; a non-resident word attempts Option B starter-grant admission. + > - New Stadium-side promotion/eviction counters (`stadium_words_stats()`) and a + > conservation check are printed to the boot console + > (`stadium_words_print_boot_diagnostics()`) before the REPL starts. + > - Hosted builds unaffected — confirmed via a clean hosted `make`. + > - All three architectures booted to `ok>` with logs under `logs/20260805-130800/amd64/`, + > `logs/20260805-130919/aarch64/`, `logs/20260805-131030/riscv64/`. `dict_hash` is + > identical across all three (`0x3d4e1daf289da94f`) and identical in shape to pre-4.1 + > parity output — untouched, as designed. Stadium diagnostics also identical across all + > three: `promotions=354 evictions=0`, `resident_sum=65536 reservoir=0 sum=65536 + > (Q48_ONE=65536)` — the conservation invariant closes exactly. - [ ] **4.2 — Hermes native on the Stadium.** The proving ground; produces the effort number. *Refs:* §10. - [ ] **4.3 — Console.** Settles 1.11 as part of the work. *Refs:* §17.5. + + > **Note, 2026-08-05: Captain Bob wants a discussion before any work starts on this item.** + > Do not begin 4.3 on an unblock-and-go basis the way 4.1 was — raise it and wait. - [ ] **4.4 — Artemis last.** It works today; it is the thing that cannot be broken. *Refs:* §10. @@ -3299,6 +3351,17 @@ so.* - `src/*.c.bak` files are tracked in git at the `src/` top level. - The `bump-z` / `bump-y` targets in the hosted `Makefile` reference version macros that do not exist in the generated `include/version.h`. +- **Kconfig/`menuconfig` has never been exercised end-to-end.** Every Kconfig knob added so + far, including item 4.1's `STADIUM_WORD_HEAT_QUANTUM`/`STADIUM_WORD_COOL_RATE_Q48`, has only + ever been verified via its `Makefile.starkernel` `kconfig_int`/`kconfig_bool` default. Nobody + has run `make -f Makefile.starkernel menuconfig`, changed a value, and confirmed it actually + flows through to a build. Flagged by Captain Bob 2026-08-05. +- **`stadium_admit()` never writes `stadium_owner[idx]`**, on either the free-list-pop or the + eviction-fallback path (found during item 4.1's design pass, 2026-08-05). Harmless today — + every cell's owner byte is `0` (Hera) from `stadium_boot_init()`, and Hera is the only VM + with a quota — but once item 4.2 restores Hermes, a resident's evict-credit (item 4.1's + reservoir accounting in `stadium_evict()`) would flow to the wrong VM's reservoir unless + this is fixed first. - **Taxonomy and lexicon.** Raised by Captain Bob 2026-08-04, mid-item-3.1. This document's physics-flavored vocabulary (heat, mass, density, patron, Stadium, and the rest) needs a glossary that is explicit these are named analogies, not physical claims — and that also diff --git a/Kconfig.kernel b/Kconfig.kernel index ada74a6..f946c65 100644 --- a/Kconfig.kernel +++ b/Kconfig.kernel @@ -93,6 +93,36 @@ config STADIUM_MEMORY_PERCENT against a QEMU -m 1024 test config while leaving the kernel heap and everything else nearly all of physical memory. +config STADIUM_WORD_HEAT_QUANTUM + int "Q48.16 heat quantum moved per word touch/starter-grant (STADIUM_WORD_HEAT_QUANTUM)" + default 2048 + help + FABRIC.md §17.7 (item 4.1): the fixed Q48.16 amount transferred between + a VM's Stadium reservoir and a word patron's cell on every touch + (already-resident) or starter-grant admission attempt (non-resident, + Option B). Q48_ONE is 65536; the default of 2048 is Q48_ONE divided by + HOTWORDS_CACHE_SIZE (32) -- the population of the cache mechanism this + item retires under __STARKERNEL__ -- so roughly 32 words could hold a + "fully loaded" starter share at once, matching the old cache's slot + count. An untuned placeholder, not a derived optimum: real tuning is + DoE work (item 5.1), same treatment as STADIUM_MEMORY_PERCENT above. + +config STADIUM_WORD_COOL_RATE_Q48 + int "Q48.16 fraction of resident heat removed per tick (STADIUM_WORD_COOL_RATE_Q48)" + default 21845 + help + FABRIC.md §17.7 (item 4.1): redirects Loop #3's decay shape onto + Stadium word-patron heat instead of discarding it -- cooled heat + returns to the VM's reservoir rather than vanishing, so this must be a + fraction of the patron's OWN current heat removed per elapsed tick + (unit-safe for a conserved share of 1.0), not a flat per-tick amount + the way execution_heat's own decay works. Default reuses + INITIAL_DECAY_SLOPE_Q48's numeric value (21845, ~1/3) reinterpreted as + this fraction -- the existing inference engine converged on that + magnitude for the analogous cooling purpose on execution_heat, so it + is a reasonable starting point, not the same quantity. Untuned + placeholder: real tuning is DoE work (item 5.1). + endif # STARFORTH_VARIANT_KERNEL endmenu diff --git a/Makefile.starkernel b/Makefile.starkernel index cbe4956..6ed588c 100644 --- a/Makefile.starkernel +++ b/Makefile.starkernel @@ -281,6 +281,8 @@ $(eval $(call kconfig_int,STADIUM_MAX_VM_COUNT,4)) $(eval $(call kconfig_int,STADIUM_CONTAINS_DEPTH_MAX,5)) $(eval $(call kconfig_int,STADIUM_CAPACITY_TICK,1000)) $(eval $(call kconfig_int,STADIUM_MEMORY_PERCENT,1)) +$(eval $(call kconfig_int,STADIUM_WORD_HEAT_QUANTUM,2048)) +$(eval $(call kconfig_int,STADIUM_WORD_COOL_RATE_Q48,21845)) $(eval $(call kconfig_int,SSM_ENTROPY_HIGH_THRESHOLD,0.75)) $(eval $(call kconfig_int,SSM_CV_HIGH_THRESHOLD,0.15)) $(eval $(call kconfig_int,SSM_TEMPORAL_DECAY_THRESHOLD,0.5)) @@ -455,7 +457,8 @@ LOADER_EXTRA_SRCS := \ $(KERNEL_SRC)/vm/vm_runtime.c \ $(KERNEL_SRC)/vm/alloc_kernel.c \ $(KERNEL_SRC)/vm/q48_stubs.c \ - $(KERNEL_SRC)/vm/stadium.c + $(KERNEL_SRC)/vm/stadium.c \ + $(KERNEL_SRC)/vm/stadium_words.c KERNEL_EXTRA_SRCS := $(LOADER_EXTRA_SRCS) diff --git a/capsules/BLOCK_MAP.md b/capsules/BLOCK_MAP.md index 9e15493..497f3c8 100644 --- a/capsules/BLOCK_MAP.md +++ b/capsules/BLOCK_MAP.md @@ -1,5 +1,5 @@ # Capsule Block Manifest — Auto-generated - + diff --git a/experiments/bare_metal/runs/doe-aarch64-20260805-130919.csv b/experiments/bare_metal/runs/doe-aarch64-20260805-130919.csv new file mode 100644 index 0000000..b132e60 --- /dev/null +++ b/experiments/bare_metal/runs/doe-aarch64-20260805-130919.csv @@ -0,0 +1,59 @@ +tick_number,elapsed_ns,tick_interval_ns,cache_hits_delta,bucket_hits_delta,word_executions_delta,hot_word_count,avg_word_heat_q48,window_width,actual_window_size,predicted_label_hits,jitter_bits,apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,hera_heat_q48,hermes_heat_q48,artemis_heat_q48 +1,10000,10000,0,0,183,4,45,731,731,0,0,0,65536,0,0,65536,0,0 +2,20000,10000,0,0,173,5,44,582,582,0,0,0,65536,0,0,65536,0,0 +3,30000,10000,0,0,184,6,60,582,582,0,0,0,65536,0,0,65536,0,0 +4,40000,10000,0,0,174,8,71,4096,0,0,0,0,65536,0,0,65536,0,0 +5,50000,10000,0,0,150,9,78,582,582,0,0,0,65536,0,0,65536,0,0 +6,60000,10000,0,0,159,11,73,4096,0,0,0,0,65536,0,0,65536,0,0 +7,70000,10000,0,0,188,15,71,685,685,0,0,0,65536,0,0,65536,0,0 +8,80000,10000,0,0,214,16,83,685,685,0,0,0,65536,0,0,65536,0,0 +9,90000,10000,0,0,216,19,82,4096,0,0,0,0,65536,0,0,65536,0,0 +10,100000,10000,0,0,222,21,84,567,567,0,0,0,65536,0,0,65536,0,0 +11,110000,10000,0,0,207,23,86,731,731,0,0,0,65536,0,0,65536,0,0 +12,120000,10000,0,0,189,26,83,4096,0,0,0,0,65536,0,0,65536,0,0 +13,130000,10000,0,0,221,28,80,731,731,0,0,0,65536,0,0,65536,0,0 +14,140000,10000,0,0,204,29,83,685,685,0,0,0,65536,0,0,65536,0,0 +15,150000,10000,0,0,203,30,82,731,731,0,0,0,65536,0,0,65536,0,0 +16,160000,10000,0,0,201,32,83,567,567,0,0,0,65536,0,0,65536,0,0 +17,170000,10000,0,0,190,34,86,731,731,0,0,0,65536,0,0,65536,0,0 +18,180000,10000,0,0,170,35,73,582,582,0,0,0,65536,0,0,65536,0,0 +19,190000,10000,0,0,154,28,44,731,731,0,0,0,65536,0,0,65536,0,0 +20,200000,10000,0,0,154,28,41,567,567,0,0,0,65536,0,0,65536,0,0 +21,210000,10000,0,0,153,32,39,4096,0,0,0,0,65536,0,0,65536,0,0 +22,220000,10000,0,0,167,35,42,582,582,0,0,0,65536,0,0,65536,0,0 +23,230000,10000,0,0,176,37,41,685,685,0,0,0,65536,0,0,65536,0,0 +24,240000,10000,0,0,175,37,39,731,731,0,0,0,65536,0,0,65536,0,0 +25,250000,10000,0,0,196,38,37,731,731,0,0,0,65536,0,0,65536,0,0 +26,260000,10000,0,0,192,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +27,270000,10000,0,0,158,40,38,685,685,0,0,0,65536,0,0,65536,0,0 +28,280000,10000,0,0,158,40,35,4096,0,0,0,0,65536,0,0,65536,0,0 +29,290000,10000,0,0,164,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +30,300000,10000,0,0,154,43,39,685,685,0,0,0,65536,0,0,65536,0,0 +31,310000,10000,0,0,172,46,35,582,582,0,0,0,65536,0,0,65536,0,0 +32,320000,10000,0,0,180,49,34,567,567,0,0,0,65536,0,0,65536,0,0 +33,330000,10000,0,0,145,51,35,567,567,0,0,0,65536,0,0,65536,0,0 +34,340000,10000,0,0,203,53,37,582,582,0,0,0,65536,0,0,65536,0,0 +35,350000,10000,0,0,154,55,39,731,731,0,0,0,65536,0,0,65536,0,0 +36,360000,10000,0,0,144,57,37,4096,0,0,0,0,65536,0,0,65536,0,0 +37,370000,10000,0,0,144,57,35,4096,0,0,0,0,65536,0,0,65536,0,0 +38,380000,10000,0,0,132,57,34,4096,0,0,0,0,65536,0,0,65536,0,0 +39,390000,10000,0,0,180,57,32,4096,0,0,0,0,65536,0,0,65536,0,0 +40,400000,10000,0,0,220,63,29,4096,0,0,0,0,65536,0,0,65536,0,0 +41,410000,10000,0,0,215,64,28,4096,24,0,0,0,65536,0,0,65536,0,0 +42,420000,10000,0,0,208,68,29,4096,24,0,0,0,65536,0,0,65536,0,0 +43,430000,10000,0,0,177,72,27,4096,24,0,0,0,65536,0,0,65536,0,0 +44,440000,10000,0,0,199,77,28,4096,24,0,0,0,65536,0,0,65536,0,0 +45,450000,10000,0,0,223,82,26,4096,30,0,0,0,65536,0,0,65536,0,0 +46,460000,10000,0,0,202,85,24,4096,67,0,0,0,65536,0,0,65536,0,0 +47,470000,10000,0,0,218,91,25,4096,198,0,0,0,65536,0,0,65536,0,0 +48,480000,10000,0,0,221,92,26,4096,350,0,0,0,65536,0,0,65536,0,0 +49,490000,10000,0,0,225,97,26,4096,528,0,0,0,65536,0,0,65536,0,0 +50,500000,10000,0,0,214,100,27,4096,694,0,0,0,65536,0,0,65536,0,0 +51,510000,10000,0,0,227,102,28,4096,883,0,0,0,65536,0,0,65536,0,0 +52,520000,10000,0,0,208,102,29,4096,1043,0,0,0,65536,0,0,65536,0,0 +53,530000,10000,0,0,207,102,30,4096,1202,0,0,0,65536,0,0,65536,0,0 +54,540000,10000,0,0,200,102,31,4096,1319,0,0,0,65536,0,0,65536,0,0 +55,550000,10000,0,0,205,103,32,4096,1464,0,0,0,65536,0,0,65536,0,0 +56,560000,10000,0,0,211,103,32,4096,1620,0,0,0,65536,0,0,65536,0,0 +57,570000,10000,0,0,193,110,33,4096,1712,0,0,0,65536,0,0,65536,0,0 +58,580000,10000,0,0,190,5,67,4096,1775,0,0,0,65536,0,0,65536,0,0 diff --git a/experiments/bare_metal/runs/doe-amd64-20260805-130800.csv b/experiments/bare_metal/runs/doe-amd64-20260805-130800.csv new file mode 100644 index 0000000..b132e60 --- /dev/null +++ b/experiments/bare_metal/runs/doe-amd64-20260805-130800.csv @@ -0,0 +1,59 @@ +tick_number,elapsed_ns,tick_interval_ns,cache_hits_delta,bucket_hits_delta,word_executions_delta,hot_word_count,avg_word_heat_q48,window_width,actual_window_size,predicted_label_hits,jitter_bits,apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,hera_heat_q48,hermes_heat_q48,artemis_heat_q48 +1,10000,10000,0,0,183,4,45,731,731,0,0,0,65536,0,0,65536,0,0 +2,20000,10000,0,0,173,5,44,582,582,0,0,0,65536,0,0,65536,0,0 +3,30000,10000,0,0,184,6,60,582,582,0,0,0,65536,0,0,65536,0,0 +4,40000,10000,0,0,174,8,71,4096,0,0,0,0,65536,0,0,65536,0,0 +5,50000,10000,0,0,150,9,78,582,582,0,0,0,65536,0,0,65536,0,0 +6,60000,10000,0,0,159,11,73,4096,0,0,0,0,65536,0,0,65536,0,0 +7,70000,10000,0,0,188,15,71,685,685,0,0,0,65536,0,0,65536,0,0 +8,80000,10000,0,0,214,16,83,685,685,0,0,0,65536,0,0,65536,0,0 +9,90000,10000,0,0,216,19,82,4096,0,0,0,0,65536,0,0,65536,0,0 +10,100000,10000,0,0,222,21,84,567,567,0,0,0,65536,0,0,65536,0,0 +11,110000,10000,0,0,207,23,86,731,731,0,0,0,65536,0,0,65536,0,0 +12,120000,10000,0,0,189,26,83,4096,0,0,0,0,65536,0,0,65536,0,0 +13,130000,10000,0,0,221,28,80,731,731,0,0,0,65536,0,0,65536,0,0 +14,140000,10000,0,0,204,29,83,685,685,0,0,0,65536,0,0,65536,0,0 +15,150000,10000,0,0,203,30,82,731,731,0,0,0,65536,0,0,65536,0,0 +16,160000,10000,0,0,201,32,83,567,567,0,0,0,65536,0,0,65536,0,0 +17,170000,10000,0,0,190,34,86,731,731,0,0,0,65536,0,0,65536,0,0 +18,180000,10000,0,0,170,35,73,582,582,0,0,0,65536,0,0,65536,0,0 +19,190000,10000,0,0,154,28,44,731,731,0,0,0,65536,0,0,65536,0,0 +20,200000,10000,0,0,154,28,41,567,567,0,0,0,65536,0,0,65536,0,0 +21,210000,10000,0,0,153,32,39,4096,0,0,0,0,65536,0,0,65536,0,0 +22,220000,10000,0,0,167,35,42,582,582,0,0,0,65536,0,0,65536,0,0 +23,230000,10000,0,0,176,37,41,685,685,0,0,0,65536,0,0,65536,0,0 +24,240000,10000,0,0,175,37,39,731,731,0,0,0,65536,0,0,65536,0,0 +25,250000,10000,0,0,196,38,37,731,731,0,0,0,65536,0,0,65536,0,0 +26,260000,10000,0,0,192,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +27,270000,10000,0,0,158,40,38,685,685,0,0,0,65536,0,0,65536,0,0 +28,280000,10000,0,0,158,40,35,4096,0,0,0,0,65536,0,0,65536,0,0 +29,290000,10000,0,0,164,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +30,300000,10000,0,0,154,43,39,685,685,0,0,0,65536,0,0,65536,0,0 +31,310000,10000,0,0,172,46,35,582,582,0,0,0,65536,0,0,65536,0,0 +32,320000,10000,0,0,180,49,34,567,567,0,0,0,65536,0,0,65536,0,0 +33,330000,10000,0,0,145,51,35,567,567,0,0,0,65536,0,0,65536,0,0 +34,340000,10000,0,0,203,53,37,582,582,0,0,0,65536,0,0,65536,0,0 +35,350000,10000,0,0,154,55,39,731,731,0,0,0,65536,0,0,65536,0,0 +36,360000,10000,0,0,144,57,37,4096,0,0,0,0,65536,0,0,65536,0,0 +37,370000,10000,0,0,144,57,35,4096,0,0,0,0,65536,0,0,65536,0,0 +38,380000,10000,0,0,132,57,34,4096,0,0,0,0,65536,0,0,65536,0,0 +39,390000,10000,0,0,180,57,32,4096,0,0,0,0,65536,0,0,65536,0,0 +40,400000,10000,0,0,220,63,29,4096,0,0,0,0,65536,0,0,65536,0,0 +41,410000,10000,0,0,215,64,28,4096,24,0,0,0,65536,0,0,65536,0,0 +42,420000,10000,0,0,208,68,29,4096,24,0,0,0,65536,0,0,65536,0,0 +43,430000,10000,0,0,177,72,27,4096,24,0,0,0,65536,0,0,65536,0,0 +44,440000,10000,0,0,199,77,28,4096,24,0,0,0,65536,0,0,65536,0,0 +45,450000,10000,0,0,223,82,26,4096,30,0,0,0,65536,0,0,65536,0,0 +46,460000,10000,0,0,202,85,24,4096,67,0,0,0,65536,0,0,65536,0,0 +47,470000,10000,0,0,218,91,25,4096,198,0,0,0,65536,0,0,65536,0,0 +48,480000,10000,0,0,221,92,26,4096,350,0,0,0,65536,0,0,65536,0,0 +49,490000,10000,0,0,225,97,26,4096,528,0,0,0,65536,0,0,65536,0,0 +50,500000,10000,0,0,214,100,27,4096,694,0,0,0,65536,0,0,65536,0,0 +51,510000,10000,0,0,227,102,28,4096,883,0,0,0,65536,0,0,65536,0,0 +52,520000,10000,0,0,208,102,29,4096,1043,0,0,0,65536,0,0,65536,0,0 +53,530000,10000,0,0,207,102,30,4096,1202,0,0,0,65536,0,0,65536,0,0 +54,540000,10000,0,0,200,102,31,4096,1319,0,0,0,65536,0,0,65536,0,0 +55,550000,10000,0,0,205,103,32,4096,1464,0,0,0,65536,0,0,65536,0,0 +56,560000,10000,0,0,211,103,32,4096,1620,0,0,0,65536,0,0,65536,0,0 +57,570000,10000,0,0,193,110,33,4096,1712,0,0,0,65536,0,0,65536,0,0 +58,580000,10000,0,0,190,5,67,4096,1775,0,0,0,65536,0,0,65536,0,0 diff --git a/experiments/bare_metal/runs/doe-riscv64-20260805-131030.csv b/experiments/bare_metal/runs/doe-riscv64-20260805-131030.csv new file mode 100644 index 0000000..b132e60 --- /dev/null +++ b/experiments/bare_metal/runs/doe-riscv64-20260805-131030.csv @@ -0,0 +1,59 @@ +tick_number,elapsed_ns,tick_interval_ns,cache_hits_delta,bucket_hits_delta,word_executions_delta,hot_word_count,avg_word_heat_q48,window_width,actual_window_size,predicted_label_hits,jitter_bits,apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,hera_heat_q48,hermes_heat_q48,artemis_heat_q48 +1,10000,10000,0,0,183,4,45,731,731,0,0,0,65536,0,0,65536,0,0 +2,20000,10000,0,0,173,5,44,582,582,0,0,0,65536,0,0,65536,0,0 +3,30000,10000,0,0,184,6,60,582,582,0,0,0,65536,0,0,65536,0,0 +4,40000,10000,0,0,174,8,71,4096,0,0,0,0,65536,0,0,65536,0,0 +5,50000,10000,0,0,150,9,78,582,582,0,0,0,65536,0,0,65536,0,0 +6,60000,10000,0,0,159,11,73,4096,0,0,0,0,65536,0,0,65536,0,0 +7,70000,10000,0,0,188,15,71,685,685,0,0,0,65536,0,0,65536,0,0 +8,80000,10000,0,0,214,16,83,685,685,0,0,0,65536,0,0,65536,0,0 +9,90000,10000,0,0,216,19,82,4096,0,0,0,0,65536,0,0,65536,0,0 +10,100000,10000,0,0,222,21,84,567,567,0,0,0,65536,0,0,65536,0,0 +11,110000,10000,0,0,207,23,86,731,731,0,0,0,65536,0,0,65536,0,0 +12,120000,10000,0,0,189,26,83,4096,0,0,0,0,65536,0,0,65536,0,0 +13,130000,10000,0,0,221,28,80,731,731,0,0,0,65536,0,0,65536,0,0 +14,140000,10000,0,0,204,29,83,685,685,0,0,0,65536,0,0,65536,0,0 +15,150000,10000,0,0,203,30,82,731,731,0,0,0,65536,0,0,65536,0,0 +16,160000,10000,0,0,201,32,83,567,567,0,0,0,65536,0,0,65536,0,0 +17,170000,10000,0,0,190,34,86,731,731,0,0,0,65536,0,0,65536,0,0 +18,180000,10000,0,0,170,35,73,582,582,0,0,0,65536,0,0,65536,0,0 +19,190000,10000,0,0,154,28,44,731,731,0,0,0,65536,0,0,65536,0,0 +20,200000,10000,0,0,154,28,41,567,567,0,0,0,65536,0,0,65536,0,0 +21,210000,10000,0,0,153,32,39,4096,0,0,0,0,65536,0,0,65536,0,0 +22,220000,10000,0,0,167,35,42,582,582,0,0,0,65536,0,0,65536,0,0 +23,230000,10000,0,0,176,37,41,685,685,0,0,0,65536,0,0,65536,0,0 +24,240000,10000,0,0,175,37,39,731,731,0,0,0,65536,0,0,65536,0,0 +25,250000,10000,0,0,196,38,37,731,731,0,0,0,65536,0,0,65536,0,0 +26,260000,10000,0,0,192,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +27,270000,10000,0,0,158,40,38,685,685,0,0,0,65536,0,0,65536,0,0 +28,280000,10000,0,0,158,40,35,4096,0,0,0,0,65536,0,0,65536,0,0 +29,290000,10000,0,0,164,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +30,300000,10000,0,0,154,43,39,685,685,0,0,0,65536,0,0,65536,0,0 +31,310000,10000,0,0,172,46,35,582,582,0,0,0,65536,0,0,65536,0,0 +32,320000,10000,0,0,180,49,34,567,567,0,0,0,65536,0,0,65536,0,0 +33,330000,10000,0,0,145,51,35,567,567,0,0,0,65536,0,0,65536,0,0 +34,340000,10000,0,0,203,53,37,582,582,0,0,0,65536,0,0,65536,0,0 +35,350000,10000,0,0,154,55,39,731,731,0,0,0,65536,0,0,65536,0,0 +36,360000,10000,0,0,144,57,37,4096,0,0,0,0,65536,0,0,65536,0,0 +37,370000,10000,0,0,144,57,35,4096,0,0,0,0,65536,0,0,65536,0,0 +38,380000,10000,0,0,132,57,34,4096,0,0,0,0,65536,0,0,65536,0,0 +39,390000,10000,0,0,180,57,32,4096,0,0,0,0,65536,0,0,65536,0,0 +40,400000,10000,0,0,220,63,29,4096,0,0,0,0,65536,0,0,65536,0,0 +41,410000,10000,0,0,215,64,28,4096,24,0,0,0,65536,0,0,65536,0,0 +42,420000,10000,0,0,208,68,29,4096,24,0,0,0,65536,0,0,65536,0,0 +43,430000,10000,0,0,177,72,27,4096,24,0,0,0,65536,0,0,65536,0,0 +44,440000,10000,0,0,199,77,28,4096,24,0,0,0,65536,0,0,65536,0,0 +45,450000,10000,0,0,223,82,26,4096,30,0,0,0,65536,0,0,65536,0,0 +46,460000,10000,0,0,202,85,24,4096,67,0,0,0,65536,0,0,65536,0,0 +47,470000,10000,0,0,218,91,25,4096,198,0,0,0,65536,0,0,65536,0,0 +48,480000,10000,0,0,221,92,26,4096,350,0,0,0,65536,0,0,65536,0,0 +49,490000,10000,0,0,225,97,26,4096,528,0,0,0,65536,0,0,65536,0,0 +50,500000,10000,0,0,214,100,27,4096,694,0,0,0,65536,0,0,65536,0,0 +51,510000,10000,0,0,227,102,28,4096,883,0,0,0,65536,0,0,65536,0,0 +52,520000,10000,0,0,208,102,29,4096,1043,0,0,0,65536,0,0,65536,0,0 +53,530000,10000,0,0,207,102,30,4096,1202,0,0,0,65536,0,0,65536,0,0 +54,540000,10000,0,0,200,102,31,4096,1319,0,0,0,65536,0,0,65536,0,0 +55,550000,10000,0,0,205,103,32,4096,1464,0,0,0,65536,0,0,65536,0,0 +56,560000,10000,0,0,211,103,32,4096,1620,0,0,0,65536,0,0,65536,0,0 +57,570000,10000,0,0,193,110,33,4096,1712,0,0,0,65536,0,0,65536,0,0 +58,580000,10000,0,0,190,5,67,4096,1775,0,0,0,65536,0,0,65536,0,0 diff --git a/include/starforth_config.h b/include/starforth_config.h index 4ba9747..3ccfec1 100644 --- a/include/starforth_config.h +++ b/include/starforth_config.h @@ -74,6 +74,8 @@ #define STARFORTH_CONFIG_STADIUM_CONTAINS_DEPTH_MAX_DEFAULT 5 #define STARFORTH_CONFIG_STADIUM_CAPACITY_TICK_DEFAULT 1000 #define STARFORTH_CONFIG_STADIUM_MEMORY_PERCENT_DEFAULT 1 +#define STARFORTH_CONFIG_STADIUM_WORD_HEAT_QUANTUM_DEFAULT 2048 +#define STARFORTH_CONFIG_STADIUM_WORD_COOL_RATE_Q48_DEFAULT 21845 #define STARFORTH_CONFIG_HEARTBEAT_CHECK_FREQUENCY_DEFAULT 256 #define STARFORTH_CONFIG_HEARTBEAT_WINDOW_TUNING_FREQUENCY_DEFAULT 1000 #define STARFORTH_CONFIG_HEARTBEAT_SLOPE_VALIDATION_FREQUENCY_DEFAULT 5000 @@ -175,6 +177,14 @@ #define STADIUM_MEMORY_PERCENT STARFORTH_CONFIG_STADIUM_MEMORY_PERCENT_DEFAULT #endif +#ifndef STADIUM_WORD_HEAT_QUANTUM +#define STADIUM_WORD_HEAT_QUANTUM STARFORTH_CONFIG_STADIUM_WORD_HEAT_QUANTUM_DEFAULT +#endif + +#ifndef STADIUM_WORD_COOL_RATE_Q48 +#define STADIUM_WORD_COOL_RATE_Q48 STARFORTH_CONFIG_STADIUM_WORD_COOL_RATE_Q48_DEFAULT +#endif + #ifndef HEARTBEAT_CHECK_FREQUENCY #define HEARTBEAT_CHECK_FREQUENCY STARFORTH_CONFIG_HEARTBEAT_CHECK_FREQUENCY_DEFAULT #endif diff --git a/include/starkernel/vm/stadium.h b/include/starkernel/vm/stadium.h index a724e46..e551bd0 100644 --- a/include/starkernel/vm/stadium.h +++ b/include/starkernel/vm/stadium.h @@ -241,6 +241,72 @@ uint64_t stadium_density(size_t cell_index); */ #define STADIUM_HERA_CELL_INDEX ((size_t)0) +/* + * stadium_birth_hera - Admits Hera as a real resident of cell 0 (FABRIC.md + * item 3.6's invariant, actually enforced -- item 4.1 found that nothing had + * ever called this until a word patron was about to become the first-ever + * occupant of cell 0 by accident via the free list). Candidate: identity 0, + * heat 0, mass 1, pinned (STADIUM_FLAG_PIN), behaviour COOL. Heat 0 means no + * reservoir transfer is needed -- conservation holds trivially (the + * reservoir keeps the VM's whole share; Hera's own cell contributes 0). + * Being pinned excludes her from every eviction-candidate scan (§3), so the + * stadium_evict() panic guard at STADIUM_HERA_CELL_INDEX stays correctly + * dormant rather than reachable-by-accident. + * + * Idempotent: a second call is a no-op (returns 0) if she is already + * resident. Must be called after stadium_boot_init() and before any word + * ever dispatches (§6) -- kernel_main.c calls it immediately after + * stadium_boot_init(), before M7's VM bootstrap. + * + * @return 0 on success (or already born), -1 if the Stadium is not + * initialized or the admission was refused (should not happen: her + * quota is granted in full, empty, at stadium_boot_init()). + */ +int stadium_birth_hera(void); + +/* + * stadium_reservoir_pull - Transfers up to `amount` (Q48.16) out of vm_id's + * reservoir (FABRIC.md §17.7's reservoir mechanism). Clamped to what the + * reservoir actually holds -- never goes negative, never invents heat. + * Returns the amount actually pulled, which may be less than requested (or + * 0, e.g. a drained reservoir or an unknown vm_id). Callers that go on to + * fail their own operation (e.g. a refused stadium_admit()) MUST push the + * pulled amount back via stadium_reservoir_push() to preserve + * Σ(resident heat) + reservoir == Q48_ONE across the failed attempt. + * + * @param vm_id Owning VM's id. + * @param amount Requested Q48.16 amount. + * @return Amount actually pulled (0..amount). + */ +uint64_t stadium_reservoir_pull(VMUuid vm_id, uint64_t amount); + +/* + * stadium_reservoir_push - Credits `amount` (Q48.16) back into vm_id's + * reservoir. The other half of every reservoir transfer (§17.7): cooling + * returns heat here, a refused starter-grant rolls back here, and + * stadium_evict() credits a departing patron's remaining heat here before + * the cell returns to the free list -- the invariant is a transfer, never a + * reset. No-op if vm_id has no quota (caller contract; mirrors + * stadium_admit()'s silent refusal for the same case). + * + * @param vm_id Owning VM's id. + * @param amount Q48.16 amount to credit. + */ +void stadium_reservoir_push(VMUuid vm_id, uint64_t amount); + +/* + * stadium_reservoir_peek - Read-only: vm_id's current reservoir balance + * (Q48.16), for diagnostics/conservation checks. Does not mutate state. + * Returns 0 for an unknown vm_id -- indistinguishable from a genuinely + * drained reservoir, same as stadium_reservoir_pull()'s 0 return; callers + * that need to tell those apart must already know whether vm_id has a + * quota (e.g. via the same check they'd use before calling stadium_admit()). + * + * @param vm_id Owning VM's id. + * @return Current reservoir balance, or 0 if vm_id has no quota. + */ +uint64_t stadium_reservoir_peek(VMUuid vm_id); + /* * stadium_evict - Reap the patron header at cell_index (FABRIC.md §17.2: * "reap means leaves the floor, not destroyed"). Dispatches its behaviour diff --git a/include/starkernel/vm/stadium_words.h b/include/starkernel/vm/stadium_words.h new file mode 100644 index 0000000..3483f25 --- /dev/null +++ b/include/starkernel/vm/stadium_words.h @@ -0,0 +1,138 @@ +/* + StarForth — Steady-State Virtual Machine Runtime + + Copyright (c) 2023–2025 Robert A. James + All rights reserved. + + This file is part of the StarForth project. + + Licensed under the StarForth License, Version 1.0 (the "License"); + you may not use this file except in compliance with the License. + + You may obtain a copy of the License at: + https://github.com/star.4th@proton.me/StarForth/LICENSE.txt + + This software is provided "AS IS", WITHOUT WARRANTY OF ANY KIND, + express or implied, including but not limited to the warranties of + merchantability, fitness for a particular purpose, and noninfringement. + + See the License for the specific language governing permissions and + limitations under the License. + + */ + +/** + * stadium_words.h - Word patrons on the Stadium (FABRIC.md §17.3/§17.7, + * punch list item 4.1) + * + * The word-specific layer on top of the generic L0 engine (stadium.h). + * Nothing in stadium.c/.h knows a word patron exists -- it only ever sees + * cell_index, VMUuid, and StadiumPatronHeader. This file is where "word" + * becomes a concrete meaning: a word_id -> cell_index map (kernel-side, + * deliberately NOT a DictEntry field, decided 2026-08-05), the starter-grant + * admission rule (Option B), and the reservoir-quantum touch/cool that feed + * and drain a resident word's Stadium heat. + * + * `execution_heat` and `dict_hash` are untouched by anything in this file + * (§17.7) -- this is a second, independent conserved quantity living in the + * Stadium cell's `heat` field, not a representation of the first. + */ + +#ifndef STARKERNEL_VM_STADIUM_WORDS_H +#define STARKERNEL_VM_STADIUM_WORDS_H + +#ifdef __STARKERNEL__ + +#include +#include "starkernel/vm_uuid.h" + +/* + * stadium_words_init - Zeroes the word_id -> cell_index map (DICTIONARY_SIZE + * entries, static -- no allocation). Must be called after stadium_boot_init() + * and stadium_birth_hera(), before any word ever dispatches. Safe to call + * again (re-zeroes); nothing does today. + */ +void stadium_words_init(void); + +/* + * stadium_word_dispatch - The per-dispatch entry point (FABRIC.md §17.7), + * called once per DictEntry touched at each of vm_core.c's three + * physics_execution_heat_increment() call sites -- deliberately mirroring + * that function's existing call pattern 1:1, including the entry != canon + * double-touch case, rather than inventing a different shape. + * + * If word_id is already resident: applies the redirected Loop #3 cooling + * (fraction of the cell's own current heat, scaled by elapsed_ticks since + * this word's own last touch -- STADIUM_WORD_COOL_RATE_Q48) crediting the + * cooled amount back to vm_id's reservoir, then pulls + * STADIUM_WORD_HEAT_QUANTUM from the reservoir into the cell (both clamped + * to what the reservoir actually holds). + * + * If word_id is not resident (or the map's entry is stale -- self-healing + * check against the cell's discriminator bit and identity, covers both a + * prior eviction and a FORGET/redefine word_id reuse this function did not + * itself clear): attempts Option B starter-grant admission -- pulls + * STADIUM_WORD_HEAT_QUANTUM from the reservoir, builds an unpinned COOL + * candidate, calls stadium_admit(). On refusal, pushes the pulled quantum + * back (rollback, preserves conservation across the failed attempt). On + * success, records the mapping and increments the promotion counter. + * + * No-op if word_id == WORD_ID_INVALID, word_id >= DICTIONARY_SIZE, or the + * word layer has not been initialized. + * + * @param vm_id Owning VM. Hardcoded to vm_uuid_hera() at every + * call site today -- Tripod is pruned to Hera alone + * (item 0.1), and she is the only VM with a Stadium + * quota. Revisit when item 4.2 restores Hermes. + * @param word_id The dispatching DictEntry's stable word_id. + * @param heartbeat_ticks Current vm->heartbeat.tick_count (virtual tick, + * never wall-clock -- same convention as every other + * decay computation in this tree). + */ +void stadium_word_dispatch(VMUuid vm_id, uint32_t word_id, uint64_t heartbeat_ticks); + +/* + * stadium_word_forget - Coherence hook for FORGET (word_id recycling). + * vm_dictionary_untrack_entry() must call this BEFORE the word_id is pushed + * onto vm->recycled_word_ids -- otherwise the next word assigned the same + * recycled id would alias onto the forgotten word's still-resident cell and + * its stale heat (same failure class as the 2026-08-02 block_words.c + * aliasing bug). Evicts the cell if word_id is resident (crediting its heat + * back to the reservoir via stadium_evict()'s own credit path) and clears + * the map entry. No-op if word_id is not resident, out of range, or the + * word layer is not initialized. + * + * @param word_id The DictEntry's word_id, about to be recycled. + */ +void stadium_word_forget(uint32_t word_id); + +/* + * stadium_words_stats - Promotion/eviction counters (same shape as the old + * cache's HotwordsStats.promotions/.evictions, not that struct -- §25.5's + * acceptance for item 4.1). Promotion = a successful starter-grant + * admission. Eviction = this word's cell was reaped by another admission's + * eviction fallback (stadium_admit()'s density comparison), detected + * lazily via the self-healing stale check in stadium_word_dispatch(), or + * explicitly via stadium_word_forget(). + */ +void stadium_words_stats(uint64_t *promotions, uint64_t *evictions); + +/* + * stadium_words_print_boot_diagnostics - Console output satisfying item + * 4.1's "observable via a diagnostic word or boot console output" + * acceptance line. Prints promotions/evictions, then + * Σ(resident heat) + reservoir against Q48_ONE as a conservation check -- + * not required by the acceptance text, but the mechanism proves nothing if + * this silently doesn't hold. The heat sum is taken over ALL resident + * Stadium cells, not scoped by owner -- correct only because vm_id is the + * sole VM with any Stadium quota today (item 0.1's Hera-only pruning); the + * per-cell owner byte is private to stadium.c and has no public accessor. + * Revisit the scoping when item 4.2 restores Hermes. + * + * @param vm_id The VM whose reservoir to read (vm_uuid_hera() today). + */ +void stadium_words_print_boot_diagnostics(VMUuid vm_id); + +#endif /* __STARKERNEL__ */ + +#endif /* STARKERNEL_VM_STADIUM_WORDS_H */ \ No newline at end of file diff --git a/lfs/amd64/starforth b/lfs/amd64/starforth index d548de25c01fd001137e5763d86588a2ee734c65..18cdd78416e53ebe7e906a23fd20f111d80a7c3f 100755 GIT binary patch literal 1487016 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≧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

}T&tM8JC&SPl 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%0D+GU}U;Ru)a2d3=zl?Vm_`#tWe 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�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

+O#^!6{I#n}Q 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 bkuhffRd%H8US{H>T>b`cAbpp7CHVgUaw-^i literal 671136 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⏏U}!SSI?8##lS<5eF6GbS44L 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ð-gtI= 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ð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

  • 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 diff --git a/logs/20260805-130800/amd64/qemu-amd64-20260805-130800.log b/logs/20260805-130800/amd64/qemu-amd64-20260805-130800.log new file mode 100644 index 0000000..1cd5427 --- /dev/null +++ b/logs/20260805-130800/amd64/qemu-amd64-20260805-130800.log @@ -0,0 +1,10368 @@ +[=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 v1.5.4 +Architecture: amd64 +Build: Aug 5 2026 13:07:33 + +UEFI BootServices: EXITED + +=== StarKernel Boot Information === +Memory map entries: 113 +Total memory: 1023 MB +Usable memory: 967 MB +=================================== + +PMM initialized. +PMM statistics: + Total pages: 249097 + Free pages : 247574 + Used pages : 1523 + Total MB : 973 + Free MB : 967 + 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: initialized (xAPIC MMIO, TPR=0, SIVR=0x1FF, EOI-clear) +APIC: init done + +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=1931129525 Hz +Timer: init done + +Kernel heap initialized. +Heap statistics: + Total bytes: 536870872 + Free bytes: 536870872 + Used bytes: 0 + Peak bytes: 0 + +Heartbeat: init... +APIC Timer: calibrating... +APIC Timer: apic_hz=927953412, tick_hz=100, initial_count=9279534 +APIC Timer: configured (masked, ready to start) +Heartbeat: init done +Kernel initialization complete. +Boot successful! + +Stadium: 74227 cells (4639 KB) +VM: bootstrap parity... +VM arena allocated: 0xffff900000000000 + (5 MB) +[HADES][INFO ] [KRELTSC: 0] Registering FORTH-79 Standard word set... +[HADES][INFO ] [KRELTSC: 3711435] Registering FORTH-79 arithmetic words... +[HADES][INFO ] [KRELTSC: 21026649] FORTH-79 Standard word set registration complete +[Hera] POST: Running comprehensive test suite... +[Hera] [HADES][INFO ] [KRELTSC: 38839752] Starting comprehensive FORTH-79 modular test suite... +[Hera] [HADES][INFO ] [KRELTSC: 39587646] ============================================== +[Hera] [HADES][INFO ] [KRELTSC: 40378212] +[Hera] === Testing Module: Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 41330058] Running Stack Words Tests (Module 1: Foundation)... +[Hera] [HADES][TEST ] [KRELTSC: 42099624] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 42917742] Testing word: DUP +[Hera] [HADES][TEST ] [KRELTSC: 43407798] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 44265291] Running DUP.basic: 5 DUP . . CR +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 50983170] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51947616] Expected: Should print: 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 54951141] Running DUP.zero: 0 DUP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 55540149] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56161140] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 57633576] Running DUP.negative: -42 DUP . . CR +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 58360974] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59047065] Expected: Should print: -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 60656610] Running DUP.max_int: 2147483647 DUP . . CR +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 61343394] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61967997] Expected: Should duplicate max int +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 63920598] Running DUP.min_int: -2147483648 DUP . . CR +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 64614774] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65246811] Expected: Should duplicate min int +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 67252647] Running DUP.empty_stack: DUP +[Hera] [HADES][ERROR] [KRELTSC: 67691946] DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 68090421] Expected error occurred +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68783316] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 69517140] DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 70317303] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 70867839] Testing word: DROP +[Hera] [HADES][TEST ] [KRELTSC: 71225973] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 71596707] Running DROP.basic: 5 7 DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 72242562] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72873570] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 74259717] Running DROP.zero: 42 0 DROP . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 74800761] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75435759] Expected: Should drop zero, print 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 76888224] Running DROP.negative: 10 -5 DROP . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 77457702] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 78079134] Expected: Should drop negative, print 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 79587228] Running DROP.double_drop: 1 2 3 DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 80192763] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 80829252] Expected: Should print: 1 +[Hera] 1 +[Hera] [HADES][INFO ] [KRELTSC: 84614964] L8[TABLE]: Config 17 → 0 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] tick_number,elapsed_ns,tick_interval_ns,cache_hits_delta,bucket_hits_delta,word_executions_delta,hot_word_count,avg_word_heat_q48,window_width,actual_window_size,predicted_label_hits,jitter_bits,apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,hera_heat_q48,hermes_heat_q48,artemis_heat_q48 +[Hera] [HADES][DOE ] 1,10000,10000,0,0,183,4,45,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 90873363] Running DROP.triple_drop: 1 2 3 4 DROP DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 91529781] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 92169210] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 93655968] Running DROP.sequential: 5 DROP 6 DROP 7 . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 94273452] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 94893120] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 96347202] Running DROP.single_item: 99 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 97053999] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 97675368] Expected: Should empty stack, depth=0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 99138774] Running DROP.depth_change: DEPTH 1 2 DROP DEPTH SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 100082052] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 100736979] Expected: Should change depth by 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 102373362] Running DROP.preserve_depth: DEPTH 5 6 DROP DROP DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 103252002] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 103879755] Expected: Should preserve net depth +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 105708498] L8[TABLE]: Config 0 → 1 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 2,20000,10000,0,0,173,5,44,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 107103990] Running DROP.max_int: 2147483647 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 107737791] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 108373587] Expected: Should drop max int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 109831344] Running DROP.min_int: -2147483648 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 110452818] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 111130551] Expected: Should drop min int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 112681443] Running DROP.with_dup: 5 DUP DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 113263857] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 113891841] Expected: Should duplicate then drop +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 115354281] Running DROP.with_swap: 1 2 SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 115947930] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116576166] Expected: Should swap then drop +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 118148919] Running DROP.complex: 1 2 3 ROT DROP SWAP DROP . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 119021931] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 119676963] Expected: Should handle complex sequence +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 121327248] Running DROP.empty_stack: DROP +[Hera] [HADES][ERROR] [KRELTSC: 121788009] DROP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 122164770] Expected error occurred +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 122858547] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 123322122] DROP: 15 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 123817029] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 124379598] Testing word: SWAP +[Hera] [HADES][TEST ] [KRELTSC: 124722276] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 125100402] Running SWAP.basic: 5 7 SWAP . . CR +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 125683194] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 126308784] Expected: Should print: 7 5 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 127826307] Running SWAP.same_values: 42 42 SWAP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 128438877] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 129066672] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 130552254] L8[TABLE]: Config 1 → 2 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 3,30000,10000,0,0,184,6,60,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 131887980] Running SWAP.zero_nonzero: 0 99 SWAP . . CR +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 132495783] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 133118517] Expected: Should print: 99 0 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 134642676] Running SWAP.negative: -5 10 SWAP . . CR +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 135267657] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 135901626] Expected: Should print: 10 -5 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 137502624] Running SWAP.one_item: 42 SWAP +[Hera] [HADES][ERROR] [KRELTSC: 137972394] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 138455520] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 139138692] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 139596702] Running SWAP.empty_stack: SWAP +[Hera] [HADES][ERROR] [KRELTSC: 140028210] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 140485065] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 141195327] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 141652707] SWAP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 142130877] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 142700817] Testing word: OVER +[Hera] [HADES][TEST ] [KRELTSC: 143043516] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 143416224] Running OVER.basic: 5 7 OVER . . . CR +[Hera] 5 7 5 +[Hera] [HADES][TEST ] [KRELTSC: 144167079] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 144807915] 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: 146370525] Running OVER.zeros: 0 0 OVER . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 146969634] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 147593271] 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: 149151786] Running OVER.mixed: -1 42 OVER . . . CR +[Hera] -1 42 -1 +[Hera] [HADES][TEST ] [KRELTSC: 149761416] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 150383730] 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: 152038992] Running OVER.one_item: 42 OVER +[Hera] [HADES][ERROR] [KRELTSC: 152493201] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 152965827] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 153651498] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 154108689] Running OVER.empty_stack: OVER +[Hera] [HADES][ERROR] [KRELTSC: 154528773] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 154987623] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 155669577] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 156125823] OVER: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 156597105] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 157162110] Testing word: ROT +[Hera] [HADES][TEST ] [KRELTSC: 157498929] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 157870083] Running ROT.basic: 1 2 3 ROT . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 158467197] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 159106710] 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: 160731102] Running ROT.zeros: 0 0 0 ROT . . . CR +[Hera] [HADES][INFO ] [KRELTSC: 161373009] L8[TABLE]: Config 2 → 3 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 4,40000,10000,0,0,174,8,71,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 162719319] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 163365195] 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: 164953320] Running ROT.mixed: -1 0 1 ROT . . . CR +[Hera] -1 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 165600519] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 166223379] 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: 167860917] Running ROT.two_items: 1 2 ROT +[Hera] [HADES][ERROR] [KRELTSC: 168321573] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 168868623] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 169567860] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 170023875] Running ROT.one_item: 42 ROT +[Hera] [HADES][ERROR] [KRELTSC: 170439087] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 170878701] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 171555048] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 172025322] Running ROT.empty_stack: ROT +[Hera] [HADES][ERROR] [KRELTSC: 172432743] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 172872294] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 173557692] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 174025278] ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 174492003] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 175038822] Testing word: DEPTH +[Hera] [HADES][TEST ] [KRELTSC: 175392084] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 175770378] Running DEPTH.empty: DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 176285172] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 176916033] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 178260159] Running DEPTH.one_item: 42 DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 178808028] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 179435550] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 180803532] Running DEPTH.multiple: 1 2 3 DEPTH . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 181370427] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 182007609] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 183415638] DEPTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 183891582] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 184451841] Testing word: PICK +[Hera] [HADES][TEST ] [KRELTSC: 184819572] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 185188878] Running PICK.pick_0: 1 2 3 0 PICK . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 185934819] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 186577587] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 188036835] Running PICK.pick_1: 1 2 3 1 PICK . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 188614209] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 189240618] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][INFO ] [KRELTSC: 190542954] L8[TABLE]: Config 3 → 4 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 5,50000,10000,0,0,150,9,78,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 191889705] Running PICK.pick_2: 1 2 3 2 PICK . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 192460296] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 193161402] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 194641944] PICK: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 195142227] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 195692007] Testing word: ROLL +[Hera] [HADES][TEST ] [KRELTSC: 196033299] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 196412937] Running ROLL.roll_1: 1 2 3 1 ROLL . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 197575014] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 198280971] 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: 200279793] Running ROLL.roll_2: 1 2 3 2 ROLL . . . CR +[Hera] 2 3 1 +[Hera] [HADES][TEST ] [KRELTSC: 201063387] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 201872727] 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: 203836584] ROLL: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 204321705] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 204878289] Testing word: ?DUP +[Hera] [HADES][TEST ] [KRELTSC: 205250346] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 205630908] Running ?DUP.nonzero: 42 ?DUP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 206485797] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 207184677] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 208898823] Running ?DUP.negative: -5 ?DUP . . CR +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 209545434] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 210179046] Expected: Should print: -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 211791804] Running ?DUP.zero: 0 ?DUP DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 212434782] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 213065265] Expected: Should not dup: depth 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 214552296] Running ?DUP.empty_stack: ?DUP +[Hera] [HADES][ERROR] [KRELTSC: 215000520] ?DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 215407164] Expected error occurred +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 216113940] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 216577767] ?DUP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 217054677] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 217608783] Testing word: -ROT +[Hera] [HADES][TEST ] [KRELTSC: 217966287] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 218358000] Running -ROT.basic: 1 2 3 -ROT . . . CR +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 219148377] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 219801561] Expected: Should print: 1 3 2 +[Hera] [HADES][INFO ] [KRELTSC: 220304574] L8[TABLE]: Config 4 → 5 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 6,60000,10000,0,0,159,11,73,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 222641517] Running -ROT.zeros: 0 0 0 -ROT . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 223242201] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 223875498] 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: 225461271] Running -ROT.roundtrip: 1 2 3 -ROT ROT . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 226170693] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 226909452] 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: 228618075] Running -ROT.two_items: 1 2 -ROT +[Hera] [HADES][ERROR] [KRELTSC: 229092906] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 229555578] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 230243937] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 230722380] Running -ROT.empty_stack: -ROT +[Hera] [HADES][ERROR] [KRELTSC: 231143451] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 231588210] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 232278165] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 232749636] -ROT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 233298387] === Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 233958207] +[Hera] === Testing Module: Return Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 234537009] Running Return Stack Words Tests (Module 2)... +[Hera] [HADES][TEST ] [KRELTSC: 235078473] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 235690035] Testing word: >R +[Hera] [HADES][TEST ] [KRELTSC: 236026014] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 236410629] Running >R.basic: 42 >R R@ . R> . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 237450570] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 238074375] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 239783124] Running >R.zero: 0 >R R@ . R> . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 240358671] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 240992304] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 242601114] Running >R.negative: -123 >R R@ . R> . CR +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 243256629] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 243877263] Expected: Should print: -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 [HADES][INFO ] [KRELTSC: 245160720] L8[TABLE]: Config 5 → 6 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 7,70000,10000,0,0,188,15,71,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 246971550] Running >R.multiple: 1 2 >R >R R@ . R> . R@ . R> . CR +[Hera] 1 1 2 2 +[Hera] [HADES][TEST ] [KRELTSC: 247732737] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 248361477] 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: 250405449] Running >R.empty_stack: >R +[Hera] [HADES][ERROR] [KRELTSC: 250843908] >R: DSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 251196477] Expected error occurred +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 251885697] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 252344379] >R: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 252840084] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 253447362] Testing word: R> +[Hera] [HADES][TEST ] [KRELTSC: 253782648] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 254156763] Running R>.basic: 42 >R R> . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 254712948] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 255330201] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 256840416] Running R>.lifo_order: 1 2 >R >R R> . R> . CR +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 257487132] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 258119190] Expected: Should print: 2 1 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 259814709] Running R>.empty_rstack: R> +[Hera] [HADES][ERROR] [KRELTSC: 260255142] R>: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 260607228] Expected error occurred +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 261282441] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 261794169] R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 262257849] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 262842279] Testing word: R@ +[Hera] [HADES][TEST ] [KRELTSC: 263176326] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 263549328] Running R@.basic: 42 >R R@ . R> DROP CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 264189345] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 264807060] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 266411439] Running R@.non_destructive: 99 >R R@ R@ = . R> DROP CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 267166494] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 267796662] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 268918188] L8[TABLE]: Config 6 → 7 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 8,80000,10000,0,0,214,16,83,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 270716586] Running R@.empty_rstack: R@ +[Hera] [HADES][ERROR] [KRELTSC: 271158594] R@: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 271510806] Expected error occurred +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 272210190] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 272701065] R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 273179928] === Return Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 273813057] +[Hera] === Testing Module: Memory Words === +[Hera] [HADES][INFO ] [KRELTSC: 274331043] Running Memory Words Tests (Module 3)... +[Hera] [HADES][TEST ] [KRELTSC: 274843548] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 275428356] Testing word: ! +[Hera] [HADES][TEST ] [KRELTSC: 275760240] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 276137148] Running !.basic: 42 HERE ! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 277078473] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 277695768] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 279254451] Running !.zero: 0 HERE ! HERE @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 279820401] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 280442148] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 281947092] Running !.negative: -999 HERE ! HERE @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 282567327] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 283194240] Expected: Should print: -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 284887743] Running !.overwrite: 111 HERE ! 222 HERE ! HERE @ . CR +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 285576648] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 286188042] Expected: Should print: 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 287878857] Running !.max_int: 2147483647 HERE ! HERE @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 288548631] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 289185414] Expected: Should store max int +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 290968335] Running !.min_int: -2147483648 HERE ! HERE @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 291658815] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 292269222] Expected: Should store min int +[Hera] [HADES][INFO ] [KRELTSC: 292748463] L8[TABLE]: Config 7 → 8 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 9,90000,10000,0,0,216,19,82,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 295273440] Running !.empty_stack: ! +[Hera] [HADES][TEST ] [KRELTSC: 295698375] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 296370564] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 296838612] Running !.one_item: 42 ! +[Hera] [HADES][TEST ] [KRELTSC: 297235050] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 297925404] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 298393389] !: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 298915806] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 299521257] Testing word: @ +[Hera] [HADES][TEST ] [KRELTSC: 299855136] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 300226626] Running @.after_store: 123 HERE ! HERE @ . CR +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 301000224] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 301716681] Expected: Should print: 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 304030146] Running @.multiple_reads: 456 HERE ! HERE @ HERE @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 304996671] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 305816805] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 308320425] Running @.empty_stack: @ +[Hera] [HADES][TEST ] [KRELTSC: 308853300] Expected error occurred +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 309536787] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 310041081] @: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 310506189] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 311067687] Testing word: C! +[Hera] [HADES][TEST ] [KRELTSC: 311408916] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 311807139] Running C!.basic: 65 HERE C! HERE C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 312988431] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 313609254] Expected: Should print: 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 315220857] Running C!.zero: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 315814128] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 316458345] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 318006969] Running C!.high_byte: 255 HERE C! HERE C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 318660573] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 319280220] Expected: Should print: 255 +[Hera] 255 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 320543370] L8[TABLE]: Config 8 → 9 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 10,100000,10000,0,0,222,21,84,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 322185129] Running C!.truncation: 256 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 322831215] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 323450778] Expected: Should print: 0 (truncated) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 325077165] C!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 325543995] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 326119479] Testing word: C@ +[Hera] [HADES][TEST ] [KRELTSC: 326453106] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 326897613] Running C@.after_cstore: 97 HERE C! HERE C@ . CR +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 327535572] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 328152027] Expected: Should print: 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 329809935] Running C@.zero_byte: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 330423156] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 331074345] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 332641638] C@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 333128040] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 333683574] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 334012077] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 334387830] Running ,.basic: 42 , HERE 8 - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 335276697] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 335898507] Expected: Should compile 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 337778028] Running ,.negative: -999 , HERE 8 - @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 338410296] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 339024903] Expected: Should compile -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 340691085] ,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 341170494] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 342032565] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 342404013] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 342851250] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 344186304] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 344925441] Expected: Should compile byte 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][INFO ] [KRELTSC: 346288467] L8[TABLE]: Config 9 → 10 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 11,110000,10000,0,0,207,23,86,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 348976614] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 349749183] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 350494284] Expected: Should compile byte 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 352896033] C,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 353428887] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 354082554] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 354478194] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 354855480] Running 2,.roundtrip: 12345 67890 2, HERE 16 - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 356156871] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 356782314] Expected: Should print: 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 358918833] Running 2,.save-and-verify: 12345 67890 2, HERE 16 - 2@ 67890 = SWAP 12345 = AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 360052014] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 360704106] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 362558091] 2,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 363026727] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 363585999] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 363929685] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 364303674] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 364883526] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 365509494] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 366946419] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 SWAP / +[Hera] [HADES][INFO ] [KRELTSC: 367645740] L8[TABLE]: Config 10 → 11 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 12,120000,10000,0,0,189,26,83,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 369218451] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 369855570] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes on 64-bit) +[Hera] [HADES][TEST ] [KRELTSC: 371508123] HERE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 371994693] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 372552936] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 372939483] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 373313325] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 374101308] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 374737923] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 376325649] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 376979463] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 377614482] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 379155882] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 379838004] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 380472036] Expected: Should print: -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 382227951] ALLOT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 382858077] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 383567436] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 383918766] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 384292440] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 385046046] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 385746333] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 387233763] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 387884364] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 388504935] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 [HADES][INFO ] [KRELTSC: 389268264] L8[TABLE]: Config 11 → 12 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 13,130000,10000,0,0,221,28,80,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 391216707] PAD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 391717746] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 392272818] Testing word: +! +[Hera] [HADES][TEST ] [KRELTSC: 392603484] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 392979216] Running +!.basic: 10 HERE ! 5 HERE +! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 393952083] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 394573494] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 396243981] Running +!.by_zero: 42 HERE ! 0 HERE +! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 396909639] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 397527606] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 399285852] Running +!.negative: 10 HERE ! -3 HERE +! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 399997290] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 400633485] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 402291897] Running +!.accumulate: 0 HERE ! 1 HERE +! 2 HERE +! 3 HERE +! HERE @ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 403096764] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 403711308] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][INFO ] [KRELTSC: 404869773] L8[TABLE]: Config 12 → 13 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 14,140000,10000,0,0,204,29,83,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 406849107] Running +!.empty_stack: +! +[Hera] [HADES][TEST ] [KRELTSC: 407282778] Expected error occurred +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 407956290] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 408434817] +!: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 408899127] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 409455879] Testing word: -! +[Hera] [HADES][TEST ] [KRELTSC: 409788750] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 410160912] Running -!.basic: 10 HERE ! 3 HERE -! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 411000786] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 411622008] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 413280315] Running -!.by_zero: 42 HERE ! 0 HERE -! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 413969955] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 414589224] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 416354001] Running -!.negative: 10 HERE ! -5 HERE -! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 417043368] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 417660411] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 419344905] Running -!.empty_stack: -! +[Hera] [HADES][TEST ] [KRELTSC: 419771541] Expected error occurred +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 420447636] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 420906465] -!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 421408827] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 422004324] Testing word: 2! +[Hera] [HADES][TEST ] [KRELTSC: 422336376] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 422707152] Running 2!.basic: 11 22 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 423981243] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 424602927] Expected: Should print: 22 11 +[Hera] 11 22 +[Hera] 11 22 [HADES][INFO ] [KRELTSC: 425654628] L8[TABLE]: Config 13 → 14 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 15,150000,10000,0,0,203,30,82,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 11 22 +[Hera] 11 22 +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 427888902] Running 2!.zeros: 0 0 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 428599164] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 429221541] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 431045118] Running 2!.negative: -1 -2 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 431819955] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 432438384] Expected: Should print: -2 -1 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 434312613] Running 2!.empty_stack: 2! +[Hera] [HADES][TEST ] [KRELTSC: 434792694] Expected error occurred +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 435468789] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 435966300] 2!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 436450245] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 437083857] Testing word: FILL +[Hera] [HADES][TEST ] [KRELTSC: 437433738] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 437838807] Running FILL.basic: HERE 8 65 FILL HERE C@ . HERE 1+ C@ . CR +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 439035156] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 439666395] Expected: Should print: 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 [HADES][INFO ] [KRELTSC: 441266175] L8[TABLE]: Config 14 → 15 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 16,160000,10000,0,0,201,32,83,567,567,0,0,0,65536,0,0,65536,0,0 + +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 442902138] Running FILL.zero_n: HERE 0 88 FILL +[Hera] [HADES][TEST ] [KRELTSC: 443373756] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 444002097] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 445065789] Running FILL.zero_byte: HERE 4 0 FILL HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 445707822] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 446346684] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 447894321] Running FILL.empty_stack: FILL +[Hera] [HADES][TEST ] [KRELTSC: 448366695] Expected error occurred +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 449054739] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 449517537] FILL: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 449991864] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 450560166] Testing word: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 450901815] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 451274187] Running MOVE.basic: HERE 65 OVER C! HERE 1+ 66 OVER C! HERE HERE 16 + 2 MOVE HERE 16 + C@ . HERE 17 + C@ . CR +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 452793432] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 453423558] Expected: Should print: 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 455868756] Running MOVE.zero_n: HERE HERE 8 + 0 MOVE +[Hera] [HADES][TEST ] [KRELTSC: 456409947] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 457256793] Expected: Should do nothing +[Hera] [HADES][INFO ] [KRELTSC: 457880283] L8[TABLE]: Config 15 → 16 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 17,170000,10000,0,0,190,34,86,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 459828222] Running MOVE.empty_stack: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 460278861] Expected error occurred +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 461031144] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 461492241] MOVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 461962872] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 462514479] Testing word: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 462860412] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 463253259] Running ERASE.basic: HERE 4 65 FILL HERE 4 ERASE HERE C@ . HERE 3 + C@ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 464274405] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 464906526] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 466900056] Running ERASE.zero_n: HERE 0 ERASE +[Hera] [HADES][TEST ] [KRELTSC: 467408550] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 468038718] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 469081767] Running ERASE.empty_stack: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 469569660] Expected error occurred +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 470281455] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 470741565] ERASE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 471241092] === Memory Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 471866829] +[Hera] === Testing Module: Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 472422972] Running Arithmetic Words Tests (Module 5)... +[Hera] [HADES][TEST ] [KRELTSC: 472961727] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 473586204] Testing word: + +[Hera] [HADES][TEST ] [KRELTSC: 473915505] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 474287730] Running +.basic: 5 7 + . CR +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 474799353] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 475411398] Expected: Should print: 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 476818419] Running +.zero_add: 42 0 + . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 477338589] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 477991017] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 479381889] Running +.negative: -5 3 + . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 479934966] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 480554088] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 481962663] Running +.both_negative: -5 -3 + . CR +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 482518848] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 483137928] Expected: Should print: -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] [HADES][INFO ] [KRELTSC: 484512336] L8[TABLE]: Config 16 → 18 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 18,180000,10000,0,0,170,35,73,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 485895333] Running +.overflow: 2147483647 1 + . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 486531108] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 487144854] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 488797092] Running +.underflow: -2147483648 -1 + . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 489414009] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 490026432] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 491659014] Running +.empty_stack: + +[Hera] [HADES][ERROR] [KRELTSC: 492076704] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 492470307] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 493138527] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 493593072] Running +.one_item: 42 + +[Hera] [HADES][ERROR] [KRELTSC: 493987620] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 494331873] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 495049317] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 495504576] +: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 496006392] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 496603968] Testing word: - +[Hera] [HADES][TEST ] [KRELTSC: 496929342] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 497298984] Running -.basic: 10 3 - . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 497863590] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 498476685] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 499852227] Running -.zero_sub: 42 0 - . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 500373468] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 501013800] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 502407633] Running -.from_zero: 0 5 - . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 502954767] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 503567946] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 504980763] Running -.negative: 5 -3 - . CR +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 505505742] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 506119278] Expected: Should print: 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 507501351] Running -.same_values: 42 42 - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 508034499] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 508646481] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 510021162] Running -.overflow: -2147483648 1 - . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 510627873] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 511264866] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 512884260] Running -.underflow: 2147483647 -1 - . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 513523605] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 514301466] Expected: Should overflow +[Hera] 2147483648 +[Hera] [HADES][INFO ] [KRELTSC: 515027331] L8[TABLE]: Config 18 → 19 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 19,190000,10000,0,0,154,28,44,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 517177080] Running -.empty_stack: - +[Hera] [HADES][ERROR] [KRELTSC: 517628790] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 517997256] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 518666862] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 519123087] Running -.one_item: 42 - +[Hera] [HADES][ERROR] [KRELTSC: 519530298] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 519883308] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 520568202] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 521026779] -: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 521485167] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 522095070] Testing word: * +[Hera] [HADES][TEST ] [KRELTSC: 522420465] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 522789477] Running *.basic: 6 7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 523449990] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 524090889] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 525476616] Running *.by_zero: 42 0 * . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 526013376] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 526628445] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 527995608] Running *.by_one: 42 1 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 528515568] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 529125723] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 530544609] Running *.by_negative: 6 -7 * . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 531083784] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 531693225] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 533113812] Running *.negative_negative: -6 -7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 533682429] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 534310854] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 535705191] Running *.large_numbers: 32767 2 * . CR +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 536293023] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 536902632] Expected: Should print: 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 538387584] Running *.overflow: 65536 65536 * . CR +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 538990263] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 539599032] Expected: May overflow +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 541242408] Running *.empty_stack: * +[Hera] [HADES][ERROR] [KRELTSC: 541676016] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 542037888] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 542734773] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 543192027] Running *.one_item: 42 * +[Hera] [HADES][ERROR] [KRELTSC: 543586344] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 543932046] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 544600791] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 545087298] *: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 545551104] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 546149772] Testing word: / +[Hera] [HADES][TEST ] [KRELTSC: 546478485] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 546864486] Running /.basic: 15 3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 547383543] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 547994979] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][INFO ] [KRELTSC: 549073203] L8[TABLE]: Config 19 → 20 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 20,200000,10000,0,0,154,28,41,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 550652382] Running /.by_one: 42 1 / . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 551178852] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 551797890] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 553199388] Running /.negative_dividend: -15 3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 553777686] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 554387421] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 555795429] Running /.negative_divisor: 15 -3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 556359258] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 556970106] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 558408060] Running /.both_negative: -15 -3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 558957903] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 559589373] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 560950446] Running /.truncation: 7 3 / . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 561489138] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 562111011] Expected: Should print: 2 (truncated) +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 563535105] Running /.by_zero: 42 0 / +[Hera] [HADES][ERROR] [KRELTSC: 564001011] /: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 564369813] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 565041582] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 565505493] Running /.empty_stack: / +[Hera] [HADES][ERROR] [KRELTSC: 565928979] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 566296290] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 566966610] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 567426153] Running /.one_item: 42 / +[Hera] [HADES][ERROR] [KRELTSC: 567833238] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 568186227] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 568854909] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 569312289] /: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 569773155] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 570361743] Testing word: MOD +[Hera] [HADES][TEST ] [KRELTSC: 570724161] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 571099578] Running MOD.basic: 17 5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 572168352] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 572793186] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 574278096] Running MOD.exact_division: 15 3 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 574872879] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 575494752] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 576959166] Running MOD.by_one: 42 1 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 577504599] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 578126619] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 579610773] Running MOD.negative_dividend: -17 5 MOD . CR +[Hera] [HADES][INFO ] [KRELTSC: 580166538] L8[TABLE]: Config 20 → 21 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 21,210000,10000,0,0,153,32,39,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 581472822] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 582093330] Expected: Should handle negative +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 583630173] Running MOD.negative_divisor: 17 -5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 584230794] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 584870055] Expected: Should handle negative +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 586374012] Running MOD.small_by_large: 3 7 MOD . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 586973478] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 587598417] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 589067997] Running MOD.by_zero: 42 0 MOD +[Hera] [HADES][ERROR] [KRELTSC: 589542660] MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 589921941] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 590598015] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 591071187] Running MOD.empty_stack: MOD +[Hera] [HADES][ERROR] [KRELTSC: 591524556] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 591894408] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 592575522] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 593047182] Running MOD.one_item: 42 MOD +[Hera] [HADES][ERROR] [KRELTSC: 593488623] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 593846211] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 594522915] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 595023765] MOD: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 595494165] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 596069061] Testing word: /MOD +[Hera] [HADES][TEST ] [KRELTSC: 596424759] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 596796501] Running /MOD.basic: 17 5 /MOD . . CR +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 597588159] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 598219902] Expected: Should print: 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 599780496] Running /MOD.exact: 15 3 /MOD . . CR +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 600361503] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 600984825] Expected: Should print: 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 602533638] Running /MOD.negative: -17 5 /MOD . . CR +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 603144276] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 603795213] Expected: Should handle negative dividend +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 605466015] Running /MOD.by_zero: 42 0 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 605944647] /MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 606336213] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 607023018] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 607485921] Running /MOD.empty_stack: /MOD +[Hera] [HADES][ERROR] [KRELTSC: 607955586] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 608331192] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 609023373] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 609481047] Running /MOD.one_item: 42 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 609938364] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 610307628] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 610988154] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 611444757] /MOD: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 611926371] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 612507231] Testing word: ABS +[Hera] [HADES][TEST ] [KRELTSC: 612844533] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 613215435] Running ABS.positive: 42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 613880001] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 614510967] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 615887433] Running ABS.negative: -42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 616446852] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 617068872] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 618403779] L8[TABLE]: Config 21 → 22 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 22,220000,10000,0,0,167,35,42,582,582,0,0,0,65536,0,0,65536,0,0 + +[Hera] [HADES][TEST ] [KRELTSC: 619667580] Running ABS.zero: 0 ABS . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 620191047] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 620823189] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 622207719] Running ABS.min_int: -2147483648 ABS . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 622833099] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 623455476] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 625097088] Running ABS.empty_stack: ABS +[Hera] [HADES][ERROR] [KRELTSC: 625544304] ABS: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 625918461] Expected error occurred +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 626622927] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 627091752] ABS: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 627560661] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 628135536] Testing word: NEGATE +[Hera] [HADES][TEST ] [KRELTSC: 628499382] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 628873224] Running NEGATE.positive: 42 NEGATE . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 629688318] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 630328461] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 631758561] Running NEGATE.negative: -42 NEGATE . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 632323314] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 632973600] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 634365501] Running NEGATE.zero: 0 NEGATE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 634911228] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 635548473] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 636897576] Running NEGATE.min_int: -2147483648 NEGATE . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 637550046] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 638185317] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 639821889] Running NEGATE.empty_stack: NEGATE +[Hera] [HADES][ERROR] [KRELTSC: 640283406] NEGATE: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 640666824] Expected error occurred +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 641373810] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 641840052] NEGATE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 642321645] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 642893916] Testing word: MIN +[Hera] [HADES][TEST ] [KRELTSC: 643247892] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 643621314] Running MIN.basic: 5 3 MIN . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 644282205] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 644906199] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 646299612] Running MIN.equal: 42 42 MIN . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 646844352] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 647482584] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 648878601] Running MIN.negative: -5 -3 MIN . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 649439154] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 650094480] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 651505344] Running MIN.mixed: -1 1 MIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 652092210] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 652721622] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 653699655] L8[TABLE]: Config 22 → 23 regime=2 score=52428 L1=0 L2=0 L3=1 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 23,230000,10000,0,0,176,37,41,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 655733400] Running MIN.one_item: 42 MIN +[Hera] [HADES][ERROR] [KRELTSC: 656226585] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 656602191] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 657284649] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 657744213] Running MIN.empty_stack: MIN +[Hera] [HADES][ERROR] [KRELTSC: 658174545] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 658529928] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 659208081] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 659665839] MIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 660152157] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 660732366] Testing word: MAX +[Hera] [HADES][TEST ] [KRELTSC: 661069101] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 661442187] Running MAX.basic: 5 3 MAX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 662145729] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 662776926] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 664389516] Running MAX.equal: 42 42 MAX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 664937280] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 665560644] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 666981735] Running MAX.negative: -5 -3 MAX . CR +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 667529751] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 668149062] Expected: Should print: -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 669586281] Running MAX.mixed: -1 1 MAX . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 670108488] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 670747476] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 672121065] Running MAX.one_item: 42 MAX +[Hera] [HADES][ERROR] [KRELTSC: 672596169] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 672987000] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 673677018] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 674136498] Running MAX.empty_stack: MAX +[Hera] [HADES][ERROR] [KRELTSC: 674547762] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 674913141] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 675589026] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 676043025] MAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 676511241] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 677111442] Testing word: 1+ +[Hera] [HADES][TEST ] [KRELTSC: 677450025] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 677818323] Running 1+.basic: 5 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 678317871] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 678951168] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 680288742] Running 1+.zero: 0 1+ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 680775816] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 681404808] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 682743705] Running 1+.negative: -1 1+ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 683269104] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 683892657] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 685246191] Running 1+.chain: 3 1+ 1+ 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 685780179] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 686397096] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 687925308] Running 1+.overflow: 2147483647 1+ . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 688523871] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 689140431] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 [HADES][INFO ] [KRELTSC: 689985534] L8[TABLE]: Config 23 → 24 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 24,240000,10000,0,0,175,37,39,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 691991979] Running 1+.empty_stack: 1+ +[Hera] [HADES][ERROR] [KRELTSC: 692422962] 1+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 692801634] Expected error occurred +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 693496776] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 693952518] 1+: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 694422288] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 694993152] Testing word: 1- +[Hera] [HADES][TEST ] [KRELTSC: 695324490] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 695708202] Running 1-.basic: 5 1- . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 696354813] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 696983868] Expected: Should print: 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 698340132] Running 1-.to_zero: 1 1- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 698839911] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 699455841] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 700806729] Running 1-.to_negative: 0 1- . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 701333325] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 701959776] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 703319148] Running 1-.chain: 6 1- 1- 1- . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 703852212] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 704481960] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 705874323] Running 1-.underflow: -2147483648 1- . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 706498422] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 707121051] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 708729147] Running 1-.empty_stack: 1- +[Hera] [HADES][ERROR] [KRELTSC: 709149357] 1-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 709523304] Expected error occurred +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 710201856] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 710670639] 1-: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 711139737] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 711712134] Testing word: 2+ +[Hera] [HADES][TEST ] [KRELTSC: 712045341] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 712427373] Running 2+.basic: 5 2+ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 713037738] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 713654655] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 715019403] Running 2+.zero: 0 2+ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 715511601] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 716128161] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 717496395] Running 2+.negative: -3 2+ . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 718039140] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 718670421] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 720051780] Running 2+.empty_stack: 2+ +[Hera] [HADES][ERROR] [KRELTSC: 720478353] 2+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 720870780] Expected error occurred +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 721553910] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 722011983] 2+: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 722476146] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 723073386] Testing word: 2- +[Hera] [HADES][TEST ] [KRELTSC: 723407034] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 723785580] Running 2-.basic: 7 2- . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 724392585] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 725024559] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 726426519] Running 2-.zero: 2 2- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 726924282] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 727560162] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 728316246] L8[TABLE]: Config 24 → 25 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 25,250000,10000,0,0,196,38,37,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 730233252] Running 2-.negative: 0 2- . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 730751721] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 731388000] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 732764319] Running 2-.empty_stack: 2- +[Hera] [HADES][ERROR] [KRELTSC: 733203996] 2-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 733586091] Expected error occurred +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 734272455] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 734733804] 2-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 735201516] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 735789726] Testing word: 2* +[Hera] [HADES][TEST ] [KRELTSC: 736128981] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 736507758] Running 2*.basic: 5 2* . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 737125368] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 737762424] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 739140276] Running 2*.zero: 0 2* . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 739645200] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 740266002] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 741616554] Running 2*.negative: -3 2* . CR +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 742155141] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 742774011] Expected: Should print: -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 744166311] Running 2*.one: 1 2* . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 744753282] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 745370283] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 746738454] Running 2*.large: 1073741823 2* . CR +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 747325488] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 747954963] Expected: Should print: 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 749588427] Running 2*.empty_stack: 2* +[Hera] [HADES][ERROR] [KRELTSC: 750015462] 2*: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 750395772] Expected error occurred +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 751083522] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 751542456] 2*: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 752009160] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 752642877] Testing word: 2/ +[Hera] [HADES][TEST ] [KRELTSC: 752982678] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 753351501] Running 2/.basic: 10 2/ . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 754090932] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 754740063] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 756158802] Running 2/.odd: 7 2/ . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 756668283] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 757289127] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 758655786] Running 2/.zero: 0 2/ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 759151092] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 759770634] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 761156676] Running 2/.negative_even: -10 2/ . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 761740539] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 762357372] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 763760991] Running 2/.one: 1 2/ . CR +[Hera] [HADES][INFO ] [KRELTSC: 764255667] L8[TABLE]: Config 25 → 26 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 26,260000,10000,0,0,192,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 765566739] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 766188717] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 767553549] Running 2/.empty_stack: 2/ +[Hera] [HADES][ERROR] [KRELTSC: 768014331] 2/: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 768385632] Expected error occurred +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 769098372] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 769557495] 2/: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 770065317] === Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 770690214] +[Hera] === Testing Module: Logical Words === +[Hera] [HADES][INFO ] [KRELTSC: 771222123] Running Logical Words Tests (Module 8)... +[Hera] [HADES][TEST ] [KRELTSC: 771740508] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 772336110] Testing word: AND +[Hera] [HADES][TEST ] [KRELTSC: 772678956] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 773055360] Running AND.both_true: -1 -1 AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 773674335] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 774368616] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 775872048] Running AND.first_false: 0 -1 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 776482581] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 777166488] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 778622796] Running AND.second_false: -1 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 779228940] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 779933427] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 781399962] Running AND.both_false: 0 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 782008332] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 782692050] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 784132314] Running AND.bitwise: 85 51 AND . CR +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 784731675] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 785417346] Expected: Should print: 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 786886359] Running AND.empty_stack: AND +[Hera] [HADES][ERROR] [KRELTSC: 787371774] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 787799607] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 788550336] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 789054966] Running AND.one_item: 42 AND +[Hera] [HADES][ERROR] [KRELTSC: 789512892] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 789914055] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 790662663] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 791170233] AND: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 791719635] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 792354738] Testing word: OR +[Hera] [HADES][TEST ] [KRELTSC: 792724002] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 793141713] Running OR.both_true: -1 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 793875705] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 794571309] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 796054413] Running OR.first_false: 0 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 796668243] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 797354523] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 798841365] Running OR.second_false: -1 0 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 799452822] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 800132508] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 801182697] L8[TABLE]: Config 26 → 27 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 27,270000,10000,0,0,158,40,38,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 802986030] Running OR.both_false: 0 0 OR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 803516511] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 804132168] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 805496244] Running OR.bitwise: 85 51 OR . CR +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 806032290] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 806658405] Expected: Should print: 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 808066455] Running OR.empty_stack: OR +[Hera] [HADES][ERROR] [KRELTSC: 808491915] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 808874262] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 809547522] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 810010635] Running OR.one_item: 42 OR +[Hera] [HADES][ERROR] [KRELTSC: 810415242] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 810766236] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 811455309] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 811913865] OR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 812378532] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 812948892] Testing word: XOR +[Hera] [HADES][TEST ] [KRELTSC: 813288399] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 813662241] Running XOR.both_true: -1 -1 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 814354947] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 814979193] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 816371052] Running XOR.first_false: 0 -1 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 816927342] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 817568010] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 818970285] Running XOR.second_false: -1 0 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 819547302] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 820168923] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 821588208] Running XOR.both_false: 0 0 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 822129630] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 822758034] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 824112597] Running XOR.bitwise: 85 51 XOR . CR +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 824664498] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 825286098] Expected: Should print: 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 826703346] Running XOR.empty_stack: XOR +[Hera] [HADES][ERROR] [KRELTSC: 827146677] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 827536206] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 828360456] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 828819348] Running XOR.one_item: 42 XOR +[Hera] [HADES][ERROR] [KRELTSC: 829251381] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 829605399] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 830305497] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 830773965] XOR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 831274311] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 831843096] Testing word: NOT +[Hera] [HADES][TEST ] [KRELTSC: 832179243] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 832548318] Running NOT.true: -1 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 833265258] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 833901978] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 835274748] Running NOT.false: 0 NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 835824654] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 836459505] Expected: Should print: -1 +[Hera] [HADES][INFO ] [KRELTSC: 836974908] L8[TABLE]: Config 27 → 28 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 28,280000,10000,0,0,158,40,35,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 839144397] Running NOT.positive: 42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 839670363] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 840307041] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 841643145] Running NOT.negative: -42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 842172387] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 842825760] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 844184922] Running NOT.empty_stack: NOT +[Hera] [HADES][ERROR] [KRELTSC: 844645053] NOT: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 845016438] Expected error occurred +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 845712105] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 846167511] NOT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 846649167] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 847208334] Testing word: = +[Hera] [HADES][TEST ] [KRELTSC: 847542822] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 847915299] Running =.equal: 42 42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 848437023] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 849060051] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 850445295] Running =.not_equal: 42 43 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 850984470] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 851622450] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 852978105] Running =.zero_equal: 0 0 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 853503000] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 854122395] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 855509319] Running =.negative_equal: -42 -42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 856085391] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 856694874] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 858112794] Running =.negative_positive: -42 42 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 858680697] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 859302927] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 860841807] Running =.empty_stack: = +[Hera] [HADES][ERROR] [KRELTSC: 861290220] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 861653625] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 862327977] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 862787226] Running =.one_item: 42 = +[Hera] [HADES][ERROR] [KRELTSC: 863183160] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 863622879] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 864296811] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 864752112] =: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 865211004] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 865788966] Testing word: <> +[Hera] [HADES][TEST ] [KRELTSC: 866121501] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 866500614] Running <>.not_equal: 42 43 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 867240507] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 867871725] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 869259993] Running <>.equal: 42 42 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 869844948] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 870466506] Expected: Should print: 0 +[Hera] [HADES][INFO ] [KRELTSC: 870952677] L8[TABLE]: Config 28 → 29 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 29,290000,10000,0,0,164,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 873103749] Running <>.zero_equal: 0 0 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 873633033] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 874266225] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 875610183] Running <>.negative: -42 42 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 876166578] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 876786162] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 878211012] Running <>.empty_stack: <> +[Hera] [HADES][ERROR] [KRELTSC: 878635842] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 879011532] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 879686346] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 880158993] Running <>.one_item: 42 <> +[Hera] [HADES][ERROR] [KRELTSC: 880561668] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 880910499] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 881583066] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 882039753] <>: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 882533358] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 883092861] Testing word: < +[Hera] [HADES][TEST ] [KRELTSC: 883427958] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 883797159] Running <.less_than: 5 7 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 884520672] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 885138996] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 886559499] Running <.greater_than: 7 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 887141346] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 887778570] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 889157703] Running <.equal: 5 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 889662753] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 890278179] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 891632658] Running <.negative_positive: -5 5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 892197999] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 892824072] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 894221118] Running <.negative_negative: -7 -5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 894823881] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 895443696] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 896856555] Running <.empty_stack: < +[Hera] [HADES][ERROR] [KRELTSC: 897294531] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 897657579] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 898329726] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 898788240] Running <.one_item: 42 < +[Hera] [HADES][ERROR] [KRELTSC: 899197698] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 899543484] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 900219432] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 900678660] <: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 901149459] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 901708983] Testing word: > +[Hera] [HADES][TEST ] [KRELTSC: 902061678] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 902433756] Running >.greater_than: 7 5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 903148659] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 903761166] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 904657929] L8[TABLE]: Config 29 → 30 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 30,300000,10000,0,0,154,43,39,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 906459036] Running >.less_than: 5 7 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 907026330] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 907655112] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 909012678] Running >.equal: 5 5 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 909522600] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 910132986] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 911502732] Running >.positive_negative: 5 -5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 912075297] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 912694881] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 914100726] Running >.negative_negative: -5 -7 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 914667684] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 915279834] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 916699959] Running >.empty_stack: > +[Hera] [HADES][ERROR] [KRELTSC: 917207949] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 917577738] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 918268029] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 918727257] Running >.one_item: 42 > +[Hera] [HADES][ERROR] [KRELTSC: 919131129] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 919476096] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 920156580] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 920614569] >: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 921073839] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 921633573] Testing word: 0= +[Hera] [HADES][TEST ] [KRELTSC: 921976335] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 922349673] Running 0=.zero: 0 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 922998930] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 923617947] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 925007349] Running 0=.positive: 42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 925573446] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 926203992] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 927548391] Running 0=.negative: -42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 928068267] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 928698582] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 930176289] Running 0=.empty_stack: 0= +[Hera] [HADES][ERROR] [KRELTSC: 930654522] 0=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 931022799] Expected error occurred +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 931700259] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 932160852] 0=: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 932644083] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 933203985] Testing word: 0< +[Hera] [HADES][TEST ] [KRELTSC: 933543954] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 933914604] Running 0<.negative: -42 0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 934603488] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 935220699] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 936617535] Running 0<.zero: 0 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 937166622] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 937791120] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 939043854] L8[TABLE]: Config 30 → 31 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 31,310000,10000,0,0,172,46,35,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 940452324] Running 0<.positive: 42 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 940991457] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 941608122] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 942972408] Running 0<.empty_stack: 0< +[Hera] [HADES][ERROR] [KRELTSC: 943407885] 0<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 943775385] Expected error occurred +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 944449968] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 944910876] 0<: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 945385455] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 945944223] Testing word: 0> +[Hera] [HADES][TEST ] [KRELTSC: 946284360] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 946656879] Running 0>.positive: 42 0> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 947336859] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 947955330] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 949350654] Running 0>.zero: 0 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 949885839] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 950503113] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 951844887] Running 0>.negative: -42 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 952364217] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 953006670] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 954364572] Running 0>.empty_stack: 0> +[Hera] [HADES][ERROR] [KRELTSC: 954793686] 0>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 955161165] Expected error occurred +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 955848495] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 956305938] 0>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 956778354] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 957337836] Testing word: 0<> +[Hera] [HADES][TEST ] [KRELTSC: 957686247] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 958058955] Running 0<>.nonzero_pos: 42 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 958710123] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 959335125] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 960711822] Running 0<>.nonzero_neg: -1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 961262316] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 961896558] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 963279408] Running 0<>.zero: 0 0<> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 963906048] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 964535754] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 966013062] Running 0<>.empty_stack: 0<> +[Hera] [HADES][ERROR] [KRELTSC: 966487179] 0<>: stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 966854868] Expected error occurred +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 967535919] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 967995420] 0<>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 968480268] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 969043992] Testing word: U< +[Hera] [HADES][TEST ] [KRELTSC: 969385704] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 969760092] Running U<.less: 3 5 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 970468149] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 971091639] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 972606558] Running U<.equal: 5 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 973173684] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 973799883] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 975238887] Running U<.greater: 7 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 975766659] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 976381665] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 977477466] L8[TABLE]: Config 31 → 32 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 32,320000,10000,0,0,180,49,34,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 979082811] Running U<.zero_one: 0 1 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 979611990] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 980236215] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 981633912] Running U<.empty_stack: U< +[Hera] [HADES][ERROR] [KRELTSC: 982078104] U<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 982446150] Expected error occurred +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 983134110] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 983591847] U<: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 984062835] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 984623262] Testing word: U> +[Hera] [HADES][TEST ] [KRELTSC: 984967095] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 985338879] Running U>.greater: 5 3 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 986041476] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 986663286] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 988071105] Running U>.equal: 5 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 988632876] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 989263569] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 990626721] Running U>.less: 3 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 991193343] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 991811037] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 993301932] Running U>.one_zero: 1 0 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 993862065] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 994619136] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 996864792] Running U>.empty_stack: U> +[Hera] [HADES][ERROR] [KRELTSC: 997731378] U>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 998212425] Expected error occurred +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 998934300] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 999404574] U>: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 999931023] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1000493529] Testing word: WITHIN +[Hera] [HADES][TEST ] [KRELTSC: 1000849647] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1001264817] Running WITHIN.in_range: 3 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1002329538] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1002985851] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1004498859] Running WITHIN.at_low: 1 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1005085473] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1005779901] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1007211681] Running WITHIN.at_high: 5 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1007921691] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1008591759] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1009699257] L8[TABLE]: Config 32 → 33 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 33,330000,10000,0,0,145,51,35,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1011383058] Running WITHIN.below: 0 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1011952893] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1012623234] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1014019104] Running WITHIN.above: 6 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1014608679] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1015257432] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1016664285] Running WITHIN.empty_stack: WITHIN +[Hera] [HADES][ERROR] [KRELTSC: 1017140985] WITHIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1017536289] Expected error occurred +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1018242750] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1018726905] WITHIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1019220741] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1019799417] Testing word: TRUE +[Hera] [HADES][TEST ] [KRELTSC: 1020149634] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1020541704] Running TRUE.value: TRUE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1021193397] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1021835913] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1023210930] Running TRUE.as_flag: TRUE 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1023761718] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1024404045] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1025785698] Running TRUE.in_and: TRUE TRUE AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1026378801] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1027027155] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1028477751] TRUE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1028971671] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1029541338] Testing word: FALSE +[Hera] [HADES][TEST ] [KRELTSC: 1029895146] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1030281021] Running FALSE.value: FALSE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1030880256] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1031537052] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1032974523] Running FALSE.as_flag: FALSE 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1033548936] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1034189184] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1035626844] Running FALSE.in_or: TRUE FALSE OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1036217868] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1036861623] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1038326394] FALSE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1038810864] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1039389015] Testing word: >= +[Hera] [HADES][TEST ] [KRELTSC: 1039727409] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1040105430] Running >=.less: 3 5 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1040815062] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1041468141] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1042759998] L8[TABLE]: Config 33 → 34 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 34,340000,10000,0,0,203,53,37,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1044155637] Running >=.greater: 5 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1044752289] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1045379097] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1046796618] Running >=.equal: 3 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1047314667] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1047953445] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1049348433] Running >=.negative: -1 0 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1049898402] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1050521325] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1051906863] Running >=.neg_neg: -1 -2 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1052456454] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1053083262] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1054506159] Running >=.underflow: >= +[Hera] [HADES][ERROR] [KRELTSC: 1054929057] >=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1055300988] Expected error occurred +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1055993421] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1056479487] >=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1056952932] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1057522998] Testing word: <= +[Hera] [HADES][TEST ] [KRELTSC: 1057863366] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1058274588] Running <=.less: 3 5 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1058964270] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1059597042] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1061002089] Running <=.greater: 5 3 <= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1061573121] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1062203289] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1063566756] Running <=.equal: 3 3 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1064090979] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1064724801] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1066116177] Running <=.negative: -1 0 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1066668624] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1067288796] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1068694935] Running <=.neg_neg: -2 -1 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1069240137] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1069862934] Expected: Should print: -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1070599446] L8[TABLE]: Config 34 → 35 regime=2 score=52428 L1=0 L2=1 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 35,350000,10000,0,0,154,55,39,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1072604799] Running <=.underflow: <= +[Hera] [HADES][ERROR] [KRELTSC: 1073045883] <=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1073418108] Expected error occurred +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1074099432] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1074564204] <=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1075086684] === Logical Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1075712316] +[Hera] === Testing Module: Mixed Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 1076265561] Running Mixed Arithmetic Words Tests (Module 7)... +[Hera] [HADES][TEST ] [KRELTSC: 1076827521] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1077516090] Testing word: */ +[Hera] [HADES][TEST ] [KRELTSC: 1077877038] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1078394604] Running */.basic: 6 7 4 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1079162616] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1079785497] Expected: Should print: 10 (6*7/4) +[Hera] [HADES][TEST ] [KRELTSC: 1080324336] Running */.exact_division: 12 5 3 */ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 1080942093] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1081581459] Expected: Should print: 20 (12*5/3) +[Hera] [HADES][TEST ] [KRELTSC: 1082028717] Running */.zero_multiply: 0 999 123 */ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1082640510] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1083269985] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1083684105] Running */.by_one: 42 5 1 */ . CR +[Hera] 210 +[Hera] [HADES][TEST ] [KRELTSC: 1084248375] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1084867329] Expected: Should print: 210 (42*5/1) +[Hera] [HADES][TEST ] [KRELTSC: 1085317212] Running */.truncation: 7 3 2 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1085909055] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1086528240] Expected: Should print: 10 (21/2 truncated) +[Hera] [HADES][TEST ] [KRELTSC: 1087017015] Running */.negative_multiply: -6 7 4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1087720032] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1088336424] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1088743446] Running */.negative_divisor: 6 7 -4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1089358956] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1090084590] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1090492305] Running */.div_by_zero: 6 7 0 */ +[Hera] [HADES][ERROR] [KRELTSC: 1090978098] */: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1091356140] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1092054747] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1092521997] Running */.empty_stack: */ +[Hera] [HADES][ERROR] [KRELTSC: 1092963837] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1093342068] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1094030826] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1094492448] Running */.two_items: 1 2 */ +[Hera] [HADES][ERROR] [KRELTSC: 1094938698] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1095301179] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1095989727] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1096549860] */: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1097073831] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1097684742] Testing word: */MOD +[Hera] [HADES][TEST ] [KRELTSC: 1098049869] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1098427155] Running */MOD.basic: 17 3 5 */MOD . . CR +[Hera] 10 1 +[Hera] [HADES][TEST ] [KRELTSC: 1099229355] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1099876617] Expected: Should print: 1 10 (51/5 = 10 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 1100393007] Running */MOD.exact_division: 15 4 3 */MOD . . CR +[Hera] 20 0 +[Hera] [HADES][TEST ] [KRELTSC: 1101056838] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1101691815] Expected: Should print: 0 20 (60/3 = 20 rem 0) +[Hera] [HADES][TEST ] [KRELTSC: 1102201149] Running */MOD.zero_multiply: 0 999 123 */MOD . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1102866828] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1103503443] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1103912481] Running */MOD.by_one: 42 5 1 */MOD . . CR +[Hera] 210 0 +[Hera] [HADES][TEST ] [KRELTSC: 1104561444] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1105196967] Expected: Should print: 0 210 +[Hera] [HADES][TEST ] [KRELTSC: 1105614279] Running */MOD.remainder: 7 8 5 */MOD . . CR +[Hera] 11 1 +[Hera] [HADES][TEST ] [KRELTSC: 1106246316] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1106894502] Expected: Should print: 1 11 (56/5 = 11 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 1107391068] Running */MOD.negative: -7 3 4 */MOD . . CR +[Hera] -5 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1108022790] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1108669905] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1109101497] Running */MOD.div_by_zero: 6 7 0 */MOD +[Hera] [HADES][ERROR] [KRELTSC: 1109613960] */MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1110014283] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1110719610] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1111183332] Running */MOD.empty_stack: */MOD +[Hera] [HADES][ERROR] [KRELTSC: 1111649406] */MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1112040426] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1112746278] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1113207753] */MOD: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1113688359] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1114294209] Testing word: M+ +[Hera] [HADES][TEST ] [KRELTSC: 1114631196] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1115017512] Running M+.basic: 0 100 200 M+ . . CR +[Hera] 300 0 +[Hera] [HADES][TEST ] [KRELTSC: 1115796297] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1116425058] Expected: Should print: 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1116864609] Running M+.overflow: 0 2147483647 1 M+ . . CR +[Hera] 2147483648 0 +[Hera] [HADES][TEST ] [KRELTSC: 1117529595] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1118151258] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 1118590767] Running M+.negative: 0 -100 50 M+ . . CR +[Hera] -50 0 +[Hera] [HADES][TEST ] [KRELTSC: 1119206613] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1119827583] Expected: Should print: 50 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1120254282] Running M+.zero_add: 0 42 0 M+ . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 1120830942] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1121464008] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 1121877015] Running M+.both_negative: 0 -100 -200 M+ . . CR +[Hera] -300 0 +[Hera] [HADES][TEST ] [KRELTSC: 1122542043] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1123173051] Expected: Should print: -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1123608738] Running M+.empty_stack: M+ +[Hera] [HADES][TEST ] [KRELTSC: 1124033358] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1124724699] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1125186069] Running M+.one_item: 42 M+ +[Hera] [HADES][TEST ] [KRELTSC: 1125610101] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1126291971] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1126756575] M+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1127225799] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1127846076] Testing word: M* +[Hera] [HADES][TEST ] [KRELTSC: 1128185268] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1128561189] Running M*.basic: 123 456 M* . . CR +[Hera] 0 56088 +[Hera] [HADES][TEST ] [KRELTSC: 1129288545] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1129926084] Expected: Should print: 56088 0 +[Hera] [HADES][TEST ] [KRELTSC: 1130354988] Running M*.by_zero: 999 0 M* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1130921274] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1131553269] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1131963483] Running M*.by_one: 42 1 M* . . CR +[Hera] 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 1132523196] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1133152272] Expected: Should print: 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 1133565363] Running M*.negative: -123 456 M* . . CR +[Hera] -1 4294911208 +[Hera] [HADES][TEST ] [KRELTSC: 1134209517] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1134831726] Expected: Should print: -56088 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1135276758] Running M*.large_multiply: 65536 65536 M* . . CR +[Hera] 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 1135916565] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1136538627] Expected: Should handle large result +[Hera] [HADES][TEST ] [KRELTSC: 1136990673] Running M*.both_negative: -100 -200 M* . . CR +[Hera] 0 20000 +[Hera] [HADES][TEST ] [KRELTSC: 1137620442] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1138254705] Expected: Should print: 20000 0 +[Hera] [HADES][TEST ] [KRELTSC: 1138683399] Running M*.empty_stack: M* +[Hera] [HADES][TEST ] [KRELTSC: 1139112219] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1139803665] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1140275808] Running M*.one_item: 42 M* +[Hera] [HADES][TEST ] [KRELTSC: 1140690138] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1141371147] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1141840371] M*: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1142323686] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1142929389] Testing word: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 1143281790] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1143658509] Running M/MOD.basic: 0 1000 100 M/MOD . . CR +[Hera] 10 0 +[Hera] [HADES][TEST ] [KRELTSC: 1144472511] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1145111142] Expected: Should print: 0 10 (1000/100) +[Hera] [HADES][TEST ] [KRELTSC: 1145587338] Running M/MOD.with_remainder: 0 1234 100 M/MOD . . CR +[Hera] 12 34 +[Hera] [HADES][TEST ] [KRELTSC: 1146266226] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1146899649] Expected: Should handle remainder +[Hera] [HADES][TEST ] [KRELTSC: 1147402158] Running M/MOD.double_dividend: 5001 0 10 M/MOD . . CR +[Hera] 2147913144729 6 +[Hera] [HADES][TEST ] [KRELTSC: 1148116200] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1148764785] Expected: Should print: 1 500 (5001/10) +[Hera] [HADES][TEST ] [KRELTSC: 1149227793] Running M/MOD.by_one: 0 42 1 M/MOD . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 1149827364] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1150473303] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 1150886919] Running M/MOD.negative_dividend: -1 1000 100 M/MOD . . CR +[Hera] -42949662 -96 +[Hera] [HADES][TEST ] [KRELTSC: 1151608584] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1152249462] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1152691680] Running M/MOD.div_by_zero: 0 100 0 M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 1153198431] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1153895988] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1154362020] Running M/MOD.empty_stack: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 1154825091] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1155522165] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1155985887] M/MOD: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1156496082] === Mixed Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1157157771] +[Hera] === Testing Module: Double Words === +[Hera] [HADES][INFO ] [KRELTSC: 1157657613] Running Double Number Words Tests (Module 6)... +[Hera] [HADES][TEST ] [KRELTSC: 1158201030] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1158800391] Testing word: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 1159155228] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1159531317] Running 2DROP.basic: 1 2 3 4 2DROP . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1160212032] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1160862255] Expected: Should print: 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 1161270453] Running 2DROP.zeros: 0 0 42 99 2DROP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1161878907] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1162519575] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1162937748] Running 2DROP.negative: -1 -2 100 200 2DROP . . CR +[Hera] -2 -1 +[Hera] [HADES][INFO ] [KRELTSC: 1163662059] L8[TABLE]: Config 35 → 36 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 36,360000,10000,0,0,144,57,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 1164847530] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1165496871] Expected: Should print: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1165922331] Running 2DROP.exact_four: 10 20 30 40 2DROP DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1166599266] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1167248166] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 1167647880] Running 2DROP.empty_stack: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 1168116726] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1168820121] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1169292705] Running 2DROP.one_item: 42 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 1169737611] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1170428406] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1170887550] 2DROP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1171417044] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1171978731] Testing word: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 1172325756] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1172703504] Running 2DUP.basic: 100 200 2DUP . . . . CR +[Hera] 200 100 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1173522126] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1174152252] Expected: Should print: 100 200 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1174617171] Running 2DUP.zeros: 0 0 2DUP . . . . CR +[Hera] 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1175245827] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1175963103] Expected: Should print: 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1176395976] Running 2DUP.negative: -100 -200 2DUP . . . . CR +[Hera] -200 -100 -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1177169679] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1177830402] Expected: Should duplicate negatives +[Hera] [HADES][TEST ] [KRELTSC: 1178283393] Running 2DUP.depth_check: 10 20 2DUP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1178908458] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1179538437] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 1179951528] Running 2DUP.empty_stack: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 1180437594] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1181129628] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1181599818] Running 2DUP.one_item: 42 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 1182049386] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1182737052] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1183198653] 2DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1183677579] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1184251173] Testing word: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 1184601978] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1184980209] Running 2OVER.basic: 10 20 30 40 2OVER . . . . . . CR +[Hera] 20 10 40 30 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 1185909417] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1186559430] Expected: Should print: 10 20 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 1187050746] Running 2OVER.zeros: 0 0 99 88 2OVER . . . . . . CR +[Hera] 0 0 88 99 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1187789988] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1188438615] Expected: Should print: 0 0 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1188894189] Running 2OVER.mixed: -1 2 -3 4 2OVER . . . . . . CR +[Hera] 2 -1 4 -3 2 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1189641810] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1190299299] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 1190745339] Running 2OVER.depth_check: 1 2 3 4 2OVER DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1191387435] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1192028628] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 1192439325] Running 2OVER.three_items: 1 2 3 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 1192939881] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1193635842] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1194096603] Running 2OVER.empty_stack: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 1194548817] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1195241418] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1195703019] 2OVER: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1196192802] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1196761566] Testing word: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 1197113946] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1197489909] Running 2SWAP.basic: 10 20 30 40 2SWAP . . . . CR +[Hera] 20 10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 1198374366] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1199027718] Expected: Should print: 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 1199477307] Running 2SWAP.zeros: 0 0 99 88 2SWAP . . . . CR +[Hera] 0 0 88 99 +[Hera] [HADES][TEST ] [KRELTSC: 1200163104] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1200811500] Expected: Should print: 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1201251387] Running 2SWAP.same_pairs: 42 42 42 42 2SWAP . . . . CR +[Hera] 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 1201975845] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1202620209] Expected: Should print: 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 1203082650] Running 2SWAP.negative: -10 -20 30 40 2SWAP . . . . CR +[Hera] -20 -10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 1203822039] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1204459074] Expected: Should print: 30 40 -10 -20 +[Hera] [HADES][TEST ] [KRELTSC: 1205022714] Running 2SWAP.depth_check: 1 2 3 4 2SWAP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1205674785] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1206310224] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 1206708531] Running 2SWAP.three_items: 1 2 3 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 1207225908] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1207930899] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1208393025] Running 2SWAP.empty_stack: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 1208845071] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1209548487] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1210008912] 2SWAP: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1210488804] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1211046711] Testing word: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 1211402892] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1211776209] Running 2ROT.basic: 10 20 30 40 50 60 2ROT . . . . . . CR +[Hera] 20 10 60 50 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 1212821106] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1213475781] Expected: Should print: 30 40 50 60 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 1213965417] Running 2ROT.zeros: 0 0 1 1 2 2 2ROT . . . . . . CR +[Hera] 0 0 2 2 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 1214729040] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1215380166] Expected: Should rotate with zeros +[Hera] [HADES][TEST ] [KRELTSC: 1215821271] Running 2ROT.negative: -1 -2 3 4 -5 -6 2ROT . . . . . . CR +[Hera] -2 -1 -6 -5 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 1216609065] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1217236608] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 1217687394] Running 2ROT.depth_check: 1 2 3 4 5 6 2ROT DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1218346563] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1218976542] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 1219381149] Running 2ROT.five_items: 1 2 3 4 5 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 1219908522] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1220600346] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1221060603] Running 2ROT.empty_stack: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 1221497256] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1222195044] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1222654104] 2ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1223128620] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1223687766] Testing word: D+ +[Hera] [HADES][TEST ] [KRELTSC: 1224033447] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1224409746] Running D+.basic: 100 200 300 400 D+ . . CR +[Hera] 600 400 +[Hera] [HADES][TEST ] [KRELTSC: 1225237335] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1225884135] Expected: Should print: 400 600 +[Hera] [HADES][TEST ] [KRELTSC: 1226314215] Running D+.zero_add: 42 99 0 0 D+ . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1226921367] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1227541014] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1227970317] Running D+.negative: -100 -200 50 75 D+ . . CR +[Hera] -125 -50 +[Hera] [HADES][TEST ] [KRELTSC: 1228632342] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1229251296] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 1229685702] Running D+.carry: 2147483647 0 1 0 D+ . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1230359655] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1230978420] Expected: Should handle carry +[Hera] [HADES][TEST ] [KRELTSC: 1231395165] Running D+.both_negative: -100 -200 -300 -400 D+ . . CR +[Hera] -599 -400 +[Hera] [HADES][TEST ] [KRELTSC: 1232106435] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1232727993] Expected: Should add negatives +[Hera] [HADES][TEST ] [KRELTSC: 1233151374] Running D+.three_items: 1 2 3 D+ +[Hera] [HADES][TEST ] [KRELTSC: 1233624525] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1234316097] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1234774842] Running D+.empty_stack: D+ +[Hera] [HADES][TEST ] [KRELTSC: 1235185182] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1235863398] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1236337179] D+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1236804681] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1237363617] Testing word: D- +[Hera] [HADES][TEST ] [KRELTSC: 1237701255] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1238084736] Running D-.basic: 500 600 100 200 D- . . CR +[Hera] 400 [HADES][INFO ] [KRELTSC: 1238943363] L8[TABLE]: Config 36 → 37 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 37,370000,10000,0,0,144,57,35,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 400 +[Hera] [HADES][TEST ] [KRELTSC: 1240203132] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1240843254] Expected: Should print: 400 400 +[Hera] [HADES][TEST ] [KRELTSC: 1241272284] Running D-.zero_sub: 42 99 0 0 D- . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1241882565] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1242511935] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1242943065] Running D-.from_zero: 0 0 100 200 D- . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1243586715] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1244206257] Expected: Should print: -100 -200 +[Hera] [HADES][TEST ] [KRELTSC: 1244639655] Running D-.negative: 100 200 -50 -75 D- . . CR +[Hera] 274 150 +[Hera] [HADES][TEST ] [KRELTSC: 1245303045] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1245923133] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 1246357770] Running D-.borrow: 0 0 1 0 D- . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1246962864] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1247583855] Expected: Should handle borrow +[Hera] [HADES][TEST ] [KRELTSC: 1248006186] Running D-.same_values: 100 200 100 200 D- . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1248657522] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1249307577] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1249714494] Running D-.three_items: 1 2 3 D- +[Hera] [HADES][TEST ] [KRELTSC: 1250190774] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1250869326] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1251343506] Running D-.empty_stack: D- +[Hera] [HADES][TEST ] [KRELTSC: 1251754266] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1252434960] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1252904772] D-: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1253383719] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1253942802] Testing word: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1254303225] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1254679020] Running DNEGATE.positive: 100 200 DNEGATE . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1255510578] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1256156475] Expected: Should negate positive double +[Hera] [HADES][TEST ] [KRELTSC: 1256621814] Running DNEGATE.negative: -100 -200 DNEGATE . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 1257310824] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1257955587] Expected: Should negate negative double +[Hera] [HADES][TEST ] [KRELTSC: 1258419414] Running DNEGATE.zero: 0 0 DNEGATE . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1259043198] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1259699679] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1260107814] Running DNEGATE.max_positive: 2147483647 0 DNEGATE . . CR +[Hera] -1 -2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1260834078] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1261569624] Expected: Should negate max positive +[Hera] [HADES][TEST ] [KRELTSC: 1262020956] Running DNEGATE.one_item: 42 DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1262593962] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1263301053] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1263778803] Running DNEGATE.empty_stack: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1264236267] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1264936176] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1265405589] DNEGATE: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1265943819] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1266504729] Testing word: DABS +[Hera] [HADES][TEST ] [KRELTSC: 1266852615] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1267229943] Running DABS.positive: 100 200 DABS . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1267969122] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1268600151] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1269027396] Running DABS.negative: -100 -200 DABS . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 1269699921] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1270344075] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1270770837] Running DABS.zero: 0 0 DABS . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1271330844] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1271972121] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1272380739] Running DABS.mixed_sign: 100 -1 DABS . . CR +[Hera] 0 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1273001268] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1273627551] Expected: Should handle mixed sign +[Hera] [HADES][TEST ] [KRELTSC: 1274078820] Running DABS.min_double: -2147483648 -1 DABS . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1274769594] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1275399909] Expected: Should handle min double +[Hera] [HADES][TEST ] [KRELTSC: 1275847377] Running DABS.one_item: 42 DABS +[Hera] [HADES][TEST ] [KRELTSC: 1276324308] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1277022726] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1277485272] Running DABS.empty_stack: DABS +[Hera] [HADES][TEST ] [KRELTSC: 1277922450] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1278623073] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1279083708] DABS: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1279559652] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1280117937] Testing word: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 1280504841] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1280879733] Running DMIN.basic: 100 200 300 400 DMIN . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1281770994] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1282434531] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1282864968] Running DMIN.equal: 42 99 42 99 DMIN . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1283565129] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1284205965] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1284642492] Running DMIN.negative: -100 -200 -50 -75 DMIN . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1285339734] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1285970175] Expected: Should find min negative +[Hera] [HADES][TEST ] [KRELTSC: 1286420247] Running DMIN.mixed: -100 -1 100 0 DMIN . . CR +[Hera] -1 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1287103293] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1287731844] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 1288176750] Running DMIN.three_items: 1 2 3 DMIN +[Hera] [HADES][TEST ] [KRELTSC: 1288672833] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1289381940] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1289845263] Running DMIN.empty_stack: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 1290280677] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1290990666] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1291452519] DMIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1291930521] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1292488995] Testing word: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 1292837574] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1293224289] Running DMAX.basic: 100 200 300 400 DMAX . . CR +[Hera] 400 300 +[Hera] [HADES][TEST ] [KRELTSC: 1294052193] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1294691055] Expected: Should print: 300 400 +[Hera] [HADES][TEST ] [KRELTSC: 1295134722] Running DMAX.equal: 42 99 42 99 DMAX . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1295808906] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1296440985] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1296859704] Running DMAX.negative: -300 -400 -100 -200 DMAX . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1297575405] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1298205405] Expected: Should find max negative +[Hera] [HADES][TEST ] [KRELTSC: 1298646804] Running DMAX.mixed: -100 -1 100 0 DMAX . . CR +[Hera] 0 100 +[Hera] [HADES][TEST ] [KRELTSC: 1299304650] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1299935700] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 1300381509] Running DMAX.three_items: 1 2 3 DMAX +[Hera] [HADES][TEST ] [KRELTSC: 1300874064] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1301581281] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1302044100] Running DMAX.empty_stack: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 1302476511] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1303164240] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1303638252] DMAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1304115771] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1304676009] Testing word: D= +[Hera] [HADES][TEST ] [KRELTSC: 1305025344] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1305407334] Running D=.equal: 100 200 100 200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1306185657] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1306809672] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1307214972] Running D=.not_equal_low: 100 200 101 200 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1307882163] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1308505044] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1308905451] Running D=.not_equal_high: 100 200 100 201 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1309540113] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1310179332] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1310578920] Running D=.zero_equal: 0 0 0 0 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1311164883] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1311835791] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1312240167] Running D=.negative_equal: -100 -200 -100 -200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1312895598] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1313517177] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1313934804] Running D=.three_items: 1 2 3 D= +[Hera] [HADES][TEST ] [KRELTSC: 1314414108] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1315097301] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1315560750] Running D=.empty_stack: D= +[Hera] [HADES][TEST ] [KRELTSC: 1315989129] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1316666757] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1317127224] D=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1317594852] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1318166157] Testing word: D< +[Hera] [HADES][TEST ] [KRELTSC: 1318505559] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1318882782] Running D<.less_than: 100 200 300 400 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1319665956] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1320457299] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1320863670] Running D<.greater_than: 300 400 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1321520970] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1322152377] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1322566791] Running D<.equal: 100 200 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1323160965] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1323782754] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1324189293] Running D<.negative_positive: -100 -1 100 0 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1324836597] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1325459541] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1325864925] Running D<.negative_negative: -300 -1 -100 -1 D< . CR +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1326613512] L8[TABLE]: Config 37 → 38 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 38,380000,10000,0,0,132,57,34,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 1327803498] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1328433015] Expected: Should compare negatives +[Hera] [HADES][TEST ] [KRELTSC: 1328886993] Running D<.high_word_diff: 100 200 100 300 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1329529299] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1330148211] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1330551810] Running D<.three_items: 1 2 3 D< +[Hera] [HADES][TEST ] [KRELTSC: 1331037603] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1331719494] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1332194031] Running D<.empty_stack: D< +[Hera] [HADES][TEST ] [KRELTSC: 1332616173] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1333303818] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1333764138] D<: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1334229750] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1334803176] Testing word: D0= +[Hera] [HADES][TEST ] [KRELTSC: 1335144363] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1335518856] Running D0=.zero: 0 0 D0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1336180734] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1336808235] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1337223867] Running D0=.positive: 100 200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1337814114] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1338437667] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1338845508] Running D0=.negative: -100 -200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1339432101] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1340069955] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1340471874] Running D0=.zero_high: 0 100 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1341040071] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1341676581] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1342075203] Running D0=.zero_low: 100 0 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1342627503] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1343266890] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1343666835] Running D0=.one_item: 42 D0= +[Hera] [HADES][TEST ] [KRELTSC: 1344116886] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1344802683] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1345292781] Running D0=.empty_stack: D0= +[Hera] [HADES][TEST ] [KRELTSC: 1345718094] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1346400447] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1346861670] D0=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1347330894] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1347899679] Testing word: D0< +[Hera] [HADES][TEST ] [KRELTSC: 1348241727] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1348614393] Running D0<.negative: -100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1349307078] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1349964861] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1350367410] Running D0<.zero: 0 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1350919857] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1351566363] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1351969542] Running D0<.positive: 100 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1352534904] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1353160158] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1353558990] Running D0<.negative_high_only: 100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1354185273] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1354809330] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1355214189] Running D0<.large_negative: -1 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1355822370] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1356449724] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1356853932] Running D0<.one_item: 42 D0< +[Hera] [HADES][TEST ] [KRELTSC: 1357316016] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1358016177] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1358477484] Running D0<.empty_stack: D0< +[Hera] [HADES][TEST ] [KRELTSC: 1358902713] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1359581916] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1360071699] D0<: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1360542078] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1361099901] Testing word: S>D +[Hera] [HADES][TEST ] [KRELTSC: 1361440290] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1361813880] Running S>D.positive: 5 S>D . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1362510198] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1363136628] Expected: Should sign-extend positive: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1363615701] Running S>D.negative: -5 S>D . . CR +[Hera] -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 1364260443] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1364886705] Expected: Should sign-extend negative: -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 1365376257] Running S>D.zero: 0 S>D . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1365918582] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1366562862] Expected: Should sign-extend zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1367024484] Running S>D.max_int: 2147483647 S>D . . CR +[Hera] 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1367673279] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1368306534] Expected: Should extend max int: 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1368833151] Running S>D.min_int: -2147483648 S>D . . CR +[Hera] -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1369497612] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1370123013] Expected: Should extend min int: -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1370648832] Running S>D.empty_stack: S>D +[Hera] [HADES][TEST ] [KRELTSC: 1371092226] Expected error occurred +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1371776238] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1372239687] S>D: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1372730583] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1373311275] Testing word: D2* +[Hera] [HADES][TEST ] [KRELTSC: 1373653113] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1374028572] Running D2*.basic: 5 0 D2* . . CR +[Hera] 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 1374789381] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1375420179] Expected: Should double 5: 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 1375849776] Running D2*.zero: 0 0 D2* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1376408712] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1377064647] Expected: Should double zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1377590928] Running D2*.negative: -1 -1 D2* . . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1378194783] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1378844754] Expected: Should double -1: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1379279601] Running D2*.carry: 0 1 D2* . . CR +[Hera] 2 0 +[Hera] [HADES][TEST ] [KRELTSC: 1379838537] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1380463266] Expected: Should shift high cell: 0 2 +[Hera] [HADES][TEST ] [KRELTSC: 1380930642] Running D2*.empty_stack: D2* +[Hera] [HADES][TEST ] [KRELTSC: 1381377228] Expected error occurred +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1382063655] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1382524626] D2*: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1383012897] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1383572946] Testing word: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 1383914658] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1384290012] Running D2/.basic: 10 0 D2/ . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1385017116] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1385684307] Expected: Should halve 10: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1386109725] Running D2/.negative: -2 -1 D2/ . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1386716289] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1387359498] Expected: Should halve -2: -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1387829394] Running D2/.zero: 0 0 D2/ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1388422749] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1389056697] Expected: Should halve zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1389509121] Running D2/.odd: 3 0 D2/ . . CR +[Hera] 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 1390068729] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1390693143] Expected: Should truncate toward zero: 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 1391171040] Running D2/.empty_stack: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 1391648139] Expected error occurred +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1392334419] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1392795768] D2/: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1393270452] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1393860489] Testing word: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 1394204301] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1394582637] Running 2>R.roundtrip: 10 20 2>R 2R> . . CR +[Hera] 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 1395547125] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1396190418] Expected: Should store and retrieve: 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 1396670226] Running 2>R.depth_after: 1 2 2>R DEPTH . 2R> DROP DROP CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1397386179] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1398039279] Expected: Should empty data stack: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1398492921] Running 2>R.empty_stack: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 1398946773] Expected error occurred +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1399632570] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1400107128] 2>R: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1400579775] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1401141504] Testing word: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 1401484308] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1401878436] Running 2R>.roundtrip: 5 6 2>R 2R> . . CR +[Hera] 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 1402492833] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1403119872] Expected: Should retrieve double: 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 1403576076] Running 2R>.depth: 9 8 2>R 2R> DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1404201309] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1404831099] Expected: Should push 2 items to data stack: 2 +[Hera] [HADES][TEST ] [KRELTSC: 1405331676] Running 2R>.empty_rstack: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 1405779858] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1406498583] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1406990193] 2R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1407459207] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1408016862] Testing word: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 1408380603] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1408755243] Running 2R@.peek: 3 4 2>R 2R@ . . 2R> DROP DROP CR +[Hera] 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 1409579745] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1410209178] Expected: Should peek: 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 1410628863] Running 2R@.non_destructive: 7 8 2>R 2R@ DROP DROP 2R> . . CR +[Hera] 8 7 +[Hera] [HADES][TEST ] [KRELTSC: 1411373061] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1411997076] Expected: Should leave rstack intact +[Hera] [HADES][TEST ] [KRELTSC: 1412467119] Running 2R@.empty_rstack: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 1412914041] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1413599880] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1414096719] 2R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1414606830] === Double Number Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1415262555] +[Hera] === Testing Module: Format Words === +[Hera] [HADES][INFO ] [KRELTSC: 1415765421] Running Format Words Tests (Module 10)... +[Hera] [HADES][TEST ] [KRELTSC: 1416280404] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1416882306] Testing word: BASE +[Hera] [HADES][TEST ] [KRELTSC: 1417232523] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1417611321] Running BASE.decimal: DECIMAL 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1418246256] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1418894127] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 1419299679] Running BASE.hex: HEX FF . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1419938772] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1420569024] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 1421008764] Running BASE.octal: OCTAL 52 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1421630007] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1422260133] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 1422670431] Running BASE.base_store: 16 BASE ! 255 . CR +[Hera] 467 +[Hera] [HADES][TEST ] [KRELTSC: 1423425801] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1424056200] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 1424459295] Running BASE.base_fetch: BASE @ . CR +[Hera] 14 +[Hera] [HADES][TEST ] [KRELTSC: 1425048345] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1425678072] Expected: Should print current base +[Hera] [HADES][TEST ] [KRELTSC: 1426125792] BASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1426638255] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1427215986] Testing word: DECIMAL +[Hera] [HADES][TEST ] [KRELTSC: 1427577606] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1427953380] Running DECIMAL.from_hex: HEX FF DECIMAL . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1428574308] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1429245888] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 1429654170] Running DECIMAL.from_octal: OCTAL 52 DECIMAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1430280999] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1430921835] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 1431372201] Running DECIMAL.state_persist: DECIMAL 42 . CR 42 . CR HEX 42 . CR +[Hera] 42 +[Hera] 42 +[Hera] 66 +[Hera] [HADES][TEST ] [KRELTSC: 1432324635] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1433028681] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 1433488539] DECIMAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1433979309] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1434535956] Testing word: HEX +[Hera] [HADES][TEST ] [KRELTSC: 1434875043] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1435409325] Running HEX.from_decimal: DECIMAL 255 HEX . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1436205960] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1436832180] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 1437236094] Running HEX.from_octal: OCTAL 52 HEX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1437858513] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1438483158] Expected: Should print: 2A +[Hera] [HADES][TEST ] [KRELTSC: 1438885497] Running HEX.state_persist: HEX FF . CR DECIMAL 255 . CR +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 1439682006] L8[TABLE]: Config 38 → 39 regime=2 score=52428 L1=0 L2=1 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 39,390000,10000,0,0,180,57,32,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1441018656] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1441640613] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 1442099043] HEX: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1442567616] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1443123864] Testing word: OCTAL +[Hera] [HADES][TEST ] [KRELTSC: 1443472212] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1443867873] Running OCTAL.from_decimal: DECIMAL 42 OCTAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1444494618] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1445126886] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 1445527692] Running OCTAL.from_hex: HEX 2A OCTAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1446125184] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1446753504] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 1447153470] Running OCTAL.state_persist: DECIMAL 42 . CR OCTAL 52 . CR +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1447899369] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1448555157] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 1448977047] OCTAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1449455847] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1450013439] Testing word: <# +[Hera] [HADES][TEST ] [KRELTSC: 1450360821] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1450736700] Running <#.basic: DECIMAL 42 S>D <# #S #> TYPE CR +[Hera] 774763251095801167872 +[Hera] [HADES][TEST ] [KRELTSC: 1452811248] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1453435641] Expected: Should format number +[Hera] [HADES][TEST ] [KRELTSC: 1453858455] Running <#.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1454373480] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1454997264] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 1455410859] Running <#.negative: -42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1456100919] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1456806960] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1457239833] <#: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1457711871] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1458309321] Testing word: # +[Hera] [HADES][TEST ] [KRELTSC: 1458673314] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1459052511] Running #.single_digit: 15 <# # #> TYPE CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1459777347] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1460396889] Expected: Should print rightmost digit +[Hera] [HADES][TEST ] [KRELTSC: 1460872854] Running #.multiple: 15 <# # # #> TYPE CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 1461466944] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1462084197] Expected: Should print digits right to left +[Hera] [HADES][TEST ] [KRELTSC: 1462569759] Running #.zero_pad: 5 <# # 0 # #> TYPE CR +[Hera] 05 +[Hera] [HADES][TEST ] [KRELTSC: 1463184471] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1463800674] Expected: Should handle zero padding +[Hera] [HADES][TEST ] [KRELTSC: 1464253392] #: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1464715014] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1465287264] Testing word: #S +[Hera] [HADES][TEST ] [KRELTSC: 1465624608] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1466000928] Running #S.basic: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1466572443] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1467225396] Expected: Should convert all digits +[Hera] [HADES][TEST ] [KRELTSC: 1467671352] Running #S.zero: 0 <# #S #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1468266303] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1468916274] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 1469410089] Running #S.large: 1234567890 <# #S #> TYPE CR +[Hera] 1234567890 +[Hera] [HADES][TEST ] [KRELTSC: 1470242151] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1470936768] Expected: Should handle large numbers +[Hera] [HADES][TEST ] [KRELTSC: 1471470168] #S: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1471939098] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1472496732] Testing word: SIGN +[Hera] [HADES][TEST ] [KRELTSC: 1472842581] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1473243849] Running SIGN.negative: -42 ABS <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1474100607] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1474731426] Expected: Should add minus +[Hera] [HADES][TEST ] [KRELTSC: 1475134101] Running SIGN.positive: 42 <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1475801649] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1476431733] Expected: Should not add sign +[Hera] [HADES][TEST ] [KRELTSC: 1476848394] Running SIGN.zero: 0 <# #S SIGN #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1477485576] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1478116857] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 1478530809] SIGN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1479006627] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1479615732] Testing word: #> +[Hera] [HADES][TEST ] [KRELTSC: 1479953307] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1480330236] Running #>.normal: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1480905846] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1481553024] Expected: Should terminate formatting +[Hera] [HADES][TEST ] [KRELTSC: 1482024033] Running #>.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1482514572] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1483133001] Expected: Should handle empty format +[Hera] [HADES][TEST ] [KRELTSC: 1483582443] Running #>.stack_effect: 42 <# #S #> SWAP . . CR +[Hera] 24 2 +[Hera] [HADES][TEST ] [KRELTSC: 1484292432] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1484914536] Expected: Should leave addr u +[Hera] [HADES][TEST ] [KRELTSC: 1485333486] #>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1485824550] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1486395309] Testing word: HOLD +[Hera] [HADES][TEST ] [KRELTSC: 1486750041] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1487122476] Running HOLD.basic: 42 <# 46 HOLD #S #> TYPE CR +[Hera] 42. +[Hera] [HADES][TEST ] [KRELTSC: 1487778012] Test passed +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1488428382] Expected: Should insert dot +[Hera] [HADES][TEST ] [KRELTSC: 1488836118] Running HOLD.overflow: <# 257 HOLD #> +[Hera] [HADES][ERROR] [KRELTSC: 1489382559] HOLD: byte out of range (257) +[Hera] [HADES][TEST ] [KRELTSC: 1490105631] Expected error occurred +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1490821332] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 1491254835] HOLD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1491752619] === Format Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1492395093] +[Hera] === Testing Module: String Words === +[Hera] [HADES][INFO ] [KRELTSC: 1493030973] Running String Words Tests (Module 11)... +[Hera] [HADES][TEST ] [KRELTSC: 1493548623] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1494175389] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 1494534384] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1494911838] Running COUNT.basic: HERE S" Test" DROP COUNT . . CR +[Hera] 84 121 +[Hera] [HADES][TEST ] [KRELTSC: 1496432868] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1497073977] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 1497542172] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 1498227150] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1498905366] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 1499358294] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 1500082101] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1500772644] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 1501233804] Running COUNT.string_bounds: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1501939950] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1502605104] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 1503047133] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 1503515454] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1503929637] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1504644309] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1505119455] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1505646408] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1506212022] Testing word: -TRAILING +[Hera] [HADES][TEST ] [KRELTSC: 1506586704] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1506988854] Running -TRAILING.basic: HERE S" Test " -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1508003028] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1508663709] Expected: Should trim spaces +[Hera] [HADES][TEST ] [KRELTSC: 1509152442] Running -TRAILING.all_spaces: HERE S" " -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1510045551] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1510769925] Expected: Should handle all spaces +[Hera] [HADES][TEST ] [KRELTSC: 1511295891] Running -TRAILING.no_spaces: HERE S" Test" -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1512105105] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1512865893] Expected: Should handle no spaces +[Hera] [HADES][TEST ] [KRELTSC: 1513397970] Running -TRAILING.empty: HERE 0 -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1514147523] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1514806566] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 1515288159] -TRAILING: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1515796800] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1516358235] Testing word: CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 1516710657] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1517089896] Running CMOVE.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOVE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1518197541] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1518839028] Expected: Should copy string +[Hera] [HADES][TEST ] [KRELTSC: 1519280091] Running CMOVE.empty: HERE HERE 10 + 0 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 1519832895] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1520473710] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 1520917818] Running CMOVE.overlap: HERE DUP 1+ 5 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 1521483600] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1522130967] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 1522559766] Running CMOVE.bounds: HERE PAD 1000 CMOVE +[Hera] [HADES][ERROR] [KRELTSC: 1523111016] CMOVE: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 1523654160] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1524375069] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 1524796686] CMOVE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1525282563] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1525873335] Testing word: CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 1526230377] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1526605920] Running CMOVE>.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOVE> CR + +[Hera] [HADES][TEST ] [KRELTSC: 1527659238] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1528312905] Expected: Should copy backward +[Hera] [HADES][TEST ] [KRELTSC: 1528739457] Running CMOVE>.empty: HERE HERE 10 + 0 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 1529297385] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1529965857] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 1530411771] Running CMOVE>.overlap: HERE DUP 1+ 5 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 1530954306] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1531599636] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 1532041581] Running CMOVE>.bounds: HERE PAD 1000 CMOVE> +[Hera] [HADES][ERROR] [KRELTSC: 1532592390] CMOVE>: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 1533110376] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1533811293] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 1534250487] CMOVE>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1534741761] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1535302503] Testing word: COMPARE +[Hera] [HADES][TEST ] [KRELTSC: 1535663808] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1536063942] Running COMPARE.equal: HERE S" Test" HERE S" Test" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1537306575] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1537954131] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 1538379129] Running COMPARE.less: HERE S" Test1" HERE S" Test2" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1539122907] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1539766662] Expected: Should return -1 +[Hera] [HADES][TEST ] [KRELTSC: 1540169253] Running COMPARE.greater: HERE S" Test2" HERE S" Test1" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1540939155] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1541585304] Expected: Should return 1 +[Hera] [HADES][TEST ] [KRELTSC: 1541984367] Running COMPARE.different_lengths: HERE S" Test" HERE S" Testing" COMPARE . CR +[Hera] [HADES][INFO ] [KRELTSC: 1542932916] L8[TABLE]: Config 39 → 40 regime=2 score=6553 L1=0 L2=1 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 40,400000,10000,0,0,220,63,29,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1544534922] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1545190815] Expected: Should handle lengths +[Hera] [HADES][TEST ] [KRELTSC: 1545621651] Running COMPARE.empty: HERE 0 HERE 0 COMPARE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1546529166] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1547183106] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 1547602308] COMPARE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1548093645] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1548676752] Testing word: SEARCH +[Hera] [HADES][TEST ] [KRELTSC: 1549031925] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1549407468] Running SEARCH.found: HERE S" Testing" HERE S" Test" SEARCH . . . CR +[Hera] -1 15 120 +[Hera] [HADES][TEST ] [KRELTSC: 1551030369] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1551673305] Expected: Should find substring +[Hera] [HADES][TEST ] [KRELTSC: 1552102377] Running SEARCH.not_found: HERE S" Testing" HERE S" Xyz" SEARCH . . . CR +[Hera] -1 7 141 +[Hera] [HADES][TEST ] [KRELTSC: 1553084421] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1553727651] Expected: Should return false +[Hera] [HADES][TEST ] [KRELTSC: 1554148575] Running SEARCH.empty_pattern: HERE S" Test" HERE 0 SEARCH . . . CR +[Hera] -1 4 145 +[Hera] [HADES][TEST ] [KRELTSC: 1555051344] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1555693860] Expected: Should handle empty pattern +[Hera] [HADES][TEST ] [KRELTSC: 1556150757] Running SEARCH.empty_string: HERE 0 HERE S" Test" SEARCH . . . CR +[Hera] -1 30 120 +[Hera] [HADES][TEST ] [KRELTSC: 1557006339] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1557654042] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 1558105143] SEARCH: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1558591104] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1559171649] Testing word: SCAN +[Hera] [HADES][TEST ] [KRELTSC: 1559520312] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1559894952] Running SCAN.basic: HERE S" Test,Data" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1560938106] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1561597821] Expected: Should find space +[Hera] [HADES][TEST ] [KRELTSC: 1562009715] Running SCAN.not_found: HERE S" TestData" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1562659056] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1563317385] Expected: Should scan to end +[Hera] [HADES][TEST ] [KRELTSC: 1563730896] Running SCAN.empty: HERE 0 BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1564298820] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1564933251] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 1565370072] Running SCAN.all_delims: HERE S" " BL SCAN TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 1566133212] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1566768609] Expected: Should handle all delims +[Hera] [HADES][TEST ] [KRELTSC: 1567212150] SCAN: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1567751304] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1568328888] Testing word: SKIP +[Hera] [HADES][TEST ] [KRELTSC: 1568675115] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1569050847] Running SKIP.basic: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1570074177] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1570709952] Expected: Should skip spaces +[Hera] [HADES][TEST ] [KRELTSC: 1571126277] Running SKIP.no_delims: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1571821461] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1572455745] Expected: Should not skip +[Hera] [HADES][TEST ] [KRELTSC: 1572857370] Running SKIP.empty: HERE 0 BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1573415382] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1574067810] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 1574486907] Running SKIP.all_delims: HERE S" " BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1575112812] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1575766857] Expected: Should skip all +[Hera] [HADES][TEST ] [KRELTSC: 1576265481] SKIP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1576828806] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1577417142] Testing word: BLANK +[Hera] [HADES][TEST ] [KRELTSC: 1577769900] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1578172785] Running BLANK.basic: HERE 5 BLANK HERE 5 TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 1579160835] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1579800327] Expected: Should fill with spaces +[Hera] [HADES][TEST ] [KRELTSC: 1580260563] Running BLANK.zero: HERE 0 BLANK HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1580862801] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1581501684] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 1581945435] BLANK: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1582441791] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1582999173] Testing word: S" +[Hera] [HADES][TEST ] [KRELTSC: 1583335740] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1583711682] Running S".interpret_len: S" hello" . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1584301047] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1584925062] Expected: Should print: 5 (length) +[Hera] [HADES][TEST ] [KRELTSC: 1585367931] Running S".interpret_type: S" hello" TYPE CR +[Hera] hello +[Hera] [HADES][TEST ] [KRELTSC: 1585962378] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1586609703] Expected: Should print: hello +[Hera] [HADES][TEST ] [KRELTSC: 1587027708] Running S".empty: S" " . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1587529839] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1588151880] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1588568646] Running S".compile_type: : TSQ S" world" TYPE CR ; TSQ +[Hera] [HADES][INFO ] [KRELTSC: 1591621080] ECW: w=0x3db9c650 func=0x3d6aecf8 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1593131862] ECW: w=0x3db9dbf8 func=0x3d6a3914 'TYPE' +[Hera] world[HADES][INFO ] [KRELTSC: 1593665514] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1594102335] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1594714443] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1595354019] Expected: Should print: world +[Hera] [HADES][TEST ] [KRELTSC: 1595799513] Running S".compile_len: : TSQ2 S" forth" SWAP DROP . CR ; TSQ2 +[Hera] [HADES][INFO ] [KRELTSC: 1596594762] ECW: w=0x3db9c650 func=0x3d6aecf8 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1597086729] ECW: w=0x3db95b70 func=0x3d6ab92c 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 1597559628] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 1598022930] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 1598518992] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1598962239] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1599442215] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1600104177] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 1600515420] Running S".compile_twice: : TSQ3 S" ab" TYPE S" cd" TYPE CR ; TSQ3 +[Hera] [HADES][INFO ] [KRELTSC: 1601399646] ECW: w=0x3db9c650 func=0x3d6aecf8 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1601878824] ECW: w=0x3db9dbf8 func=0x3d6a3914 'TYPE' +[Hera] ab[HADES][INFO ] [KRELTSC: 1602386499] ECW: w=0x3db9c650 func=0x3d6aecf8 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1602813576] ECW: w=0x3db9dbf8 func=0x3d6a3914 'TYPE' +[Hera] cd[HADES][INFO ] [KRELTSC: 1603330134] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1603758828] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1604218812] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1604840097] Expected: Should print: abcd +[Hera] [HADES][TEST ] [KRELTSC: 1605286431] S": 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1605756999] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1606317090] Testing word: BL +[Hera] [HADES][TEST ] [KRELTSC: 1606653636] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1607032266] Running BL.value: BL . CR +[Hera] 32 +[Hera] [HADES][TEST ] [KRELTSC: 1607642043] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1608265134] Expected: Should print: 32 +[Hera] [HADES][TEST ] [KRELTSC: 1608835137] Running BL.as_char: BL EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 1609514256] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1610139405] Expected: Should emit a space +[Hera] [HADES][TEST ] [KRELTSC: 1610559531] Running BL.in_scan: HERE S" a b" BL SCAN SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1611285228] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1611925455] Expected: Should find space at offset 1 +[Hera] [HADES][TEST ] [KRELTSC: 1612392999] BL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1612859913] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1613419122] Testing word: SOURCE +[Hera] [HADES][TEST ] [KRELTSC: 1613788764] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1614165819] Running SOURCE.returns_pair: SOURCE SWAP DROP 0< NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1615470360] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1616127282] Expected: Should return non-negative length +[Hera] [HADES][TEST ] [KRELTSC: 1616613222] Running SOURCE.has_addr: SOURCE DROP 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1617232239] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1617884646] Expected: Should return non-null address +[Hera] [HADES][TEST ] [KRELTSC: 1618363887] SOURCE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1618849197] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1619406432] Testing word: >IN +[Hera] [HADES][TEST ] [KRELTSC: 1619747892] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1620134124] Running >IN.initial: >IN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1620855831] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1621488435] Expected: Should return input offset +[Hera] [HADES][TEST ] [KRELTSC: 1621957575] Running >IN.advances: : TWIN >IN @ >IN @ - . CR ; TWIN +[Hera] [HADES][INFO ] [KRELTSC: 1622674578] ECW: w=0x3db9c830 func=0x3d6ae4e1 '>IN' +[Hera] [HADES][INFO ] [KRELTSC: 1623142878] ECW: w=0x3db964d0 func=0x3d6a5a8d '@' +[Hera] [HADES][INFO ] [KRELTSC: 1623592467] ECW: w=0x3db9c830 func=0x3d6ae4e1 '>IN' +[Hera] [HADES][INFO ] [KRELTSC: 1624067025] ECW: w=0x3db964d0 func=0x3d6a5a8d '@' +[Hera] [HADES][INFO ] [KRELTSC: 1624522368] ECW: w=0x3db97100 func=0x3d696d60 '-' +[Hera] [HADES][INFO ] [KRELTSC: 1624973637] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 1625465415] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1625894256] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1626365706] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1627000116] Expected: Should print: 0 (no advance inside compiled word) +[Hera] [HADES][TEST ] [KRELTSC: 1627557561] >IN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1628054715] === String Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1628673753] +[Hera] === Testing Module: I/O Words === +[Hera] [HADES][INFO ] [KRELTSC: 1629162087] Running I/O Words Tests (Module 9)... +[Hera] [HADES][TEST ] [KRELTSC: 1629654936] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1630228656] Testing word: . +[Hera] [HADES][TEST ] [KRELTSC: 1630578999] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1630957734] Running ..positive: 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1631547708] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1632166977] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 1632586977] Running ..negative: -42 . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 1633095534] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1633713396] Expected: Should print: -42 +[Hera] [HADES][TEST ] [KRELTSC: 1634120775] Running ..zero: 0 . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1634596425] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1635216555] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1635616521] Running ..max_int: 2147483647 . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1636198431] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1636829775] Expected: Should print: 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1637273001] Running ..min_int: -2147483648 . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1637850018] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1638468762] Expected: Should print: -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1638926583] Running ..multiple: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1639499652] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1640117577] Expected: Should print: 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1640536842] Running ..empty_stack: . +[Hera] [HADES][TEST ] [KRELTSC: 1640972067] Expected error occurred +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1641665403] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1642128726] .: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1642625019] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1643188785] Testing word: CR +[Hera] [HADES][TEST ] [KRELTSC: 1643534025] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1643944344] Running CR.basic: 42 . CR 43 . CR +[Hera] 42 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 1644568527] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1645205772] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 1645674135] Running CR.multiple: CR CR CR + + + +[Hera] [HADES][TEST ] [KRELTSC: 1646145795] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1646765442] Expected: Should print multiple newlines +[Hera] [HADES][TEST ] [KRELTSC: 1647255939] Running CR.no_stack_effect: DEPTH CR DEPTH = . CR + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1647910614] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1648532340] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 1648968930] Running CR.after_output: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1649582613] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1650204318] Expected: Should work after output +[Hera] [HADES][TEST ] [KRELTSC: 1650645507] CR: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1651111791] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1651676754] Testing word: SPACE +[Hera] [HADES][TEST ] [KRELTSC: 1652027538] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1652402619] Running SPACE.basic: 42 . SPACE 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 1653092952] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1653745485] Expected: Should add space between numbers +[Hera] [HADES][TEST ] [KRELTSC: 1654233357] Running SPACE.multiple: SPACE SPACE SPACE +[Hera] [HADES][INFO ] [KRELTSC: 1656032637] L8[TABLE]: Config 40 → 0 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 41,410000,10000,0,0,215,64,28,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 1657273695] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1657914111] Expected: Should print multiple spaces +[Hera] [HADES][TEST ] [KRELTSC: 1658385477] Running SPACE.no_stack_effect: DEPTH SPACE DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1659069699] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1659731073] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 1660173144] Running SPACE.with_text: 65 EMIT SPACE 66 EMIT CR +[Hera] A B +[Hera] [HADES][TEST ] [KRELTSC: 1660803690] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1661440011] Expected: Should space between chars +[Hera] [HADES][TEST ] [KRELTSC: 1661903418] SPACE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1662394272] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1662936198] Testing word: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 1663292190] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1663668237] Running SPACES.zero: 0 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 1664254263] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1664909547] Expected: Should print no spaces +[Hera] [HADES][TEST ] [KRELTSC: 1665437907] Running SPACES.one: 1 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 1665958266] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1666582449] Expected: Should print one space +[Hera] [HADES][TEST ] [KRELTSC: 1667014524] Running SPACES.multiple: 5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 1667523690] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1668187668] Expected: Should print five spaces +[Hera] [HADES][TEST ] [KRELTSC: 1668631125] Running SPACES.large: 20 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 1669209654] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1669817583] Expected: Should print twenty spaces +[Hera] [HADES][TEST ] [KRELTSC: 1670279877] Running SPACES.negative: -5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 1670756367] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1671401886] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1671835704] Running SPACES.with_output: 42 . 3 SPACES 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 1672524861] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1673166243] Expected: Should space output +[Hera] [HADES][TEST ] [KRELTSC: 1673584311] Running SPACES.empty_stack: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 1674047025] Expected error occurred +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1674786456] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1675251690] SPACES: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1675737777] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1676280480] Testing word: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 1676644074] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1677022347] Running EMIT.letter_A: 65 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 1677548208] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1678190955] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 1678603605] Running EMIT.letter_Z: 90 EMIT CR +[Hera] Z +[Hera] [HADES][TEST ] [KRELTSC: 1679114283] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1679745837] Expected: Should print: Z +[Hera] [HADES][TEST ] [KRELTSC: 1680145278] Running EMIT.digit: 48 EMIT CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1680653541] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1681293285] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1681692957] Running EMIT.space_char: 32 EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 1682209032] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1682855118] Expected: Should print space +[Hera] [HADES][TEST ] [KRELTSC: 1683268125] Running EMIT.newline: 10 EMIT + +[Hera] [HADES][TEST ] [KRELTSC: 1683715257] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1684345299] Expected: Should print newline +[Hera] [HADES][TEST ] [KRELTSC: 1684768512] Running EMIT.high_ascii: 127 EMIT CR +[Hera]  +[Hera] [HADES][TEST ] [KRELTSC: 1685314323] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1685946087] Expected: Should print DEL char +[Hera] [HADES][TEST ] [KRELTSC: 1686373689] Running EMIT.truncation: 321 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 1686893040] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1687546497] Expected: Should truncate to low byte +[Hera] [HADES][TEST ] [KRELTSC: 1688003289] Running EMIT.negative: -1 EMIT CR +[Hera] ÿ +[Hera] [HADES][TEST ] [KRELTSC: 1688514177] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1689158037] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1689598449] Running EMIT.sequence: 72 EMIT 73 EMIT 10 EMIT +[Hera] HI +[Hera] [HADES][TEST ] [KRELTSC: 1690189326] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1690820775] Expected: Should print: HI +[Hera] [HADES][TEST ] [KRELTSC: 1691238885] Running EMIT.empty_stack: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 1691693598] Expected error occurred +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1692388698] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1692852420] EMIT: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1693351611] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1693900761] Testing word: KEY +[Hera] [HADES][TEST ] [KRELTSC: 1694242326] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1694633682] KEY: 0 passed, 0 failed, 4 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1695108828] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1695659868] Testing word: ?KEY +[Hera] [HADES][TEST ] [KRELTSC: 1696007418] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1696398102] ?KEY: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1696874823] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1697432394] Testing word: TYPE +[Hera] [HADES][TEST ] [KRELTSC: 1697778642] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1698170082] Running TYPE.basic_string: HERE S" Hello" DUP >R HERE SWAP CMOVE HERE R> TYPE CR +[Hera] Hello +[Hera] [HADES][TEST ] [KRELTSC: 1699090113] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1699741827] Expected: Should print: Hello +[Hera] [HADES][TEST ] [KRELTSC: 1700160147] Running TYPE.empty_string: HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1700708415] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1701339969] Expected: Should print nothing +[Hera] [HADES][TEST ] [KRELTSC: 1701778554] Running TYPE.single_char: HERE 65 OVER C! 1 TYPE CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 1702425543] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1703053989] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 1703454144] Running TYPE.numbers: HERE S" 12345" DUP >R HERE SWAP CMOVE HERE R> TYPE CR +[Hera] 12345 +[Hera] [HADES][TEST ] [KRELTSC: 1704324006] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1704956736] Expected: Should print: 12345 +[Hera] [HADES][TEST ] [KRELTSC: 1705372851] Running TYPE.zero_length: PAD 0 TYPE +[Hera] [HADES][TEST ] [KRELTSC: 1705872000] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1706510043] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 1706956587] Running TYPE.one_item: PAD TYPE +[Hera] [HADES][ERROR] [KRELTSC: 1707424614] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1707840624] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1708542381] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1709004654] Running TYPE.empty_stack: TYPE +[Hera] [HADES][ERROR] [KRELTSC: 1709433222] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1709821176] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1710540510] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1711002069] TYPE: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1711475976] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1712013051] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 1712379963] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1712753322] Running COUNT.basic: HERE S" Test" DROP C@ HERE 1+ SWAP COUNT . . CR +[Hera] 0 85 +[Hera] [HADES][TEST ] [KRELTSC: 1713588345] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1714241340] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 1714706679] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 1715377377] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1716010695] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 1716472254] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 1717196901] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1717827090] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 1718265507] Running COUNT.zero_addr_plus_one: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1718994585] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1719628050] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 1720066593] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 1720513305] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1720907286] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1721600139] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1722062160] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1722554883] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1723247799] Testing word: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 1723602636] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1723976184] Running EXPECT.zero_length: PAD 0 EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 1724803227] Test passed +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1725518130] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 1725966333] Running EXPECT.one_item: PAD EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 1726472076] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1727234712] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1727709165] Running EXPECT.empty_stack: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 1728170283] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1728885858] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1729352142] EXPECT: 3 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1729848288] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1730388996] Testing word: SPAN +[Hera] [HADES][TEST ] [KRELTSC: 1730736252] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1731135042] Running SPAN.zero_input: PAD 0 EXPECT SPAN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1732005072] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1732654938] Expected: Should show zero +[Hera] [HADES][TEST ] [KRELTSC: 1733106816] Running SPAN.variable_test: SPAN @ SPAN @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1733778942] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1734411000] Expected: Should be consistent +[Hera] [HADES][TEST ] [KRELTSC: 1734834129] Running SPAN.address_test: SPAN 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1735511295] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1736146230] Expected: Should be valid address +[Hera] [HADES][TEST ] [KRELTSC: 1736586684] SPAN: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1737065001] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1737626415] Testing word: WORD +[Hera] [HADES][TEST ] [KRELTSC: 1737971676] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1738346505] Running WORD.empty_input: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1739461269] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1740104289] Expected: Should handle empty input +[Hera] [HADES][TEST ] [KRELTSC: 1740580506] Running WORD.space_delim: 32 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1741099815] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1741756590] Expected: Should use space as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 1742224029] Running WORD.newline_delim: 10 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1742723997] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1743393855] Expected: Should use newline as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 1743888027] Running WORD.tab_delim: 9 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1744374114] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1745006571] Expected: Should use tab as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 1745464287] Running WORD.comma_delim: 44 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1745976456] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1746614856] Expected: Should use comma as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 1747079838] Running WORD.skip_leading: BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1747589403] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1748237631] Expected: Should skip leading spaces +[Hera] [HADES][TEST ] [KRELTSC: 1748688438] Running WORD.single_char: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1749301197] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1749943860] Expected: Should parse single character +[Hera] [HADES][TEST ] [KRELTSC: 1750409094] Running WORD.long_word: BL WORD COUNT 0 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1751045016] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1751674764] Expected: Should parse long word +[Hera] [HADES][TEST ] [KRELTSC: 1752126201] Running WORD.zero_delim: 0 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1752603069] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1753234959] Expected: Should handle null delimiter +[Hera] [HADES][TEST ] [KRELTSC: 1753694586] Running WORD.high_ascii: 127 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1754194113] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1754826192] Expected: Should handle DEL delimiter +[Hera] [HADES][TEST ] [KRELTSC: 1755283467] Running WORD.count_format: BL WORD C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1755879174] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1756519443] Expected: Should have count byte +[Hera] [HADES][TEST ] [KRELTSC: 1756957797] Running WORD.count_value: BL WORD COUNT SWAP DROP . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1757638659] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1758279684] Expected: Should return count +[Hera] [HADES][TEST ] [KRELTSC: 1758697290] Running WORD.empty_stack: WORD +[Hera] [HADES][TEST ] [KRELTSC: 1759148034] Expected error occurred +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1759841517] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1760319771] Running WORD.multi_delim: BL WORD DROP BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 1760923206] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1761558855] Expected: Should handle multiple parses +[Hera] [HADES][TEST ] [KRELTSC: 1762027743] WORD: 14 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1762520214] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1763068188] Testing word: BASE_OUTPUT +[Hera] [HADES][TEST ] [KRELTSC: 1763448645] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1763825364] Running BASE_OUTPUT.decimal: 10 BASE ! 255 . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1764473487] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1765139019] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 1765547238] Running BASE_OUTPUT.hex: 16 BASE ! 255 . CR +[Hera] 597 +[Hera] [HADES][TEST ] [KRELTSC: 1766174130] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1766862111] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 1767275664] Running BASE_OUTPUT.octal: 8 BASE ! 64 . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 1767875550] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1768537554] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 1768989327] Running BASE_OUTPUT.binary: 5 2 BASE ! . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1769589108] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1770251574] Expected: Should print: 101 +[Hera] [HADES][TEST ] [KRELTSC: 1770659604] Running BASE_OUTPUT.base_restore: BASE @ DECIMAL 255 16 BASE ! . BASE ! CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1771513002] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1772177547] Expected: Should restore base +[Hera] [HADES][TEST ] [KRELTSC: 1772596770] BASE_OUTPUT: 5 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1773117402] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1773665292] Testing word: FORMAT_COMBO +[Hera] [HADES][TEST ] [KRELTSC: 1774050180] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1774425534] Running FORMAT_COMBO.number_space_number: DECIMAL 42 . SPACE 43 . CR +[Hera] 42 [HADES][INFO ] [KRELTSC: 1775237205] L8[TABLE]: Config 0 → 1 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 42,420000,10000,0,0,208,68,29,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 1776507810] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1777194048] Expected: Should format: 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 1777617849] Running FORMAT_COMBO.multi_line: DECIMAL 1 . CR 2 . CR 3 . CR +[Hera] 1 +[Hera] 2 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1778453292] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1779133713] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 1779604281] Running FORMAT_COMBO.indented: DECIMAL 5 SPACES 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1780289406] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1781075856] Expected: Should indent number +[Hera] [HADES][TEST ] [KRELTSC: 1781514315] Running FORMAT_COMBO.table_format: DECIMAL 1 . 3 SPACES 10 . 3 SPACES 100 . CR +[Hera] 1 10 100 +[Hera] [HADES][TEST ] [KRELTSC: 1782410574] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1783079781] Expected: Should format table +[Hera] [HADES][TEST ] [KRELTSC: 1783508937] FORMAT_COMBO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1784061426] === I/O Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1784654319] +[Hera] === Testing Module: Block Words === +[Hera] [HADES][INFO ] [KRELTSC: 1785158508] Running Block Words Tests (Module 16)... +[Hera] [HADES][TEST ] [KRELTSC: 1785689409] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1786270437] Testing word: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 1786625463] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1787003400] Running BLOCK.basic: 1 BLOCK DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 1788418758] Test passed +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1789059993] Expected: Should return block address +[Hera] [HADES][TEST ] [KRELTSC: 1789518654] Running BLOCK.zero_block: 0 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 1790008290] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1790716221] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 1791146973] Running BLOCK.large_block: 65536 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 1791711978] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1792424109] Expected: Should handle large number +[Hera] [HADES][TEST ] [KRELTSC: 1792877289] Running BLOCK.negative: -1 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 1793326983] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1794035061] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1794469194] Running BLOCK.empty_stack: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 1794926637] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1795621317] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1796112843] BLOCK: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1796640636] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1797200454] Testing word: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 1797559365] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1797937449] Running BUFFER.basic: 1 BUFFER DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 1798837677] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1799481978] Expected: Should return buffer address +[Hera] [HADES][TEST ] [KRELTSC: 1799955402] Running BUFFER.zero_block: 0 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 1800502074] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1801252614] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 1801694517] Running BUFFER.flush_dirty: 2 BLOCK 1+ 2 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 1802364585] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1803019344] Expected: Should flush if dirty +[Hera] [HADES][TEST ] [KRELTSC: 1803448290] Running BUFFER.empty_stack: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 1803921756] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1804639788] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1805100738] BUFFER: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1805608854] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1806163716] Testing word: UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 1806532371] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1806907683] Running UPDATE.basic: 1 BLOCK UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 1807768683] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1808422497] Expected: Should mark block dirty +[Hera] [HADES][TEST ] [KRELTSC: 1808877147] Running UPDATE.multiple: 1 BLOCK UPDATE UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 1809455298] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1810103085] Expected: Should handle multiple updates +[Hera] [HADES][TEST ] [KRELTSC: 1810591335] Running UPDATE.no_block: 0 SCR ! UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 1811176353] Expected error occurred +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1811924415] Expected: Should error: blk=0 is invalid +[Hera] [HADES][TEST ] [KRELTSC: 1812403551] UPDATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1812911541] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1813467096] Testing word: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1813850430] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1814225280] Running SAVE-BUFFERS.basic: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1815148104] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1815835602] Expected: Should flush all buffers +[Hera] [HADES][TEST ] [KRELTSC: 1816281873] Running SAVE-BUFFERS.dirty_blocks: 1 BLOCK UPDATE SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1816988481] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1817665038] Expected: Should save dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 1818110406] Running SAVE-BUFFERS.no_dirty: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1818628182] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1819317360] Expected: Should handle no dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 1819794564] SAVE-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1820314440] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1820875014] Testing word: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1821278802] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1821659049] Running EMPTY-BUFFERS.basic: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1822379328] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1823062227] Expected: Should invalidate all buffers +[Hera] [HADES][TEST ] [KRELTSC: 1823543442] Running EMPTY-BUFFERS.after_use: 1 BLOCK EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1824141564] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1824819738] Expected: Should invalidate used buffers +[Hera] [HADES][TEST ] [KRELTSC: 1825336170] Running EMPTY-BUFFERS.dirty_blocks: 1 BLOCK UPDATE EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 1826000757] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1826758647] Expected: Should handle dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 1827287070] EMPTY-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1827841428] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1828398369] Testing word: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 1828749930] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1829135385] Running FLUSH.basic: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 1829665236] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1830314745] Expected: Should save and invalidate buffers +[Hera] [HADES][TEST ] [KRELTSC: 1830806775] Running FLUSH.dirty_blocks: 1 BLOCK UPDATE FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 1831437342] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1832089917] Expected: Should flush dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 1832544357] Running FLUSH.after_empty: EMPTY-BUFFERS FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 1833084918] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1833739026] Expected: Should handle empty buffers +[Hera] [HADES][TEST ] [KRELTSC: 1834197771] FLUSH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1834680435] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1835237187] Testing word: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 1835583477] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1835973174] Running LOAD.basic: 1 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 1836613485] Test passed +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1837256001] Expected: Should interpret block 1 +[Hera] [HADES][TEST ] [KRELTSC: 1837702692] Running LOAD.zero_block: 0 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 1838266269] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1838963007] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 1839395208] Running LOAD.nonexistent: 9999 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 1839856725] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1840567806] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 1841031234] Running LOAD.empty_stack: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 1841470848] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1842178317] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1842643173] LOAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1843128042] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1843684605] Testing word: LIST +[Hera] [HADES][TEST ] [KRELTSC: 1844032239] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1844419668] 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: 1852319028] Test passed +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1852969923] Expected: Should display block 1 +[Hera] [HADES][TEST ] [KRELTSC: 1853410482] Running LIST.zero_block: 0 LIST +[Hera] [HADES][TEST ] [KRELTSC: 1853881050] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1854588120] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 1855017087] Running LIST.nonexistent: 9999 LIST +[Hera] [HADES][TEST ] [KRELTSC: 1855474173] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1856162952] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 1856618778] Running LIST.empty_stack: LIST +[Hera] [HADES][TEST ] [KRELTSC: 1857076746] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1857775542] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1858239222] LIST: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1858716510] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1859288508] Testing word: SCR +[Hera] [HADES][TEST ] [KRELTSC: 1859635155] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1860022416] Running SCR.basic: SCR @ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1860698301] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1861426875] Expected: Should show current block +[Hera] [HADES][TEST ] [KRELTSC: 1861884444] 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: 1869476007] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1870104726] Expected: Should update after LIST +[Hera] [HADES][TEST ] [KRELTSC: 1870544361] Running SCR.after_load: 1 LOAD SCR @ . CR +[Hera] [HADES][TEST ] [KRELTSC: 1871049327] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1871695938] Expected: Should update after LOAD +[Hera] [HADES][TEST ] [KRELTSC: 1872139815] SCR: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1872612210] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1873166379] Testing word: THRU +[Hera] [HADES][TEST ] [KRELTSC: 1873528608] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1873904214] Running THRU.single_block: 1 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1874676720] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1875316338] Expected: Should load single block (1-1) +[Hera] [HADES][TEST ] [KRELTSC: 1875800934] Running THRU.ascending: 1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1876303317] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1876943670] Expected: Should load blocks 1-3 in order +[Hera] [HADES][TEST ] [KRELTSC: 1877420559] Running THRU.descending: 3 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1877967840] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1878600213] Expected: Should auto-swap and load 1-3 +[Hera] [HADES][TEST ] [KRELTSC: 1879066203] Running THRU.same_block: 2 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1879542882] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1880188548] Expected: Should load single block (2-2) +[Hera] [HADES][TEST ] [KRELTSC: 1880669280] Running THRU.zero_start: 0 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1881135081] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1881838644] Expected: Should reject block 0 as start +[Hera] [HADES][TEST ] [KRELTSC: 1882312656] Running THRU.zero_end: 1 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1882762602] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1883451759] Expected: Should reject block 0 as end +[Hera] [HADES][TEST ] [KRELTSC: 1883927346] Running THRU.both_zero: 0 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1884370299] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1885060023] Expected: Should reject both blocks as 0 +[Hera] [HADES][TEST ] [KRELTSC: 1885531536] Running THRU.invalid_start: 9999 10000 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1886046708] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1886741157] Expected: Should reject invalid start block +[Hera] [HADES][TEST ] [KRELTSC: 1887251730] Running THRU.invalid_end: 1 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1887740148] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1888445244] Expected: Should reject invalid end block +[Hera] [HADES][TEST ] [KRELTSC: 1888919340] Running THRU.both_invalid: 9998 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1889411202] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1890124929] Expected: Should reject both invalid blocks +[Hera] [HADES][TEST ] [KRELTSC: 1890624498] Running THRU.empty_stack: THRU +[Hera] [HADES][TEST ] [KRELTSC: 1891075704] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1891770027] Expected: Should cause stack underflow (no args) +[Hera] [HADES][TEST ] [KRELTSC: 1892314956] Running THRU.one_arg: 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1892742012] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1893429405] Expected: Should cause stack underflow (one arg) +[Hera] [HADES][TEST ] [KRELTSC: 1893936975] Running THRU.small_range: 1 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1894440387] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1895079585] Expected: Should load 2-block range +[Hera] [HADES][TEST ] [KRELTSC: 1895644506] Running THRU.medium_range: 1 5 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1896192795] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1896909546] Expected: Should load 5-block range +[Hera] [HADES][TEST ] [KRELTSC: 1897362033] Running THRU.negative_start: -1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1897849107] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1898542359] Expected: Should handle negative start +[Hera] [HADES][TEST ] [KRELTSC: 1899017463] Running THRU.negative_end: 1 -3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1899485007] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1900180359] Expected: Should handle negative end +[Hera] [HADES][TEST ] [KRELTSC: 1900647336] Running THRU.both_negative: -3 -1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 1901137959] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1901834130] Expected: Should handle both negative +[Hera] [HADES][TEST ] [KRELTSC: 1902290691] THRU: 17 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1902819198] === Block Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1903428744] +[Hera] === Testing Module: Dictionary Words === +[Hera] [HADES][INFO ] [KRELTSC: 1903979616] Running Dictionary Words Tests (Module 4)... +[Hera] [HADES][TEST ] [KRELTSC: 1904514948] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 1904863485] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1905250389] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1905842421] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1906492938] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1906901052] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 SWAP / +[Hera] [HADES][TEST ] [KRELTSC: 1907643717] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1908293415] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes on 64-bit) +[Hera] [HADES][TEST ] [KRELTSC: 1908905859] Running HERE.after_c_comma: HERE 65 C, HERE SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1909614084] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1910255571] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 1910680275] Running HERE.after_allot: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1911393309] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1912025178] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 1912436232] Running HERE.stability: HERE DUP HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1913047269] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1913689995] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 1914093909] HERE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1914611664] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 1914964716] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1915342023] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1916019168] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1916654292] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 1917058038] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1917721491] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1918362537] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1918761453] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 1919431689] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1920080715] Expected: Should print: -4 +[Hera] [HADES][TEST ] [KRELTSC: 1920483390] Running ALLOT.large: HERE 100 ALLOT HERE SWAP - . CR +[Hera] 100 +[Hera] [HADES][TEST ] [KRELTSC: 1921147746] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1921811955] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 1922219250] Running ALLOT.after_use: ALIGN HERE 10 ALLOT 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1923016830] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1923653676] Expected: Should store and retrieve +[Hera] [HADES][TEST ] [KRELTSC: 1924116054] Running ALLOT.empty_stack: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 1924589415] Expected error occurred +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1925283696] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1925744142] ALLOT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1926238755] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 1926570576] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1926952629] Running ,.basic: 42 , HERE 1 CELLS - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1927578471] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1928213784] Expected: Should compile 42 +[Hera] [HADES][TEST ] [KRELTSC: 1928633490] Running ,.negative: -999 , HERE 1 CELLS - @ . CR +[Hera] [HADES][INFO ] [KRELTSC: 1942340106] L8[TABLE]: Config 1 → 2 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 43,430000,10000,0,0,177,72,27,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 1943736900] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1944359592] Expected: Should compile -999 +[Hera] [HADES][TEST ] [KRELTSC: 1944795363] Running ,.zero: 0 , HERE 1 CELLS - @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1945410558] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1946033754] Expected: Should compile 0 +[Hera] [HADES][TEST ] [KRELTSC: 1946435820] Running ,.max_int: 2147483647 , HERE 1 CELLS - @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1947162966] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1947779169] Expected: Should compile max int +[Hera] [HADES][TEST ] [KRELTSC: 1948217250] Running ,.min_int: -2147483648 , HERE 1 CELLS - @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1948948323] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1949565408] Expected: Should compile min int +[Hera] [HADES][TEST ] [KRELTSC: 1950006030] Running ,.multiple: 10 , 20 , HERE 1 CELLS - @ . HERE 1 CELLS - @ . CR +[Hera] 20 20 +[Hera] [HADES][TEST ] [KRELTSC: 1950839478] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1951468323] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 1951905585] Running ,.empty_stack: , +[Hera] [HADES][TEST ] [KRELTSC: 1952343330] Expected error occurred +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1953048930] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1953819567] ,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1954404291] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 1954742916] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1955118543] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 1955762634] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1956393810] Expected: Should compile byte 65 +[Hera] [HADES][TEST ] [KRELTSC: 1956827376] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1957430454] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1958053272] Expected: Should compile byte 0 +[Hera] [HADES][TEST ] [KRELTSC: 1958488245] Running C,.high_byte: 255 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1959120786] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1959758157] Expected: Should compile byte 255 +[Hera] [HADES][TEST ] [KRELTSC: 1960196427] Running C,.truncation: 256 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1960841484] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1961475516] Expected: Should truncate to 0 +[Hera] [HADES][TEST ] [KRELTSC: 1961899695] Running C,.negative: -1 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1962523185] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1963162908] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1963618524] Running C,.multiple: 65 C, 66 C, HERE 2 - C@ . HERE 1 - C@ . CR +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 1964421858] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1965042639] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 1965479313] Running C,.empty_stack: C, +[Hera] [HADES][TEST ] [KRELTSC: 1965934530] Expected error occurred +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1966616295] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1967087640] C,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1967556885] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 1967906325] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1968282036] Running 2,.basic: 12345 67890 2, HERE 2 CELLS - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 1969056180] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1969678851] Expected: Should compile double +[Hera] [HADES][TEST ] [KRELTSC: 1970119095] Running 2,.zero: 0 0 2, HERE 2 CELLS - 2@ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1970795988] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1971419226] Expected: Should compile zero double +[Hera] [HADES][TEST ] [KRELTSC: 1971872091] Running 2,.negative: -1000 -2000 2, HERE 2 CELLS - 2@ . . CR +[Hera] -2000 -1000 +[Hera] [HADES][TEST ] [KRELTSC: 1972656819] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1973285979] Expected: Should compile negative double +[Hera] [HADES][TEST ] [KRELTSC: 1973757723] Running 2,.large: 2147483647 -1 2, HERE 2 CELLS - 2@ . . CR +[Hera] -1 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1974553329] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1975178793] Expected: Should compile large double +[Hera] [HADES][TEST ] [KRELTSC: 1975635837] Running 2,.one_item: 42 2, +[Hera] [HADES][TEST ] [KRELTSC: 1976088030] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1976781240] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1977242463] Running 2,.empty_stack: 2, +[Hera] [HADES][TEST ] [KRELTSC: 1977652005] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1978344375] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1978806375] 2,: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1979273856] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 1979622792] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1979999175] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1980564663] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1981191051] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1981596414] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1982205288] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1982844465] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1983243444] Running PAD.stability: PAD DUP PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1983856161] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1984528056] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 1984981362] Running PAD.usable: PAD 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1985595843] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1986228636] Expected: Should be usable memory +[Hera] [HADES][TEST ] [KRELTSC: 1986696726] PAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1987179012] Testing word: SP@ +[Hera] [HADES][TEST ] [KRELTSC: 1987520934] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1987896561] Running SP@.depth_effect: 42 SP@ SWAP DROP SP@ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1988674779] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1989323868] Expected: Should show stack effect +[Hera] [HADES][TEST ] [KRELTSC: 1989767409] Running SP@.empty_stack: DEPTH 0= SP@ AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1990410828] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1991048304] Expected: Should work on empty stack +[Hera] [HADES][TEST ] [KRELTSC: 1991497221] Running SP@.multiple_items: 1 2 3 SP@ SWAP DROP SWAP DROP SWAP DROP SP@ = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1992350934] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1992988725] Expected: Should track changes +[Hera] [HADES][TEST ] [KRELTSC: 1993412862] SP@: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1993885215] Testing word: SP! +[Hera] [HADES][TEST ] [KRELTSC: 1994228250] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1994604045] Running SP!.basic_restore: 1 2 3 SP@ 4 5 6 DROP DROP DROP SP! DEPTH . +[Hera] 3 [HADES][TEST ] [KRELTSC: 1995496671] Test passed +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1996091391] Expected: Should restore stack +[Hera] [HADES][TEST ] [KRELTSC: 1996521723] Running SP!.invalid_addr: 0 SP! +[Hera] [HADES][TEST ] [KRELTSC: 1996986537] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1997690037] Expected: Should cause error +[Hera] [HADES][TEST ] [KRELTSC: 1998103296] Running SP!.empty_stack: SP! +[Hera] [HADES][TEST ] [KRELTSC: 1998537576] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1999233495] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1999693710] SP!: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2000163984] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 2000519220] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2000894490] Running LATEST.basic: LATEST LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2001549858] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2002188258] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2002597296] Running LATEST.stability: LATEST DUP LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2003236599] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2003886549] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 2004290106] LATEST: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2004787302] Testing word: COMPILATION +[Hera] [HADES][TEST ] [KRELTSC: 2005165491] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2005557897] Running COMPILATION.here_comma_sequence: HERE 10 , 20 , 30 , HERE SWAP - 12 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2006396238] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2007067230] Expected: Should advance HERE by 12 +[Hera] [HADES][TEST ] [KRELTSC: 2007512115] Running COMPILATION.mixed_compilation: HERE 42 , 65 C, 100 200 2, HERE SWAP - 13 = . CR +[Hera] [HADES][INFO ] [KRELTSC: 2008754748] L8[TABLE]: Config 2 → 3 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 44,440000,10000,0,0,199,77,28,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2010071196] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2010739122] Expected: Should advance correctly +[Hera] [HADES][TEST ] [KRELTSC: 2011470993] Running COMPILATION.allot_comma_combo: HERE 10 ALLOT 99 , HERE SWAP - 14 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2012318049] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2012986101] Expected: Should combine allot and comma +[Hera] [HADES][TEST ] [KRELTSC: 2013456585] Running COMPILATION.pad_isolation: PAD 999 OVER ! HERE 42 , PAD @ 999 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2014286148] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2014949433] Expected: PAD should be isolated +[Hera] [HADES][TEST ] [KRELTSC: 2015389551] COMPILATION: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2015919843] Testing word: STACK_MGMT +[Hera] [HADES][TEST ] [KRELTSC: 2016308469] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2016681534] Running STACK_MGMT.sp_round_trip: 42 43 SP@ >R 44 45 R> SP! . . CR +[Hera] 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 2017454208] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2018131227] Expected: Should print: 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 2018550786] Running STACK_MGMT.depth_preservation: 1 2 3 DEPTH >R SP@ >R 4 5 6 R> SP! R> DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2019449649] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2020109952] Expected: Should preserve depth +[Hera] [HADES][TEST ] [KRELTSC: 2020555110] STACK_MGMT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2021093067] === Dictionary Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2021720862] +[Hera] === Testing Module: Dictionary Manipulation Words === +[Hera] [HADES][INFO ] [KRELTSC: 2022319425] Running Dictionary Manipulation Words Tests (Module 14)... +[Hera] [HADES][TEST ] [KRELTSC: 2022997599] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2023686651] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2024045079] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2024465310] Running CREATE.basic: CREATE test1 42 , test1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2025706662] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2026351971] Expected: Should create and store +[Hera] [HADES][TEST ] [KRELTSC: 2026853493] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2027341302] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2028042807] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 2028485004] Running CREATE.redefine_shadows: CREATE T 1 , CREATE T 2 , T @ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 2029387227] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2030040348] Expected: Newest definition should win (prints 2) +[Hera] [HADES][TEST ] [KRELTSC: 2030556150] Running CREATE.duplicate: CREATE test2 CREATE test2 +[Hera] [HADES][TEST ] [KRELTSC: 2031222858] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2031869721] Expected: Should allow redefinition (latest shadows) +[Hera] [HADES][TEST ] [KRELTSC: 2032406313] CREATE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2032949226] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2033594808] Testing word: FORGET +[Hera] [HADES][TEST ] [KRELTSC: 2033954223] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2034332706] Running FORGET.basic: CREATE temp1 FORGET temp1 +[Hera] [HADES][TEST ] [KRELTSC: 2036370021] Test passed +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2037047649] Expected: Should forget word +[Hera] [HADES][TEST ] [KRELTSC: 2037464604] Running FORGET.nonexistent: FORGET nonexistent +[Hera] [HADES][TEST ] [KRELTSC: 2038156827] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2038864989] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 2039331798] Running FORGET.protected: FORGET FORGET +[Hera] [HADES][TEST ] [KRELTSC: 2039869923] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2040619392] Expected: Should protect system words +[Hera] [HADES][TEST ] [KRELTSC: 2041170138] FORGET: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2041773762] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2042612460] Testing word: IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2043093150] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2043633543] Running IMMEDIATE.basic: : test3 42 ; IMMEDIATE test3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2045805867] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2046949023] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2047875039] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2048743725] Expected: Should execute immediately +[Hera] [HADES][TEST ] [KRELTSC: 2049363729] Running IMMEDIATE.already_immediate: : test4 43 ; IMMEDIATE IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2050695927] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2051653758] Expected: Should handle double immediate +[Hera] [HADES][TEST ] [KRELTSC: 2052233652] IMMEDIATE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2052747627] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2053393902] Testing word: FIND +[Hera] [HADES][TEST ] [KRELTSC: 2053827636] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2054210109] Running FIND.existing: FIND DUP . CR +[Hera] 1035557264 +[Hera] [HADES][TEST ] [KRELTSC: 2055318846] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2055970749] Expected: Should find system word +[Hera] [HADES][TEST ] [KRELTSC: 2056409082] Running FIND.user_word: : test5 44 ; FIND test5 . CR +[Hera] 1035723328 +[Hera] [HADES][TEST ] [KRELTSC: 2057312586] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2057959911] Expected: Should find user word +[Hera] [HADES][TEST ] [KRELTSC: 2058389445] Running FIND.nonexistent: FIND nonexistent . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2059008336] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2059643292] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 2060058273] Running FIND.empty: FIND +[Hera] [HADES][TEST ] [KRELTSC: 2060475186] Expected error occurred +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2061167199] Expected: Should error (no token) +[Hera] [HADES][TEST ] [KRELTSC: 2061609984] FIND: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2062106487] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2062745832] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2063127255] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2063510862] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2064115053] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2064796503] Expected: Should set current to context +[Hera] [HADES][TEST ] [KRELTSC: 2065263207] Running DEFINITIONS.multiple: FORTH DEFINITIONS DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2065867230] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2066545425] Expected: Should be idempotent +[Hera] [HADES][TEST ] [KRELTSC: 2066970759] DEFINITIONS: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2067482004] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2068121811] Testing word: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 2068653174] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2069030376] Running SMUDGE.during_def: : test6 SMUDGE 45 ; +[Hera] [HADES][TEST ] [KRELTSC: 2069656869] Test passed +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2070326643] Expected: Should hide incomplete def +[Hera] [HADES][TEST ] [KRELTSC: 2070801432] Running SMUDGE.outside_def: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 2071331220] Expected error occurred +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2072043876] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 2072487858] SMUDGE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2072994672] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2073634605] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 2073991773] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2074368828] Running LATEST.basic: LATEST @ . CR +[Hera] 1035597888 +[Hera] [HADES][TEST ] [KRELTSC: 2075079468] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2075734584] Expected: Should show latest word +[Hera] [HADES][TEST ] [KRELTSC: 2076179679] Running LATEST.after_def: : test7 46 ; LATEST @ . CR +[Hera] 1035618632 +[Hera] [HADES][TEST ] [KRELTSC: 2076998994] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2077649490] Expected: Should update after def +[Hera] [HADES][TEST ] [KRELTSC: 2078088558] Running LATEST.after_forget: CREATE test8 FORGET test8 LATEST @ . CR +[Hera] 1035618632 +[Hera] [HADES][TEST ] [KRELTSC: 2079094395] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2079737142] Expected: Should update after forget +[Hera] [HADES][TEST ] [KRELTSC: 2080192044] LATEST: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2080680567] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2081341563] Testing word: >BODY +[Hera] [HADES][TEST ] [KRELTSC: 2081692305] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2082085131] Running >BODY.basic: CREATE test9 ' test9 >BODY . CR +[Hera] 1035724408 +[Hera] [HADES][TEST ] [KRELTSC: 2083374048] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2084041680] Expected: Should get param field +[Hera] [HADES][TEST ] [KRELTSC: 2084476674] Running >BODY.variable: VARIABLE var1 ' var1 >BODY . CR +[Hera] 1035724648 +[Hera] [HADES][TEST ] [KRELTSC: 2085483771] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2086122822] Expected: Should get var storage +[Hera] [HADES][TEST ] [KRELTSC: 2086562772] Running >BODY.nonexistent: ' NONEXISTENT >BODY +[Hera] [HADES][ERROR] [KRELTSC: 2087089578] ': word 'NONEXISTENT' not found +[Hera] [HADES][TEST ] [KRELTSC: 2087552880] Expected error occurred +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2088251991] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 2088707523] >BODY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2089191699] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2089848726] Testing word: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 2090206692] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2090583726] Running HIDDEN.basic: : test10 HIDDEN 47 ; +[Hera] [HADES][TEST ] [KRELTSC: 2091275004] Test passed +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2091953220] Expected: Should hide word +[Hera] [HADES][TEST ] [KRELTSC: 2092356966] Running HIDDEN.outside_def: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 2092879530] Expected error occurred +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2093606949] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 2094049629] HIDDEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2094566691] === Dictionary Manipulation Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2095256730] +[Hera] === Testing Module: Vocabulary Words === +[Hera] [HADES][INFO ] [KRELTSC: 2095806027] Running Vocabulary Words Tests (Module 15)... +[Hera] [HADES][TEST ] [KRELTSC: 2096342136] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2096974950] Testing word: VOCABULARY +[Hera] [HADES][TEST ] [KRELTSC: 2097375420] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2097772278] Running VOCABULARY.basic: VOCABULARY TEST-VOC1 TEST-VOC1 DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2099748987] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2100436128] Expected: Should create vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 2100881475] Running VOCABULARY.create_and_switch: VOCABULARY MYVOC MYVOC DEFINITIONS CONTEXT @ . CR +[Hera] 1035725320 +[Hera] [HADES][TEST ] [KRELTSC: 2102753625] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2103427683] Expected: Should create and switch +[Hera] [HADES][TEST ] [KRELTSC: 2103873030] Running VOCABULARY.word_isolation: VOCABULARY ISOLATED ISOLATED DEFINITIONS : ISOWORD 99 ; FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2106026874] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2106716598] Expected: Should create word in isolated vocab +[Hera] [HADES][TEST ] [KRELTSC: 2107217406] Running VOCABULARY.cross_vocab_access: VOCABULARY V1 V1 DEFINITIONS : V1WORD 11 ; FORTH V1WORD . CR +[Hera] [HADES][INFO ] [KRELTSC: 2109265872] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2109756432] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 11 +[Hera] [HADES][TEST ] [KRELTSC: 2110327968] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2111006604] Expected: Should access word across vocabs +[Hera] [HADES][TEST ] [KRELTSC: 2111496345] Running VOCABULARY.multiple_vocabs: VOCABULARY VA VOCABULARY VB VOCABULARY VC VA DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2113105869] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2113778982] Expected: Should create multiple vocabs +[Hera] [HADES][TEST ] [KRELTSC: 2114248647] Running VOCABULARY.duplicate: VOCABULARY TESTVOC VOCABULARY TESTVOC +[Hera] [HADES][ERROR] [KRELTSC: 2114996415] VOCABULARY: duplicate 'TESTVOC' +[Hera] [HADES][TEST ] [KRELTSC: 2115425172] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2116156539] Expected: Should handle duplicate +[Hera] [HADES][TEST ] [KRELTSC: 2116623810] Running VOCABULARY.empty_name: VOCABULARY +[Hera] [HADES][ERROR] [KRELTSC: 2117131170] VOCABULARY: missing name +[Hera] [HADES][TEST ] [KRELTSC: 2117532501] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2118248538] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 2118722760] VOCABULARY: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2119270629] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2119854786] Testing word: FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2120216070] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2120615406] Running FORTH.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2121675444] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2122324113] Expected: Should select FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 2122773072] Running FORTH.persistence: FORTH : TEST1 42 ; TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2123481717] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2123953377] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2124524661] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2125176081] Expected: Should find word in FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2125688229] Running FORTH.from_other: VOCABULARY OTHER-VOC OTHER-VOC FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2126960304] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2127624702] Expected: Should return to FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2128060473] FORTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2128549710] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2129129205] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2129521191] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2129896839] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2130974223] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2131673649] Expected: Should set current vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 2132138778] Running DEFINITIONS.new_vocab: VOCABULARY TEST-VOC6 TEST-VOC6 DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2133519864] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2134197219] Expected: Should set new current +[Hera] [HADES][TEST ] [KRELTSC: 2134630827] Running DEFINITIONS.word_creation: VOCABULARY TEST-VOC7 TEST-VOC7 DEFINITIONS : TEST2 43 ; +[Hera] [HADES][TEST ] [KRELTSC: 2136166851] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2136843324] Expected: Should create in correct vocab +[Hera] [HADES][TEST ] [KRELTSC: 2137317273] DEFINITIONS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2137922997] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2138503584] Testing word: CONTEXT +[Hera] [HADES][TEST ] [KRELTSC: 2138865645] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2139249231] Running CONTEXT.basic: CONTEXT @ . CR +[Hera] 1035728224 +[Hera] [HADES][TEST ] [KRELTSC: 2139955944] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2140600140] Expected: Should show current context +[Hera] [HADES][TEST ] [KRELTSC: 2141054412] Running CONTEXT.modify: CONTEXT @ 1+ CONTEXT ! +[Hera] [HADES][TEST ] [KRELTSC: 2141614923] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2142275268] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 2142824355] Running CONTEXT.initial: FORTH CONTEXT @ . CR +[Hera] 1035602960 +[Hera] [HADES][TEST ] [KRELTSC: 2143958502] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2144603685] Expected: Should show FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 2145041304] CONTEXT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2145536820] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2146121838] Testing word: CURRENT +[Hera] [HADES][TEST ] [KRELTSC: 2146483815] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2146859526] Running CURRENT.basic: CURRENT @ . CR +[Hera] 1035728224 +[Hera] [HADES][TEST ] [KRELTSC: 2147600910] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2148279840] Expected: Should show current vocab +[Hera] [HADES][TEST ] [KRELTSC: 2148727350] Running CURRENT.after_def: VOCABULARY TEST-VOC8 TEST-VOC8 DEFINITIONS CURRENT @ . CR +[Hera] 1035728712 +[Hera] [HADES][TEST ] [KRELTSC: 2150286621] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2150933883] Expected: Should show new vocab +[Hera] [HADES][TEST ] [KRELTSC: 2151361674] Running CURRENT.protect: CURRENT @ 1+ CURRENT ! +[Hera] [HADES][TEST ] [KRELTSC: 2151918405] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2152576083] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 2153143083] CURRENT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2153649708] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2154226158] Testing word: ORDER +[Hera] [HADES][TEST ] [KRELTSC: 2154595107] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2154973170] Running ORDER.basic: ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 2156118930] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2156771610] Expected: Should list search order +[Hera] [HADES][TEST ] [KRELTSC: 2157213639] Running ORDER.multiple: VOCABULARY TEST-VOC9 TEST-VOC9 DEFINITIONS ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 2158875705] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2159511249] Expected: Should show all vocabs +[Hera] [HADES][TEST ] [KRELTSC: 2159943891] Running ORDER.after_forth: TEST-VOC9 FORTH ORDER +[Hera] Search order: + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 2161188456] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2161825281] Expected: Should show FORTH only +[Hera] [HADES][TEST ] [KRELTSC: 2162260632] ORDER: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2162787291] === Vocabulary Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2163411348] +[Hera] === Testing Module: System Words === +[Hera] [HADES][INFO ] [KRELTSC: 2163913773] Running System Words Tests (Module 18)... +[Hera] [HADES][WARN ] [KRELTSC: 2164386105] Some system tests marked as unimplemented due to system-level effects +[Hera] [HADES][TEST ] [KRELTSC: 2165050650] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2165636634] Testing word: QUIT +[Hera] [HADES][TEST ] [KRELTSC: 2165986641] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2166364746] Running QUIT.in_definition: : BAD-WORD QUIT ; +[Hera] [HADES][TEST ] [KRELTSC: 2167129839] Expected error occurred +[Hera] [HADES][TEST ] Testing QUIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2167834515] Expected: Should prevent compilation +[Hera] [HADES][TEST ] [KRELTSC: 2168292630] QUIT: 1 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2168803308] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2169381354] Testing word: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 2169735309] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2170113729] Running ABORT.basic: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 2170756014] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2171413776] Expected: Should clear stacks and return to QUIT +[Hera] [HADES][TEST ] [KRELTSC: 2171924517] Running ABORT.with_data: 1 2 3 ABORT DEPTH . CR +[Hera] [HADES][INFO ] [KRELTSC: 2172852066] L8[TABLE]: Config 3 → 4 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 45,450000,10000,0,0,223,82,26,4096,30,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 2174092767] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2174733057] Expected: Should clear stack +[Hera] [HADES][TEST ] [KRELTSC: 2175148563] Running ABORT.in_definition_runtime: : BAD-WORD ABORT ; 123 BAD-WORD DEPTH . CR +[Hera] [HADES][INFO ] [KRELTSC: 2175971511] ECW: w=0x3dba1b20 func=0x3d6b0ed4 'ABORT' +[Hera] [HADES][TEST ] [KRELTSC: 2176475196] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2177113974] Expected: ABORT may appear in a definition; when executed it clears both stacks +[Hera] [HADES][TEST ] [KRELTSC: 2177785281] ABORT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2178269457] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2178832362] Testing word: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 2179189866] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2179578891] Running ABORT".condition_true: -1 ABORT" Error" + +[Hera] [HADES][TEST ] [KRELTSC: 2180594052] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2181240201] Expected: Should abort with message (no error; stacks cleared to QUIT) +[Hera] [HADES][TEST ] [KRELTSC: 2181868479] Running ABORT".condition_false: 0 ABORT" Error" +[Hera] [HADES][TEST ] [KRELTSC: 2182398498] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2183051199] Expected: Should not abort +[Hera] [HADES][TEST ] [KRELTSC: 2183571327] Running ABORT".empty_stack: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 2184048027] Expected error occurred +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2184751506] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2185216614] ABORT": 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2185705704] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2186276841] Testing word: BYE +[Hera] [HADES][TEST ] [KRELTSC: 2186619015] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2186995083] BYE: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2187466281] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2188035738] Testing word: COLD +[Hera] [HADES][TEST ] [KRELTSC: 2188383792] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2188761456] COLD: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2189239017] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2189811141] Testing word: WARM +[Hera] [HADES][TEST ] [KRELTSC: 2190177759] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2190552084] WARM: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2191048398] === System Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2191652064] +[Hera] === Testing Module: Defining Words === +[Hera] [HADES][INFO ] [KRELTSC: 2192191449] Running Defining Words Tests (Module 13)... +[Hera] [HADES][TEST ] [KRELTSC: 2192714307] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2193317448] Testing word: : +[Hera] [HADES][TEST ] [KRELTSC: 2193674322] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2194094091] Running :.basic: : TEST1 42 ; TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2194752357] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2195254152] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2195816847] Test passed +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2196453168] Expected: Should define and execute +[Hera] [HADES][TEST ] [KRELTSC: 2196900048] Running :.empty_name: : +[Hera] [HADES][TEST ] [KRELTSC: 2197321665] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2198002002] Expected: Should handle empty definition +[Hera] [HADES][TEST ] [KRELTSC: 2198488824] Running :.nested: : TEST3 : ; +[Hera] [HADES][ERROR] [KRELTSC: 2199003618] Nested ':' inside a definition is not allowed +[Hera] [HADES][TEST ] [KRELTSC: 2199500583] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2200179807] Expected: Should prevent nested definition +[Hera] [HADES][TEST ] [KRELTSC: 2200678074] :: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2201175207] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2201754723] Testing word: ; +[Hera] [HADES][TEST ] [KRELTSC: 2202091458] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2202469857] Running ;.alone: ; +[Hera] [HADES][TEST ] [KRELTSC: 2202962454] Expected error occurred +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2203643589] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2204122095] Running ;.immediate: : TEST4 42 ; IMMEDIATE TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2204864886] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2205335790] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2205897288] Test passed +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2206539489] Expected: Should handle immediate +[Hera] [HADES][TEST ] [KRELTSC: 2207070621] ;: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2207612736] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2208273837] Testing word: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 2208659754] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2209060539] Running CONSTANT.basic: 42 CONSTANT MEANING MEANING . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2210296725] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2210977608] Expected: Should create constant +[Hera] [HADES][TEST ] [KRELTSC: 2211415185] Running CONSTANT.zero: 0 CONSTANT ZERO ZERO . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2212101843] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2212762755] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2213192751] Running CONSTANT.negative: -1 CONSTANT MINUS MINUS . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2213930775] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2214595257] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2215030587] Running CONSTANT.empty_stack: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 2215538535] Expected error occurred +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2216249217] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2216712141] CONSTANT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2217223386] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2217797967] Testing word: VARIABLE +[Hera] [HADES][TEST ] [KRELTSC: 2218164333] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2218551573] Running VARIABLE.basic: VARIABLE VAR1 42 VAR1 ! VAR1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2219592564] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2220245202] Expected: Should create variable +[Hera] [HADES][TEST ] [KRELTSC: 2220698256] Running VARIABLE.multiple: VARIABLE VAR2 VARIABLE VAR3 +[Hera] [HADES][TEST ] [KRELTSC: 2221412949] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2222083899] Expected: Should create multiple +[Hera] [HADES][TEST ] [KRELTSC: 2222518494] Running VARIABLE.store_fetch: VARIABLE VAR4 -99 VAR4 ! VAR4 @ . CR +[Hera] -99 +[Hera] [HADES][TEST ] [KRELTSC: 2223337494] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2224010271] Expected: Should store/fetch +[Hera] [HADES][TEST ] [KRELTSC: 2224433673] VARIABLE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2224929462] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2225516538] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2225894937] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2226270375] Running CREATE.basic: CREATE OBJ1 +[Hera] [HADES][TEST ] [KRELTSC: 2226844242] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2227496124] Expected: Should create word +[Hera] [HADES][TEST ] [KRELTSC: 2227928430] Running CREATE.with_data: CREATE OBJ2 42 , OBJ2 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2228680419] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2229332574] Expected: Should allow data +[Hera] [HADES][TEST ] [KRELTSC: 2229754401] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2230202772] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2230901400] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 2231343513] CREATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2231848752] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2232426000] Testing word: DOES> +[Hera] [HADES][TEST ] [KRELTSC: 2232778611] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2233155729] Running DOES>.basic: : CONST CREATE , DOES> @ ; 42 CONST MEANING MEANING . CR +[Hera] [HADES][INFO ] [KRELTSC: 2234558277] ECW: w=0x3dba2398 func=0x3d69c836 'CREATE' +[Hera] [HADES][INFO ] [KRELTSC: 2235169650] ECW: w=0x3db9eee0 func=0x3d69f18c ',' +[Hera] [HADES][INFO ] [KRELTSC: 2235637908] ECW: w=0x3dba2ef8 func=0x3d69c625 'does_rt' +[Hera] [HADES][INFO ] [KRELTSC: 2236522092] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2237717853] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2238434016] Expected: Should define behavior +[Hera] [HADES][TEST ] [KRELTSC: 2238874869] Running DOES>.multiple: : ARRAY CREATE DOES> SWAP CELLS + ; CREATE ARR 10 CELLS ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 2239910064] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2240680659] Expected: Should work with arrays +[Hera] [HADES][TEST ] [KRELTSC: 2241224076] Running DOES>.outside: DOES> +[Hera] [HADES][ERROR] [KRELTSC: 2241705858] DOES>: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2242082640] Expected error occurred +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2242811004] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2243290182] DOES>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2243775555] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2244350136] Testing word: [ +[Hera] [HADES][TEST ] [KRELTSC: 2244693591] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2245069743] Running [.basic: : TEST5 [ 42 ] LITERAL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2246010501] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2246626263] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2247244251] Expected: Should enter interpret +[Hera] [HADES][TEST ] [KRELTSC: 2247677418] Running [.outside: [ +[Hera] [HADES][TEST ] [KRELTSC: 2248070748] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2248706460] Expected: Should be allowed outside definition (no error) +[Hera] [HADES][TEST ] [KRELTSC: 2249255547] [: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2249715657] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2250294396] Testing word: ] +[Hera] [HADES][TEST ] [KRELTSC: 2250625692] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2251014234] Running ].basic: [ 42 ] . CR +[Hera] [HADES][TEST ] [KRELTSC: 2251551960] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2252172216] Expected: Should resume compile +[Hera] [HADES][TEST ] [KRELTSC: 2252607861] Running ].nested: : TEST6 [ ] 42 ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2253277488] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2253749547] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2254302561] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2254933275] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2255361654] ]: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2255823381] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2256395232] Testing word: DEFER +[Hera] [HADES][TEST ] [KRELTSC: 2256745932] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2257130169] Running DEFER.basic: DEFER DF1 : DF1W 42 . CR ; ' DF1W IS DF1 DF1 +[Hera] [HADES][INFO ] [KRELTSC: 2258532486] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2259010929] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 42 [HADES][INFO ] [KRELTSC: 2259547227] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2259978441] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2260459740] Test passed +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2261100807] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 2261522319] Running DEFER.uninit: DEFER DF2 DF2 +[Hera] [HADES][ERROR] [KRELTSC: 2262096228] DEFER runtime: no target set for 'DF2' +[Hera] [HADES][TEST ] [KRELTSC: 2262567930] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2263277982] Expected: Should error: uninitialized deferred word +[Hera] [HADES][TEST ] [KRELTSC: 2263821504] DEFER: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2264303916] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2264877594] Testing word: IS +[Hera] [HADES][TEST ] [KRELTSC: 2265215904] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2265608184] Running IS.basic: DEFER IS1 : IS1W 99 . CR ; ' IS1W IS IS1 IS1 +[Hera] [HADES][INFO ] [KRELTSC: 2266496379] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2266964427] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 2267472375] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2267908692] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2268369306] Test passed +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2268992985] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 2269405236] Running IS.not_defer: 42 IS DUP +[Hera] [HADES][ERROR] [KRELTSC: 2269900353] IS: 'DUP' was not created by DEFER +[Hera] [HADES][TEST ] [KRELTSC: 2270347632] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2271031266] Expected: Should error: DUP is not a DEFER word +[Hera] [HADES][TEST ] [KRELTSC: 2271546249] Running IS.not_found: 42 IS NOSUCH +[Hera] [HADES][ERROR] [KRELTSC: 2272040904] IS: word 'NOSUCH' not found +[Hera] [HADES][TEST ] [KRELTSC: 2272452588] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2273136453] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 2273609205] IS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2274092142] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2274669663] Testing word: DEFER@ +[Hera] [HADES][TEST ] [KRELTSC: 2275028217] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2275407666] Running DEFER@.basic: DEFER DFA1 : DFA1W 7 . CR ; ' DFA1W IS DFA1 DEFER@ DFA1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2276757231] Test passed +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2277530472] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2278018974] Running DEFER@.not_found: DEFER@ NOSUCH2 +[Hera] [HADES][ERROR] [KRELTSC: 2278573836] DEFER@: word 'NOSUCH2' not found +[Hera] [HADES][TEST ] [KRELTSC: 2279016054] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2279719428] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 2280205284] DEFER@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2280708339] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2281284075] Testing word: ['] +[Hera] [HADES][TEST ] [KRELTSC: 2281627194] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2282012103] Running ['].compile_xt: : BKT1 ['] DUP ; 77 BKT1 EXECUTE . . CR +[Hera] [HADES][INFO ] [KRELTSC: 2283001539] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2283474123] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 2284201941] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2284851240] Expected: Should print: 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 2285270652] Running ['].pin_like: : BKT2 ['] DROP ; 1 2 BKT2 EXECUTE . CR +[Hera] [HADES][INFO ] [KRELTSC: 2285992023] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2286470466] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2287033371] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2287661502] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 2288062350] Running ['].not_found: : BKT3 ['] NOSUCHWORD ; +[Hera] [HADES][ERROR] [KRELTSC: 2288682270] [']': word 'NOSUCHWORD' not found +[Hera] [HADES][TEST ] [KRELTSC: 2289125475] Expected error occurred +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2289813057] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 2290278186] [']: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2290784307] === Defining Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2291400720] +[Hera] === Testing Module: Control Words === +[Hera] [HADES][INFO ] [KRELTSC: 2291914905] Running Control Words Tests (Module 12)... +[Hera] [HADES][TEST ] [KRELTSC: 2292435117] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2293039665] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 2293381440] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2293760091] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2295482994] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2296122549] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2296594398] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2297185569] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2297753304] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2298409512] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 2298995391] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2299763424] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2300301318] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2300774028] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 2301344346] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2301971364] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 2302415871] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; -1 -1 TEST3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2303355327] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2303869932] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2304355809] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2304819174] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2305320003] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2305802079] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2306353644] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2306980809] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2307426408] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2308442094] L8[TABLE]: Config 4 → 5 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 46,460000,10000,0,0,202,85,24,4096,67,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2309693400] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2310182742] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2310641067] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2311203741] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2311844640] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2312288475] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 2312763474] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2313117135] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2313846192] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2314307121] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2314821243] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 2315163942] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2315549481] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2316428079] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2316920172] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2317378077] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2317890498] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2318443029] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2319066036] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 2319504873] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2320346553] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2320837218] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2321296677] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 2321847864] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2322506172] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 2322948327] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; -1 -1 TEST3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2323845069] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2324382123] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2324863863] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2325317211] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2325811887] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2326339596] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2326890153] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2327512425] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2327941959] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2328656862] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2329148052] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2329604256] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2330153679] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2330832588] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2331274470] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 2331681009] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2332022763] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2332718367] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2333179506] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2333720529] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2334289209] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2334646776] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2335021773] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 2335521741] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2335883151] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2336567856] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2337019839] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2337695997] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 2338051128] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2338760298] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2339211945] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2339686020] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2340031281] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2340405417] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 2340888543] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2341244703] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2341927413] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2342363835] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2343033462] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 2343381978] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2344145853] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2344623855] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2345160300] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2345725641] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 2346071574] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2346477903] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 2347144149] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2347527378] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2348218572] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2348657997] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2349407130] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 2349783933] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 2350135935] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2350825848] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 2351282430] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2351786997] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 2352133392] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2352514101] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 2353010268] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2353377495] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2354086980] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2354524641] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2355165792] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 2355515001] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 2355851883] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2356661538] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 2357108880] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2357602611] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2358168393] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2358519303] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2358895245] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2360155098] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2360645427] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2361102933] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2361560103] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2362030713] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2362481940] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2362969182] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2363420829] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2363895576] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2364367845] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2364815418] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2365297956] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2365747566] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2366219961] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2366674086] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2367118698] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2367601509] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2368084635] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2368551591] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2369007816] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2369454171] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2369937486] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2370412611] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2370866736] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2371320294] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2371766166] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2372250489] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2372846742] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2373488376] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 2373927402] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2375242191] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2375719101] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2376179148] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2376676827] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2377129881] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2377612335] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2378062785] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2378538750] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2379008037] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2379460230] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2379904548] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2380385553] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2380845768] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2381322909] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2381776656] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2382230130] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2382672852] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2383174395] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2383623081] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2384099319] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2384552352] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2385041274] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2385545211] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2386114689] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2386645023] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2387195181] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2387651595] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2388108156] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2388551928] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2389080393] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2389531662] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2390009979] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2390462529] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2390916759] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2391380460] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2391869760] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2392454799] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2393093787] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 2393560302] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 2394062076] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2394432159] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2395130661] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2395632393] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2396120811] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2396475081] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2396856840] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2397885021] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2398354098] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2398806207] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2399259912] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2399734176] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2400183513] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2400666492] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2401115262] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2401575813] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2402048565] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2402492967] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2402975379] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2403423771] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2403905007] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2404359006] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2404801602] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2405281074] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2405727891] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2406207636] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2406661404] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2407103118] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2407584795] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2408052381] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2408505078] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2408955486] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2409400182] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2409899793] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2410471938] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2411111703] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 2411547894] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2412432813] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2412899223] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2413354440] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2413878516] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2414350638] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2414835696] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2415286818] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2415767256] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2416221129] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2416689240] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2417135910] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2417620485] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2418072678] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2418562398] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2419017909] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2419473588] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2419917675] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2420400276] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2420868933] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2421348531] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2421802089] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2422256760] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2423099028] L8[TABLE]: Config 5 → 6 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 47,470000,10000,0,0,218,91,25,4096,198,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2424327990] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2424838920] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2425292205] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2425770627] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2426228553] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2426685324] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2427146631] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2427632193] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2428085163] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2428564614] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2429131173] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2429619843] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2430066051] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2430605268] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2431279011] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2431917201] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 2432356374] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 2432764866] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2433153345] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2433855522] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2434331907] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2434814424] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2435402046] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 2435774796] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2436152943] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TEST8 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2437092231] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2437575714] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2438030091] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2438483418] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2438943696] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2439456789] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2439910704] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2440359810] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2440810680] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2441259912] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2441758305] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2442208587] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2442656832] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2443107996] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2443577997] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2444058141] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2444508528] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2444957256] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2445409323] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2445937830] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2446453800] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2446915842] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2447364633] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2447847612] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2448297054] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2448781524] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2449348062] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2450000658] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 2450411838] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2451161265] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2451823290] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 2452264962] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 2452767933] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2453138646] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2453832402] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2454310383] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2454794853] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 2455146477] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2455524729] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TEST8 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2456406813] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2456869590] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2457320859] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2457774165] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2458242843] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2458726410] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2459179590] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2459629683] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2460082632] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2460551226] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2461033407] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2461486944] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2461937457] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2462405253] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2462855682] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2463337191] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2463790665] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2464241031] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2464713426] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2465162868] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2465645280] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2466097557] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2466547377] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2467012989] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2467461444] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2467943751] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2468492439] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2469145287] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 2469555144] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2470258539] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2470925709] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 2471474565] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 2471897610] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2472267630] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2473034865] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2473485462] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2473966509] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2474531661] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 2474884986] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2475285225] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST10 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2476213824] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2476680738] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2477162415] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2477611143] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2478095907] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2478547134] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2479029273] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2479496796] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2479952370] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2480398410] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2480881809] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2481350067] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2481827313] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2482281165] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2482735416] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2483180658] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2483681844] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2484132189] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2484610086] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2485064295] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2485529739] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2485974414] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2486455713] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2486904147] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2487379692] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2487844842] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2488299744] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2488743453] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2489226243] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2489687697] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2490165531] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2490617598] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2491071387] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2491517280] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2492013615] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2492579124] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2493215781] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 2493615831] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPEAT ; 0 TEST11 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2494489494] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2494951221] ECW: w=0x3db98690 func=0x3d6a4390 '0<' +[Hera] [HADES][INFO ] [KRELTSC: 2495408601] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2495892147] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2496450852] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2497087824] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 2497554255] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 2498052669] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2498445264] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2499137214] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2499587853] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2500069551] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 2500439781] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2500815933] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST10 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2501725695] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2502189543] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2502659355] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2503104996] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2503585833] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2504035758] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2504534970] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2504988675] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2505443745] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2505890058] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2506372764] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2506846209] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2507323329] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2507776047] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2508230529] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2508698955] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2509182501] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2509631544] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2510108433] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2510563104] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2511035394] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2511480531] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2511964644] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2512413540] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2512900782] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2513361837] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2513816319] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2514261036] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2514741978] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2515223781] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2515701699] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2516155236] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2516609739] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2517076023] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2517558834] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2518110252] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2518746846] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 2519162520] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPEAT ; 0 TEST11 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2520012978] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2520471114] ECW: w=0x3db98690 func=0x3d6a4390 '0<' +[Hera] [HADES][INFO ] [KRELTSC: 2520921564] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2521445409] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2521992564] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2522629200] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 2523094245] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 2523549420] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2523905454] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2524599378] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2525052390] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2525566239] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2526131748] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 2526488307] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2526864564] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST12 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2527866768] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2528330238] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2528853579] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2529298653] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2529796248] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2530251801] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2530726779] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2531178846] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2532069897] L8[TABLE]: Config 6 → 7 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 48,480000,10000,0,0,221,92,26,4096,350,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2533265028] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2533735995] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2534240121] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2534691999] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2535169392] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2535622068] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2536142931] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2536630194] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2537158050] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2537656443] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2538200490] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2538699429] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2539196541] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2539684581] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2540228691] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2540744724] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2541270144] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2541768285] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2542282071] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2542770846] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2543299227] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2543791215] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2544332616] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2544833991] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2545331964] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2545818765] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2546362308] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2546980338] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2547686988] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 2548166019] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 2548742343] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2549153040] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2549924601] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 2550438324] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2550980775] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 2551374105] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2551790031] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST12 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2552824449] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2553336702] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2553840828] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2554330947] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2554874931] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2555369607] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2555895384] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2556398292] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2556890091] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2557333590] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2557812012] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2558259165] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2558733093] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2559195387] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2559649617] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2560093431] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2560573911] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2561066046] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2561578089] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2562031269] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2562484155] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2562927486] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2563427937] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2563876350] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2564352210] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2564804067] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2565268335] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2565711162] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2566190319] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2566635519] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2567109636] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2567595639] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2568051234] ECW: w=0x3db98b40 func=0x3d6a46a8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2568497463] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2568985671] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2569562604] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2570203608] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 2570639022] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 2571071433] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2571446199] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2572141572] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 2572593135] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2573078760] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2573659767] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 2573997174] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2574372696] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] [HADES][INFO ] [KRELTSC: 2575752375] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2576237874] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2576701260] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2577351042] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2577912855] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2578415973] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2579016342] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2579469711] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2579989461] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2580429222] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2580879252] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2581372059] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2581809846] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2582283543] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2582771226] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2583206094] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2583651483] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2584174803] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2584663011] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2585161593] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2585784726] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 2586336438] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] [HADES][INFO ] [KRELTSC: 2587134774] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2587602129] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2588058354] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2588551665] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2589001275] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -5 [HADES][INFO ] [KRELTSC: 2589496770] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2589933927] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2590408485] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -4 [HADES][INFO ] [KRELTSC: 2590908789] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2591345106] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2591792532] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -3 [HADES][INFO ] [KRELTSC: 2592287544] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2592736524] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2593184622] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -2 [HADES][INFO ] [KRELTSC: 2593678227] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2594112570] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2594622051] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2595251925] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2595688116] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 2596320909] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2596969032] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 2597417550] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; TEST16 CR +[Hera] [HADES][INFO ] [KRELTSC: 2598302301] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2598813609] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2599266474] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2599725219] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2600176362] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2600628702] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2601118485] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2601669021] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2602119513] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2602578279] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2603095614] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2603532435] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2603977803] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2604423927] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2604872592] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2605373043] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2605808982] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2606254455] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2606698857] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2607261825] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2607750915] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2608186539] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2608651101] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2609121039] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2609580477] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2610036807] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2610479655] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2610919815] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2611387443] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2611882476] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2612315979] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2612758113] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2613200478] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2613666090] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2614153836] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2614590153] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2615033820] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2615499075] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2615944065] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2616430026] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2616864012] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2617329792] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2617811658] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2618264649] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2618721126] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2619176175] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2619640191] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2620093287] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2620580298] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2621015040] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2621458602] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2621915625] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2622360615] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2622846807] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2623280121] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2623724544] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2624203806] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2624650266] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2625138516] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2625595077] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2626096998] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2626633149] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2627260020] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2627698437] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2628190320] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 2628534237] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2628918642] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] [HADES][INFO ] [KRELTSC: 2629851567] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2630341056] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2630794488] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2631255081] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2631700827] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2632213773] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2632650531] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2633095710] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2633582217] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2634014460] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2634482004] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2634968826] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2635402182] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2635846395] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2636333112] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2636798283] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2637244785] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2637733455] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2638169352] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2638673877] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2639294931] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 2639733411] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] [HADES][INFO ] [KRELTSC: 2640548715] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2641388064] L8[TABLE]: Config 7 → 8 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 49,490000,10000,0,0,225,97,26,4096,528,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2642575530] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2643055863] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2643517170] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2644066215] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -5 [HADES][INFO ] [KRELTSC: 2644565532] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2645022639] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2645479515] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -4 [HADES][INFO ] [KRELTSC: 2645996283] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2646431823] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2646892059] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -3 [HADES][INFO ] [KRELTSC: 2647383753] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2647819020] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2648263842] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] -2 [HADES][INFO ] [KRELTSC: 2648757111] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2649213756] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2649711876] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2650335744] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2650771389] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 2651452818] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2652079710] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 2652527073] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; TEST16 CR +[Hera] [HADES][INFO ] [KRELTSC: 2653424319] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2653896924] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2654349705] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2654808765] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2655279501] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2655732828] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2656190481] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2656634925] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2657088378] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2657634525] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2658151566] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2658586686] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2659030773] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2659531749] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2659995870] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2660481978] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2660914389] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2661379896] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2661843219] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2662288125] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2662773708] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2663206707] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2663688447] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2664149019] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2664598083] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2665053699] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2665495014] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2665954200] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2666395599] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2666880216] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2667311682] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2667752031] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2668212771] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2668656732] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2669142483] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2669574453] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2670031665] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2670482724] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2670927672] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2671412268] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2671843419] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2672322996] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2672774748] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2673225765] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2673681654] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2674137648] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2674579341] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2675023071] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2675509851] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2675941275] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2676394350] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2676844359] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2677288824] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2677773840] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2678207679] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2678664681] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2679106794] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2679550146] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2680035456] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2680516440] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2680993833] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2681507640] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2682130605] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2682581538] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2683056453] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2683621206] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 2683963086] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2684343942] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] [HADES][INFO ] [KRELTSC: 2685616353] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2686090365] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2686552449] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2687258994] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2687717319] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2688210420] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2688648270] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2689111383] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2689601334] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2690035824] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2690482788] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2690984562] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2691428691] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2691875613] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2692362750] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2692797849] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2693255586] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2693745831] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2694183429] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2694676866] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2695317639] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 2695738920] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 2696410080] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2697043104] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 2697488157] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOOP ; TEST19 CR +[Hera] [HADES][INFO ] [KRELTSC: 2698361022] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2698830141] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2699318223] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2699852463] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2700309507] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2700754875] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2701226724] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2701771527] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2702216643] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2702685069] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2703176616] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2703630195] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2704073988] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2704517193] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2704963632] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2705452449] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2705899665] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2706349905] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2706792312] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2707238814] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2707735443] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2708167854] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2708632353] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2709084756] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2709527961] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2710000797] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2710442301] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2710884750] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2711330979] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2711826159] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2712260943] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2712703182] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2713145400] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2713590285] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2714092164] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2714533185] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2714999994] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2715453447] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2715897555] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2716372281] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2716817082] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2717261253] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2717706516] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2718219210] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2718656262] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2719124226] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2719629717] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2720289684] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2720721990] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2721197598] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 2721541305] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2721919095] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] [HADES][INFO ] [KRELTSC: 2722864158] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2723336028] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2723792463] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2724261015] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2724818208] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2725314333] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2725776291] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2726244906] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2726782842] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2727223506] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2727667950] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2728153176] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2728619208] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2729073522] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2729560932] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2729996157] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2730439593] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2730949956] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2731389318] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2731903566] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2732533629] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 2732978850] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 2733738189] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2734373082] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 2734837707] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOOP ; TEST19 CR +[Hera] [HADES][INFO ] [KRELTSC: 2735844258] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2736320811] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2736774411] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2737265433] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2737730625] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2738176875] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2738987286] L8[TABLE]: Config 8 → 9 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 50,500000,10000,0,0,214,100,27,4096,694,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2740213875] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2740661406] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2741108181] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2741571987] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2742066369] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2742503148] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2742947991] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2743408500] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2743854603] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2744374458] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2744810208] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2745252762] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2745727446] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2746203390] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2746693404] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2747127012] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2747614569] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2748067539] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2748509589] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2748970686] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2749418322] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2749877718] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2750325165] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2750835024] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2751267561] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2751728469] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2752170771] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2752614207] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2753100798] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2753534301] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2754012765] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2754473715] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2754916899] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2755379466] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2755841445] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2756291916] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2756737074] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2757222846] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2757658512] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2758152096] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2758658091] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2759363817] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2759800029] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2760293991] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2760868299] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 2761215408] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2761595949] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] [HADES][INFO ] [KRELTSC: 2762506278] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2762981802] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2763438279] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2763901854] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2764365093] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2764875729] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2765313390] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2765760522] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2766250305] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2766716505] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2767169727] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2767654848] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2768086062] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2768574774] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2769063276] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2769495708] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2769939732] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2770426071] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2770875870] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2771377875] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2772010122] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 2772441126] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 2772954345] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2773317939] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2774008608] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 2774449062] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2774942898] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 2775289755] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2775666537] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] [HADES][INFO ] [KRELTSC: 2776523652] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2777005938] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2777468421] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2777932731] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2778382593] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2778892242] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2779330113] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2779778673] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2780266839] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2780703030] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2781160599] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2781649143] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2782084137] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2782530051] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2783018952] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2783466042] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2783920083] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2784408270] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2784843621] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2785433175] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2786074116] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 2786501865] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 2786899038] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2787261792] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2787949983] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 2788389198] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2788868040] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2789446086] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 2789811297] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2790195954] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 2791415676] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2791920873] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2792376846] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2792838678] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2793288498] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2793791763] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2794218714] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2794937103] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2795397318] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2795908605] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2796334695] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2796812907] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2797262853] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2797778718] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2798203149] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2798679996] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2799130152] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 2799622098] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2800056525] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2800539357] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2800987497] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 2801477343] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2801900241] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2802441852] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2802937410] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2803583790] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 2803993920] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST22 CR +[Hera] [HADES][INFO ] [KRELTSC: 2804808615] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2805273450] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2805727260] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2806200306] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2806662096] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 2807164248] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2807585319] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2808104166] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2808573306] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 2809069872] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2809491174] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2809964409] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2810426976] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 2810917809] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2811339426] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2811812367] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2812258449] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 7 [HADES][INFO ] [KRELTSC: 2812756989] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2813185179] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2813655999] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2814102270] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 2814628572] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2815049664] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2815520358] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2815963857] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 2816569896] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2817032778] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2817505803] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2817949806] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2818436670] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2818916982] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2819396916] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2819846526] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2820331416] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2820748854] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2821242732] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2821688331] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2822174397] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2822594796] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2823114399] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2823568020] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2824056396] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2824475682] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2824958010] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2825423391] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2825918571] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2826336870] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2826810105] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2827389495] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2828029155] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 2828441028] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TEST23 CR +[Hera] [HADES][INFO ] [KRELTSC: 2829353751] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2829827868] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2830284681] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2830745673] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2831194086] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2831735571] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2832157419] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2832625656] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2833068441] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2833569585] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2833989543] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2834461266] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2834905458] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 2835390915] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2835868581] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2836351350] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2836797012] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 2837286753] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2837724792] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2838197523] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2838689532] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2839327365] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 2839779306] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2840263482] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 2840613951] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2840988066] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 2841859482] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2842328496] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2842783986] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2843245335] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2843694399] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2844198756] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2844622662] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2845098522] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2845546347] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2846045874] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2846466546] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2846939865] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2847385044] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2847888897] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2848359297] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2848867098] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2849321727] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 2849812056] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2850248709] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2851080939] L8[TABLE]: Config 9 → 10 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 51,510000,10000,0,0,227,102,28,4096,883,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2852325189] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2852779524] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 2853268824] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2853690441] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2854161786] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2854686030] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2855324199] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 2855755140] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST22 CR +[Hera] [HADES][INFO ] [KRELTSC: 2856586110] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2857055964] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2857517901] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2857979040] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2858427033] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 2858933616] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2859354981] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2859826620] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2860269447] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 2860770591] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2861189646] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2861659290] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2862101865] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 2862585327] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2863021602] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2863492590] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2863945014] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 7 [HADES][INFO ] [KRELTSC: 2864431290] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2864862525] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2865352434] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2865798285] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 2866284246] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2866702692] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2867187561] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2867633517] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 2868118050] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2868563460] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2869097931] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2869588092] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2870114163] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2870539728] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2871011703] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2871487206] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2871975372] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2872395918] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2872868166] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2873327184] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2873815392] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2874321975] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2874793110] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2875236714] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2875741575] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2876160294] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2876631072] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2877075243] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2877587349] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2878007874] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2878487724] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2879002791] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2879653896] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 2880069864] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TEST23 CR +[Hera] [HADES][INFO ] [KRELTSC: 2880982230] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2881448451] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2881920174] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2882387424] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2882836530] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2883326334] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2883761937] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2884236222] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2884682094] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2885170302] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2885590743] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2886074163] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2886520602] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 2887011372] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2887430028] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2887914225] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2888359215] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 2888846604] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2889289578] ECW: w=0x3dba3868 func=0x3d699829 '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2889762750] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 2890264482] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2890902588] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 2891339934] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2891823417] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2892403059] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 2892742923] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2893120125] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] [HADES][INFO ] [KRELTSC: 2893892778] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2894376240] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2894830281] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2895290811] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2895738867] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2896236735] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2896682502] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2897138013] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2897626221] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2898062013] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2898525588] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2899014510] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2899452402] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2899898799] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2900386734] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2900832627] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2901293241] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2901751923] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2902369029] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 2902807971] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] [HADES][INFO ] [KRELTSC: 2903511282] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2903976453] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2904431250] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2904904023] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2905356174] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2905856142] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2906292879] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2906766135] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2907225111] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2907842847] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2908242813] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] [HADES][INFO ] [KRELTSC: 2908949946] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2909418393] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2909889234] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2910349344] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2910797946] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2911302114] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2911739061] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2912185962] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2912673603] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2913123549] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2913584793] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2914051161] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2914669590] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 2915077389] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] [HADES][INFO ] [KRELTSC: 2915835531] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2916307632] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2916762576] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2917235454] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2917679499] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2918132133] ECW: w=0x3db971f0 func=0x3d696e13 '*' +[Hera] [HADES][INFO ] [KRELTSC: 2918583549] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2919071778] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2919518658] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2919963837] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2920418550] ECW: w=0x3db971f0 func=0x3d696e13 '*' +[Hera] [HADES][INFO ] [KRELTSC: 2920865724] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2921355381] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2921804172] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2922250338] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2922705030] ECW: w=0x3db971f0 func=0x3d696e13 '*' +[Hera] [HADES][INFO ] [KRELTSC: 2923153170] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2923654797] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2924093340] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2924553219] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2925013035] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2925641943] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 2926063602] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2926529718] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 2926863240] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2927238510] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] [HADES][INFO ] [KRELTSC: 2928004695] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2928469677] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2928932223] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2929392732] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2929858386] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2930357304] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2930793831] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2931239661] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2931850761] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2932299846] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2932746642] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2933374164] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2933815416] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2934276429] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2934766527] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2935205973] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2935665915] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2936139633] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2936758881] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 2937196836] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] [HADES][INFO ] [KRELTSC: 2937909408] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2938410846] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2938867239] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2939335056] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2939785569] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2940290871] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2940728931] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2941190028] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2941649970] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2942270478] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2942694090] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] [HADES][INFO ] [KRELTSC: 2943420312] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2943885714] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2944341183] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2944817568] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2945265876] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 2945765613] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2946557250] L8[TABLE]: Config 10 → 11 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 52,520000,10000,0,0,208,102,29,4096,1043,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2947778232] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2948231307] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2948735370] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2949173661] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2949643389] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2950104486] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2950745931] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 2951186721] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] [HADES][INFO ] [KRELTSC: 2952012651] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2952479628] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2952954648] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2953416165] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2953869156] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2954325171] ECW: w=0x3db971f0 func=0x3d696e13 '*' +[Hera] [HADES][INFO ] [KRELTSC: 2954775222] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2955311205] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2955751155] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2956218132] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2956672992] ECW: w=0x3db971f0 func=0x3d696e13 '*' +[Hera] [HADES][INFO ] [KRELTSC: 2957140578] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2957633028] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2958067875] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2958510051] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2958963336] ECW: w=0x3db971f0 func=0x3d696e13 '*' +[Hera] [HADES][INFO ] [KRELTSC: 2959427058] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 2959916904] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2960354397] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2960836536] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2961312081] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2961932820] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 2962363425] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2962827210] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2963403702] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 2963736111] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2964112200] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] [HADES][INFO ] [KRELTSC: 2965018539] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2965505802] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2965960935] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2966429403] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2966882562] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2967334692] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2967807612] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2968258650] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2968747887] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2969184414] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2969642508] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2970131661] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2970567075] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2971012863] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2971503066] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2971952592] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2972441283] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2972903514] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2973356316] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2973836250] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2974289472] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2974777029] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2975212842] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2975658189] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2976161055] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2976598254] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2977050048] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2977538088] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2977982343] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2978456418] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2978917557] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2979376974] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2979994542] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 2980472397] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; TJ2 +[Hera] [HADES][INFO ] [KRELTSC: 2981350218] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2981816187] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2982291459] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2982754068] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2983206723] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2983659231] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2984117220] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2984575209] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2985021375] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2985481338] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 2985972444] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2986418463] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2986862088] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2987306133] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2987753706] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2988241788] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2988688563] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2989277235] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2989738332] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2990190042] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 2990665923] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2991111333] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2991561342] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2992012317] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 2992514070] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2992964436] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 2993409321] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 2993854290] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 2994300183] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 2994803868] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2995237686] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 2995705335] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2996170674] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2996629629] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2997260994] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 2997692418] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2998155699] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 2998488927] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2998864449] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] [HADES][INFO ] [KRELTSC: 2999764383] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3000238479] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3000693402] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3001166994] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3001619313] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3002079864] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3002537643] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3002985489] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3003495306] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3003931119] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3004377768] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3004865871] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3005313276] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3005759673] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3006250212] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3006690351] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3007158567] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3007622373] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3008075133] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3008540850] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3008985588] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3009484716] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3009921537] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3010366422] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3010854714] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3011291871] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3011748243] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3012235548] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3012672663] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3013153626] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3013623585] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3014083212] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3014700654] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 3015147765] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; TJ2 +[Hera] [HADES][INFO ] [KRELTSC: 3016062378] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3016530783] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3016987365] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3017448882] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3017939526] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3018394323] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3018859893] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3019305030] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3019751721] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 3020242533] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3020733324] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3021169809] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3021630570] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3022124847] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 3022706820] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3023275563] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3023708856] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3024218232] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3024673533] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3025125453] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3025583463] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3026024862] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3026488290] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 3026936451] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3027425667] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3027861816] ECW: w=0x3dba4768 func=0x3d699bfc 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3028340910] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3028786068] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 3029232906] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3029727099] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3030160035] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3030652590] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3031119105] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3031594146] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3032216985] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 3032667141] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3033131388] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3033724974] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 3034071117] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3034451742] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] [HADES][INFO ] [KRELTSC: 3035340987] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3035816805] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3036364296] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3037006707] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 3037405602] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE ; 3 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3038248458] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3038710500] ECW: w=0x3db98780 func=0x3d6a4449 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3039178380] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3039662871] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3040207191] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3040838178] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3041252067] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE ; -4 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3042577230] L8[TABLE]: Config 11 → 12 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 53,530000,10000,0,0,207,102,30,4096,1202,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3043913502] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3044376363] ECW: w=0x3db98780 func=0x3d6a4449 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3044832189] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3045347550] ECW: w=0x3db97e20 func=0x3d6977e6 'NEGATE' +[Hera] [HADES][INFO ] [KRELTSC: 3045821835] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 3046371468] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3047165709] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 3047566620] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] [HADES][INFO ] [KRELTSC: 3048276189] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3048742494] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3049197354] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3049795581] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3050429634] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3050843670] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3051321798] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 3051688059] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3052064673] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] [HADES][INFO ] [KRELTSC: 3052843899] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3053309700] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3053889657] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3054523122] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 3054923550] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE ; 3 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3055772517] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3056261166] ECW: w=0x3db98780 func=0x3d6a4449 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3056723985] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3057206628] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3057792948] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3058425972] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3058833624] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE ; -4 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3059663250] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3060155028] ECW: w=0x3db98780 func=0x3d6a4449 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3060609111] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3061108932] ECW: w=0x3db97e20 func=0x3d6977e6 'NEGATE' +[Hera] [HADES][INFO ] [KRELTSC: 3061580949] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 3062154333] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3062789982] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 3063199293] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] [HADES][INFO ] [KRELTSC: 3063912243] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3064381677] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3064837083] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3065404482] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3066073227] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3066483504] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3066957726] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3067519770] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 3067869777] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3068259453] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LOOP ; TLV . CR +[Hera] [HADES][INFO ] [KRELTSC: 3069663450] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3070139037] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3070611768] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3071066775] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3071530728] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3071977692] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3072449205] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3072904653] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3073389165] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3073842429] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3074314782] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3074772540] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3075228492] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3075683100] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3076166457] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3076627407] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3077096190] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3077559492] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3078013743] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3078457788] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3078954942] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3079405917] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3079876779] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3080323911] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3080875329] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3081332268] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3081842421] ECW: w=0x3dba3958 func=0x3d699a2e '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3082514400] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3083036523] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3083622108] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3084262755] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3084671163] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3085590480] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3086058549] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3086521536] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3086991054] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3087454986] ECW: w=0x3dba3958 func=0x3d699a2e '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3087927801] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3088412796] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3088959447] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3089609082] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3090007935] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ LOOP ; TLV3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3090920721] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3091446078] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3091901904] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3092390469] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3092895057] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3093389754] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3093916434] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3094521906] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3095202453] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3095814036] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3096420327] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3097058013] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3097755255] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3098301717] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3098893812] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3099376686] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3100002381] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3100519464] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3100977306] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3101499723] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3102118131] ECW: w=0x3dba3958 func=0x3d699a2e '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3102608670] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3103149441] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3103815729] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3104553858] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 3104963001] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3105448059] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 3105800586] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3106211577] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LOOP ; TLV . CR +[Hera] [HADES][INFO ] [KRELTSC: 3107435373] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3107906571] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3108399483] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3108854049] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3109327221] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3109770930] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3110248218] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3110695539] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3111174717] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3111633252] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3112100985] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3112568340] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3113020281] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3113463675] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3113943357] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3114404118] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3114869940] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3115311507] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3115763385] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3116265915] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3116836338] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3117301005] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3117769473] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3118214274] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3118715208] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3119161731] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3119645046] ECW: w=0x3dba3958 func=0x3d699a2e '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3120123825] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3120634272] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3121198689] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3121868337] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3122273952] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3123161664] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3123629607] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3124085202] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3124538949] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3125029299] ECW: w=0x3dba3958 func=0x3d699a2e '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3125501589] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3125985009] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3126537204] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3127199817] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3127599510] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ LOOP ; TLV3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3128713161] L8[TABLE]: Config 12 → 13 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 54,540000,10000,0,0,200,102,31,4096,1319,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3130148973] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3130614165] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3131097417] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3131552445] ECW: w=0x3dba3598 func=0x3d6992eb '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3132018792] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3132468696] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3132922590] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3133385010] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3133866435] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3134314323] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3134782350] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3135252162] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3135711096] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3136157010] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3136645491] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3137094996] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3137587110] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3138031554] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3138483663] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3138928422] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3139435488] ECW: w=0x3dba3958 func=0x3d699a2e '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3139907904] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3140384919] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3140936925] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3141590676] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 3141993351] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3142488741] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3143055783] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 3143413203] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3143816046] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EXIT THEN LOOP 99 ; TUL . CR +[Hera] [HADES][INFO ] [KRELTSC: 3144856596] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3145332183] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3145817052] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3146277666] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3146720136] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3147174261] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3147620049] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3148117959] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3148586406] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3149030871] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3149486088] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3149945925] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3150429807] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3150897771] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3151348767] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3151803669] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3152265711] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3152754171] ECW: w=0x3dba4858 func=0x3d699acf 'UNLOOP' +[Hera] [HADES][INFO ] [KRELTSC: 3153413361] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3153873324] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3154460442] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3155101971] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 3155513361] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EXIT THEN LOOP 99 ; TUL2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3156482364] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3156946506] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3157401009] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3157869225] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3158328936] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3158785224] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3159232650] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3159722643] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3160191321] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3160652166] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3161107089] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3161553045] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3162161268] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3162656595] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3163102866] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3163567470] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3164014224] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3164498526] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3164985516] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3165431073] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3165897063] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3166347870] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3166854978] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3167321535] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3167762829] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3168221217] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3168662553] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3169162710] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3169630989] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3170085156] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 3170669628] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3171326088] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 3171733425] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3172219071] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 3172574895] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3172959594] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EXIT THEN LOOP 99 ; TUL . CR +[Hera] [HADES][INFO ] [KRELTSC: 3173982189] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3174447570] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3174899742] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3175387719] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3175833717] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3176288514] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3176734911] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3177229356] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3177697530] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3178140546] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3178600740] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3179043273] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3179537970] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3180005514] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3180448089] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3180900450] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3181356990] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3181839864] ECW: w=0x3dba4858 func=0x3d699acf 'UNLOOP' +[Hera] [HADES][INFO ] [KRELTSC: 3182307387] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3182762730] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3183323283] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3183987765] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 3184391133] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EXIT THEN LOOP 99 ; TUL2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3185344743] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3185894376] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3186348249] ECW: w=0x3dba3688 func=0x3d6994f6 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3186804894] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3187248120] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3187716672] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3188162859] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3188643255] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3189119808] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3189563034] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3190028898] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3190472481] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3190953570] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3191419140] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3191896974] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3192348033] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3192789453] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3193268442] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3193733256] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3194191224] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3194641926] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3195084837] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3195572394] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3196048023] ECW: w=0x3dba4678 func=0x3d699b84 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3196491249] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3196943106] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3197385891] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3197865972] ECW: w=0x3dba3778 func=0x3d69969a '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3198344982] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3198798267] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 3199352058] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3199998816] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 3200414574] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3200898351] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3201460542] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 3201818907] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3202191804] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AGAIN ; TAG . CR +[Hera] [HADES][INFO ] [KRELTSC: 3203366985] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3203837469] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3204291069] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3204769155] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3205224729] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3205672218] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3206163177] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3206662662] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3207116430] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3207570933] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3208034655] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3208479561] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3208994313] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3209473155] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3209921715] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3210374118] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3210845400] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3211292952] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3211776603] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3212327580] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3212982108] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3213383754] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN AGAIN ; CD . CR +[Hera] [HADES][INFO ] [KRELTSC: 3214257627] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3214723491] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3215196075] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3215999220] L8[TABLE]: Config 13 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 55,550000,10000,0,0,205,103,32,4096,1464,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3217215036] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3217673508] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3218156088] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3218634783] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3219100542] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3219690432] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3220139622] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3220620375] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3221106021] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3221558445] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3222010575] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3222459912] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3222949590] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3223439667] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3223887450] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3224339769] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3224795490] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3225277146] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3225775959] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3226224267] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3226676355] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3227123256] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3227615538] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3228093015] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3228542205] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3229003302] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3229453353] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3229944144] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3230419521] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3230868102] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3231328758] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3231786096] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3232268907] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3232745250] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3233194755] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3233647956] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3234106743] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3234588441] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3235064889] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3235515465] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3235977864] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3236425605] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3236906694] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3237380580] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3237828909] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3238340868] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3238790835] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3239272176] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3239831070] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3240481797] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3240881826] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3241360836] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 3241709835] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3242093568] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AGAIN ; TAG . CR +[Hera] [HADES][INFO ] [KRELTSC: 3243036762] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3243501723] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3243952698] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3244418436] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3244871847] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3245320029] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3245818485] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3246305937] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3246755862] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3247209966] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3247664511] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3248116431] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3248607600] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3249084363] ECW: w=0x3db97790 func=0x3d6973b0 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3249532167] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3249990681] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3250456062] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3250900527] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3251382204] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3251927658] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3252577146] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3252993240] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN AGAIN ; CD . CR +[Hera] [HADES][INFO ] [KRELTSC: 3253854534] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3254321742] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3254808144] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3255324681] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3255776265] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3256259664] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3256751862] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3257202081] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3257654946] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3258105270] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3258594570] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3259100376] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3259549125] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3260000352] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3260449521] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3260950728] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3261427134] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3261875631] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3262328769] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3262783650] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3263275050] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3263751309] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3264199722] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3264658593] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3265113495] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3265598763] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3266097492] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3266546535] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3266998875] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3267457431] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3267937323] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3268413750] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3268869324] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3269330652] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3269777973] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3270259167] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3270753276] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3271206666] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3271702161] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3272150973] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3272629647] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3273105255] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3273572673] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3274023018] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3274469646] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3274948929] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3275431236] ECW: w=0x3db97880 func=0x3d697448 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3275917092] ECW: w=0x3db95990 func=0x3d6ab736 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3276372015] ECW: w=0x3db985a0 func=0x3d6a42d7 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3276888468] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3277379574] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3278033199] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3278672502] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3279079608] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3279563700] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3280152855] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 3280500384] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3280877901] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 1 TC +[Hera] [HADES][INFO ] [KRELTSC: 3283263984] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3283752003] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3284230719] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3284683395] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3285168621] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3285634611] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3286105746] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3286586478] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 3287129160] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3287558505] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3288042555] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3288701577] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 3289111602] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 2 TC +[Hera] [HADES][INFO ] [KRELTSC: 3290246631] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3290740698] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3291199569] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3291646260] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3292175859] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3292689036] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3293161473] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3293608374] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3294091416] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3294568578] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3295022094] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3295505220] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 20 [HADES][INFO ] [KRELTSC: 3296003634] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3296432916] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3296904681] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3297537159] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 3297946554] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 5 TC +[Hera] [HADES][INFO ] [KRELTSC: 3299113692] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3299586087] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3300045714] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3300493182] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3300988194] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3301442571] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3301899909] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3302344773] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3302826744] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3303294183] ECW: w=0x3db95b70 func=0x3d6ab92c 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 3303754923] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3304216251] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 3304714455] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3305152767] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3305610147] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3306241659] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 3306646602] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF 66 SWAP ENDCASE . CR ; 0 TC +[Hera] [HADES][INFO ] [KRELTSC: 3308536770] L8[TABLE]: Config 14 → 0 regime=6 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 56,560000,10000,0,0,211,103,32,4096,1620,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3309851559] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3310316394] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3310801242] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3311262297] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3311745885] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3312205554] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3312669444] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3313162188] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 88 [HADES][INFO ] [KRELTSC: 3313675386] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3314103954] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3314562741] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3315195240] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 3315615765] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCASE . CR ; -1 TC +[Hera] [HADES][INFO ] [KRELTSC: 3316583529] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3317049645] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3317530797] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3317976291] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3318458808] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3318916818] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3319372266] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3319864506] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 55 [HADES][INFO ] [KRELTSC: 3320359098] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3320787645] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3321245697] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3321888381] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 3322296285] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3322774308] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 3323121942] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3323499396] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 1 TC +[Hera] [HADES][INFO ] [KRELTSC: 3324692196] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3325159278] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3325627431] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3326095794] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3326578416] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3327036048] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3327496809] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3327975903] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 3328482948] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3328910151] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3329366607] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3329996901] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 3330411924] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 2 TC +[Hera] [HADES][INFO ] [KRELTSC: 3331515306] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3331998831] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3332473284] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3332920626] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3333403920] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3333864177] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3334337097] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3334907037] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3335387874] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3335845275] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3336298770] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3336800607] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 20 [HADES][INFO ] [KRELTSC: 3337294842] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3337721961] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3338181189] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3338862240] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 3339337155] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 5 TC +[Hera] [HADES][INFO ] [KRELTSC: 3340536822] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3341040612] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3341506203] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3341955855] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3342442551] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3342933531] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3343406703] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3343870929] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3344354832] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3344837643] ECW: w=0x3db95b70 func=0x3d6ab92c 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 3345300693] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3345765024] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 3346265811] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3346698033] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3347172654] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3347809773] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 3348218874] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF 66 SWAP ENDCASE . CR ; 0 TC +[Hera] [HADES][INFO ] [KRELTSC: 3349364025] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3349836063] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3350295942] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3350751579] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3351261480] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3351719406] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3352172502] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3352654116] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 88 [HADES][INFO ] [KRELTSC: 3353185500] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3353615958] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3354074577] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3354705228] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 3355117479] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCASE . CR ; -1 TC +[Hera] [HADES][INFO ] [KRELTSC: 3356089968] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3356558646] ECW: w=0x3db95c60 func=0x3d6ab9fb 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3357059034] ECW: w=0x3db98960 func=0x3d6a4502 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3357539178] ECW: w=0x3dba34a0 func=0x3d6991bb '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3358022052] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3358480524] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3358934691] ECW: w=0x3dba33a8 func=0x3d6990ff '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3359415696] ECW: w=0x3db9aee0 func=0x3d6a2120 '.' +[Hera] 55 [HADES][INFO ] [KRELTSC: 3359948445] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3360376887] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3360836766] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3361478652] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 3361911378] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3362466009] === Control Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 3363096576] +[Hera] === Testing Module: StarForth Words === +[Hera] [HADES][INFO ] [KRELTSC: 3363695034] Running StarForth Words Tests (Module 17: StarForth Extensions)... +[Hera] [HADES][TEST ] [KRELTSC: 3364344648] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3364950267] Testing word: ENTROPY@ +[Hera] [HADES][TEST ] [KRELTSC: 3365322009] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3365720988] Running ENTROPY@.after_execution: : TESTWORD 1 1 + DROP ; TESTWORD ' TESTWORD ENTROPY@ . CR +[Hera] [HADES][INFO ] [KRELTSC: 3366713553] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3367183806] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3367644693] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 3368120238] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3368581818] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3369439185] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3370116687] Expected: Should show execution count > 0 +[Hera] [HADES][TEST ] [KRELTSC: 3370597020] Running ENTROPY@.zero_initial: : NEWWORD ; ' NEWWORD ENTROPY@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3371404239] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3372087474] Expected: Should show 0 for unused word +[Hera] [HADES][TEST ] [KRELTSC: 3372556383] Running ENTROPY@.multiple_calls: : ENTTEST 1 DROP ; ENTTEST ENTTEST ENTTEST ' ENTTEST ENTROPY@ . CR +[Hera] [HADES][INFO ] [KRELTSC: 3373447833] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3373924029] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3374414064] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3374907018] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3375365700] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3375839754] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3376348332] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3376807896] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3377275167] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3377851680] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3378595962] Expected: Should increment with each call +[Hera] [HADES][TEST ] [KRELTSC: 3379073586] Running ENTROPY@.null_addr: 0 ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 3379588800] ENTROPY@: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 3380015646] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3380760327] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 3381209979] Running ENTROPY@.empty_stack: ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 3381700434] ENTROPY@: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3382117872] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3382849449] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3383311638] ENTROPY@: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3383849280] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3384430665] Testing word: ENTROPY! +[Hera] [HADES][TEST ] [KRELTSC: 3384827271] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3385203759] Running ENTROPY!.set_entropy: : ENTSET ; 42 ' ENTSET ENTROPY! ' ENTSET ENTROPY@ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3386374950] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3387042519] Expected: Should set entropy to 42 +[Hera] [HADES][TEST ] [KRELTSC: 3387485073] Running ENTROPY!.overwrite: : ENTOV ; 10 ' ENTOV ENTROPY! 20 ' ENTOV ENTROPY! ' ENTOV ENTROPY@ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 3388507185] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3389184771] Expected: Should overwrite previous value +[Hera] [HADES][TEST ] [KRELTSC: 3389661765] Running ENTROPY!.zero_entropy: : ENTZERO ; 0 ' ENTZERO ENTROPY! ' ENTZERO ENTROPY@ . CR +[Hera] 0 [HADES][INFO ] [KRELTSC: 3390922857] L8[TABLE]: Config 0 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 57,570000,10000,0,0,193,110,33,4096,1712,0,0,0,65536,0,0,65536,0,0 + +[Hera] [HADES][TEST ] [KRELTSC: 3392200665] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3392849208] Expected: Should set entropy to 0 +[Hera] [HADES][TEST ] [KRELTSC: 3393313098] Running ENTROPY!.null_addr: 42 0 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 3393840324] ENTROPY!: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 3394269123] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3394985706] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 3395456904] Running ENTROPY!.one_arg: 42 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 3395949333] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3396379287] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3397085307] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3397563099] Running ENTROPY!.empty_stack: ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 3398026548] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3398432415] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3399134403] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3399605454] ENTROPY!: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3400098240] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3400667886] Testing word: WORD-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 3401049225] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3401458242] Running WORD-ENTROPY.display_all: 1 DUP DUP DUP DROP DROP DROP DROP WORD-ENTROPY +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 97 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 77 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 179 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6980 + +[Hera] Total words: 439 + +[Hera] Average executions per word: 15 + +[Hera] [HADES][TEST ] [KRELTSC: 3422507907] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3423179886] Expected: Should display all word entropy stats +[Hera] [HADES][TEST ] [KRELTSC: 3423688359] Running WORD-ENTROPY.after_execution: : WDENT 1 2 + DROP ; WDENT WDENT WORD-ENTROPY +[Hera] [HADES][INFO ] [KRELTSC: 3424579977] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3425054514] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3425509353] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 3425957997] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3426418569] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3426910788] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3427367979] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3427822335] ECW: w=0x3db97010 func=0x3d696caa '+' +[Hera] [HADES][INFO ] [KRELTSC: 3428267997] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3428745138] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 100 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 77 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 182 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6997 + +[Hera] Total words: 440 + +[Hera] Average executions per word: 15 + +[Hera] [HADES][TEST ] [KRELTSC: 3449146155] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3449996781] Expected: Should show defined word entropy +[Hera] [HADES][TEST ] [KRELTSC: 3450476757] Running WORD-ENTROPY.stack_preserved: DEPTH WORD-ENTROPY DEPTH = . CR +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 100 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 78 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 182 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6999 + +[Hera] Total words: 440 + +[Hera] Average executions per word: 15 + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3471218331] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3471888924] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 3472328265] WORD-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3472853202] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3473427699] Testing word: RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 3473817501] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3474193275] Running RESET-ENTROPY.reset_defined: : RESETTEST 1 DROP ; RESETTEST RESETTEST RESETTEST RESET-ENTROPY +[Hera] [HADES][INFO ] [KRELTSC: 3475189515] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3475653405] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3476113683] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3476589354] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3477069981] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3477527697] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3478000512] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3478457808] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3478927683] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3479599494] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3480284997] Expected: Should reset all entropy counters +[Hera] [HADES][TEST ] [KRELTSC: 3480795633] Running RESET-ENTROPY.double_reset: RESET-ENTROPY RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 3481469796] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3482149650] Expected: Should handle multiple resets +[Hera] [HADES][TEST ] [KRELTSC: 3482618937] Running RESET-ENTROPY.after_usage: 1 DUP DUP DUP DROP DROP DROP DROP RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 3483430860] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3484109223] Expected: Should reset after word usage +[Hera] [HADES][TEST ] [KRELTSC: 3484577901] RESET-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3485097882] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3485729835] Testing word: TOP-WORDS +[Hera] [HADES][TEST ] [KRELTSC: 3486100359] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3486474348] Running TOP-WORDS.display_top5: : TOPTEST 1 DROP ; TOPTEST TOPTEST TOPTEST TOPTEST TOPTEST 5 TOP-WORDS +[Hera] [HADES][INFO ] [KRELTSC: 3487492407] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3487967028] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3488428083] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3488906904] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3489381882] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3489852828] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3490327050] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3490785501] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3491244351] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3491752131] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3492208566] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3492666996] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3493138614] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3493621803] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3494083950] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[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: 3496210557] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3496884594] Expected: Should display top 5 hot words +[Hera] [HADES][TEST ] [KRELTSC: 3497359173] 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: 3499131699] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3499790238] Expected: Should display top 10 words +[Hera] [HADES][TEST ] [KRELTSC: 3500275233] 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: 3501448188] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3502119369] Expected: Should handle display after reset +[Hera] [HADES][TEST ] [KRELTSC: 3502603944] 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: 3503699409] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3504409125] Expected: Should display top 1 word +[Hera] [HADES][TEST ] [KRELTSC: 3504862494] 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: 3505980051] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3506655684] Expected: Should handle large count +[Hera] [HADES][TEST ] [KRELTSC: 3507181356] Running TOP-WORDS.zero_count: 0 TOP-WORDS +[Hera] TOP-WORDS: invalid count 0 + +[Hera] [HADES][TEST ] [KRELTSC: 3507932232] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3508611939] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 3509056173] Running TOP-WORDS.negative_count: -5 TOP-WORDS +[Hera] TOP-WORDS: invalid count -5 + +[Hera] [HADES][TEST ] [KRELTSC: 3509891406] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3510570399] Expected: Should handle negative count +[Hera] [HADES][TEST ] [KRELTSC: 3511034037] Running TOP-WORDS.empty_stack: TOP-WORDS +[Hera] [HADES][ERROR] [KRELTSC: 3511540578] TOP-WORDS: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3511969776] Expected error occurred +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3512705721] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3513173118] TOP-WORDS: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3513674661] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3514252518] Testing word: (- +[Hera] [HADES][TEST ] [KRELTSC: 3514609560] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3514989555] Running (-.comment_line: (- This is a comment +[Hera] 1 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 3515803599] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 3516221247] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3516866598] Expected: Should ignore rest of line +[Hera] [HADES][TEST ] [KRELTSC: 3517318014] Running (-.mid_line: 1 (- comment here +[Hera] 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 3517880037] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 3518266752] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3518904648] Expected: Should work mid-expression +[Hera] [HADES][TEST ] [KRELTSC: 3519372108] Running (-.no_stack_effect: DEPTH (- comment +[Hera] DEPTH = . CR +[Hera] [HADES][WARN ] [KRELTSC: 3519991167] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 3520374144] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3521017605] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 3521455497] Running (-.multiple: 1 (- first +[Hera] 2 (- second +[Hera] + . CR +[Hera] [HADES][WARN ] [KRELTSC: 3522079911] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 3522467823] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3523105152] Expected: Should handle multiple comments +[Hera] [HADES][TEST ] [KRELTSC: 3523582335] (-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3524071236] === StarForth Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 3524692542] +[Hera] === Testing Module: ACL Words === +[Hera] [HADES][INFO ] [KRELTSC: 3525196059] Running ACL Words Tests (Module 24)... +[Hera] [HADES][INFO ] [KRELTSC: 3527570529] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3528062643] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][WARN ] [KRELTSC: 3528915663] ACL: denied '__acl_deny_test__' +[Hera] [HADES][INFO ] [KRELTSC: 3529885632] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3530360484] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3530825256] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3531346728] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3531813705] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3532276797] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3532781469] ECW: w=0x3dba2d18 func=0x3d69c1ae 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3533243196] ECW: w=0x3db958a0 func=0x3d6ab6b0 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3533724432] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3534558426] SKIP: STRICT mode test (ACL.4th not loaded) +[Hera] [HADES][INFO ] [KRELTSC: 3535245588] SKIP: ACL-TTL-COMPUTE (ACL.4th not loaded) +[Hera] [HADES][WARN ] [KRELTSC: 3535930104] vm_create_word: cannot shadow pinned word '__acl_shadow_target__' +[Hera] [HADES][TEST ] [KRELTSC: 3536741208] === ACL Words Summary: 17 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 3537345672] +[Hera] === Testing Module: Mama FORTH Words === +[Hera] [HADES][INFO ] [KRELTSC: 3537888060] Running Mama FORTH Words Tests (Capsule System M7.1)... +[Hera] [HADES][TEST ] [KRELTSC: 3538473813] Testing word: CAPSULE-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 3538867311] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3539248293] CAPSULE-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3539816175] Testing word: CAPSULE@ +[Hera] [HADES][TEST ] [KRELTSC: 3540185754] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3540565119] CAPSULE@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3541064667] Testing word: CAPSULE-FLAGS@ +[Hera] [HADES][TEST ] [KRELTSC: 3541461441] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3541856598] CAPSULE-FLAGS@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3542384076] Testing word: CAPSULE-LEN@ +[Hera] [HADES][TEST ] [KRELTSC: 3542771694] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3543161979] CAPSULE-LEN@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3543719088] Testing word: CAPSULE-HASH@ +[Hera] [HADES][TEST ] [KRELTSC: 3544131045] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3544504656] CAPSULE-HASH@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3545019807] Testing word: MAMA-VM-ID +[Hera] [HADES][TEST ] [KRELTSC: 3545393649] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3545768583] MAMA-VM-ID: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3546285666] Testing word: VM-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 3546651570] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3547027827] VM-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3547521579] Testing word: CAPSULE-BIRTH +[Hera] [HADES][TEST ] [KRELTSC: 3547909995] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3548297025] CAPSULE-BIRTH: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3548812827] Testing word: CAPSULE-RUN +[Hera] [HADES][TEST ] [KRELTSC: 3549191835] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3549565929] CAPSULE-RUN: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3550073898] Testing word: CAPSULE-TEST +[Hera] [HADES][TEST ] [KRELTSC: 3550480542] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3550856946] CAPSULE-TEST: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3551401854] === Mama FORTH Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 3552039477] FINAL TEST SUMMARY: +[Hera] [HADES][INFO ] [KRELTSC: 3552425772] Total tests run: 1035608876 +[Hera] [HADES][INFO ] [KRELTSC: 3552847599] Passed: 0 +[Hera] [HADES][INFO ] [KRELTSC: 3553223499] Failed: 0 +[Hera] [HADES][INFO ] [KRELTSC: 3553600470] Stubs (not yet implemented): 38 +[Hera] [HADES][INFO ] [KRELTSC: 3554046531] Errors: 0 +[Hera] [HADES][INFO ] [KRELTSC: 3554465649] ALL IMPLEMENTED TESTS PASSED! +[Hera] [HADES][INFO ] [KRELTSC: 3554928930] Contract checks (A4'/A1): all passed +[Hera] [HADES][INFO ] [KRELTSC: 3555387234] ============================================== +[Hera] PARITY:M7.1a word_count=448 here=0x00000000000000d8 latest_id=612 hash=0x681c6187ac3a4539 +[Hera] PARITY:OK +[Hera] POST: PASSED +[Hera] [HAL][exec] regions frozen: +[Hera] kernel.text: [0x000000003d66b000, 0x000000003d6b6f5a) +[Hera] VM: parity bootstrap complete +[Hera] [HADES][INFO ] [KRELTSC: 3579505041] blk: raw device LBN 2048..3071 (1024 blocks) +[Hera] PCI: init... +[Hera] PCI: ECAM mapped (amd64) +[Hera] virtio-blk: found device +[Hera] Artemis: virtio-blk attached +[Hera] [HADES][INFO ] [KRELTSC: 3700114551] blk: disk 'StarForth Volume' v2 LBN 3072..26073 (23002 user blocks); devblocks=7680 bam=1 base=2 total=23034 free=23002 +[Hera] Init: Mama birth... +[Hera] [HADES][INFO ] [KRELTSC: 3708200391] exec_block: block 2057 len 265 +[Hera] [HADES][INFO ] [KRELTSC: 3710709849] exec_block: block 2049 len 177 +[Hera] [HADES][INFO ] [KRELTSC: 3711980475] EXEC: capsule 'lib.4th' +[Hera] [HADES][INFO ] [KRELTSC: 3722463213] exec_block: block 4050 len 440 +[Hera] [HADES][INFO ] [KRELTSC: 3724778967] exec_block: block 2050 len 37 +[Hera] [HADES][INFO ] [KRELTSC: 3725280048] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3725768886] ECW: w=0x3dbc7ed0 func=0x3d680f9b '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 3726262512] ECW: w=0x3db9dec8 func=0x3d6a3b14 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 3727227861] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3727680054] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3728149740] ECW: w=0x3db9dec8 func=0x3d6a3b14 '(do-string)' +[Hera] LithosAnanke — FORTH-79 bare-metal kernel[HADES][INFO ] [KRELTSC: 3728908722] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3729336996] ECW: w=0x3db9dec8 func=0x3d6a3b14 '(do-string)' +[Hera] Stadium step one: Hera alone[HADES][INFO ] [KRELTSC: 3729999084] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3730456023] ECW: w=0x3dbc7ed0 func=0x3d680f9b '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 3730925268] ECW: w=0x3db9dec8 func=0x3d6a3b14 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 3731683284] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3732109962] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3732584793] ECW: w=0x3db9dec8 func=0x3d6a3b14 '(do-string)' +[Hera] Hera [live][HADES][INFO ] [KRELTSC: 3733171911] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3733600164] ECW: w=0x3dbc7ed0 func=0x3d680f9b '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 3734059287] ECW: w=0x3db9dec8 func=0x3d6a3b14 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 3734828202] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3735621750] L8[TABLE]: Config 14 → 15 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 58,580000,10000,0,0,190,5,67,4096,1775,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3736852224] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 3737418531] ECW: w=0x3db9d920 func=0x3d6a3815 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3737878809] ECW: w=0x3dba4948 func=0x3d699c74 'EXIT' +[Hera] PARITY:MAMA_INIT capsule_id=0xb4c4b5559146a3bd mode=m capsule_hash=0xb4c4b5559146a3bd dict_hash=0x3d4e1daf289da94f +[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=9279534) +[Hera] Heartbeat running. +[Hera] Stadium words: promotions=354 evictions=0 +[Hera] Stadium conservation: resident_sum=65536 reservoir=0 sum=65536 (Q48_ONE=65536) +[Hera] Heartbeat: 4 ticks, trust=0x00010000, variance=0x00000000 +[Hera] LithosAnanke v1.5.4 +[Hera] StarForth Version 3.1.0 + +[Hera] StarForth Emergency CLI +[Hera] FORTH-79 interpreter — type BYE or power off to exit + +[Hera] ok> \ No newline at end of file diff --git a/logs/20260805-130919/aarch64/qemu-aarch64-20260805-130919.log b/logs/20260805-130919/aarch64/qemu-aarch64-20260805-130919.log new file mode 100644 index 0000000..4045c79 --- /dev/null +++ b/logs/20260805-130919/aarch64/qemu-aarch64-20260805-130919.log @@ -0,0 +1,10349 @@ +UEFI firmware (version 2025.11-3ubuntu7 built at 11:11:58 on Mar 31 2026) +[=3hBdsDxe: failed to load Boot0002 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x2,0x0): Not Found +BdsDxe: loading Boot0003 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x3,0x0) +BdsDxe: starting Boot0003 "UEFI Misc Device 2" from PciRoot(0x0)/Pci(0x3,0x0) +[=3hStarKernel UEFI Loader +Loading kernel from ESP... +[CKPT 001] Entered efi_main - ConOut live +Collecting boot information... +[CKPT 004] Command line parsed +[CKPT 005] Kernel stack allocation decided +[CKPT 006] Boot info collected (ACPI table located) +[CKPT 007] GOP: protocol not found +[CKPT 008] About to enter ExitBootServices retry loop + + + _____ _ _ __ _ + / ____| | | |/ / | | + | (___ | |_ __ _ _ __| ' / ___ _ __ _ __ ___| | + \___ \| __/ _` | '__| < / _ \ '__| '_ \ / _ \ | + ____) | || (_| | | | . \ __/ | | | | | __/ | + |_____/ \__\__,_|_| |_|\_\___|_| |_| |_|\___|_| + +LithosAnanke v1.5.4 +Architecture: aarch64 +Build: Aug 5 2026 13:09:08 + +UEFI BootServices: EXITED + +=== StarKernel Boot Information === +Memory map entries: 74 +Total memory: 2048 MB +Usable memory: 2012 MB +=================================== + +PMM initialized. +PMM statistics: + Total pages: 516654 + Free pages : 515243 + Used pages : 1411 + Total MB : 2018 + Free MB : 2012 + 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. + +AArch64: running at EL1 +IDT installed. + +APIC: init... +GICv2: distributor+CPU interface enabled, PPI 30 +APIC: init done + +Timer: init... +Timer: AArch64 generic timer initialised. +Timer: init done + +Kernel heap initialized. +Heap statistics: + Total bytes: 1073741784 + Free bytes: 1073741784 + Used bytes: 0 + Peak bytes: 0 + +Heartbeat: init... +Heartbeat: init done +Kernel initialization complete. +Boot successful! + +Stadium: 161323 cells (10082 KB) +VM: bootstrap parity... +VM arena allocated: 0x0000000040408000 + (5 MB) +[HADES][INFO ] [KRELTSC: 0] Registering FORTH-79 Standard word set... +[HADES][INFO ] [KRELTSC: 103697] Registering FORTH-79 arithmetic words... +[HADES][INFO ] [KRELTSC: 559454] FORTH-79 Standard word set registration complete +[Hera] POST: Running comprehensive test suite... +[Hera] [HADES][INFO ] [KRELTSC: 1095821] Starting comprehensive FORTH-79 modular test suite... +[Hera] [HADES][INFO ] [KRELTSC: 1113195] ============================================== +[Hera] [HADES][INFO ] [KRELTSC: 1131411] +[Hera] === Testing Module: Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 1157372] Running Stack Words Tests (Module 1: Foundation)... +[Hera] [HADES][TEST ] [KRELTSC: 1175580] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1194939] Testing word: DUP +[Hera] [HADES][TEST ] [KRELTSC: 1206896] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1227437] Running DUP.basic: 5 DUP . . CR +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 1488877] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1518471] Expected: Should print: 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 1615089] Running DUP.zero: 0 DUP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1633136] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1653979] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1706997] Running DUP.negative: -42 DUP . . CR +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 1729215] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1750112] Expected: Should print: -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 1803894] Running DUP.max_int: 2147483647 DUP . . CR +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1825482] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1846135] Expected: Should duplicate max int +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1913978] Running DUP.min_int: -2147483648 DUP . . CR +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1936009] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1957700] Expected: Should duplicate min int +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2025827] Running DUP.empty_stack: DUP +[Hera] [HADES][ERROR] [KRELTSC: 2040707] DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2053734] Expected error occurred +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2076117] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2096075] DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2120749] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2138828] Testing word: DROP +[Hera] [HADES][TEST ] [KRELTSC: 2150797] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2162677] Running DROP.basic: 5 7 DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2182954] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2203428] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2250395] Running DROP.zero: 42 0 DROP . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2267949] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2288515] Expected: Should drop zero, print 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2338028] Running DROP.negative: 10 -5 DROP . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 2355608] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2376352] Expected: Should drop negative, print 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 2426627] Running DROP.double_drop: 1 2 3 DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2445520] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2466376] Expected: Should print: 1 +[Hera] 1 +[Hera] [HADES][INFO ] [KRELTSC: 2863174] L8[TABLE]: Config 17 → 0 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] tick_number,elapsed_ns,tick_interval_ns,cache_hits_delta,bucket_hits_delta,word_executions_delta,hot_word_count,avg_word_heat_q48,window_width,actual_window_size,predicted_label_hits,jitter_bits,apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,hera_heat_q48,hermes_heat_q48,artemis_heat_q48 +[Hera] [HADES][DOE ] 1,10000,10000,0,0,183,4,45,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3058385] Running DROP.triple_drop: 1 2 3 4 DROP DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3080468] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3101264] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3152032] Running DROP.sequential: 5 DROP 6 DROP 7 . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 3170961] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3191392] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 3239494] Running DROP.single_item: 99 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3261424] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3282625] Expected: Should empty stack, depth=0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3333132] Running DROP.depth_change: DEPTH 1 2 DROP DEPTH SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3363831] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3384328] Expected: Should change depth by 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3437959] Running DROP.preserve_depth: DEPTH 5 6 DROP DROP DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3464897] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3485360] Expected: Should preserve net depth +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 3540787] L8[TABLE]: Config 0 → 1 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 2,20000,10000,0,0,173,5,44,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3587051] Running DROP.max_int: 2147483647 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3606620] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3627078] Expected: Should drop max int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3676178] Running DROP.min_int: -2147483648 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3695421] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3716199] Expected: Should drop min int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3763872] Running DROP.with_dup: 5 DUP DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3782305] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3802464] Expected: Should duplicate then drop +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3852101] Running DROP.with_swap: 1 2 SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3870439] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3890702] Expected: Should swap then drop +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3942154] Running DROP.complex: 1 2 3 ROT DROP SWAP DROP . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3968833] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3989214] Expected: Should handle complex sequence +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4042366] Running DROP.empty_stack: DROP +[Hera] [HADES][ERROR] [KRELTSC: 4057709] DROP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4070167] Expected error occurred +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4093200] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4108042] DROP: 15 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4123539] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4141697] Testing word: SWAP +[Hera] [HADES][TEST ] [KRELTSC: 4153005] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4164932] Running SWAP.basic: 5 7 SWAP . . CR +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 4182524] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4203201] Expected: Should print: 7 5 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 4253234] Running SWAP.same_values: 42 42 SWAP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 4272895] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4293033] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 4341525] L8[TABLE]: Config 1 → 2 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 3,30000,10000,0,0,184,6,60,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4385172] Running SWAP.zero_nonzero: 0 99 SWAP . . CR +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 4404957] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4425701] Expected: Should print: 99 0 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 4477450] Running SWAP.negative: -5 10 SWAP . . CR +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 4496217] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4516925] Expected: Should print: 10 -5 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 4568286] Running SWAP.one_item: 42 SWAP +[Hera] [HADES][ERROR] [KRELTSC: 4583200] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 4598510] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4642585] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4658365] Running SWAP.empty_stack: SWAP +[Hera] [HADES][ERROR] [KRELTSC: 4672258] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 4686778] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4709403] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4724542] SWAP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4739833] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4757724] Testing word: OVER +[Hera] [HADES][TEST ] [KRELTSC: 4769057] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4781334] Running OVER.basic: 5 7 OVER . . . CR +[Hera] 5 7 5 +[Hera] [HADES][TEST ] [KRELTSC: 4805768] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4826518] 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: 4879962] Running OVER.zeros: 0 0 OVER . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 4898671] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4918927] 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: 4971181] Running OVER.mixed: -1 42 OVER . . . CR +[Hera] -1 42 -1 +[Hera] [HADES][TEST ] [KRELTSC: 4990180] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5010440] 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: 5067672] Running OVER.one_item: 42 OVER +[Hera] [HADES][ERROR] [KRELTSC: 5082448] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 5098109] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5120241] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5134951] Running OVER.empty_stack: OVER +[Hera] [HADES][ERROR] [KRELTSC: 5149191] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 5163572] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5186234] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5201085] OVER: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5217920] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5236897] Testing word: ROT +[Hera] [HADES][TEST ] [KRELTSC: 5247756] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5259791] Running ROT.basic: 1 2 3 ROT . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 5280698] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5300858] 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: 5355860] Running ROT.zeros: 0 0 0 ROT . . . CR +[Hera] [HADES][INFO ] [KRELTSC: 5375459] L8[TABLE]: Config 2 → 3 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 4,40000,10000,0,0,174,8,71,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 5420414] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5440725] 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: 5494541] Running ROT.mixed: -1 0 1 ROT . . . CR +[Hera] -1 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 5513210] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5534235] 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: 5588714] Running ROT.two_items: 1 2 ROT +[Hera] [HADES][ERROR] [KRELTSC: 5603247] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 5618000] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5639973] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5656053] Running ROT.one_item: 42 ROT +[Hera] [HADES][ERROR] [KRELTSC: 5669311] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 5683524] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5706490] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5721853] Running ROT.empty_stack: ROT +[Hera] [HADES][ERROR] [KRELTSC: 5734981] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 5749127] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5772165] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5787810] ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5803409] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5821211] Testing word: DEPTH +[Hera] [HADES][TEST ] [KRELTSC: 5832881] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5844981] Running DEPTH.empty: DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5861639] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5881836] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5927874] Running DEPTH.one_item: 42 DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5945109] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5966048] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 6011488] Running DEPTH.multiple: 1 2 3 DEPTH . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 6029957] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6050276] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 6101245] DEPTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 6116688] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 6135108] Testing word: PICK +[Hera] [HADES][TEST ] [KRELTSC: 6146381] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 6158388] Running PICK.pick_0: 1 2 3 0 PICK . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 6181691] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6201974] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 6250064] Running PICK.pick_1: 1 2 3 1 PICK . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 6268007] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6288566] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][INFO ] [KRELTSC: 6331451] L8[TABLE]: Config 3 → 4 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 5,50000,10000,0,0,150,9,78,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 6376515] Running PICK.pick_2: 1 2 3 2 PICK . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 6394589] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6415191] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 6462858] PICK: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 6478380] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 6496167] Testing word: ROLL +[Hera] [HADES][TEST ] [KRELTSC: 6507104] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 6519427] Running ROLL.roll_1: 1 2 3 1 ROLL . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 6547683] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6568164] 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: 6621837] Running ROLL.roll_2: 1 2 3 2 ROLL . . . CR +[Hera] 2 3 1 +[Hera] [HADES][TEST ] [KRELTSC: 6641058] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6662103] 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: 6715958] ROLL: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 6731273] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 6749071] Testing word: ?DUP +[Hera] [HADES][TEST ] [KRELTSC: 6760022] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 6772205] Running ?DUP.nonzero: 42 ?DUP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 6794019] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6814318] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 6865330] Running ?DUP.negative: -5 ?DUP . . CR +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 6883306] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6904254] Expected: Should print: -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 6954742] Running ?DUP.zero: 0 ?DUP DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 6973588] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 6993976] Expected: Should not dup: depth 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 7043904] Running ?DUP.empty_stack: ?DUP +[Hera] [HADES][ERROR] [KRELTSC: 7058104] ?DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 7070145] Expected error occurred +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7093080] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 7107915] ?DUP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 7123240] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 7141095] Testing word: -ROT +[Hera] [HADES][TEST ] [KRELTSC: 7152459] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 7164388] Running -ROT.basic: 1 2 3 -ROT . . . CR +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 7189219] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7210070] Expected: Should print: 1 3 2 +[Hera] [HADES][INFO ] [KRELTSC: 7225214] L8[TABLE]: Config 4 → 5 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 6,60000,10000,0,0,159,11,73,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 7303265] Running -ROT.zeros: 0 0 0 -ROT . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 7321965] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7342789] 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: 7395837] Running -ROT.roundtrip: 1 2 3 -ROT ROT . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 7417585] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7437965] 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: 7493748] Running -ROT.two_items: 1 2 -ROT +[Hera] [HADES][ERROR] [KRELTSC: 7508675] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 7523991] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7546444] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 7561185] Running -ROT.empty_stack: -ROT +[Hera] [HADES][ERROR] [KRELTSC: 7574675] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 7589340] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7611508] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 7626334] -ROT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 7643800] === Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 7663993] +[Hera] === Testing Module: Return Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 7680708] Running Return Stack Words Tests (Module 2)... +[Hera] [HADES][TEST ] [KRELTSC: 7697905] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 7718922] Testing word: >R +[Hera] [HADES][TEST ] [KRELTSC: 7730735] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 7742772] Running >R.basic: 42 >R R@ . R> . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 7776690] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7796843] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 7851766] Running >R.zero: 0 >R R@ . R> . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 7869511] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7889576] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 7941912] Running >R.negative: -123 >R R@ . R> . CR +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 7962163] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 7982286] Expected: Should print: -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 [HADES][INFO ] [KRELTSC: 8020200] L8[TABLE]: Config 5 → 6 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 7,70000,10000,0,0,188,15,71,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 8079417] Running >R.multiple: 1 2 >R >R R@ . R> . R@ . R> . CR +[Hera] 1 1 2 2 +[Hera] [HADES][TEST ] [KRELTSC: 8102671] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8122729] 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: 8184278] Running >R.empty_stack: >R +[Hera] [HADES][ERROR] [KRELTSC: 8198171] >R: DSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 8209782] Expected error occurred +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8232422] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 8247744] >R: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 8263432] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 8283580] Testing word: R> +[Hera] [HADES][TEST ] [KRELTSC: 8294165] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 8305968] Running R>.basic: 42 >R R> . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 8322664] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8343193] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 8390289] Running R>.lifo_order: 1 2 >R >R R> . R> . CR +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 8410671] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8430577] Expected: Should print: 2 1 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 8483454] Running R>.empty_rstack: R> +[Hera] [HADES][ERROR] [KRELTSC: 8497789] R>: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 8509081] Expected error occurred +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8531589] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 8547478] R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 8562460] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 8581704] Testing word: R@ +[Hera] [HADES][TEST ] [KRELTSC: 8592410] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 8604564] Running R@.basic: 42 >R R@ . R> DROP CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 8624327] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8644728] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 8694345] Running R@.non_destructive: 99 >R R@ R@ = . R> DROP CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 8715805] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8735772] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 8769250] L8[TABLE]: Config 6 → 7 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 8,80000,10000,0,0,214,16,83,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 8825872] Running R@.empty_rstack: R@ +[Hera] [HADES][ERROR] [KRELTSC: 8840230] R@: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 8851765] Expected error occurred +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 8873804] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 8889771] R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 8906026] === Return Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 8926464] +[Hera] === Testing Module: Memory Words === +[Hera] [HADES][INFO ] [KRELTSC: 8943659] Running Memory Words Tests (Module 3)... +[Hera] [HADES][TEST ] [KRELTSC: 8960202] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 8978931] Testing word: ! +[Hera] [HADES][TEST ] [KRELTSC: 8989498] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 9001454] Running !.basic: 42 HERE ! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 9031168] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9051630] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 9101722] Running !.zero: 0 HERE ! HERE @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 9119156] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9139028] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 9187687] Running !.negative: -999 HERE ! HERE @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 9207137] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9226981] Expected: Should print: -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 9280075] Running !.overwrite: 111 HERE ! 222 HERE ! HERE @ . CR +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 9301603] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9321494] Expected: Should print: 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 9375352] Running !.max_int: 2147483647 HERE ! HERE @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 9396846] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9417048] Expected: Should store max int +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 9475331] Running !.min_int: -2147483648 HERE ! HERE @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 9496510] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9516714] Expected: Should store min int +[Hera] [HADES][INFO ] [KRELTSC: 9532368] L8[TABLE]: Config 7 → 8 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 9,90000,10000,0,0,216,19,82,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 9614269] Running !.empty_stack: ! +[Hera] [HADES][TEST ] [KRELTSC: 9627785] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9651020] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 9666076] Running !.one_item: 42 ! +[Hera] [HADES][TEST ] [KRELTSC: 9678836] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9700683] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 9716184] !: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 9731760] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 9749908] Testing word: @ +[Hera] [HADES][TEST ] [KRELTSC: 9760490] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 9773891] Running @.after_store: 123 HERE ! HERE @ . CR +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 9793517] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9816048] Expected: Should print: 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 9875429] Running @.multiple_reads: 456 HERE ! HERE @ HERE @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 9898509] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 9918510] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 9972778] Running @.empty_stack: @ +[Hera] [HADES][TEST ] [KRELTSC: 9987105] Expected error occurred +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10009071] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 10024684] @: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 10039769] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 10058054] Testing word: C! +[Hera] [HADES][TEST ] [KRELTSC: 10068914] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 10081738] Running C!.basic: 65 HERE C! HERE C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 10114642] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10134916] Expected: Should print: 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 10186100] Running C!.zero: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 10205223] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10225777] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 10275790] Running C!.high_byte: 255 HERE C! HERE C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 10296609] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10316765] Expected: Should print: 255 +[Hera] 255 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 10356889] L8[TABLE]: Config 8 → 9 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 10,100000,10000,0,0,222,21,84,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 10410786] Running C!.truncation: 256 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 10430480] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10450541] Expected: Should print: 0 (truncated) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 10503273] C!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 10519652] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 10538096] Testing word: C@ +[Hera] [HADES][TEST ] [KRELTSC: 10548924] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 10561012] Running C@.after_cstore: 97 HERE C! HERE C@ . CR +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 10581678] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10601999] Expected: Should print: 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 10655584] Running C@.zero_byte: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 10674635] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10694867] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 10746689] C@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 10761834] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 10780847] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 10791798] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 10803930] Running ,.basic: 42 , HERE 8 - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 10835083] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10858427] Expected: Should compile 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 10910991] Running ,.negative: -999 , HERE 8 - @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 10930139] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 10950076] Expected: Should compile -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 11002878] ,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 11018817] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 11037120] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 11047968] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 11060184] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 11088293] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 11108579] Expected: Should compile byte 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][INFO ] [KRELTSC: 11137158] L8[TABLE]: Config 9 → 10 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 11,110000,10000,0,0,207,23,86,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 11204963] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 11223686] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 11243730] Expected: Should compile byte 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 11295961] C,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 11311041] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 11329546] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 11340967] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 11353188] Running 2,.roundtrip: 12345 67890 2, HERE 16 - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 11387645] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 11408696] Expected: Should print: 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 11470903] Running 2,.save-and-verify: 12345 67890 2, HERE 16 - 2@ 67890 = SWAP 12345 = AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 11502106] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 11524510] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 11586088] 2,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 11601367] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 11619495] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 11630598] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 11643139] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 11660705] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 11681340] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 11729461] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 SWAP / +[Hera] [HADES][INFO ] [KRELTSC: 11753071] L8[TABLE]: Config 10 → 11 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 12,120000,10000,0,0,189,26,83,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 11802958] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 11823783] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes on 64-bit) +[Hera] [HADES][TEST ] [KRELTSC: 11874856] HERE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 11890477] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 11909156] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 11920596] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 11932621] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 11957420] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 11978038] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 12030050] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 12054950] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12078165] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 12131209] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 12153305] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12174301] Expected: Should print: -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 12226600] ALLOT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 12242298] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 12260499] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 12271896] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 12284070] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 12304600] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12324957] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 12373287] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 12393797] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12414388] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 [HADES][INFO ] [KRELTSC: 12438625] L8[TABLE]: Config 11 → 12 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 13,130000,10000,0,0,221,28,80,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 12502146] PAD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 12517983] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 12536302] Testing word: +! +[Hera] [HADES][TEST ] [KRELTSC: 12547346] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 12559504] Running +!.basic: 10 HERE ! 5 HERE +! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 12585625] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12606366] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 12660139] Running +!.by_zero: 42 HERE ! 0 HERE +! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 12681847] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12702061] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 12754841] Running +!.negative: 10 HERE ! -3 HERE +! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 12776218] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12796755] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 12848388] Running +!.accumulate: 0 HERE ! 1 HERE +! 2 HERE +! 3 HERE +! HERE @ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 12873808] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 12894495] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][INFO ] [KRELTSC: 12928702] L8[TABLE]: Config 12 → 13 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 14,140000,10000,0,0,204,29,83,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 12991769] Running +!.empty_stack: +! +[Hera] [HADES][TEST ] [KRELTSC: 13005845] Expected error occurred +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13030192] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 13045290] +!: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 13060525] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 13078776] Testing word: -! +[Hera] [HADES][TEST ] [KRELTSC: 13090041] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 13102463] Running -!.basic: 10 HERE ! 3 HERE -! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 13127779] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13149153] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 13200952] Running -!.by_zero: 42 HERE ! 0 HERE -! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 13222034] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13242398] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 13295382] Running -!.negative: 10 HERE ! -5 HERE -! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 13316339] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13336846] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 13389278] Running -!.empty_stack: -! +[Hera] [HADES][TEST ] [KRELTSC: 13403986] Expected error occurred +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13426904] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 13441802] -!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 13457393] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 13475681] Testing word: 2! +[Hera] [HADES][TEST ] [KRELTSC: 13486578] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 13498760] Running 2!.basic: 11 22 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 13531838] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13552201] Expected: Should print: 22 11 +[Hera] 11 22 +[Hera] 11 22 [HADES][INFO ] [KRELTSC: 13582626] L8[TABLE]: Config 13 → 14 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 15,150000,10000,0,0,203,30,82,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 11 22 +[Hera] 11 22 +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 13653072] Running 2!.zeros: 0 0 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 13675238] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13695726] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 13752250] Running 2!.negative: -1 -2 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 13776071] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13796344] Expected: Should print: -2 -1 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 13855763] Running 2!.empty_stack: 2! +[Hera] [HADES][TEST ] [KRELTSC: 13869807] Expected error occurred +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 13892418] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 13907385] 2!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 13922458] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 13940559] Testing word: FILL +[Hera] [HADES][TEST ] [KRELTSC: 13951662] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 13964140] Running FILL.basic: HERE 8 65 FILL HERE C@ . HERE 1+ C@ . CR +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 13997169] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14018267] Expected: Should print: 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 [HADES][INFO ] [KRELTSC: 14064835] L8[TABLE]: Config 14 → 15 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 16,160000,10000,0,0,201,32,83,567,567,0,0,0,65536,0,0,65536,0,0 + +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 14118843] Running FILL.zero_n: HERE 0 88 FILL +[Hera] [HADES][TEST ] [KRELTSC: 14133854] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14155442] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 14191452] Running FILL.zero_byte: HERE 4 0 FILL HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 14212463] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14232821] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 14282635] Running FILL.empty_stack: FILL +[Hera] [HADES][TEST ] [KRELTSC: 14297521] Expected error occurred +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14319952] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 14335377] FILL: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 14350788] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 14368905] Testing word: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 14380618] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 14393610] Running MOVE.basic: HERE 65 OVER C! HERE 1+ 66 OVER C! HERE HERE 16 + 2 MOVE HERE 16 + C@ . HERE 17 + C@ . CR +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 14439658] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14461175] Expected: Should print: 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 14534159] Running MOVE.zero_n: HERE HERE 8 + 0 MOVE +[Hera] [HADES][TEST ] [KRELTSC: 14551668] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14572363] Expected: Should do nothing +[Hera] [HADES][INFO ] [KRELTSC: 14593329] L8[TABLE]: Config 15 → 16 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 17,170000,10000,0,0,190,34,86,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 14655870] Running MOVE.empty_stack: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 14670841] Expected error occurred +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14693459] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 14709088] MOVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 14724657] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 14743196] Testing word: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 14754552] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 14767141] Running ERASE.basic: HERE 4 65 FILL HERE 4 ERASE HERE C@ . HERE 3 + C@ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 14798026] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14818751] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 14879426] Running ERASE.zero_n: HERE 0 ERASE +[Hera] [HADES][TEST ] [KRELTSC: 14894766] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14915697] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 14950823] Running ERASE.empty_stack: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 14966435] Expected error occurred +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 14989311] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 15004282] ERASE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 15020867] === Memory Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 15040553] +[Hera] === Testing Module: Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 15057054] Running Arithmetic Words Tests (Module 5)... +[Hera] [HADES][TEST ] [KRELTSC: 15073675] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 15094280] Testing word: + +[Hera] [HADES][TEST ] [KRELTSC: 15105015] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 15117090] Running +.basic: 5 7 + . CR +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 15133200] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15154094] Expected: Should print: 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 15200847] Running +.zero_add: 42 0 + . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 15217996] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15238182] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 15285450] Running +.negative: -5 3 + . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 15301912] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15321829] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 15368993] Running +.both_negative: -5 -3 + . CR +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 15386381] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15406794] Expected: Should print: -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] [HADES][INFO ] [KRELTSC: 15448787] L8[TABLE]: Config 16 → 18 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 18,180000,10000,0,0,170,35,73,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 15493676] Running +.overflow: 2147483647 1 + . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 15513600] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15534026] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 15588393] Running +.underflow: -2147483648 -1 + . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 15608342] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15628416] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 15685432] Running +.empty_stack: + +[Hera] [HADES][ERROR] [KRELTSC: 15698882] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 15712619] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15734736] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 15749621] Running +.one_item: 42 + +[Hera] [HADES][ERROR] [KRELTSC: 15762506] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 15774319] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15796101] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 15811050] +: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 15826653] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 15845809] Testing word: - +[Hera] [HADES][TEST ] [KRELTSC: 15856499] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 15868802] Running -.basic: 10 3 - . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 15885857] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15906364] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 15952258] Running -.zero_sub: 42 0 - . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 15969073] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 15989010] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 16036303] Running -.from_zero: 0 5 - . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 16052893] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16072829] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 16121685] Running -.negative: 5 -3 - . CR +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 16138435] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16158918] Expected: Should print: 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 16204752] Running -.same_values: 42 42 - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 16221854] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16242127] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 16289744] Running -.overflow: -2147483648 1 - . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 16309122] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16329576] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 16386099] Running -.underflow: 2147483647 -1 - . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 16406960] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16427325] Expected: Should overflow +[Hera] 2147483648 +[Hera] [HADES][INFO ] [KRELTSC: 16453160] L8[TABLE]: Config 18 → 19 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 19,190000,10000,0,0,154,28,44,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 16528779] Running -.empty_stack: - +[Hera] [HADES][ERROR] [KRELTSC: 16543287] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 16556682] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16579247] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 16594795] Running -.one_item: 42 - +[Hera] [HADES][ERROR] [KRELTSC: 16607792] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 16619094] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16640764] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 16656556] -: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 16671582] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 16690362] Testing word: * +[Hera] [HADES][TEST ] [KRELTSC: 16700994] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 16713620] Running *.basic: 6 7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 16735456] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16755614] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 16803343] Running *.by_zero: 42 0 * . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 16819547] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16840904] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 16887307] Running *.by_one: 42 1 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 16904176] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 16924155] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 16971510] Running *.by_negative: 6 -7 * . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 16990155] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17012052] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 17062901] Running *.negative_negative: -6 -7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 17083108] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17105068] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 17154856] Running *.large_numbers: 32767 2 * . CR +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 17175027] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17197025] Expected: Should print: 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 17250419] Running *.overflow: 65536 65536 * . CR +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 17272591] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17294433] Expected: May overflow +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 17351141] Running *.empty_stack: * +[Hera] [HADES][ERROR] [KRELTSC: 17366415] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 17379349] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17403908] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 17420288] Running *.one_item: 42 * +[Hera] [HADES][ERROR] [KRELTSC: 17434278] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 17446624] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17471880] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 17490430] *: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 17508913] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 17533567] Testing word: / +[Hera] [HADES][TEST ] [KRELTSC: 17545424] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 17559147] Running /.basic: 15 3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 17577724] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17601016] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][INFO ] [KRELTSC: 17638729] L8[TABLE]: Config 19 → 20 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 20,200000,10000,0,0,154,28,41,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 17696022] Running /.by_one: 42 1 / . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 17714864] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17736920] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 17786348] Running /.negative_dividend: -15 3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 17806877] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17828691] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 17879409] Running /.negative_divisor: 15 -3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 17898367] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 17919183] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 17966883] Running /.both_negative: -15 -3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 17984295] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18004295] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 18051186] Running /.truncation: 7 3 / . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 18067531] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18087723] Expected: Should print: 2 (truncated) +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 18135339] Running /.by_zero: 42 0 / +[Hera] [HADES][ERROR] [KRELTSC: 18150696] /: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 18162869] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18185379] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 18200391] Running /.empty_stack: / +[Hera] [HADES][ERROR] [KRELTSC: 18214107] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 18225801] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18247584] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 18262410] Running /.one_item: 42 / +[Hera] [HADES][ERROR] [KRELTSC: 18275556] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 18286751] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18308759] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 18324186] /: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 18339789] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 18358570] Testing word: MOD +[Hera] [HADES][TEST ] [KRELTSC: 18369519] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 18381777] Running MOD.basic: 17 5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 18413924] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18434448] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 18493176] Running MOD.exact_division: 15 3 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 18512738] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18533640] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 18582050] Running MOD.by_one: 42 1 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 18599306] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18619709] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 18670155] Running MOD.negative_dividend: -17 5 MOD . CR +[Hera] [HADES][INFO ] [KRELTSC: 18688643] L8[TABLE]: Config 20 → 21 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 21,210000,10000,0,0,153,32,39,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 18731325] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18752228] Expected: Should handle negative +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 18802985] Running MOD.negative_divisor: 17 -5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 18821848] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18842490] Expected: Should handle negative +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 18892409] Running MOD.small_by_large: 3 7 MOD . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 18910736] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 18931232] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 18979691] Running MOD.by_zero: 42 0 MOD +[Hera] [HADES][ERROR] [KRELTSC: 18995358] MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 19007704] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19030890] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 19046042] Running MOD.empty_stack: MOD +[Hera] [HADES][ERROR] [KRELTSC: 19060450] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19072461] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19094988] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19109905] Running MOD.one_item: 42 MOD +[Hera] [HADES][ERROR] [KRELTSC: 19123866] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19135414] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19157911] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19172893] MOD: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 19188223] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 19207372] Testing word: /MOD +[Hera] [HADES][TEST ] [KRELTSC: 19218511] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 19230634] Running /MOD.basic: 17 5 /MOD . . CR +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 19254659] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19275580] Expected: Should print: 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 19327055] Running /MOD.exact: 15 3 /MOD . . CR +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 19345704] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19366155] Expected: Should print: 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 19417827] Running /MOD.negative: -17 5 /MOD . . CR +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 19438059] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19458884] Expected: Should handle negative dividend +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 19524390] Running /MOD.by_zero: 42 0 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 19540513] /MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 19553047] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19575390] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 19590884] Running /MOD.empty_stack: /MOD +[Hera] [HADES][ERROR] [KRELTSC: 19606073] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19618495] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19641046] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19656606] Running /MOD.one_item: 42 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 19671567] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19683546] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19706525] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 19721458] /MOD: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 19736862] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 19756051] Testing word: ABS +[Hera] [HADES][TEST ] [KRELTSC: 19767398] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 19779469] Running ABS.positive: 42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 19800596] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19821125] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 19868933] Running ABS.negative: -42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 19886949] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 19907770] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 19952477] L8[TABLE]: Config 21 → 22 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 22,220000,10000,0,0,167,35,42,582,582,0,0,0,65536,0,0,65536,0,0 + +[Hera] [HADES][TEST ] [KRELTSC: 19995474] Running ABS.zero: 0 ABS . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 20011363] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20032005] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 20077126] Running ABS.min_int: -2147483648 ABS . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 20096843] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20117314] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 20174318] Running ABS.empty_stack: ABS +[Hera] [HADES][ERROR] [KRELTSC: 20188874] ABS: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 20201018] Expected error occurred +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20224644] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 20240444] ABS: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 20257028] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 20276647] Testing word: NEGATE +[Hera] [HADES][TEST ] [KRELTSC: 20288085] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 20300244] Running NEGATE.positive: 42 NEGATE . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 20323666] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20345022] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 20395324] Running NEGATE.negative: -42 NEGATE . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 20414041] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20434893] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 20481714] Running NEGATE.zero: 0 NEGATE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 20498370] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20519608] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 20564860] Running NEGATE.min_int: -2147483648 NEGATE . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 20585509] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20606253] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 20661190] Running NEGATE.empty_stack: NEGATE +[Hera] [HADES][ERROR] [KRELTSC: 20676877] NEGATE: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 20689727] Expected error occurred +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20713496] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 20728519] NEGATE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 20744193] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 20762882] Testing word: MIN +[Hera] [HADES][TEST ] [KRELTSC: 20774154] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 20786195] Running MIN.basic: 5 3 MIN . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 20807642] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20827949] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 20874465] Running MIN.equal: 42 42 MIN . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 20891304] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20911993] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 20959257] Running MIN.negative: -5 -3 MIN . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 20977452] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 20998136] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 21049071] Running MIN.mixed: -1 1 MIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 21065837] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21086529] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 21118145] L8[TABLE]: Config 22 → 23 regime=2 score=52428 L1=0 L2=0 L3=1 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 23,230000,10000,0,0,176,37,41,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 21175497] Running MIN.one_item: 42 MIN +[Hera] [HADES][ERROR] [KRELTSC: 21190012] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21202246] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21224877] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21239768] Running MIN.empty_stack: MIN +[Hera] [HADES][ERROR] [KRELTSC: 21253358] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21265253] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21287778] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21302767] MIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 21318250] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 21337348] Testing word: MAX +[Hera] [HADES][TEST ] [KRELTSC: 21348338] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 21360481] Running MAX.basic: 5 3 MAX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 21381676] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21402572] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 21451956] Running MAX.equal: 42 42 MAX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 21469784] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21490043] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 21538891] Running MAX.negative: -5 -3 MAX . CR +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 21556322] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21576678] Expected: Should print: -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 21624407] Running MAX.mixed: -1 1 MAX . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 21641163] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21661859] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 21708407] Running MAX.one_item: 42 MAX +[Hera] [HADES][ERROR] [KRELTSC: 21722472] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21734599] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21757411] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21772713] Running MAX.empty_stack: MAX +[Hera] [HADES][ERROR] [KRELTSC: 21786055] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21797597] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21819917] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 21835155] MAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 21850404] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 21869287] Testing word: 1+ +[Hera] [HADES][TEST ] [KRELTSC: 21880171] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 21892517] Running 1+.basic: 5 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 21908296] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 21928419] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 21975381] Running 1+.zero: 0 1+ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 21990779] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22010938] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 22056550] Running 1+.negative: -1 1+ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 22073045] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22093672] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 22138858] Running 1+.chain: 3 1+ 1+ 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 22156159] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22176250] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 22224706] Running 1+.overflow: 2147483647 1+ . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 22243709] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22263719] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 [HADES][INFO ] [KRELTSC: 22290689] L8[TABLE]: Config 23 → 24 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 24,240000,10000,0,0,175,37,39,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 22356875] Running 1+.empty_stack: 1+ +[Hera] [HADES][ERROR] [KRELTSC: 22370953] 1+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 22383105] Expected error occurred +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22405861] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 22420931] 1+: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 22436405] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 22455613] Testing word: 1- +[Hera] [HADES][TEST ] [KRELTSC: 22466493] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 22478701] Running 1-.basic: 5 1- . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 22497565] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22518088] Expected: Should print: 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 22563579] Running 1-.to_zero: 1 1- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 22579876] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22600071] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 22645388] Running 1-.to_negative: 0 1- . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 22662254] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22682373] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 22729012] Running 1-.chain: 6 1- 1- 1- . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 22745827] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22765981] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 22816078] Running 1-.underflow: -2147483648 1- . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 22836392] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22856433] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 22910619] Running 1-.empty_stack: 1- +[Hera] [HADES][ERROR] [KRELTSC: 22925186] 1-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 22937285] Expected error occurred +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 22960188] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 22975237] 1-: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 22990430] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 23009443] Testing word: 2+ +[Hera] [HADES][TEST ] [KRELTSC: 23020547] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 23032632] Running 2+.basic: 5 2+ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 23051363] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23071707] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 23117699] Running 2+.zero: 0 2+ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 23133414] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23154730] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 23200672] Running 2+.negative: -3 2+ . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 23218392] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23238442] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 23285996] Running 2+.empty_stack: 2+ +[Hera] [HADES][ERROR] [KRELTSC: 23300019] 2+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 23311980] Expected error occurred +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23334358] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 23349278] 2+: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 23364317] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 23383241] Testing word: 2- +[Hera] [HADES][TEST ] [KRELTSC: 23394319] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 23406333] Running 2-.basic: 7 2- . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 23425299] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23445419] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 23491417] Running 2-.zero: 2 2- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 23507169] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23528222] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 23553535] L8[TABLE]: Config 24 → 25 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 25,250000,10000,0,0,196,38,37,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 23618584] Running 2-.negative: 0 2- . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 23635747] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23656506] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 23703234] Running 2-.empty_stack: 2- +[Hera] [HADES][ERROR] [KRELTSC: 23718257] 2-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 23730737] Expected error occurred +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23753835] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 23773009] 2-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 23791047] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 23810528] Testing word: 2* +[Hera] [HADES][TEST ] [KRELTSC: 23821583] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 23834392] Running 2*.basic: 5 2* . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 23855777] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23876213] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 23924165] Running 2*.zero: 0 2* . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 23939748] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 23960451] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 24005842] Running 2*.negative: -3 2* . CR +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 24023277] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24043338] Expected: Should print: -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 24090671] Running 2*.one: 1 2* . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 24106707] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24126830] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 24178953] Running 2*.large: 1073741823 2* . CR +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 24197899] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24218892] Expected: Should print: 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 24277494] Running 2*.empty_stack: 2* +[Hera] [HADES][ERROR] [KRELTSC: 24292456] 2*: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 24304638] Expected error occurred +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24327051] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 24342710] 2*: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 24358031] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 24376827] Testing word: 2/ +[Hera] [HADES][TEST ] [KRELTSC: 24387632] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 24400201] Running 2/.basic: 10 2/ . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 24420239] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24440557] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 24488280] Running 2/.odd: 7 2/ . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 24503687] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24524384] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 24570122] Running 2/.zero: 0 2/ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 24586654] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24606651] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 24653230] Running 2/.negative_even: -10 2/ . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 24670678] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24690858] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 24738599] Running 2/.one: 1 2/ . CR +[Hera] [HADES][INFO ] [KRELTSC: 24754536] L8[TABLE]: Config 25 → 26 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 26,260000,10000,0,0,192,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 24796058] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24819542] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 24870532] Running 2/.empty_stack: 2/ +[Hera] [HADES][ERROR] [KRELTSC: 24885130] 2/: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 24898262] Expected error occurred +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 24920362] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 24935355] 2/: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 24951188] === Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 24972182] +[Hera] === Testing Module: Logical Words === +[Hera] [HADES][INFO ] [KRELTSC: 24988518] Running Logical Words Tests (Module 8)... +[Hera] [HADES][TEST ] [KRELTSC: 25005442] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 25026745] Testing word: AND +[Hera] [HADES][TEST ] [KRELTSC: 25037756] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 25049865] Running AND.both_true: -1 -1 AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25068174] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25088959] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25136276] Running AND.first_false: 0 -1 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 25154121] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25174445] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 25221238] Running AND.second_false: -1 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 25238944] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25259560] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 25305826] Running AND.both_false: 0 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 25322909] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25343577] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 25389228] Running AND.bitwise: 85 51 AND . CR +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 25406835] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25427210] Expected: Should print: 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 25476020] Running AND.empty_stack: AND +[Hera] [HADES][ERROR] [KRELTSC: 25490013] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 25502019] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25525046] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 25539939] Running AND.one_item: 42 AND +[Hera] [HADES][ERROR] [KRELTSC: 25553360] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 25565066] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25587490] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 25602377] AND: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 25618256] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 25636883] Testing word: OR +[Hera] [HADES][TEST ] [KRELTSC: 25648072] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 25660229] Running OR.both_true: -1 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25681492] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25701830] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25750605] Running OR.first_false: 0 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25769052] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25789188] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25836262] Running OR.second_false: -1 0 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25853765] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 25873927] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 25906603] L8[TABLE]: Config 26 → 27 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 27,270000,10000,0,0,158,40,38,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 25963930] Running OR.both_false: 0 0 OR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 25980833] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26001017] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 26057107] Running OR.bitwise: 85 51 OR . CR +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 26074616] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26095703] Expected: Should print: 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 26143834] Running OR.empty_stack: OR +[Hera] [HADES][ERROR] [KRELTSC: 26159002] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26171125] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26193259] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26208647] Running OR.one_item: 42 OR +[Hera] [HADES][ERROR] [KRELTSC: 26221864] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26233313] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26255431] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26270995] OR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 26286200] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 26304517] Testing word: XOR +[Hera] [HADES][TEST ] [KRELTSC: 26316184] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 26328311] Running XOR.both_true: -1 -1 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 26350963] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26371294] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 26417588] Running XOR.first_false: 0 -1 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 26435123] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26456020] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 26502692] Running XOR.second_false: -1 0 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 26523593] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26544015] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 26591591] Running XOR.both_false: 0 0 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 26608495] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26628810] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 26676939] Running XOR.bitwise: 85 51 XOR . CR +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 26694397] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26715477] Expected: Should print: 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 26763176] Running XOR.empty_stack: XOR +[Hera] [HADES][ERROR] [KRELTSC: 26778195] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26790240] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26812426] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26827540] Running XOR.one_item: 42 XOR +[Hera] [HADES][ERROR] [KRELTSC: 26841661] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26853225] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26875425] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 26890451] XOR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 26906109] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 26924297] Testing word: NOT +[Hera] [HADES][TEST ] [KRELTSC: 26935203] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 26947499] Running NOT.true: -1 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 26969336] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 26990387] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27037451] Running NOT.false: 0 NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27053469] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27073991] Expected: Should print: -1 +[Hera] [HADES][INFO ] [KRELTSC: 27090721] L8[TABLE]: Config 27 → 28 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 28,280000,10000,0,0,158,40,35,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27163224] Running NOT.positive: 42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27180313] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27200574] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27246189] Running NOT.negative: -42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27262824] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27283440] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27328796] Running NOT.empty_stack: NOT +[Hera] [HADES][ERROR] [KRELTSC: 27343283] NOT: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 27355480] Expected error occurred +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27377641] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 27393326] NOT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 27408825] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 27427095] Testing word: = +[Hera] [HADES][TEST ] [KRELTSC: 27437757] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 27449824] Running =.equal: 42 42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27466561] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27486438] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27533279] Running =.not_equal: 42 43 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27549740] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27569641] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27616600] Running =.zero_equal: 0 0 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27633361] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27653599] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27699879] Running =.negative_equal: -42 -42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27718135] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27738050] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 27785307] Running =.negative_positive: -42 42 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27803274] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27823463] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 27869294] Running =.empty_stack: = +[Hera] [HADES][ERROR] [KRELTSC: 27882587] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 27894702] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27916576] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 27931442] Running =.one_item: 42 = +[Hera] [HADES][ERROR] [KRELTSC: 27944468] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 27955988] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 27978299] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 27993608] =: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 28009698] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 28029046] Testing word: <> +[Hera] [HADES][TEST ] [KRELTSC: 28039866] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 28051980] Running <>.not_equal: 42 43 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28076798] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28097379] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28144675] Running <>.equal: 42 42 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28161032] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28181104] Expected: Should print: 0 +[Hera] [HADES][INFO ] [KRELTSC: 28196938] L8[TABLE]: Config 28 → 29 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 29,290000,10000,0,0,164,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28268559] Running <>.zero_equal: 0 0 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28285517] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28305588] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28353084] Running <>.negative: -42 42 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28370178] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28390448] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28437955] Running <>.empty_stack: <> +[Hera] [HADES][ERROR] [KRELTSC: 28452509] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 28465448] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28487493] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 28502407] Running <>.one_item: 42 <> +[Hera] [HADES][ERROR] [KRELTSC: 28515741] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 28527538] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28549569] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 28564554] <>: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 28580290] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 28598545] Testing word: < +[Hera] [HADES][TEST ] [KRELTSC: 28609169] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 28621190] Running <.less_than: 5 7 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28642897] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28663013] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28710135] Running <.greater_than: 7 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28726829] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28746724] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28794396] Running <.equal: 5 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28810020] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28831718] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 28877036] Running <.negative_positive: -5 5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28895790] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 28915731] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28963762] Running <.negative_negative: -7 -5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 28981809] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29001935] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29052747] Running <.empty_stack: < +[Hera] [HADES][ERROR] [KRELTSC: 29069517] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29083069] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29104998] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29121627] Running <.one_item: 42 < +[Hera] [HADES][ERROR] [KRELTSC: 29142507] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29155401] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29177319] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29192718] <: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 29209173] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 29227600] Testing word: > +[Hera] [HADES][TEST ] [KRELTSC: 29238274] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 29250502] Running >.greater_than: 7 5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29277942] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29297990] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 29328648] L8[TABLE]: Config 29 → 30 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 30,300000,10000,0,0,154,43,39,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29389583] Running >.less_than: 5 7 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 29406555] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29426478] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 29473957] Running >.equal: 5 5 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 29489565] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29509534] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 29556490] Running >.positive_negative: 5 -5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29574291] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29595250] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29642427] Running >.negative_negative: -5 -7 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29660632] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29680601] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29728847] Running >.empty_stack: > +[Hera] [HADES][ERROR] [KRELTSC: 29742793] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29754580] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29777417] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29792300] Running >.one_item: 42 > +[Hera] [HADES][ERROR] [KRELTSC: 29805070] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29816291] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29839574] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 29854482] >: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 29869295] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 29887711] Testing word: 0= +[Hera] [HADES][TEST ] [KRELTSC: 29898899] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 29910925] Running 0=.zero: 0 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 29931434] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 29951510] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 30000626] Running 0=.positive: 42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30017936] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30038022] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30084148] Running 0=.negative: -42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30100746] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30120828] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30166479] Running 0=.empty_stack: 0= +[Hera] [HADES][ERROR] [KRELTSC: 30180373] 0=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 30192223] Expected error occurred +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30215583] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 30230484] 0=: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 30245400] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 30263483] Testing word: 0< +[Hera] [HADES][TEST ] [KRELTSC: 30275363] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 30287421] Running 0<.negative: -42 0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 30308213] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30332996] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 30384115] Running 0<.zero: 0 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30400755] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30421333] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 30468507] L8[TABLE]: Config 30 → 31 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 31,310000,10000,0,0,172,46,35,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30514202] Running 0<.positive: 42 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30531637] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30552512] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30599085] Running 0<.empty_stack: 0< +[Hera] [HADES][ERROR] [KRELTSC: 30614970] 0<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 30627067] Expected error occurred +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30651390] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 30666349] 0<: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 30681431] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 30699714] Testing word: 0> +[Hera] [HADES][TEST ] [KRELTSC: 30711313] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 30723395] Running 0>.positive: 42 0> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 30744778] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30764899] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 30811741] Running 0>.zero: 0 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30827765] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30848935] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30894809] Running 0>.negative: -42 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30911407] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 30931476] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 30977056] Running 0>.empty_stack: 0> +[Hera] [HADES][ERROR] [KRELTSC: 30990650] 0>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 31002538] Expected error occurred +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31025547] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 31040513] 0>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 31055568] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 31073790] Testing word: 0<> +[Hera] [HADES][TEST ] [KRELTSC: 31085116] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 31097167] Running 0<>.nonzero_pos: 42 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31117661] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31137959] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31184614] Running 0<>.nonzero_neg: -1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31201628] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31222308] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31269090] Running 0<>.zero: 0 0<> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 31285015] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31305228] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 31361762] Running 0<>.empty_stack: 0<> +[Hera] [HADES][ERROR] [KRELTSC: 31376663] 0<>: stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 31389094] Expected error occurred +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31412339] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 31427347] 0<>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 31442671] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 31461900] Testing word: U< +[Hera] [HADES][TEST ] [KRELTSC: 31472714] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 31484771] Running U<.less: 3 5 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31505938] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31527127] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31573749] Running U<.equal: 5 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 31590513] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31610473] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 31656367] Running U<.greater: 7 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 31672577] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31692647] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 31728857] L8[TABLE]: Config 31 → 32 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 32,320000,10000,0,0,180,49,34,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 31781536] Running U<.zero_one: 0 1 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31798149] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31818149] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 31865388] Running U<.empty_stack: U< +[Hera] [HADES][ERROR] [KRELTSC: 31879156] U<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 31891009] Expected error occurred +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 31914155] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 31929395] U<: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 31944844] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 31963609] Testing word: U> +[Hera] [HADES][TEST ] [KRELTSC: 31974373] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 31986365] Running U>.greater: 5 3 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32007932] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32030138] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32084523] Running U>.equal: 5 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32100745] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32120830] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32168773] Running U>.less: 3 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32184620] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32205475] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32251812] Running U>.one_zero: 1 0 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32269430] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32289532] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32337201] Running U>.empty_stack: U> +[Hera] [HADES][ERROR] [KRELTSC: 32352166] U>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 32364197] Expected error occurred +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32389978] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 32407861] U>: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 32424275] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 32442626] Testing word: WITHIN +[Hera] [HADES][TEST ] [KRELTSC: 32454779] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 32466953] Running WITHIN.in_range: 3 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32493754] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32514552] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32564072] Running WITHIN.at_low: 1 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32583135] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32603895] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 32653899] Running WITHIN.at_high: 5 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32671917] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32692680] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 32729093] L8[TABLE]: Config 32 → 33 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 33,330000,10000,0,0,145,51,35,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32784283] Running WITHIN.below: 0 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32802035] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32822748] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32869927] Running WITHIN.above: 6 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32887524] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 32909240] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 32956299] Running WITHIN.empty_stack: WITHIN +[Hera] [HADES][ERROR] [KRELTSC: 32971996] WITHIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 32985088] Expected error occurred +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33007716] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 33023082] WITHIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 33038843] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 33057131] Testing word: TRUE +[Hera] [HADES][TEST ] [KRELTSC: 33068208] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 33081306] Running TRUE.value: TRUE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33099861] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33120231] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33167353] Running TRUE.as_flag: TRUE 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 33184340] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33205453] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 33251357] Running TRUE.in_and: TRUE TRUE AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33270187] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33290887] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33339894] TRUE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 33355410] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 33373770] Testing word: FALSE +[Hera] [HADES][TEST ] [KRELTSC: 33385078] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 33397870] Running FALSE.value: FALSE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 33415902] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33436513] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 33482680] Running FALSE.as_flag: FALSE 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33499956] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33521118] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33567812] Running FALSE.in_or: TRUE FALSE OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33587267] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33607903] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33657147] FALSE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 33672602] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 33690673] Testing word: >= +[Hera] [HADES][TEST ] [KRELTSC: 33701334] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 33713700] Running >=.less: 3 5 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 33734665] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33754915] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 33798144] L8[TABLE]: Config 33 → 34 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 34,340000,10000,0,0,203,53,37,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 33843829] Running >=.greater: 5 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33860311] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33880268] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33927957] Running >=.equal: 3 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 33943987] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 33964900] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34011190] Running >=.negative: -1 0 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 34028706] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34048713] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 34095574] Running >=.neg_neg: -1 -2 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34112377] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34132536] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34181179] Running >=.underflow: >= +[Hera] [HADES][ERROR] [KRELTSC: 34194659] >=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 34207800] Expected error occurred +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34230282] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 34245182] >=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 34260144] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 34279206] Testing word: <= +[Hera] [HADES][TEST ] [KRELTSC: 34289904] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 34301832] Running <=.less: 3 5 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34322533] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34343730] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34390336] Running <=.greater: 5 3 <= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 34407654] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34427765] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 34474349] Running <=.equal: 3 3 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34490375] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34510468] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34557742] Running <=.negative: -1 0 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34574428] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34595329] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34642967] Running <=.neg_neg: -2 -1 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34660318] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34680437] Expected: Should print: -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 34702680] L8[TABLE]: Config 34 → 35 regime=2 score=52428 L1=0 L2=1 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 35,350000,10000,0,0,154,55,39,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 34769247] Running <=.underflow: <= +[Hera] [HADES][ERROR] [KRELTSC: 34783240] <=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 34795103] Expected error occurred +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34817097] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 34832832] <=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 34848572] === Logical Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 34868339] +[Hera] === Testing Module: Mixed Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 34885817] Running Mixed Arithmetic Words Tests (Module 7)... +[Hera] [HADES][TEST ] [KRELTSC: 34905092] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 34926200] Testing word: */ +[Hera] [HADES][TEST ] [KRELTSC: 34937345] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 34954244] Running */.basic: 6 7 4 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 34976851] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 34997034] Expected: Should print: 10 (6*7/4) +[Hera] [HADES][TEST ] [KRELTSC: 35012689] Running */.exact_division: 12 5 3 */ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 35032186] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35052573] Expected: Should print: 20 (12*5/3) +[Hera] [HADES][TEST ] [KRELTSC: 35066973] Running */.zero_multiply: 0 999 123 */ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 35086332] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35106863] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 35119623] Running */.by_one: 42 5 1 */ . CR +[Hera] 210 +[Hera] [HADES][TEST ] [KRELTSC: 35137132] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35157713] Expected: Should print: 210 (42*5/1) +[Hera] [HADES][TEST ] [KRELTSC: 35172259] Running */.truncation: 7 3 2 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 35189959] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35210317] Expected: Should print: 10 (21/2 truncated) +[Hera] [HADES][TEST ] [KRELTSC: 35225858] Running */.negative_multiply: -6 7 4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 35244988] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35265111] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 35279145] Running */.negative_divisor: 6 7 -4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 35298447] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35318571] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 35332333] Running */.div_by_zero: 6 7 0 */ +[Hera] [HADES][ERROR] [KRELTSC: 35348296] */: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 35360385] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35382439] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 35397915] Running */.empty_stack: */ +[Hera] [HADES][ERROR] [KRELTSC: 35411857] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 35423611] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35445629] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 35461183] Running */.two_items: 1 2 */ +[Hera] [HADES][ERROR] [KRELTSC: 35475104] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 35486367] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35508159] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 35525986] */: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 35542280] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 35562059] Testing word: */MOD +[Hera] [HADES][TEST ] [KRELTSC: 35573352] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 35586133] Running */MOD.basic: 17 3 5 */MOD . . CR +[Hera] 10 1 +[Hera] [HADES][TEST ] [KRELTSC: 35610488] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35631078] Expected: Should print: 1 10 (51/5 = 10 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 35647589] Running */MOD.exact_division: 15 4 3 */MOD . . CR +[Hera] 20 0 +[Hera] [HADES][TEST ] [KRELTSC: 35668263] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35688772] Expected: Should print: 0 20 (60/3 = 20 rem 0) +[Hera] [HADES][TEST ] [KRELTSC: 35705624] Running */MOD.zero_multiply: 0 999 123 */MOD . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 35726310] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35746803] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 35759891] Running */MOD.by_one: 42 5 1 */MOD . . CR +[Hera] 210 0 +[Hera] [HADES][TEST ] [KRELTSC: 35781672] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35802076] Expected: Should print: 0 210 +[Hera] [HADES][TEST ] [KRELTSC: 35815404] Running */MOD.remainder: 7 8 5 */MOD . . CR +[Hera] 11 1 +[Hera] [HADES][TEST ] [KRELTSC: 35835364] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35855936] Expected: Should print: 1 11 (56/5 = 11 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 35871861] Running */MOD.negative: -7 3 4 */MOD . . CR +[Hera] -5 -1 +[Hera] [HADES][TEST ] [KRELTSC: 35891301] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35912445] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 35926268] Running */MOD.div_by_zero: 6 7 0 */MOD +[Hera] [HADES][ERROR] [KRELTSC: 35942692] */MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 35956148] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 35978752] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 35993826] Running */MOD.empty_stack: */MOD +[Hera] [HADES][ERROR] [KRELTSC: 36008689] */MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 36022101] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36044535] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 36059473] */MOD: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 36075406] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 36095960] Testing word: M+ +[Hera] [HADES][TEST ] [KRELTSC: 36106724] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 36118784] Running M+.basic: 0 100 200 M+ . . CR +[Hera] 300 0 +[Hera] [HADES][TEST ] [KRELTSC: 36145806] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36165974] Expected: Should print: 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 36179764] Running M+.overflow: 0 2147483647 1 M+ . . CR +[Hera] 2147483648 0 +[Hera] [HADES][TEST ] [KRELTSC: 36201164] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36221853] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 36235752] Running M+.negative: 0 -100 50 M+ . . CR +[Hera] -50 0 +[Hera] [HADES][TEST ] [KRELTSC: 36254438] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36275378] Expected: Should print: 50 -100 +[Hera] [HADES][TEST ] [KRELTSC: 36289107] Running M+.zero_add: 0 42 0 M+ . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 36307153] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36327108] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 36341155] Running M+.both_negative: 0 -100 -200 M+ . . CR +[Hera] -300 0 +[Hera] [HADES][TEST ] [KRELTSC: 36362367] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36382385] Expected: Should print: -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 36397130] Running M+.empty_stack: M+ +[Hera] [HADES][TEST ] [KRELTSC: 36410790] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36432794] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 36447661] Running M+.one_item: 42 M+ +[Hera] [HADES][TEST ] [KRELTSC: 36461318] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36483548] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 36498557] M+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 36513650] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 36533601] Testing word: M* +[Hera] [HADES][TEST ] [KRELTSC: 36544362] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 36556391] Running M*.basic: 123 456 M* . . CR +[Hera] 0 56088 +[Hera] [HADES][TEST ] [KRELTSC: 36578441] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36599561] Expected: Should print: 56088 0 +[Hera] [HADES][TEST ] [KRELTSC: 36613285] Running M*.by_zero: 999 0 M* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 36630984] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36652445] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 36666281] Running M*.by_one: 42 1 M* . . CR +[Hera] 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 36683835] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36704998] Expected: Should print: 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 36719733] Running M*.negative: -123 456 M* . . CR +[Hera] -1 4294911208 +[Hera] [HADES][TEST ] [KRELTSC: 36742327] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36762456] Expected: Should print: -56088 -1 +[Hera] [HADES][TEST ] [KRELTSC: 36777567] Running M*.large_multiply: 65536 65536 M* . . CR +[Hera] 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 36797543] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36817469] Expected: Should handle large result +[Hera] [HADES][TEST ] [KRELTSC: 36832467] Running M*.both_negative: -100 -200 M* . . CR +[Hera] 0 20000 +[Hera] [HADES][TEST ] [KRELTSC: 36852564] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36873526] Expected: Should print: 20000 0 +[Hera] [HADES][TEST ] [KRELTSC: 36888610] Running M*.empty_stack: M* +[Hera] [HADES][TEST ] [KRELTSC: 36905843] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36929985] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 36946292] Running M*.one_item: 42 M* +[Hera] [HADES][TEST ] [KRELTSC: 36961119] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 36985595] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 37002215] M*: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 37020632] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 37042763] Testing word: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 37055702] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 37069181] Running M/MOD.basic: 0 1000 100 M/MOD . . CR +[Hera] 10 0 +[Hera] [HADES][TEST ] [KRELTSC: 37100898] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37123922] Expected: Should print: 0 10 (1000/100) +[Hera] [HADES][TEST ] [KRELTSC: 37140639] Running M/MOD.with_remainder: 0 1234 100 M/MOD . . CR +[Hera] 12 34 +[Hera] [HADES][TEST ] [KRELTSC: 37167398] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37190194] Expected: Should handle remainder +[Hera] [HADES][TEST ] [KRELTSC: 37206719] Running M/MOD.double_dividend: 5001 0 10 M/MOD . . CR +[Hera] 2147913144729 6 +[Hera] [HADES][TEST ] [KRELTSC: 37232339] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37255045] Expected: Should print: 1 500 (5001/10) +[Hera] [HADES][TEST ] [KRELTSC: 37272591] Running M/MOD.by_one: 0 42 1 M/MOD . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 37295439] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37318085] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 37333937] Running M/MOD.negative_dividend: -1 1000 100 M/MOD . . CR +[Hera] -42949662 -96 +[Hera] [HADES][TEST ] [KRELTSC: 37362996] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37386776] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 37404978] Running M/MOD.div_by_zero: 0 100 0 M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 37426298] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37451154] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 37468815] Running M/MOD.empty_stack: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 37484969] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37509618] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 37527381] M/MOD: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 37546995] === Mixed Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 37573111] +[Hera] === Testing Module: Double Words === +[Hera] [HADES][INFO ] [KRELTSC: 37592734] Running Double Number Words Tests (Module 6)... +[Hera] [HADES][TEST ] [KRELTSC: 37612586] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 37633294] Testing word: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 37647550] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 37660917] Running 2DROP.basic: 1 2 3 4 2DROP . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 37687076] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37708657] Expected: Should print: 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 37722009] Running 2DROP.zeros: 0 0 42 99 2DROP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 37741185] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37761725] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 37775480] Running 2DROP.negative: -1 -2 100 200 2DROP . . CR +[Hera] -2 -1 +[Hera] [HADES][INFO ] [KRELTSC: 37798839] L8[TABLE]: Config 35 → 36 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 36,360000,10000,0,0,144,57,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 37838269] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37858889] Expected: Should print: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 37872360] Running 2DROP.exact_four: 10 20 30 40 2DROP DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 37893918] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37914549] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 37927345] Running 2DROP.empty_stack: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 37942183] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 37965076] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 37980150] Running 2DROP.one_item: 42 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 37994236] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38017133] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 38032853] 2DROP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 38049072] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 38067182] Testing word: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 38078289] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 38090763] Running 2DUP.basic: 100 200 2DUP . . . . CR +[Hera] 200 100 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 38115919] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38136526] Expected: Should print: 100 200 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 38152332] Running 2DUP.zeros: 0 0 2DUP . . . . CR +[Hera] 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 38171719] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38192111] Expected: Should print: 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 38206285] Running 2DUP.negative: -100 -200 2DUP . . . . CR +[Hera] -200 -100 -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 38229265] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38249798] Expected: Should duplicate negatives +[Hera] [HADES][TEST ] [KRELTSC: 38264376] Running 2DUP.depth_check: 10 20 2DUP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 38284293] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38305498] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 38318345] Running 2DUP.empty_stack: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 38334397] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38356926] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 38371716] Running 2DUP.one_item: 42 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 38385437] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38408357] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 38423283] 2DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 38438709] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 38457118] Testing word: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 38468320] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 38480340] Running 2OVER.basic: 10 20 30 40 2OVER . . . . . . CR +[Hera] 20 10 40 30 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 38508095] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38529355] Expected: Should print: 10 20 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 38544740] Running 2OVER.zeros: 0 0 99 88 2OVER . . . . . . CR +[Hera] 0 0 88 99 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 38567442] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38588843] Expected: Should print: 0 0 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 38603468] Running 2OVER.mixed: -1 2 -3 4 2OVER . . . . . . CR +[Hera] 2 -1 4 -3 2 -1 +[Hera] [HADES][TEST ] [KRELTSC: 38626471] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38647627] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 38662264] Running 2OVER.depth_check: 1 2 3 4 2OVER DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 38682206] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38702898] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 38716199] Running 2OVER.three_items: 1 2 3 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 38732204] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38754818] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 38770608] Running 2OVER.empty_stack: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 38784734] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38807224] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 38822187] 2OVER: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 38838239] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 38856596] Testing word: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 38867853] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 38879949] Running 2SWAP.basic: 10 20 30 40 2SWAP . . . . CR +[Hera] 20 10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 38907223] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38928009] Expected: Should print: 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 38943450] Running 2SWAP.zeros: 0 0 99 88 2SWAP . . . . CR +[Hera] 0 0 88 99 +[Hera] [HADES][TEST ] [KRELTSC: 38968511] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 38989010] Expected: Should print: 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 39004316] Running 2SWAP.same_pairs: 42 42 42 42 2SWAP . . . . CR +[Hera] 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 39029035] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39049803] Expected: Should print: 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 39064155] Running 2SWAP.negative: -10 -20 30 40 2SWAP . . . . CR +[Hera] -20 -10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 39087493] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39107940] Expected: Should print: 30 40 -10 -20 +[Hera] [HADES][TEST ] [KRELTSC: 39122538] Running 2SWAP.depth_check: 1 2 3 4 2SWAP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 39142932] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39163389] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 39176184] Running 2SWAP.three_items: 1 2 3 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 39193811] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39217506] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 39232634] Running 2SWAP.empty_stack: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 39246686] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39270248] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 39285313] 2SWAP: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 39300965] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 39319105] Testing word: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 39330640] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 39342802] Running 2ROT.basic: 10 20 30 40 50 60 2ROT . . . . . . CR +[Hera] 20 10 60 50 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 39374442] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39395372] Expected: Should print: 30 40 50 60 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 39410970] Running 2ROT.zeros: 0 0 1 1 2 2 2ROT . . . . . . CR +[Hera] 0 0 2 2 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 39433733] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39454502] Expected: Should rotate with zeros +[Hera] [HADES][TEST ] [KRELTSC: 39468713] Running 2ROT.negative: -1 -2 3 4 -5 -6 2ROT . . . . . . CR +[Hera] -2 -1 -6 -5 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 39493089] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39513421] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 39528268] Running 2ROT.depth_check: 1 2 3 4 5 6 2ROT DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 39549782] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39571462] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 39585175] Running 2ROT.five_items: 1 2 3 4 5 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 39601945] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39624417] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 39639366] Running 2ROT.empty_stack: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 39653529] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39676019] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 39691173] 2ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 39708280] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 39726633] Testing word: D+ +[Hera] [HADES][TEST ] [KRELTSC: 39737384] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 39749525] Running D+.basic: 100 200 300 400 D+ . . CR +[Hera] 600 400 +[Hera] [HADES][TEST ] [KRELTSC: 39776233] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39796732] Expected: Should print: 400 600 +[Hera] [HADES][TEST ] [KRELTSC: 39810550] Running D+.zero_add: 42 99 0 0 D+ . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 39829918] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39850033] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 39863515] Running D+.negative: -100 -200 50 75 D+ . . CR +[Hera] -125 4294967246 +[Hera] [HADES][TEST ] [KRELTSC: 39885025] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39905537] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 39919999] Running D+.carry: 2147483647 0 1 0 D+ . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 39940765] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 39961285] Expected: Should handle carry +[Hera] [HADES][TEST ] [KRELTSC: 39974697] Running D+.both_negative: -100 -200 -300 -400 D+ . . CR +[Hera] -599 4294966896 +[Hera] [HADES][TEST ] [KRELTSC: 39997569] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40017993] Expected: Should add negatives +[Hera] [HADES][TEST ] [KRELTSC: 40031542] Running D+.three_items: 1 2 3 D+ +[Hera] [HADES][TEST ] [KRELTSC: 40047124] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40069383] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 40084802] Running D+.empty_stack: D+ +[Hera] [HADES][TEST ] [KRELTSC: 40097986] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40120070] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 40135103] D+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 40151089] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 40169178] Testing word: D- +[Hera] [HADES][TEST ] [KRELTSC: 40179896] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 40191867] Running D-.basic: 500 600 100 200 D- . . CR +[Hera] 400 [HADES][INFO ] [KRELTSC: 40219357] L8[TABLE]: Config 36 → 37 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 37,370000,10000,0,0,144,57,35,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 400 +[Hera] [HADES][TEST ] [KRELTSC: 40260507] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40282166] Expected: Should print: 400 400 +[Hera] [HADES][TEST ] [KRELTSC: 40296189] Running D-.zero_sub: 42 99 0 0 D- . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 40315285] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40335954] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 40349406] Running D-.from_zero: 0 0 100 200 D- . . CR +[Hera] -201 4294967196 +[Hera] [HADES][TEST ] [KRELTSC: 40370480] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40390852] Expected: Should print: -100 -200 +[Hera] [HADES][TEST ] [KRELTSC: 40405352] Running D-.negative: 100 200 -50 -75 D- . . CR +[Hera] 274 150 +[Hera] [HADES][TEST ] [KRELTSC: 40425863] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40445909] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 40460399] Running D-.borrow: 0 0 1 0 D- . . CR +[Hera] -1 4294967295 +[Hera] [HADES][TEST ] [KRELTSC: 40479941] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40500017] Expected: Should handle borrow +[Hera] [HADES][TEST ] [KRELTSC: 40513593] Running D-.same_values: 100 200 100 200 D- . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 40534505] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40554726] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 40567788] Running D-.three_items: 1 2 3 D- +[Hera] [HADES][TEST ] [KRELTSC: 40583938] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40606003] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 40620801] Running D-.empty_stack: D- +[Hera] [HADES][TEST ] [KRELTSC: 40633727] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40656520] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 40671406] D-: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 40686446] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 40704877] Testing word: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 40716725] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 40728684] Running DNEGATE.positive: 100 200 DNEGATE . . CR +[Hera] -201 4294967196 +[Hera] [HADES][TEST ] [KRELTSC: 40754684] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40776400] Expected: Should negate positive double +[Hera] [HADES][TEST ] [KRELTSC: 40791411] Running DNEGATE.negative: -100 -200 DNEGATE . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 40813661] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40837401] Expected: Should negate negative double +[Hera] [HADES][TEST ] [KRELTSC: 40852468] Running DNEGATE.zero: 0 0 DNEGATE . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 40871457] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40893005] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 40906300] Running DNEGATE.max_positive: 2147483647 0 DNEGATE . . CR +[Hera] -1 2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 40929682] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 40950397] Expected: Should negate max positive +[Hera] [HADES][TEST ] [KRELTSC: 40966305] Running DNEGATE.one_item: 42 DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 40983866] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41006858] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 41022991] Running DNEGATE.empty_stack: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 41038297] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41061592] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 41076519] DNEGATE: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 41093325] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 41111686] Testing word: DABS +[Hera] [HADES][TEST ] [KRELTSC: 41122772] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 41134897] Running DABS.positive: 100 200 DABS . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 41161312] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41181860] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 41195664] Running DABS.negative: -100 -200 DABS . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 41218742] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41239075] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 41252823] Running DABS.zero: 0 0 DABS . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 41270868] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41291454] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 41304530] Running DABS.mixed_sign: 100 -1 DABS . . CR +[Hera] 0 4294967196 +[Hera] [HADES][TEST ] [KRELTSC: 41324831] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41346943] Expected: Should handle mixed sign +[Hera] [HADES][TEST ] [KRELTSC: 41361311] Running DABS.min_double: -2147483648 -1 DABS . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 41383328] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41404832] Expected: Should handle min double +[Hera] [HADES][TEST ] [KRELTSC: 41419061] Running DABS.one_item: 42 DABS +[Hera] [HADES][TEST ] [KRELTSC: 41434506] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41457838] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 41472895] Running DABS.empty_stack: DABS +[Hera] [HADES][TEST ] [KRELTSC: 41486663] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41509000] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 41524599] DABS: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 41540182] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 41558389] Testing word: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 41569540] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 41582068] Running DMIN.basic: 100 200 300 400 DMIN . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 41610134] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41630480] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 41644597] Running DMIN.equal: 42 99 42 99 DMIN . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 41665922] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41686277] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 41699682] Running DMIN.negative: -100 -200 -50 -75 DMIN . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 41721898] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41743101] Expected: Should find min negative +[Hera] [HADES][TEST ] [KRELTSC: 41757313] Running DMIN.mixed: -100 -1 100 0 DMIN . . CR +[Hera] -1 -100 +[Hera] [HADES][TEST ] [KRELTSC: 41777853] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41798392] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 41812693] Running DMIN.three_items: 1 2 3 DMIN +[Hera] [HADES][TEST ] [KRELTSC: 41828247] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41852722] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 41870330] Running DMIN.empty_stack: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 41888865] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 41917210] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 41935604] DMIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 41951984] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 41971309] Testing word: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 41982703] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 41995027] Running DMAX.basic: 100 200 300 400 DMAX . . CR +[Hera] 400 300 +[Hera] [HADES][TEST ] [KRELTSC: 42026815] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42047376] Expected: Should print: 300 400 +[Hera] [HADES][TEST ] [KRELTSC: 42061156] Running DMAX.equal: 42 99 42 99 DMAX . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 42083766] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42104297] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 42117665] Running DMAX.negative: -300 -400 -100 -200 DMAX . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 42139483] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42160488] Expected: Should find max negative +[Hera] [HADES][TEST ] [KRELTSC: 42174925] Running DMAX.mixed: -100 -1 100 0 DMAX . . CR +[Hera] 0 100 +[Hera] [HADES][TEST ] [KRELTSC: 42194726] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42215730] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 42230413] Running DMAX.three_items: 1 2 3 DMAX +[Hera] [HADES][TEST ] [KRELTSC: 42246359] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42269249] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 42284120] Running DMAX.empty_stack: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 42297783] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42320075] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 42336116] DMAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 42351615] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 42369730] Testing word: D= +[Hera] [HADES][TEST ] [KRELTSC: 42380556] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 42393180] Running D=.equal: 100 200 100 200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 42417124] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42437227] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 42450710] Running D=.not_equal_low: 100 200 101 200 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 42470974] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42490978] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 42503770] Running D=.not_equal_high: 100 200 100 201 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 42523728] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42543809] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 42556614] Running D=.zero_equal: 0 0 0 0 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 42574421] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42595036] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 42608174] Running D=.negative_equal: -100 -200 -100 -200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 42628430] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42648980] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 42661953] Running D=.three_items: 1 2 3 D= +[Hera] [HADES][TEST ] [KRELTSC: 42677106] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42699262] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 42715824] Running D=.empty_stack: D= +[Hera] [HADES][TEST ] [KRELTSC: 42729046] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42751081] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 42766056] D=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 42781828] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 42800190] Testing word: D< +[Hera] [HADES][TEST ] [KRELTSC: 42810944] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 42823055] Running D<.less_than: 100 200 300 400 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 42848817] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42869106] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 42882237] Running D<.greater_than: 300 400 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 42903618] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42927332] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 42941391] Running D<.equal: 100 200 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 42961428] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 42982191] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 42995181] Running D<.negative_positive: -100 -1 100 0 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 43019390] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43039833] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 43052962] Running D<.negative_negative: -300 -1 -100 -1 D< . CR +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 43498321] L8[TABLE]: Config 37 → 38 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 38,380000,10000,0,0,132,57,34,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 43538869] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43560160] Expected: Should compare negatives +[Hera] [HADES][TEST ] [KRELTSC: 43574624] Running D<.high_word_diff: 100 200 100 300 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 43596248] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43616887] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 43630041] Running D<.three_items: 1 2 3 D< +[Hera] [HADES][TEST ] [KRELTSC: 43645959] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43668922] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 43684039] Running D<.empty_stack: D< +[Hera] [HADES][TEST ] [KRELTSC: 43697198] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43720039] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 43735515] D<: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 43750829] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 43769535] Testing word: D0= +[Hera] [HADES][TEST ] [KRELTSC: 43780549] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 43792985] Running D0=.zero: 0 0 D0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 43814327] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43835171] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 43848260] Running D0=.positive: 100 200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 43866207] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43886588] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 43899931] Running D0=.negative: -100 -200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 43918142] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43938561] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 43951448] Running D0=.zero_high: 0 100 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 43969606] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 43990000] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 44002881] Running D0=.zero_low: 100 0 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 44020504] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44040966] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 44054078] Running D0=.one_item: 42 D0= +[Hera] [HADES][TEST ] [KRELTSC: 44068340] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44091152] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 44106351] Running D0=.empty_stack: D0= +[Hera] [HADES][TEST ] [KRELTSC: 44119765] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44142395] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 44157425] D0=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 44172978] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 44191204] Testing word: D0< +[Hera] [HADES][TEST ] [KRELTSC: 44202199] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 44214720] Running D0<.negative: -100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 44240072] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44263107] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 44277887] Running D0<.zero: 0 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 44294819] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44315264] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 44328213] Running D0<.positive: 100 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 44346302] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44366863] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 44379728] Running D0<.negative_high_only: 100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 44399464] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44419882] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 44432936] Running D0<.large_negative: -1 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 44451204] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44472145] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 44485446] Running D0<.one_item: 42 D0< +[Hera] [HADES][TEST ] [KRELTSC: 44500158] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44523391] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 44538396] Running D0<.empty_stack: D0< +[Hera] [HADES][TEST ] [KRELTSC: 44552263] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44574639] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 44590372] D0<: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 44606224] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 44624685] Testing word: S>D +[Hera] [HADES][TEST ] [KRELTSC: 44635827] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 44648420] Running S>D.positive: 5 S>D . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 44671183] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44691609] Expected: Should sign-extend positive: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 44707567] Running S>D.negative: -5 S>D . . CR +[Hera] -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 44725632] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44745988] Expected: Should sign-extend negative: -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 44761830] Running S>D.zero: 0 S>D . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 44779140] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44799720] Expected: Should sign-extend zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 44814623] Running S>D.max_int: 2147483647 S>D . . CR +[Hera] 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 44835289] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44855876] Expected: Should extend max int: 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 44871891] Running S>D.min_int: -2147483648 S>D . . CR +[Hera] -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 44893404] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44914927] Expected: Should extend min int: -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 44931324] Running S>D.empty_stack: S>D +[Hera] [HADES][TEST ] [KRELTSC: 44945770] Expected error occurred +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 44968687] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 44983773] S>D: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 44999181] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 45018165] Testing word: D2* +[Hera] [HADES][TEST ] [KRELTSC: 45029403] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 45041638] Running D2*.basic: 5 0 D2* . . CR +[Hera] 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 45064021] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45085024] Expected: Should double 5: 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 45098844] Running D2*.zero: 0 0 D2* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 45116057] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45136383] Expected: Should double zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 45150913] Running D2*.negative: -1 -1 D2* . . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 45169405] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45189759] Expected: Should double -1: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 45204190] Running D2*.carry: 0 1 D2* . . CR +[Hera] 2 0 +[Hera] [HADES][TEST ] [KRELTSC: 45221653] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45244499] Expected: Should shift high cell: 0 2 +[Hera] [HADES][TEST ] [KRELTSC: 45262597] Running D2*.empty_stack: D2* +[Hera] [HADES][TEST ] [KRELTSC: 45283915] Expected error occurred +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45307236] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 45322340] D2*: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 45338435] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 45356828] Testing word: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 45367800] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 45379930] Running D2/.basic: 10 0 D2/ . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 45405240] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45425706] Expected: Should halve 10: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 45439355] Running D2/.negative: -2 -1 D2/ . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 45459159] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45479494] Expected: Should halve -2: -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 45493628] Running D2/.zero: 0 0 D2/ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 45510846] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45532001] Expected: Should halve zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 45546244] Running D2/.odd: 3 0 D2/ . . CR +[Hera] 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 45563402] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45584350] Expected: Should truncate toward zero: 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 45599815] Running D2/.empty_stack: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 45614778] Expected error occurred +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45637086] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 45652583] D2/: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 45667959] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 45686160] Testing word: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 45697159] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 45709691] Running 2>R.roundtrip: 10 20 2>R 2R> . . CR +[Hera] 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 45738590] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45758990] Expected: Should store and retrieve: 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 45775160] Running 2>R.depth_after: 1 2 2>R DEPTH . 2R> DROP DROP CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 45797105] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45817498] Expected: Should empty data stack: 0 +[Hera] [HADES][TEST ] [KRELTSC: 45833091] Running 2>R.empty_stack: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 45847388] Expected error occurred +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45869787] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 45884799] 2>R: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 45900908] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 45919107] Testing word: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 45930131] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 45942271] Running 2R>.roundtrip: 5 6 2>R 2R> . . CR +[Hera] 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 45961570] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 45981795] Expected: Should retrieve double: 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 45996443] Running 2R>.depth: 9 8 2>R 2R> DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 46014850] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46036321] Expected: Should push 2 items to data stack: 2 +[Hera] [HADES][TEST ] [KRELTSC: 46052453] Running 2R>.empty_rstack: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 46066946] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46089677] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 46105784] 2R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 46121055] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 46139191] Testing word: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 46150769] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 46162834] Running 2R@.peek: 3 4 2>R 2R@ . . 2R> DROP DROP CR +[Hera] 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 46188389] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46209369] Expected: Should peek: 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 46222430] Running 2R@.non_destructive: 7 8 2>R 2R@ DROP DROP 2R> . . CR +[Hera] 8 7 +[Hera] [HADES][TEST ] [KRELTSC: 46245194] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46265509] Expected: Should leave rstack intact +[Hera] [HADES][TEST ] [KRELTSC: 46280874] Running 2R@.empty_rstack: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 46295612] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46318011] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 46334782] 2R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 46350727] === Double Number Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 46371682] +[Hera] === Testing Module: Format Words === +[Hera] [HADES][INFO ] [KRELTSC: 46387643] Running Format Words Tests (Module 10)... +[Hera] [HADES][TEST ] [KRELTSC: 46404451] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 46423190] Testing word: BASE +[Hera] [HADES][TEST ] [KRELTSC: 46434353] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 46446435] Running BASE.decimal: DECIMAL 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 46466303] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46487079] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 46500123] Running BASE.hex: HEX FF . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 46521634] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46542359] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 46555796] Running BASE.octal: OCTAL 52 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 46574668] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46596022] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 46609190] Running BASE.base_store: 16 BASE ! 255 . CR +[Hera] 467 +[Hera] [HADES][TEST ] [KRELTSC: 46630846] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46651907] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 46664996] Running BASE.base_fetch: BASE @ . CR +[Hera] 14 +[Hera] [HADES][TEST ] [KRELTSC: 46682783] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46703306] Expected: Should print current base +[Hera] [HADES][TEST ] [KRELTSC: 46718595] BASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 46735041] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 46753487] Testing word: DECIMAL +[Hera] [HADES][TEST ] [KRELTSC: 46768165] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 46782181] Running DECIMAL.from_hex: HEX FF DECIMAL . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 46804331] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46825180] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 46839134] Running DECIMAL.from_octal: OCTAL 52 DECIMAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 46859078] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46879920] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 46893328] Running DECIMAL.state_persist: DECIMAL 42 . CR 42 . CR HEX 42 . CR +[Hera] 42 +[Hera] 42 +[Hera] 66 +[Hera] [HADES][TEST ] [KRELTSC: 46920622] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 46941479] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 46955613] DECIMAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 46971552] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 46990211] Testing word: HEX +[Hera] [HADES][TEST ] [KRELTSC: 47001118] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 47013164] Running HEX.from_decimal: DECIMAL 255 HEX . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 47033557] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47053774] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 47066708] Running HEX.from_octal: OCTAL 52 HEX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 47085614] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47105895] Expected: Should print: 2A +[Hera] [HADES][TEST ] [KRELTSC: 47118861] Running HEX.state_persist: HEX FF . CR DECIMAL 255 . CR +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 47142924] L8[TABLE]: Config 38 → 39 regime=2 score=52428 L1=0 L2=1 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 39,390000,10000,0,0,180,57,32,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 47185034] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47205717] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 47219401] HEX: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 47234631] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 47252690] Testing word: OCTAL +[Hera] [HADES][TEST ] [KRELTSC: 47263942] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 47276521] Running OCTAL.from_decimal: DECIMAL 42 OCTAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 47296281] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47316870] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 47330225] Running OCTAL.from_hex: HEX 2A OCTAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 47348600] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47369478] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 47383601] Running OCTAL.state_persist: DECIMAL 42 . CR OCTAL 52 . CR +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 47407766] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47428609] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 47442300] OCTAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 47459006] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 47477137] Testing word: <# +[Hera] [HADES][TEST ] [KRELTSC: 47487923] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 47499977] Running <#.basic: DECIMAL 42 S>D <# #S #> TYPE CR +[Hera] 774763251095801167872 +[Hera] [HADES][TEST ] [KRELTSC: 47560716] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47581858] Expected: Should format number +[Hera] [HADES][TEST ] [KRELTSC: 47595598] Running <#.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 47611176] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47631351] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 47646748] Running <#.negative: -42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 47672861] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47693960] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 47713920] <#: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 47732975] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 47757486] Testing word: # +[Hera] [HADES][TEST ] [KRELTSC: 47771521] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 47785439] Running #.single_digit: 15 <# # #> TYPE CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 47818143] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47841072] Expected: Should print rightmost digit +[Hera] [HADES][TEST ] [KRELTSC: 47857075] Running #.multiple: 15 <# # # #> TYPE CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 47878183] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47899234] Expected: Should print digits right to left +[Hera] [HADES][TEST ] [KRELTSC: 47915913] Running #.zero_pad: 5 <# # 0 # #> TYPE CR +[Hera] 05 +[Hera] [HADES][TEST ] [KRELTSC: 47935137] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 47956163] Expected: Should handle zero padding +[Hera] [HADES][TEST ] [KRELTSC: 47971155] #: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 47986306] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 48004520] Testing word: #S +[Hera] [HADES][TEST ] [KRELTSC: 48015321] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 48027999] Running #S.basic: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 48047828] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48068043] Expected: Should convert all digits +[Hera] [HADES][TEST ] [KRELTSC: 48082921] Running #S.zero: 0 <# #S #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 48100345] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48120755] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 48134118] Running #S.large: 1234567890 <# #S #> TYPE CR +[Hera] 1234567890 +[Hera] [HADES][TEST ] [KRELTSC: 48155896] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48175979] Expected: Should handle large numbers +[Hera] [HADES][TEST ] [KRELTSC: 48190705] #S: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 48206721] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 48224941] Testing word: SIGN +[Hera] [HADES][TEST ] [KRELTSC: 48236867] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 48250727] Running SIGN.negative: -42 ABS <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 48286663] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48310233] Expected: Should add minus +[Hera] [HADES][TEST ] [KRELTSC: 48324802] Running SIGN.positive: 42 <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 48356903] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48378438] Expected: Should not add sign +[Hera] [HADES][TEST ] [KRELTSC: 48394145] Running SIGN.zero: 0 <# #S SIGN #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 48414285] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48434595] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 48448804] SIGN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 48466498] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 48484504] Testing word: #> +[Hera] [HADES][TEST ] [KRELTSC: 48495162] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 48508679] Running #>.normal: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 48531253] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48553694] Expected: Should terminate formatting +[Hera] [HADES][TEST ] [KRELTSC: 48569883] Running #>.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 48592727] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48614834] Expected: Should handle empty format +[Hera] [HADES][TEST ] [KRELTSC: 48631089] Running #>.stack_effect: 42 <# #S #> SWAP . . CR +[Hera] 24 2 +[Hera] [HADES][TEST ] [KRELTSC: 48656371] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48678271] Expected: Should leave addr u +[Hera] [HADES][TEST ] [KRELTSC: 48693509] #>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 48710947] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 48730429] Testing word: HOLD +[Hera] [HADES][TEST ] [KRELTSC: 48742408] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 48756092] Running HOLD.basic: 42 <# 46 HOLD #S #> TYPE CR +[Hera] 42. +[Hera] [HADES][TEST ] [KRELTSC: 48782773] Test passed +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48805719] Expected: Should insert dot +[Hera] [HADES][TEST ] [KRELTSC: 48820370] Running HOLD.overflow: <# 257 HOLD #> +[Hera] [HADES][ERROR] [KRELTSC: 48844011] HOLD: byte out of range (257) +[Hera] [HADES][TEST ] [KRELTSC: 48869574] Expected error occurred +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 48894885] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 48910373] HOLD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 48928341] === Format Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 48949664] +[Hera] === Testing Module: String Words === +[Hera] [HADES][INFO ] [KRELTSC: 48967929] Running String Words Tests (Module 11)... +[Hera] [HADES][TEST ] [KRELTSC: 48986066] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 49007000] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 49023673] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 49035836] Running COUNT.basic: HERE S" Test" DROP COUNT . . CR +[Hera] 84 121 +[Hera] [HADES][TEST ] [KRELTSC: 49118802] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49143395] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 49160701] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 49186056] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49211497] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 49227671] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 49255947] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49279233] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 49298036] Running COUNT.string_bounds: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 49332708] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49359637] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 49378610] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 49403177] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 49419855] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49446830] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 49466342] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 49487903] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 49509943] Testing word: -TRAILING +[Hera] [HADES][TEST ] [KRELTSC: 49524905] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 49540418] Running -TRAILING.basic: HERE S" Test " -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 49587350] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49612157] Expected: Should trim spaces +[Hera] [HADES][TEST ] [KRELTSC: 49627240] Running -TRAILING.all_spaces: HERE S" " -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 49654650] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49680445] Expected: Should handle all spaces +[Hera] [HADES][TEST ] [KRELTSC: 49698900] Running -TRAILING.no_spaces: HERE S" Test" -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 49730149] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49754178] Expected: Should handle no spaces +[Hera] [HADES][TEST ] [KRELTSC: 49771378] Running -TRAILING.empty: HERE 0 -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 49798100] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49821409] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 49838435] -TRAILING: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 49859253] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 49880919] Testing word: CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 49893925] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 49909182] Running CMOVE.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOVE CR + +[Hera] [HADES][TEST ] [KRELTSC: 49957174] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 49982718] Expected: Should copy string +[Hera] [HADES][TEST ] [KRELTSC: 49998826] Running CMOVE.empty: HERE HERE 10 + 0 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 50020935] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50046105] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 50064862] Running CMOVE.overlap: HERE DUP 1+ 5 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 50089390] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50114658] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 50131527] Running CMOVE.bounds: HERE PAD 1000 CMOVE +[Hera] [HADES][ERROR] [KRELTSC: 50160999] CMOVE: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 50183271] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50209314] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 50224104] CMOVE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 50241452] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 50261440] Testing word: CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 50274524] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 50287690] Running CMOVE>.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOVE> CR + +[Hera] [HADES][TEST ] [KRELTSC: 50325742] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50349474] Expected: Should copy backward +[Hera] [HADES][TEST ] [KRELTSC: 50365131] Running CMOVE>.empty: HERE HERE 10 + 0 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 50386830] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50412477] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 50430177] Running CMOVE>.overlap: HERE DUP 1+ 5 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 50453073] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50475291] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 50489236] Running CMOVE>.bounds: HERE PAD 1000 CMOVE> +[Hera] [HADES][ERROR] [KRELTSC: 50508761] CMOVE>: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 50526440] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50549068] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 50563167] CMOVE>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 50579933] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 50598244] Testing word: COMPARE +[Hera] [HADES][TEST ] [KRELTSC: 50609896] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 50622372] Running COMPARE.equal: HERE S" Test" HERE S" Test" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 50664026] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50685119] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 50698023] Running COMPARE.less: HERE S" Test1" HERE S" Test2" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 50721545] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50742773] Expected: Should return -1 +[Hera] [HADES][TEST ] [KRELTSC: 50755826] Running COMPARE.greater: HERE S" Test2" HERE S" Test1" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 50779511] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50800490] Expected: Should return 1 +[Hera] [HADES][TEST ] [KRELTSC: 50813385] Running COMPARE.different_lengths: HERE S" Test" HERE S" Testing" COMPARE . CR +[Hera] [HADES][INFO ] [KRELTSC: 50841692] L8[TABLE]: Config 39 → 40 regime=2 score=6553 L1=0 L2=1 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 40,400000,10000,0,0,220,63,29,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 50885235] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50907003] Expected: Should handle lengths +[Hera] [HADES][TEST ] [KRELTSC: 50921531] Running COMPARE.empty: HERE 0 HERE 0 COMPARE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 50956112] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 50977532] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 50991316] COMPARE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 51007609] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 51026319] Testing word: SEARCH +[Hera] [HADES][TEST ] [KRELTSC: 51037816] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 51049976] Running SEARCH.found: HERE S" Testing" HERE S" Test" SEARCH . . . CR +[Hera] -1 15 120 +[Hera] [HADES][TEST ] [KRELTSC: 51098819] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51120022] Expected: Should find substring +[Hera] [HADES][TEST ] [KRELTSC: 51134073] Running SEARCH.not_found: HERE S" Testing" HERE S" Xyz" SEARCH . . . CR +[Hera] -1 7 141 +[Hera] [HADES][TEST ] [KRELTSC: 51163134] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51184019] Expected: Should return false +[Hera] [HADES][TEST ] [KRELTSC: 51198961] Running SEARCH.empty_pattern: HERE S" Test" HERE 0 SEARCH . . . CR +[Hera] -1 4 145 +[Hera] [HADES][TEST ] [KRELTSC: 51228756] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51249787] Expected: Should handle empty pattern +[Hera] [HADES][TEST ] [KRELTSC: 51264500] Running SEARCH.empty_string: HERE 0 HERE S" Test" SEARCH . . . CR +[Hera] -1 30 120 +[Hera] [HADES][TEST ] [KRELTSC: 51291409] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51312434] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 51327142] SEARCH: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 51343440] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 51361638] Testing word: SCAN +[Hera] [HADES][TEST ] [KRELTSC: 51373006] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 51385102] Running SCAN.basic: HERE S" Test,Data" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 51417753] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51438657] Expected: Should find space +[Hera] [HADES][TEST ] [KRELTSC: 51451929] Running SCAN.not_found: HERE S" TestData" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 51472261] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51493213] Expected: Should scan to end +[Hera] [HADES][TEST ] [KRELTSC: 51507113] Running SCAN.empty: HERE 0 BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 51525258] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51545703] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 51559165] Running SCAN.all_delims: HERE S" " BL SCAN TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 51583198] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51603749] Expected: Should handle all delims +[Hera] [HADES][TEST ] [KRELTSC: 51618338] SCAN: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 51633926] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 51652864] Testing word: SKIP +[Hera] [HADES][TEST ] [KRELTSC: 51663999] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 51677445] Running SKIP.basic: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 51710886] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51731527] Expected: Should skip spaces +[Hera] [HADES][TEST ] [KRELTSC: 51745187] Running SKIP.no_delims: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 51766072] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51787005] Expected: Should not skip +[Hera] [HADES][TEST ] [KRELTSC: 51799899] Running SKIP.empty: HERE 0 BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 51817477] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51838376] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 51851883] Running SKIP.all_delims: HERE S" " BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 51871042] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 51894760] Expected: Should skip all +[Hera] [HADES][TEST ] [KRELTSC: 51907898] SKIP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 51923466] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 51941962] Testing word: BLANK +[Hera] [HADES][TEST ] [KRELTSC: 51953320] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 51966515] Running BLANK.basic: HERE 5 BLANK HERE 5 TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 51996407] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52017677] Expected: Should fill with spaces +[Hera] [HADES][TEST ] [KRELTSC: 52031857] Running BLANK.zero: HERE 0 BLANK HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 52050641] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52071323] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 52086117] BLANK: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 52101762] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 52120641] Testing word: S" +[Hera] [HADES][TEST ] [KRELTSC: 52131439] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 52144366] Running S".interpret_len: S" hello" . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 52163165] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52183193] Expected: Should print: 5 (length) +[Hera] [HADES][TEST ] [KRELTSC: 52197456] Running S".interpret_type: S" hello" TYPE CR +[Hera] hello +[Hera] [HADES][TEST ] [KRELTSC: 52218362] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52238637] Expected: Should print: hello +[Hera] [HADES][TEST ] [KRELTSC: 52252177] Running S".empty: S" " . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 52268336] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52288615] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 52301460] Running S".compile_type: : TSQ S" world" TYPE CR ; TSQ +[Hera] [HADES][INFO ] [KRELTSC: 52392550] ECW: w=0xbe93eec0 func=0xbe45384c '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 52438032] ECW: w=0xbe940468 func=0xbe448b88 'TYPE' +[Hera] world[HADES][INFO ] [KRELTSC: 52455550] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 52470081] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 52489872] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52510421] Expected: Should print: world +[Hera] [HADES][TEST ] [KRELTSC: 52524706] Running S".compile_len: : TSQ2 S" forth" SWAP DROP . CR ; TSQ2 +[Hera] [HADES][INFO ] [KRELTSC: 52548631] ECW: w=0xbe93eec0 func=0xbe45384c '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 52563672] ECW: w=0xbe9383e0 func=0xbe450114 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 52578533] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 52593868] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 52610780] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 52624758] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 52639922] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52660746] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 52673644] Running S".compile_twice: : TSQ3 S" ab" TYPE S" cd" TYPE CR ; TSQ3 +[Hera] [HADES][INFO ] [KRELTSC: 52698392] ECW: w=0xbe93eec0 func=0xbe45384c '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 52714122] ECW: w=0xbe940468 func=0xbe448b88 'TYPE' +[Hera] ab[HADES][INFO ] [KRELTSC: 52730496] ECW: w=0xbe93eec0 func=0xbe45384c '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 52744284] ECW: w=0xbe940468 func=0xbe448b88 'TYPE' +[Hera] cd[HADES][INFO ] [KRELTSC: 52760412] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 52774562] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 52789326] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52809707] Expected: Should print: abcd +[Hera] [HADES][TEST ] [KRELTSC: 52823200] S": 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 52838780] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 52856960] Testing word: BL +[Hera] [HADES][TEST ] [KRELTSC: 52867760] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 52879838] Running BL.value: BL . CR +[Hera] 32 +[Hera] [HADES][TEST ] [KRELTSC: 52898838] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52918874] Expected: Should print: 32 +[Hera] [HADES][TEST ] [KRELTSC: 52931977] Running BL.as_char: BL EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 52951785] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52972565] Expected: Should emit a space +[Hera] [HADES][TEST ] [KRELTSC: 52986023] Running BL.in_scan: HERE S" a b" BL SCAN SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 53009556] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53031065] Expected: Should find space at offset 1 +[Hera] [HADES][TEST ] [KRELTSC: 53046745] BL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 53061915] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 53080560] Testing word: SOURCE +[Hera] [HADES][TEST ] [KRELTSC: 53091996] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 53104132] Running SOURCE.returns_pair: SOURCE SWAP DROP 0< NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 53144801] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53165747] Expected: Should return non-negative length +[Hera] [HADES][TEST ] [KRELTSC: 53182261] Running SOURCE.has_addr: SOURCE DROP 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 53202014] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53223316] Expected: Should return non-null address +[Hera] [HADES][TEST ] [KRELTSC: 53238543] SOURCE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 53254238] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 53272750] Testing word: >IN +[Hera] [HADES][TEST ] [KRELTSC: 53283698] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 53295754] Running >IN.initial: >IN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 53317814] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53338875] Expected: Should return input offset +[Hera] [HADES][TEST ] [KRELTSC: 53353451] Running >IN.advances: : TWIN >IN @ >IN @ - . CR ; TWIN +[Hera] [HADES][INFO ] [KRELTSC: 53379252] ECW: w=0xbe93f0a0 func=0xbe452c44 '>IN' +[Hera] [HADES][INFO ] [KRELTSC: 53394927] ECW: w=0xbe938d40 func=0xbe44acb8 '@' +[Hera] [HADES][INFO ] [KRELTSC: 53409359] ECW: w=0xbe93f0a0 func=0xbe452c44 '>IN' +[Hera] [HADES][INFO ] [KRELTSC: 53423911] ECW: w=0xbe938d40 func=0xbe44acb8 '@' +[Hera] [HADES][INFO ] [KRELTSC: 53438190] ECW: w=0xbe939970 func=0xbe43bfa0 '-' +[Hera] [HADES][INFO ] [KRELTSC: 53452665] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 53468964] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 53482702] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 53497427] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53518295] Expected: Should print: 0 (no advance inside compiled word) +[Hera] [HADES][TEST ] [KRELTSC: 53536466] >IN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 53553232] === String Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 53572992] +[Hera] === Testing Module: I/O Words === +[Hera] [HADES][INFO ] [KRELTSC: 53589138] Running I/O Words Tests (Module 9)... +[Hera] [HADES][TEST ] [KRELTSC: 53604782] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 53623161] Testing word: . +[Hera] [HADES][TEST ] [KRELTSC: 53633840] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 53646401] Running ..positive: 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 53664925] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53684963] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 53698091] Running ..negative: -42 . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 53714647] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53734740] Expected: Should print: -42 +[Hera] [HADES][TEST ] [KRELTSC: 53747960] Running ..zero: 0 . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 53762477] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53782890] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 53795725] Running ..max_int: 2147483647 . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 53813808] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53834361] Expected: Should print: 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 53848619] Running ..min_int: -2147483648 . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 53867305] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53888146] Expected: Should print: -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 53903018] Running ..multiple: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 53921107] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53941091] Expected: Should print: 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 53955042] Running ..empty_stack: . +[Hera] [HADES][TEST ] [KRELTSC: 53969015] Expected error occurred +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 53991129] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 54006396] .: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 54022574] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 54040274] Testing word: CR +[Hera] [HADES][TEST ] [KRELTSC: 54051685] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 54063852] Running CR.basic: 42 . CR 43 . CR +[Hera] 42 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 54083604] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54103649] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 54118788] Running CR.multiple: CR CR CR + + + +[Hera] [HADES][TEST ] [KRELTSC: 54134049] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54154473] Expected: Should print multiple newlines +[Hera] [HADES][TEST ] [KRELTSC: 54169578] Running CR.no_stack_effect: DEPTH CR DEPTH = . CR + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 54189827] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54210423] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 54224474] Running CR.after_output: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 54243135] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54263184] Expected: Should work after output +[Hera] [HADES][TEST ] [KRELTSC: 54277900] CR: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 54292938] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 54310310] Testing word: SPACE +[Hera] [HADES][TEST ] [KRELTSC: 54321730] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 54334054] Running SPACE.basic: 42 . SPACE 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 54354505] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54375113] Expected: Should add space between numbers +[Hera] [HADES][TEST ] [KRELTSC: 54390598] Running SPACE.multiple: SPACE SPACE SPACE +[Hera] [HADES][INFO ] [KRELTSC: 54446569] L8[TABLE]: Config 40 → 0 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 41,410000,10000,0,0,215,64,28,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 54486796] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54507032] Expected: Should print multiple spaces +[Hera] [HADES][TEST ] [KRELTSC: 54522943] Running SPACE.no_stack_effect: DEPTH SPACE DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 54547129] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54568577] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 54583251] Running SPACE.with_text: 65 EMIT SPACE 66 EMIT CR +[Hera] A B +[Hera] [HADES][TEST ] [KRELTSC: 54603202] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54623716] Expected: Should space between chars +[Hera] [HADES][TEST ] [KRELTSC: 54638328] SPACE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 54654329] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 54671774] Testing word: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 54683112] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 54695359] Running SPACES.zero: 0 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 54716174] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54737124] Expected: Should print no spaces +[Hera] [HADES][TEST ] [KRELTSC: 54751022] Running SPACES.one: 1 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 54767329] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54787185] Expected: Should print one space +[Hera] [HADES][TEST ] [KRELTSC: 54801119] Running SPACES.multiple: 5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 54817486] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54837495] Expected: Should print five spaces +[Hera] [HADES][TEST ] [KRELTSC: 54851693] Running SPACES.large: 20 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 54870043] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54889887] Expected: Should print twenty spaces +[Hera] [HADES][TEST ] [KRELTSC: 54904801] Running SPACES.negative: -5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 54919694] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54940449] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 54955070] Running SPACES.with_output: 42 . 3 SPACES 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 54976017] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 54996617] Expected: Should space output +[Hera] [HADES][TEST ] [KRELTSC: 55010238] Running SPACES.empty_stack: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 55025737] Expected error occurred +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55048337] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 55063506] SPACES: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 55079609] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 55097748] Testing word: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 55108787] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 55120777] Running EMIT.letter_A: 65 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 55137367] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55158256] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 55171036] Running EMIT.letter_Z: 90 EMIT CR +[Hera] Z +[Hera] [HADES][TEST ] [KRELTSC: 55187036] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55207845] Expected: Should print: Z +[Hera] [HADES][TEST ] [KRELTSC: 55220650] Running EMIT.digit: 48 EMIT CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 55236823] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55257248] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 55270525] Running EMIT.space_char: 32 EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 55286954] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55307318] Expected: Should print space +[Hera] [HADES][TEST ] [KRELTSC: 55320587] Running EMIT.newline: 10 EMIT + +[Hera] [HADES][TEST ] [KRELTSC: 55334961] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55355257] Expected: Should print newline +[Hera] [HADES][TEST ] [KRELTSC: 55368786] Running EMIT.high_ascii: 127 EMIT CR +[Hera]  +[Hera] [HADES][TEST ] [KRELTSC: 55385239] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55406081] Expected: Should print DEL char +[Hera] [HADES][TEST ] [KRELTSC: 55419899] Running EMIT.truncation: 321 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 55436356] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55457128] Expected: Should truncate to low byte +[Hera] [HADES][TEST ] [KRELTSC: 55471799] Running EMIT.negative: -1 EMIT CR +[Hera] ÿ +[Hera] [HADES][TEST ] [KRELTSC: 55487848] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55508470] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 55522822] Running EMIT.sequence: 72 EMIT 73 EMIT 10 EMIT +[Hera] HI +[Hera] [HADES][TEST ] [KRELTSC: 55541488] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55561824] Expected: Should print: HI +[Hera] [HADES][TEST ] [KRELTSC: 55574969] Running EMIT.empty_stack: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 55590131] Expected error occurred +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55612508] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 55629144] EMIT: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 55647379] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 55665012] Testing word: KEY +[Hera] [HADES][TEST ] [KRELTSC: 55675929] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 55689803] KEY: 0 passed, 0 failed, 4 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 55705695] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 55723208] Testing word: ?KEY +[Hera] [HADES][TEST ] [KRELTSC: 55734242] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 55746254] ?KEY: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 55761796] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 55779834] Testing word: TYPE +[Hera] [HADES][TEST ] [KRELTSC: 55790902] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 55803006] Running TYPE.basic_string: HERE S" Hello" DUP >R HERE SWAP CMOVE HERE R> TYPE CR +[Hera] Hello +[Hera] [HADES][TEST ] [KRELTSC: 55832909] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55853331] Expected: Should print: Hello +[Hera] [HADES][TEST ] [KRELTSC: 55867545] Running TYPE.empty_string: HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 55885974] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55907778] Expected: Should print nothing +[Hera] [HADES][TEST ] [KRELTSC: 55921384] Running TYPE.single_char: HERE 65 OVER C! 1 TYPE CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 55941434] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 55962510] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 55975361] Running TYPE.numbers: HERE S" 12345" DUP >R HERE SWAP CMOVE HERE R> TYPE CR +[Hera] 12345 +[Hera] [HADES][TEST ] [KRELTSC: 56001297] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56022633] Expected: Should print: 12345 +[Hera] [HADES][TEST ] [KRELTSC: 56036097] Running TYPE.zero_length: PAD 0 TYPE +[Hera] [HADES][TEST ] [KRELTSC: 56051184] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56071934] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 56086920] Running TYPE.one_item: PAD TYPE +[Hera] [HADES][ERROR] [KRELTSC: 56102507] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56115673] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56138789] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56154212] Running TYPE.empty_stack: TYPE +[Hera] [HADES][ERROR] [KRELTSC: 56167904] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56180337] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56202903] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56218206] TYPE: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 56233665] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 56251227] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 56262626] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 56275018] Running COUNT.basic: HERE S" Test" DROP C@ HERE 1+ SWAP COUNT . . CR +[Hera] 0 85 +[Hera] [HADES][TEST ] [KRELTSC: 56300230] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56320777] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 56336291] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 56356926] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56377458] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 56392403] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 56414498] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56435008] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 56449419] Running COUNT.zero_addr_plus_one: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 56471659] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56492156] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 56506352] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 56520612] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56533246] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56555692] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56571172] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 56587224] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 56604745] Testing word: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 56616140] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 56628285] Running EXPECT.zero_length: PAD 0 EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 56652738] Test passed +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56673807] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 56688217] Running EXPECT.one_item: PAD EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 56704330] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56727353] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56742315] Running EXPECT.empty_stack: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 56756734] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56779691] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 56794573] EXPECT: 3 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 56810305] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 56827800] Testing word: SPAN +[Hera] [HADES][TEST ] [KRELTSC: 56839657] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 56851718] Running SPAN.zero_input: PAD 0 EXPECT SPAN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 56875257] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56896482] Expected: Should show zero +[Hera] [HADES][TEST ] [KRELTSC: 56909501] Running SPAN.variable_test: SPAN @ SPAN @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 56929619] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 56950012] Expected: Should be consistent +[Hera] [HADES][TEST ] [KRELTSC: 56964092] Running SPAN.address_test: SPAN 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 56982144] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57002554] Expected: Should be valid address +[Hera] [HADES][TEST ] [KRELTSC: 57017125] SPAN: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 57032561] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 57050032] Testing word: WORD +[Hera] [HADES][TEST ] [KRELTSC: 57061134] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 57073452] Running WORD.empty_input: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 57108588] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57129195] Expected: Should handle empty input +[Hera] [HADES][TEST ] [KRELTSC: 57144851] Running WORD.space_delim: 32 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57160709] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57181794] Expected: Should use space as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 57197087] Running WORD.newline_delim: 10 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57213416] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57233915] Expected: Should use newline as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 57249217] Running WORD.tab_delim: 9 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57264653] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57285610] Expected: Should use tab as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 57300329] Running WORD.comma_delim: 44 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57315584] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57336843] Expected: Should use comma as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 57351973] Running WORD.skip_leading: BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57367749] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57388386] Expected: Should skip leading spaces +[Hera] [HADES][TEST ] [KRELTSC: 57403359] Running WORD.single_char: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 57422267] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57442600] Expected: Should parse single character +[Hera] [HADES][TEST ] [KRELTSC: 57457992] Running WORD.long_word: BL WORD COUNT 0 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 57477486] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57497928] Expected: Should parse long word +[Hera] [HADES][TEST ] [KRELTSC: 57511856] Running WORD.zero_delim: 0 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57527271] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57547727] Expected: Should handle null delimiter +[Hera] [HADES][TEST ] [KRELTSC: 57562566] Running WORD.high_ascii: 127 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57578081] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57598943] Expected: Should handle DEL delimiter +[Hera] [HADES][TEST ] [KRELTSC: 57613659] Running WORD.count_format: BL WORD C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 57632089] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57652842] Expected: Should have count byte +[Hera] [HADES][TEST ] [KRELTSC: 57666697] Running WORD.count_value: BL WORD COUNT SWAP DROP . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 57687536] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57708368] Expected: Should return count +[Hera] [HADES][TEST ] [KRELTSC: 57721804] Running WORD.empty_stack: WORD +[Hera] [HADES][TEST ] [KRELTSC: 57736713] Expected error occurred +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57759182] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 57776107] Running WORD.multi_delim: BL WORD DROP BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 57794871] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57815403] Expected: Should handle multiple parses +[Hera] [HADES][TEST ] [KRELTSC: 57831183] WORD: 14 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 57846817] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 57864246] Testing word: BASE_OUTPUT +[Hera] [HADES][TEST ] [KRELTSC: 57876385] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 57888609] Running BASE_OUTPUT.decimal: 10 BASE ! 255 . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 57909069] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57931343] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 57944741] Running BASE_OUTPUT.hex: 16 BASE ! 255 . CR +[Hera] 597 +[Hera] [HADES][TEST ] [KRELTSC: 57964276] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57985665] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 57998585] Running BASE_OUTPUT.octal: 8 BASE ! 64 . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 58017464] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58038893] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 58052000] Running BASE_OUTPUT.binary: 5 2 BASE ! . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 58070568] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58093290] Expected: Should print: 101 +[Hera] [HADES][TEST ] [KRELTSC: 58106390] Running BASE_OUTPUT.base_restore: BASE @ DECIMAL 255 16 BASE ! . BASE ! CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 58132490] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58156734] Expected: Should restore base +[Hera] [HADES][TEST ] [KRELTSC: 58170322] BASE_OUTPUT: 5 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 58186843] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 58204792] Testing word: FORMAT_COMBO +[Hera] [HADES][TEST ] [KRELTSC: 58217672] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 58229683] Running FORMAT_COMBO.number_space_number: DECIMAL 42 . SPACE 43 . CR +[Hera] 42 [HADES][INFO ] [KRELTSC: 58255114] L8[TABLE]: Config 0 → 1 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 42,420000,10000,0,0,208,68,29,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 58295985] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58317604] Expected: Should format: 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 58331747] Running FORMAT_COMBO.multi_line: DECIMAL 1 . CR 2 . CR 3 . CR +[Hera] 1 +[Hera] 2 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 58357836] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58380353] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 58398937] Running FORMAT_COMBO.indented: DECIMAL 5 SPACES 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 58427610] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58450852] Expected: Should indent number +[Hera] [HADES][TEST ] [KRELTSC: 58465595] Running FORMAT_COMBO.table_format: DECIMAL 1 . 3 SPACES 10 . 3 SPACES 100 . CR +[Hera] 1 10 100 +[Hera] [HADES][TEST ] [KRELTSC: 58493597] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58515227] Expected: Should format table +[Hera] [HADES][TEST ] [KRELTSC: 58529547] FORMAT_COMBO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 58548726] === I/O Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 58568506] +[Hera] === Testing Module: Block Words === +[Hera] [HADES][INFO ] [KRELTSC: 58584978] Running Block Words Tests (Module 16)... +[Hera] [HADES][TEST ] [KRELTSC: 58602026] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 58621233] Testing word: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 58632679] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 58645193] Running BLOCK.basic: 1 BLOCK DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 58688415] Test passed +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58709486] Expected: Should return block address +[Hera] [HADES][TEST ] [KRELTSC: 58724185] Running BLOCK.zero_block: 0 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 58739102] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58761953] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 58776223] Running BLOCK.large_block: 65536 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 58793982] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58816585] Expected: Should handle large number +[Hera] [HADES][TEST ] [KRELTSC: 58832052] Running BLOCK.negative: -1 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 58846343] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58868705] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 58882815] Running BLOCK.empty_stack: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 58897778] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 58920208] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 58935297] BLOCK: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 58951510] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 58969971] Testing word: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 58981431] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 58993522] Running BUFFER.basic: 1 BUFFER DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 59021433] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59042235] Expected: Should return buffer address +[Hera] [HADES][TEST ] [KRELTSC: 59057110] Running BUFFER.zero_block: 0 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 59072384] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59096116] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 59110065] Running BUFFER.flush_dirty: 2 BLOCK 1+ 2 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 59129954] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59152198] Expected: Should flush if dirty +[Hera] [HADES][TEST ] [KRELTSC: 59166419] Running BUFFER.empty_stack: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 59181842] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59205098] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 59220204] BUFFER: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 59235921] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 59254579] Testing word: UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 59265993] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 59278699] Running UPDATE.basic: 1 BLOCK UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 59304152] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59325465] Expected: Should mark block dirty +[Hera] [HADES][TEST ] [KRELTSC: 59340677] Running UPDATE.multiple: 1 BLOCK UPDATE UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 59359113] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59381779] Expected: Should handle multiple updates +[Hera] [HADES][TEST ] [KRELTSC: 59399480] Running UPDATE.no_block: 0 SCR ! UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 59421199] Expected error occurred +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59444204] Expected: Should error: blk=0 is invalid +[Hera] [HADES][TEST ] [KRELTSC: 59460210] UPDATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 59475923] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 59493818] Testing word: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59506128] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 59519074] Running SAVE-BUFFERS.basic: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59547665] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59569578] Expected: Should flush all buffers +[Hera] [HADES][TEST ] [KRELTSC: 59584322] Running SAVE-BUFFERS.dirty_blocks: 1 BLOCK UPDATE SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59606350] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59628128] Expected: Should save dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 59643068] Running SAVE-BUFFERS.no_dirty: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59661212] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59683011] Expected: Should handle no dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 59698120] SAVE-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 59715282] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 59733231] Testing word: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59745690] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 59757843] Running EMPTY-BUFFERS.basic: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59781069] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59803022] Expected: Should invalidate all buffers +[Hera] [HADES][TEST ] [KRELTSC: 59817995] Running EMPTY-BUFFERS.after_use: 1 BLOCK EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59837208] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59859114] Expected: Should invalidate used buffers +[Hera] [HADES][TEST ] [KRELTSC: 59874315] Running EMPTY-BUFFERS.dirty_blocks: 1 BLOCK UPDATE EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 59895652] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 59917474] Expected: Should handle dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 59932114] EMPTY-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 59948902] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 59967141] Testing word: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 59978357] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 59990370] Running FLUSH.basic: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 60005701] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60027385] Expected: Should save and invalidate buffers +[Hera] [HADES][TEST ] [KRELTSC: 60043149] Running FLUSH.dirty_blocks: 1 BLOCK UPDATE FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 60063247] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60084508] Expected: Should flush dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 60098925] Running FLUSH.after_empty: EMPTY-BUFFERS FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 60116298] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60136866] Expected: Should handle empty buffers +[Hera] [HADES][TEST ] [KRELTSC: 60152032] FLUSH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 60167974] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 60186291] Testing word: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 60197544] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 60210290] Running LOAD.basic: 1 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 60232364] Test passed +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60252997] Expected: Should interpret block 1 +[Hera] [HADES][TEST ] [KRELTSC: 60268159] Running LOAD.zero_block: 0 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 60282894] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60306004] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 60319833] Running LOAD.nonexistent: 9999 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 60335447] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60358575] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 60373220] Running LOAD.empty_stack: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 60388193] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60412471] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 60427868] LOAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 60445796] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 60466853] Testing word: LIST +[Hera] [HADES][TEST ] [KRELTSC: 60478381] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 60490459] 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: 60749165] Test passed +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60770518] Expected: Should display block 1 +[Hera] [HADES][TEST ] [KRELTSC: 60784553] Running LIST.zero_block: 0 LIST +[Hera] [HADES][TEST ] [KRELTSC: 60799350] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60821648] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 60836127] Running LIST.nonexistent: 9999 LIST +[Hera] [HADES][TEST ] [KRELTSC: 60850964] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60873295] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 60888011] Running LIST.empty_stack: LIST +[Hera] [HADES][TEST ] [KRELTSC: 60902611] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 60925316] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 60940247] LIST: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 60956315] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 60974175] Testing word: SCR +[Hera] [HADES][TEST ] [KRELTSC: 60985039] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 60997041] Running SCR.basic: SCR @ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 61014170] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61036168] Expected: Should show current block +[Hera] [HADES][TEST ] [KRELTSC: 61050454] 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: 61300290] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61320547] Expected: Should update after LIST +[Hera] [HADES][TEST ] [KRELTSC: 61336345] Running SCR.after_load: 1 LOAD SCR @ . CR +[Hera] [HADES][TEST ] [KRELTSC: 61353097] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61373371] Expected: Should update after LOAD +[Hera] [HADES][TEST ] [KRELTSC: 61388284] SCR: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 61404079] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 61422033] Testing word: THRU +[Hera] [HADES][TEST ] [KRELTSC: 61433115] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 61445154] Running THRU.single_block: 1 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61469838] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61491209] Expected: Should load single block (1-1) +[Hera] [HADES][TEST ] [KRELTSC: 61506531] Running THRU.ascending: 1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61523428] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61543902] Expected: Should load blocks 1-3 in order +[Hera] [HADES][TEST ] [KRELTSC: 61559204] Running THRU.descending: 3 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61576336] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61597419] Expected: Should auto-swap and load 1-3 +[Hera] [HADES][TEST ] [KRELTSC: 61612468] Running THRU.same_block: 2 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61627735] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61651886] Expected: Should load single block (2-2) +[Hera] [HADES][TEST ] [KRELTSC: 61667603] Running THRU.zero_start: 0 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61683286] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61706525] Expected: Should reject block 0 as start +[Hera] [HADES][TEST ] [KRELTSC: 61721707] Running THRU.zero_end: 1 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61735749] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61758010] Expected: Should reject block 0 as end +[Hera] [HADES][TEST ] [KRELTSC: 61773157] Running THRU.both_zero: 0 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61787229] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61809437] Expected: Should reject both blocks as 0 +[Hera] [HADES][TEST ] [KRELTSC: 61824658] Running THRU.invalid_start: 9999 10000 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61841235] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61864172] Expected: Should reject invalid start block +[Hera] [HADES][TEST ] [KRELTSC: 61879793] Running THRU.invalid_end: 1 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61895847] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61918187] Expected: Should reject invalid end block +[Hera] [HADES][TEST ] [KRELTSC: 61936249] Running THRU.both_invalid: 9998 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 61953424] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61976595] Expected: Should reject both invalid blocks +[Hera] [HADES][TEST ] [KRELTSC: 61992198] Running THRU.empty_stack: THRU +[Hera] [HADES][TEST ] [KRELTSC: 62007802] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62030756] Expected: Should cause stack underflow (no args) +[Hera] [HADES][TEST ] [KRELTSC: 62047151] Running THRU.one_arg: 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 62060588] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62085616] Expected: Should cause stack underflow (one arg) +[Hera] [HADES][TEST ] [KRELTSC: 62103512] Running THRU.small_range: 1 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 62121095] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62144847] Expected: Should load 2-block range +[Hera] [HADES][TEST ] [KRELTSC: 62160539] Running THRU.medium_range: 1 5 THRU +[Hera] [HADES][TEST ] [KRELTSC: 62180815] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62204193] Expected: Should load 5-block range +[Hera] [HADES][TEST ] [KRELTSC: 62220259] Running THRU.negative_start: -1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 62239129] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62263782] Expected: Should handle negative start +[Hera] [HADES][TEST ] [KRELTSC: 62280644] Running THRU.negative_end: 1 -3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 62296833] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62321138] Expected: Should handle negative end +[Hera] [HADES][TEST ] [KRELTSC: 62337698] Running THRU.both_negative: -3 -1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 62354137] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62379174] Expected: Should handle both negative +[Hera] [HADES][TEST ] [KRELTSC: 62396086] THRU: 17 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 62414339] === Block Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 62435570] +[Hera] === Testing Module: Dictionary Words === +[Hera] [HADES][INFO ] [KRELTSC: 62454219] Running Dictionary Words Tests (Module 4)... +[Hera] [HADES][TEST ] [KRELTSC: 62472942] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 62485043] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 62498135] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 62518971] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62542147] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 62556879] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 SWAP / +[Hera] [HADES][TEST ] [KRELTSC: 62581894] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62604527] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes on 64-bit) +[Hera] [HADES][TEST ] [KRELTSC: 62626276] Running HERE.after_c_comma: HERE 65 C, HERE SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 62649800] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62672170] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 62686218] Running HERE.after_allot: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 62710180] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62732560] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 62746780] Running HERE.stability: HERE DUP HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 62767830] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62790147] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 62804421] HERE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 62822185] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 62834242] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 62846322] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 62867035] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62887546] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 62901193] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 62921013] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62941540] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 62954815] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 62975676] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 62996166] Expected: Should print: -4 +[Hera] [HADES][TEST ] [KRELTSC: 63009138] Running ALLOT.large: HERE 100 ALLOT HERE SWAP - . CR +[Hera] 100 +[Hera] [HADES][TEST ] [KRELTSC: 63030601] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63051138] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 63064231] Running ALLOT.after_use: ALIGN HERE 10 ALLOT 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 63088980] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63109616] Expected: Should store and retrieve +[Hera] [HADES][TEST ] [KRELTSC: 63124015] Running ALLOT.empty_stack: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 63138618] Expected error occurred +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63161598] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 63176496] ALLOT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 63192661] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 63203279] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 63215998] Running ,.basic: 42 , HERE 1 CELLS - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 63236643] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63256753] Expected: Should compile 42 +[Hera] [HADES][TEST ] [KRELTSC: 63270477] Running ,.negative: -999 , HERE 1 CELLS - @ . CR +[Hera] [HADES][INFO ] [KRELTSC: 63291494] L8[TABLE]: Config 1 → 2 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 43,430000,10000,0,0,177,72,27,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 63334273] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63354132] Expected: Should compile -999 +[Hera] [HADES][TEST ] [KRELTSC: 63367515] Running ,.zero: 0 , HERE 1 CELLS - @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 63386260] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63408076] Expected: Should compile 0 +[Hera] [HADES][TEST ] [KRELTSC: 63421517] Running ,.max_int: 2147483647 , HERE 1 CELLS - @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 63446858] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63467621] Expected: Should compile max int +[Hera] [HADES][TEST ] [KRELTSC: 63481563] Running ,.min_int: -2147483648 , HERE 1 CELLS - @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 63504633] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63525041] Expected: Should compile min int +[Hera] [HADES][TEST ] [KRELTSC: 63538908] Running ,.multiple: 10 , 20 , HERE 1 CELLS - @ . HERE 1 CELLS - @ . CR +[Hera] 20 20 +[Hera] [HADES][TEST ] [KRELTSC: 63564481] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63585046] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 63599393] Running ,.empty_stack: , +[Hera] [HADES][TEST ] [KRELTSC: 63614383] Expected error occurred +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63636401] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 63652177] ,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 63667291] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 63678068] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 63690192] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 63709766] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63729790] Expected: Should compile byte 65 +[Hera] [HADES][TEST ] [KRELTSC: 63743647] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 63761710] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63782413] Expected: Should compile byte 0 +[Hera] [HADES][TEST ] [KRELTSC: 63796067] Running C,.high_byte: 255 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 63815628] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63836045] Expected: Should compile byte 255 +[Hera] [HADES][TEST ] [KRELTSC: 63850028] Running C,.truncation: 256 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 63869463] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63889422] Expected: Should truncate to 0 +[Hera] [HADES][TEST ] [KRELTSC: 63904915] Running C,.negative: -1 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 63924504] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 63944608] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 63958998] Running C,.multiple: 65 C, 66 C, HERE 2 - C@ . HERE 1 - C@ . CR +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 63983235] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64003329] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 64017833] Running C,.empty_stack: C, +[Hera] [HADES][TEST ] [KRELTSC: 64031904] Expected error occurred +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64054882] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 64071734] C,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 64087721] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 64098497] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 64110544] Running 2,.basic: 12345 67890 2, HERE 2 CELLS - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 64135130] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64155835] Expected: Should compile double +[Hera] [HADES][TEST ] [KRELTSC: 64170403] Running 2,.zero: 0 0 2, HERE 2 CELLS - 2@ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 64193990] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64214926] Expected: Should compile zero double +[Hera] [HADES][TEST ] [KRELTSC: 64230187] Running 2,.negative: -1000 -2000 2, HERE 2 CELLS - 2@ . . CR +[Hera] -2000 -1000 +[Hera] [HADES][TEST ] [KRELTSC: 64254427] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64275358] Expected: Should compile negative double +[Hera] [HADES][TEST ] [KRELTSC: 64290550] Running 2,.large: 2147483647 -1 2, HERE 2 CELLS - 2@ . . CR +[Hera] -1 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 64314788] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64335295] Expected: Should compile large double +[Hera] [HADES][TEST ] [KRELTSC: 64349927] Running 2,.one_item: 42 2, +[Hera] [HADES][TEST ] [KRELTSC: 64365672] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64387794] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 64403342] Running 2,.empty_stack: 2, +[Hera] [HADES][TEST ] [KRELTSC: 64416362] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64438293] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 64453180] 2,: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 64469304] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 64480181] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 64492181] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 64509539] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64530289] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 64543153] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 64562095] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64582535] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 64595263] Running PAD.stability: PAD DUP PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 64613777] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64633887] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 64647351] Running PAD.usable: PAD 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 64665954] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64686540] Expected: Should be usable memory +[Hera] [HADES][TEST ] [KRELTSC: 64700837] PAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 64717126] Testing word: SP@ +[Hera] [HADES][TEST ] [KRELTSC: 64728059] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 64740115] Running SP@.depth_effect: 42 SP@ SWAP DROP SP@ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 64764401] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64785406] Expected: Should show stack effect +[Hera] [HADES][TEST ] [KRELTSC: 64799556] Running SP@.empty_stack: DEPTH 0= SP@ AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 64819017] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64839612] Expected: Should work on empty stack +[Hera] [HADES][TEST ] [KRELTSC: 64854754] Running SP@.multiple_items: 1 2 3 SP@ SWAP DROP SWAP DROP SWAP DROP SP@ = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 64880530] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64901559] Expected: Should track changes +[Hera] [HADES][TEST ] [KRELTSC: 64915211] SP@: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 64930427] Testing word: SP! +[Hera] [HADES][TEST ] [KRELTSC: 64941334] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 64953353] Running SP!.basic_restore: 1 2 3 SP@ 4 5 6 DROP DROP DROP SP! DEPTH . +[Hera] 3 [HADES][TEST ] [KRELTSC: 64981973] Test passed +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65001251] Expected: Should restore stack +[Hera] [HADES][TEST ] [KRELTSC: 65014877] Running SP!.invalid_addr: 0 SP! +[Hera] [HADES][TEST ] [KRELTSC: 65029969] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65052282] Expected: Should cause error +[Hera] [HADES][TEST ] [KRELTSC: 65065622] Running SP!.empty_stack: SP! +[Hera] [HADES][TEST ] [KRELTSC: 65079781] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65102305] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 65117276] SP!: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 65132483] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 65144428] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 65156527] Running LATEST.basic: LATEST LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 65177493] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65198534] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 65213025] Running LATEST.stability: LATEST DUP LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 65233358] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65253835] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 65267211] LATEST: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 65283057] Testing word: COMPILATION +[Hera] [HADES][TEST ] [KRELTSC: 65295122] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 65307053] Running COMPILATION.here_comma_sequence: HERE 10 , 20 , 30 , HERE SWAP - 12 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 65334203] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65355564] Expected: Should advance HERE by 12 +[Hera] [HADES][TEST ] [KRELTSC: 65369853] Running COMPILATION.mixed_compilation: HERE 42 , 65 C, 100 200 2, HERE SWAP - 13 = . CR +[Hera] [HADES][INFO ] [KRELTSC: 65407831] L8[TABLE]: Config 2 → 3 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 44,440000,10000,0,0,199,77,28,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 65449976] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65472217] Expected: Should advance correctly +[Hera] [HADES][TEST ] [KRELTSC: 65486424] Running COMPILATION.allot_comma_combo: HERE 10 ALLOT 99 , HERE SWAP - 14 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 65512814] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65534740] Expected: Should combine allot and comma +[Hera] [HADES][TEST ] [KRELTSC: 65550315] Running COMPILATION.pad_isolation: PAD 999 OVER ! HERE 42 , PAD @ 999 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 65575566] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65597647] Expected: PAD should be isolated +[Hera] [HADES][TEST ] [KRELTSC: 65611560] COMPILATION: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 65627993] Testing word: STACK_MGMT +[Hera] [HADES][TEST ] [KRELTSC: 65639975] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 65652534] Running STACK_MGMT.sp_round_trip: 42 43 SP@ >R 44 45 R> SP! . . CR +[Hera] 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 65676516] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65697753] Expected: Should print: 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 65711628] Running STACK_MGMT.depth_preservation: 1 2 3 DEPTH >R SP@ >R 4 5 6 R> SP! R> DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 65739266] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65760540] Expected: Should preserve depth +[Hera] [HADES][TEST ] [KRELTSC: 65774764] STACK_MGMT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 65792101] === Dictionary Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 65812293] +[Hera] === Testing Module: Dictionary Manipulation Words === +[Hera] [HADES][INFO ] [KRELTSC: 65831745] Running Dictionary Manipulation Words Tests (Module 14)... +[Hera] [HADES][TEST ] [KRELTSC: 65850811] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 65872323] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 65883746] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 65896425] Running CREATE.basic: CREATE test1 42 , test1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 65931627] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 65953017] Expected: Should create and store +[Hera] [HADES][TEST ] [KRELTSC: 65968000] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 65983210] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66005921] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 66020780] Running CREATE.redefine_shadows: CREATE T 1 , CREATE T 2 , T @ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 66047255] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66067903] Expected: Newest definition should win (prints 2) +[Hera] [HADES][TEST ] [KRELTSC: 66084949] Running CREATE.duplicate: CREATE test2 CREATE test2 +[Hera] [HADES][TEST ] [KRELTSC: 66104263] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66125018] Expected: Should allow redefinition (latest shadows) +[Hera] [HADES][TEST ] [KRELTSC: 66142671] CREATE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 66159760] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 66180627] Testing word: FORGET +[Hera] [HADES][TEST ] [KRELTSC: 66192067] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 66204676] Running FORGET.basic: CREATE temp1 FORGET temp1 +[Hera] [HADES][TEST ] [KRELTSC: 66257587] Test passed +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66280139] Expected: Should forget word +[Hera] [HADES][TEST ] [KRELTSC: 66293477] Running FORGET.nonexistent: FORGET nonexistent +[Hera] [HADES][TEST ] [KRELTSC: 66315963] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66339679] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 66354256] Running FORGET.protected: FORGET FORGET +[Hera] [HADES][TEST ] [KRELTSC: 66371353] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66395594] Expected: Should protect system words +[Hera] [HADES][TEST ] [KRELTSC: 66410654] FORGET: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 66426419] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 66447118] Testing word: IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 66459542] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 66471746] Running IMMEDIATE.basic: : test3 42 ; IMMEDIATE test3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 66505962] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 66525782] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 66544461] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66565645] Expected: Should execute immediately +[Hera] [HADES][TEST ] [KRELTSC: 66580738] Running IMMEDIATE.already_immediate: : test4 43 ; IMMEDIATE IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 66605741] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66627185] Expected: Should handle double immediate +[Hera] [HADES][TEST ] [KRELTSC: 66644590] IMMEDIATE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 66661044] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 66681863] Testing word: FIND +[Hera] [HADES][TEST ] [KRELTSC: 66692972] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 66705770] Running FIND.existing: FIND DUP . CR +[Hera] 3197338112 +[Hera] [HADES][TEST ] [KRELTSC: 66743274] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66765551] Expected: Should find system word +[Hera] [HADES][TEST ] [KRELTSC: 66780843] Running FIND.user_word: : test5 44 ; FIND test5 . CR +[Hera] 3197504176 +[Hera] [HADES][TEST ] [KRELTSC: 66807415] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66827738] Expected: Should find user word +[Hera] [HADES][TEST ] [KRELTSC: 66842272] Running FIND.nonexistent: FIND nonexistent . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 66862313] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66883134] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 66896999] Running FIND.empty: FIND +[Hera] [HADES][TEST ] [KRELTSC: 66911118] Expected error occurred +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 66933523] Expected: Should error (no token) +[Hera] [HADES][TEST ] [KRELTSC: 66947852] FIND: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 66964087] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 66984933] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 66997660] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 67009700] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 67036108] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67062836] Expected: Should set current to context +[Hera] [HADES][TEST ] [KRELTSC: 67081423] Running DEFINITIONS.multiple: FORTH DEFINITIONS DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 67109759] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67136569] Expected: Should be idempotent +[Hera] [HADES][TEST ] [KRELTSC: 67156566] DEFINITIONS: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 67177857] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 67206591] Testing word: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 67221859] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 67238505] Running SMUDGE.during_def: : test6 SMUDGE 45 ; +[Hera] [HADES][TEST ] [KRELTSC: 67278675] Test passed +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67306247] Expected: Should hide incomplete def +[Hera] [HADES][TEST ] [KRELTSC: 67327667] Running SMUDGE.outside_def: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 67357073] Expected error occurred +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67390102] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 67411539] SMUDGE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 67430925] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 67456921] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 67469194] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 67482459] Running LATEST.basic: LATEST @ . CR +[Hera] 3197378736 +[Hera] [HADES][TEST ] [KRELTSC: 67508603] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67531800] Expected: Should show latest word +[Hera] [HADES][TEST ] [KRELTSC: 67547662] Running LATEST.after_def: : test7 46 ; LATEST @ . CR +[Hera] 3197399480 +[Hera] [HADES][TEST ] [KRELTSC: 67582019] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67606264] Expected: Should update after def +[Hera] [HADES][TEST ] [KRELTSC: 67624000] Running LATEST.after_forget: CREATE test8 FORGET test8 LATEST @ . CR +[Hera] 3197399480 +[Hera] [HADES][TEST ] [KRELTSC: 67674070] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67701139] Expected: Should update after forget +[Hera] [HADES][TEST ] [KRELTSC: 67724784] LATEST: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 67744095] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 67770562] Testing word: >BODY +[Hera] [HADES][TEST ] [KRELTSC: 67785085] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 67798142] Running >BODY.basic: CREATE test9 ' test9 >BODY . CR +[Hera] 3197505256 +[Hera] [HADES][TEST ] [KRELTSC: 67851283] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67873570] Expected: Should get param field +[Hera] [HADES][TEST ] [KRELTSC: 67888092] Running >BODY.variable: VARIABLE var1 ' var1 >BODY . CR +[Hera] 3197505496 +[Hera] [HADES][TEST ] [KRELTSC: 67938909] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 67966812] Expected: Should get var storage +[Hera] [HADES][TEST ] [KRELTSC: 67985503] Running >BODY.nonexistent: ' NONEXISTENT >BODY +[Hera] [HADES][ERROR] [KRELTSC: 68012262] ': word 'NONEXISTENT' not found +[Hera] [HADES][TEST ] [KRELTSC: 68031558] Expected error occurred +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68056058] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 68072269] >BODY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 68090053] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 68112242] Testing word: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 68124586] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 68137437] Running HIDDEN.basic: : test10 HIDDEN 47 ; +[Hera] [HADES][TEST ] [KRELTSC: 68164902] Test passed +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68186855] Expected: Should hide word +[Hera] [HADES][TEST ] [KRELTSC: 68201291] Running HIDDEN.outside_def: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 68228711] Expected error occurred +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68254176] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 68271507] HIDDEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 68289291] === Dictionary Manipulation Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 68313194] +[Hera] === Testing Module: Vocabulary Words === +[Hera] [HADES][INFO ] [KRELTSC: 68331695] Running Vocabulary Words Tests (Module 15)... +[Hera] [HADES][TEST ] [KRELTSC: 68350622] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 68371158] Testing word: VOCABULARY +[Hera] [HADES][TEST ] [KRELTSC: 68383931] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 68397669] Running VOCABULARY.basic: VOCABULARY TEST-VOC1 TEST-VOC1 DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 68473809] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68499331] Expected: Should create vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 68515272] Running VOCABULARY.create_and_switch: VOCABULARY MYVOC MYVOC DEFINITIONS CONTEXT @ . CR +[Hera] 3197506168 +[Hera] [HADES][TEST ] [KRELTSC: 68587754] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68611237] Expected: Should create and switch +[Hera] [HADES][TEST ] [KRELTSC: 68627109] Running VOCABULARY.word_isolation: VOCABULARY ISOLATED ISOLATED DEFINITIONS : ISOWORD 99 ; FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 68710525] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68741901] Expected: Should create word in isolated vocab +[Hera] [HADES][TEST ] [KRELTSC: 68763513] Running VOCABULARY.cross_vocab_access: VOCABULARY V1 V1 DEFINITIONS : V1WORD 11 ; FORTH V1WORD . CR +[Hera] [HADES][INFO ] [KRELTSC: 68861452] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 68884749] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 11 +[Hera] [HADES][TEST ] [KRELTSC: 68912310] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68941085] Expected: Should access word across vocabs +[Hera] [HADES][TEST ] [KRELTSC: 68964729] Running VOCABULARY.multiple_vocabs: VOCABULARY VA VOCABULARY VB VOCABULARY VC VA DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 69037158] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 69067106] Expected: Should create multiple vocabs +[Hera] [HADES][TEST ] [KRELTSC: 69088836] Running VOCABULARY.duplicate: VOCABULARY TESTVOC VOCABULARY TESTVOC +[Hera] [HADES][ERROR] [KRELTSC: 69125757] VOCABULARY: duplicate 'TESTVOC' +[Hera] [HADES][TEST ] [KRELTSC: 69145632] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 69175857] Expected: Should handle duplicate +[Hera] [HADES][TEST ] [KRELTSC: 69193869] Running VOCABULARY.empty_name: VOCABULARY +[Hera] [HADES][ERROR] [KRELTSC: 69217649] VOCABULARY: missing name +[Hera] [HADES][TEST ] [KRELTSC: 69231498] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 69258390] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 69278836] VOCABULARY: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 69304409] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 69327710] Testing word: FORTH +[Hera] [HADES][TEST ] [KRELTSC: 69343409] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 69357777] Running FORTH.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 69403261] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 69427333] Expected: Should select FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 69443415] Running FORTH.persistence: FORTH : TEST1 42 ; TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 69511268] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 69536409] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 69565772] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 69599720] Expected: Should find word in FORTH +[Hera] [HADES][TEST ] [KRELTSC: 69621444] Running FORTH.from_other: VOCABULARY OTHER-VOC OTHER-VOC FORTH +[Hera] [HADES][TEST ] [KRELTSC: 69681324] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 69718592] Expected: Should return to FORTH +[Hera] [HADES][TEST ] [KRELTSC: 69742999] FORTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 69771402] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 69805668] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 69827714] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 69850199] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 69909030] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 69949613] Expected: Should set current vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 69977072] Running DEFINITIONS.new_vocab: VOCABULARY TEST-VOC6 TEST-VOC6 DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 70050576] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70093146] Expected: Should set new current +[Hera] [HADES][TEST ] [KRELTSC: 70121723] Running DEFINITIONS.word_creation: VOCABULARY TEST-VOC7 TEST-VOC7 DEFINITIONS : TEST2 43 ; +[Hera] [HADES][TEST ] [KRELTSC: 70218295] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70259503] Expected: Should create in correct vocab +[Hera] [HADES][TEST ] [KRELTSC: 70282000] DEFINITIONS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 70306325] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 70333347] Testing word: CONTEXT +[Hera] [HADES][TEST ] [KRELTSC: 70348649] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 70363839] Running CONTEXT.basic: CONTEXT @ . CR +[Hera] 3197509072 +[Hera] [HADES][TEST ] [KRELTSC: 70401092] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70430524] Expected: Should show current context +[Hera] [HADES][TEST ] [KRELTSC: 70451367] Running CONTEXT.modify: CONTEXT @ 1+ CONTEXT ! +[Hera] [HADES][TEST ] [KRELTSC: 70481507] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70509790] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 70530283] Running CONTEXT.initial: FORTH CONTEXT @ . CR +[Hera] 3197383808 +[Hera] [HADES][TEST ] [KRELTSC: 70575081] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70598732] Expected: Should show FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 70614392] CONTEXT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 70631789] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 70653148] Testing word: CURRENT +[Hera] [HADES][TEST ] [KRELTSC: 70666047] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 70679771] Running CURRENT.basic: CURRENT @ . CR +[Hera] 3197509072 +[Hera] [HADES][TEST ] [KRELTSC: 70708962] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70731420] Expected: Should show current vocab +[Hera] [HADES][TEST ] [KRELTSC: 70746651] Running CURRENT.after_def: VOCABULARY TEST-VOC8 TEST-VOC8 DEFINITIONS CURRENT @ . CR +[Hera] 3197509560 +[Hera] [HADES][TEST ] [KRELTSC: 70802572] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70825245] Expected: Should show new vocab +[Hera] [HADES][TEST ] [KRELTSC: 70841119] Running CURRENT.protect: CURRENT @ 1+ CURRENT ! +[Hera] [HADES][TEST ] [KRELTSC: 70860128] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 70882931] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 70903167] CURRENT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 70921064] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 70941486] Testing word: ORDER +[Hera] [HADES][TEST ] [KRELTSC: 70953765] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 70968174] Running ORDER.basic: ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 71010496] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71033190] Expected: Should list search order +[Hera] [HADES][TEST ] [KRELTSC: 71049238] Running ORDER.multiple: VOCABULARY TEST-VOC9 TEST-VOC9 DEFINITIONS ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 71113277] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71136058] Expected: Should show all vocabs +[Hera] [HADES][TEST ] [KRELTSC: 71153560] Running ORDER.after_forth: TEST-VOC9 FORTH ORDER +[Hera] Search order: + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 71201892] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71226368] Expected: Should show FORTH only +[Hera] [HADES][TEST ] [KRELTSC: 71242674] ORDER: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 71262860] === Vocabulary Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 71292495] +[Hera] === Testing Module: System Words === +[Hera] [HADES][INFO ] [KRELTSC: 71312335] Running System Words Tests (Module 18)... +[Hera] [HADES][WARN ] [KRELTSC: 71331919] Some system tests marked as unimplemented due to system-level effects +[Hera] [HADES][TEST ] [KRELTSC: 71363126] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 71385952] Testing word: QUIT +[Hera] [HADES][TEST ] [KRELTSC: 71398928] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 71412189] Running QUIT.in_definition: : BAD-WORD QUIT ; +[Hera] [HADES][TEST ] [KRELTSC: 71442829] Expected error occurred +[Hera] [HADES][TEST ] Testing QUIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71468313] Expected: Should prevent compilation +[Hera] [HADES][TEST ] [KRELTSC: 71485741] QUIT: 1 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 71503797] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 71527437] Testing word: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 71539560] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 71552225] Running ABORT.basic: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 71578652] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71602448] Expected: Should clear stacks and return to QUIT +[Hera] [HADES][TEST ] [KRELTSC: 71620038] Running ABORT.with_data: 1 2 3 ABORT DEPTH . CR +[Hera] [HADES][INFO ] [KRELTSC: 71659292] L8[TABLE]: Config 3 → 4 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 45,450000,10000,0,0,223,82,26,4096,30,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 71707264] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71729736] Expected: Should clear stack +[Hera] [HADES][TEST ] [KRELTSC: 71744193] Running ABORT.in_definition_runtime: : BAD-WORD ABORT ; 123 BAD-WORD DEPTH . CR +[Hera] [HADES][INFO ] [KRELTSC: 71779059] ECW: w=0xbe944390 func=0xbe4561ec 'ABORT' +[Hera] [HADES][TEST ] [KRELTSC: 71798882] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71821600] Expected: ABORT may appear in a definition; when executed it clears both stacks +[Hera] [HADES][TEST ] [KRELTSC: 71845298] ABORT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 71861139] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 71879410] Testing word: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 71890903] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 71903713] Running ABORT".condition_true: -1 ABORT" Error" + +[Hera] [HADES][TEST ] [KRELTSC: 71943685] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 71965755] Expected: Should abort with message (no error; stacks cleared to QUIT) +[Hera] [HADES][TEST ] [KRELTSC: 71987001] Running ABORT".condition_false: 0 ABORT" Error" +[Hera] [HADES][TEST ] [KRELTSC: 72007582] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72029803] Expected: Should not abort +[Hera] [HADES][TEST ] [KRELTSC: 72043754] Running ABORT".empty_stack: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 72059637] Expected error occurred +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72083816] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 72099457] ABORT": 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 72115399] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 72133636] Testing word: BYE +[Hera] [HADES][TEST ] [KRELTSC: 72145685] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 72160737] BYE: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 72177668] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 72197314] Testing word: COLD +[Hera] [HADES][TEST ] [KRELTSC: 72213200] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 72226324] COLD: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 72242042] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 72260207] Testing word: WARM +[Hera] [HADES][TEST ] [KRELTSC: 72273557] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 72285705] WARM: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 72306963] === System Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 72330517] +[Hera] === Testing Module: Defining Words === +[Hera] [HADES][INFO ] [KRELTSC: 72349375] Running Defining Words Tests (Module 13)... +[Hera] [HADES][TEST ] [KRELTSC: 72367875] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 72388329] Testing word: : +[Hera] [HADES][TEST ] [KRELTSC: 72401000] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 72413284] Running :.basic: : TEST1 42 ; TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 72437430] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 72452838] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 72471748] Test passed +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72491863] Expected: Should define and execute +[Hera] [HADES][TEST ] [KRELTSC: 72506461] Running :.empty_name: : +[Hera] [HADES][TEST ] [KRELTSC: 72522054] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72544559] Expected: Should handle empty definition +[Hera] [HADES][TEST ] [KRELTSC: 72559984] Running :.nested: : TEST3 : ; +[Hera] [HADES][ERROR] [KRELTSC: 72585157] Nested ':' inside a definition is not allowed +[Hera] [HADES][TEST ] [KRELTSC: 72603034] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72625914] Expected: Should prevent nested definition +[Hera] [HADES][TEST ] [KRELTSC: 72642606] :: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 72658878] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 72677569] Testing word: ; +[Hera] [HADES][TEST ] [KRELTSC: 72688228] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 72700449] Running ;.alone: ; +[Hera] [HADES][TEST ] [KRELTSC: 72717309] Expected error occurred +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72740776] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 72756706] Running ;.immediate: : TEST4 42 ; IMMEDIATE TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 72789618] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 72808271] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 72828327] Test passed +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72850314] Expected: Should handle immediate +[Hera] [HADES][TEST ] [KRELTSC: 72864942] ;: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 72880147] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 72899615] Testing word: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 72911297] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 72923419] Running CONSTANT.basic: 42 CONSTANT MEANING MEANING . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 72962442] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72983875] Expected: Should create constant +[Hera] [HADES][TEST ] [KRELTSC: 72997971] Running CONSTANT.zero: 0 CONSTANT ZERO ZERO . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 73020681] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73042302] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 73055789] Running CONSTANT.negative: -1 CONSTANT MINUS MINUS . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 73078149] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73100247] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 73114318] Running CONSTANT.empty_stack: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 73130189] Expected error occurred +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73154154] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 73169214] CONSTANT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 73185397] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 73204625] Testing word: VARIABLE +[Hera] [HADES][TEST ] [KRELTSC: 73216475] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 73228940] Running VARIABLE.basic: VARIABLE VAR1 42 VAR1 ! VAR1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 73265062] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73287129] Expected: Should create variable +[Hera] [HADES][TEST ] [KRELTSC: 73301308] Running VARIABLE.multiple: VARIABLE VAR2 VARIABLE VAR3 +[Hera] [HADES][TEST ] [KRELTSC: 73322382] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73344077] Expected: Should create multiple +[Hera] [HADES][TEST ] [KRELTSC: 73358017] Running VARIABLE.store_fetch: VARIABLE VAR4 -99 VAR4 ! VAR4 @ . CR +[Hera] -99 +[Hera] [HADES][TEST ] [KRELTSC: 73382901] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73404730] Expected: Should store/fetch +[Hera] [HADES][TEST ] [KRELTSC: 73418438] VARIABLE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 73434586] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 73453262] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 73465770] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 73477854] Running CREATE.basic: CREATE OBJ1 +[Hera] [HADES][TEST ] [KRELTSC: 73497886] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73519246] Expected: Should create word +[Hera] [HADES][TEST ] [KRELTSC: 73532584] Running CREATE.with_data: CREATE OBJ2 42 , OBJ2 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 73555277] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73576000] Expected: Should allow data +[Hera] [HADES][TEST ] [KRELTSC: 73589656] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 73603852] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73626456] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 73640843] CREATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 73657520] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 73676122] Testing word: DOES> +[Hera] [HADES][TEST ] [KRELTSC: 73687409] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 73699569] Running DOES>.basic: : CONST CREATE , DOES> @ ; 42 CONST MEANING MEANING . CR +[Hera] [HADES][INFO ] [KRELTSC: 73746050] ECW: w=0xbe944c08 func=0xbe44123c 'CREATE' +[Hera] [HADES][INFO ] [KRELTSC: 73763484] ECW: w=0xbe941750 func=0xbe4440b0 ',' +[Hera] [HADES][INFO ] [KRELTSC: 73779126] ECW: w=0xbe945768 func=0xbe441dbc 'does_rt' +[Hera] [HADES][INFO ] [KRELTSC: 73805165] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 73842205] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73862945] Expected: Should define behavior +[Hera] [HADES][TEST ] [KRELTSC: 73877014] Running DOES>.multiple: : ARRAY CREATE DOES> SWAP CELLS + ; CREATE ARR 10 CELLS ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 73912958] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 73934495] Expected: Should work with arrays +[Hera] [HADES][TEST ] [KRELTSC: 73948827] Running DOES>.outside: DOES> +[Hera] [HADES][ERROR] [KRELTSC: 73965678] DOES>: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 73977795] Expected error occurred +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74000444] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 74016008] DOES>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 74032286] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 74051283] Testing word: [ +[Hera] [HADES][TEST ] [KRELTSC: 74061984] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 74074236] Running [.basic: : TEST5 [ 42 ] LITERAL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 74105311] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 74123811] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74145189] Expected: Should enter interpret +[Hera] [HADES][TEST ] [KRELTSC: 74159483] Running [.outside: [ +[Hera] [HADES][TEST ] [KRELTSC: 74172444] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74192561] Expected: Should be allowed outside definition (no error) +[Hera] [HADES][TEST ] [KRELTSC: 74211364] [: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 74227483] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 74246189] Testing word: ] +[Hera] [HADES][TEST ] [KRELTSC: 74256888] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 74269452] Running ].basic: [ 42 ] . CR +[Hera] [HADES][TEST ] [KRELTSC: 74287631] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74308050] Expected: Should resume compile +[Hera] [HADES][TEST ] [KRELTSC: 74321966] Running ].nested: : TEST6 [ ] 42 ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 74344006] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 74359457] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 74377059] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74397565] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 74411426] ]: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 74426658] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 74445193] Testing word: DEFER +[Hera] [HADES][TEST ] [KRELTSC: 74456843] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 74468901] Running DEFER.basic: DEFER DF1 : DF1W 42 . CR ; ' DF1W IS DF1 DF1 +[Hera] [HADES][INFO ] [KRELTSC: 74512759] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 74531325] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 42 [HADES][INFO ] [KRELTSC: 74551861] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 74566766] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 74589114] Test passed +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74612959] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 74626228] Running DEFER.uninit: DEFER DF2 DF2 +[Hera] [HADES][ERROR] [KRELTSC: 74649189] DEFER runtime: no target set for 'DF2' +[Hera] [HADES][TEST ] [KRELTSC: 74664858] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74687635] Expected: Should error: uninitialized deferred word +[Hera] [HADES][TEST ] [KRELTSC: 74705179] DEFER: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 74720935] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 74740456] Testing word: IS +[Hera] [HADES][TEST ] [KRELTSC: 74751317] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 74763488] Running IS.basic: DEFER IS1 : IS1W 99 . CR ; ' IS1W IS IS1 IS1 +[Hera] [HADES][INFO ] [KRELTSC: 74792639] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 74807836] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 74823829] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 74838043] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 74852757] Test passed +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74872917] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 74885925] Running IS.not_defer: 42 IS DUP +[Hera] [HADES][ERROR] [KRELTSC: 74901647] IS: 'DUP' was not created by DEFER +[Hera] [HADES][TEST ] [KRELTSC: 74915962] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 74938999] Expected: Should error: DUP is not a DEFER word +[Hera] [HADES][TEST ] [KRELTSC: 74958974] Running IS.not_found: 42 IS NOSUCH +[Hera] [HADES][ERROR] [KRELTSC: 74977903] IS: word 'NOSUCH' not found +[Hera] [HADES][TEST ] [KRELTSC: 74992437] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75019884] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 75037156] IS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 75054822] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 75077142] Testing word: DEFER@ +[Hera] [HADES][TEST ] [KRELTSC: 75090306] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 75102895] Running DEFER@.basic: DEFER DFA1 : DFA1W 7 . CR ; ' DFA1W IS DFA1 DEFER@ DFA1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 75151832] Test passed +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75173163] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 75186345] Running DEFER@.not_found: DEFER@ NOSUCH2 +[Hera] [HADES][ERROR] [KRELTSC: 75202596] DEFER@: word 'NOSUCH2' not found +[Hera] [HADES][TEST ] [KRELTSC: 75217162] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75239809] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 75254815] DEFER@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 75271093] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 75289750] Testing word: ['] +[Hera] [HADES][TEST ] [KRELTSC: 75300894] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 75312959] Running ['].compile_xt: : BKT1 ['] DUP ; 77 BKT1 EXECUTE . . CR +[Hera] [HADES][INFO ] [KRELTSC: 75342326] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 75357703] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 75381727] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75404367] Expected: Should print: 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 75421106] Running ['].pin_like: : BKT2 ['] DROP ; 1 2 BKT2 EXECUTE . CR +[Hera] [HADES][INFO ] [KRELTSC: 75448374] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 75468027] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 75490560] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75510864] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 75524858] Running ['].not_found: : BKT3 ['] NOSUCHWORD ; +[Hera] [HADES][ERROR] [KRELTSC: 75546778] [']': word 'NOSUCHWORD' not found +[Hera] [HADES][TEST ] [KRELTSC: 75561144] Expected error occurred +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75584034] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 75599081] [']: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 75616039] === Defining Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 75636004] +[Hera] === Testing Module: Control Words === +[Hera] [HADES][INFO ] [KRELTSC: 75653272] Running Control Words Tests (Module 12)... +[Hera] [HADES][TEST ] [KRELTSC: 75670150] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 75689298] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 75700136] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 75712927] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 75767031] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 75787365] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 75802733] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 75822281] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 75846335] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75867386] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 75883531] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 75917935] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 75937577] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 75952320] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 75971184] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 75992552] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 76007170] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; -1 -1 TEST3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 76036776] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76052814] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76068414] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 76084729] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76100201] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76115795] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 76133285] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76154159] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 76168122] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 76203394] L8[TABLE]: Config 4 → 5 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 46,460000,10000,0,0,202,85,24,4096,67,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 76244630] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76261426] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 76278434] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 76299673] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76320433] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 76339443] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 76359763] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 76371224] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76394503] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 76409603] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 76427105] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 76438013] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 76450202] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 76479568] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76495869] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 76510513] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76527343] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 76545105] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76565325] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 76579989] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 76602387] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76619272] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 76634230] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 76652902] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76673222] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 76687543] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; -1 -1 TEST3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 76716862] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76732974] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76748644] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 76763383] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76779393] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76795033] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 76812429] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76833170] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 76847078] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 76868165] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 76883958] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 76899591] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 76917073] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76937224] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 76951519] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 76966019] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 76976938] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 76999197] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 77014263] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 77032638] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 77051342] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 77062487] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 77074629] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 77091480] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 77103098] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77125597] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 77139813] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 77162182] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 77173430] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77195823] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 77211748] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 77227266] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 77238363] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 77250436] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 77265523] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 77277174] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77299718] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 77313789] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 77334037] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 77345104] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77367739] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 77382381] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 77398543] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 77416732] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 77427758] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 77439731] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 77455835] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 77467518] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77490146] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 77504271] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 77524749] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 77536434] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 77547421] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77569783] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 77584793] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 77600282] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 77611434] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 77623571] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 77638493] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 77650312] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77672612] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 77686680] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 77705056] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 77715695] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 77726398] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 77748952] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 77763440] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 77779424] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 77797904] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 77809290] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 77821503] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 77855858] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 77871476] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 77886261] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 77902187] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 77916802] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 77931223] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 77946825] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 77961761] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 77976399] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 77991121] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 78005437] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78021355] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78035826] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78051261] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78067598] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 78086547] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78102199] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78116671] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78131214] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78147972] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 78162287] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78177947] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78192321] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78207486] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78222057] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 78236483] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78251943] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 78270619] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 78291424] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 78305604] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 78346264] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78361873] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78376598] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78391255] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 78406887] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78422469] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78436952] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78452360] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78467616] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78482192] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 78496684] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78512238] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78527376] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78542794] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78557618] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78572189] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 78587464] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78603039] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78617462] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78632780] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78647748] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78662349] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 78676884] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78692411] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78707565] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78722947] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78737527] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78752117] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 78766816] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78782427] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 78796935] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78812264] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 78826854] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 78841886] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 78856215] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 78871956] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 78890062] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 78911124] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 78925497] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 78940849] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 78952597] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 78977565] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 78993152] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 79008820] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 79020471] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 79033007] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 79061822] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79076842] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79091905] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79106540] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79121125] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 79135526] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79151401] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79165831] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79180629] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79195186] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 79209993] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79225518] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79239984] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79254880] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79270505] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 79284818] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79300289] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79314734] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79329744] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79344327] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 79358660] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79374395] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79388880] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79403861] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79418436] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 79432943] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79448449] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 79467882] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 79488599] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 79502643] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 79528569] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79543424] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79558031] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79572624] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 79587542] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79603109] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79617664] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79633137] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79648132] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79662762] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 79677297] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79692825] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79707623] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79723050] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79737913] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79752510] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 79767164] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79782767] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79797248] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79812655] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79827282] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79842305] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 79871586] L8[TABLE]: Config 5 → 6 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 47,470000,10000,0,0,218,91,25,4096,198,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 79911650] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79927756] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 79942922] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 79958785] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 79973488] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 79988105] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 80002502] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80018525] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 80033816] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80049363] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80064066] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 80078613] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 80093607] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80109228] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 80127546] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 80148695] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 80162815] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 80176032] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 80187401] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 80210209] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 80225709] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 80241630] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 80260063] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 80271728] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 80283968] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TEST8 . CR +[Hera] [HADES][INFO ] [KRELTSC: 80312283] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80327245] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 80342414] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80357058] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 80371720] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80387431] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80402547] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 80417002] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80431862] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 80446360] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80462448] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80477326] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 80491785] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80506373] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 80521206] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80536764] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80551585] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 80566026] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80580945] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 80595412] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80611404] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80626175] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 80640591] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80655469] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 80669872] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 80685348] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 80702639] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 80723604] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 80736994] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 80758237] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 80779319] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 80792819] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 80807720] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 80820849] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 80845231] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 80860422] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 80876290] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 80887514] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 80900120] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TEST8 . CR +[Hera] [HADES][INFO ] [KRELTSC: 80930034] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80945242] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 80960160] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 80974634] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 80989145] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81004693] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81021346] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 81035869] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81050782] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 81065305] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81081185] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81095801] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 81110181] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81124727] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 81139172] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81155058] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81169573] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 81183943] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81198455] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 81213131] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81228605] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81243349] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 81257751] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81272696] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 81288010] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81303792] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 81321499] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 81342509] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 81355738] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 81378060] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 81399169] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 81412618] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 81426228] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 81437560] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 81460308] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 81474962] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 81490601] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 81508835] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 81520427] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 81532535] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST10 . CR +[Hera] [HADES][INFO ] [KRELTSC: 81560213] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81575246] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 81590375] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 81604779] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81620550] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 81635103] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81650809] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81665415] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 81679976] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 81694242] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81710098] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 81724659] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81740366] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81754987] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 81769909] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 81784249] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81799780] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 81814447] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81830150] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81844780] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 81859344] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 81873636] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81889175] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 81903971] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81919344] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 81933957] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 81948561] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 81963452] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 81978973] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 81993394] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82008739] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82024328] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 82038923] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 82053272] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82068934] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 82086730] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 82107301] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 82120146] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPEAT ; 0 TEST11 . CR +[Hera] [HADES][INFO ] [KRELTSC: 82145915] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82160888] ECW: w=0xbe93af00 func=0xbe449844 '0<' +[Hera] [HADES][INFO ] [KRELTSC: 82175461] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82191059] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 82208712] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 82229444] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 82244861] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 82260817] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 82273639] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 82296306] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 82311359] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 82327047] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 82338677] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 82350775] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST10 . CR +[Hera] [HADES][INFO ] [KRELTSC: 82378716] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82394032] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 82408700] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 82423084] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82438839] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 82453313] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82469070] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82483664] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 82498430] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 82512786] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82528592] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 82543009] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82558350] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82572958] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 82587854] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 82602196] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82617737] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 82632542] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82648208] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82662731] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 82677247] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 82691504] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82707254] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 82721662] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82737546] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82752098] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 82766972] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 82781196] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82796621] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 82811255] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82826536] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82841430] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 82855915] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 82870096] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 82886900] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 82904900] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 82925353] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 82938439] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPEAT ; 0 TEST11 . CR +[Hera] [HADES][INFO ] [KRELTSC: 82964659] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 82979437] ECW: w=0xbe93af00 func=0xbe449844 '0<' +[Hera] [HADES][INFO ] [KRELTSC: 82993911] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83009372] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 83027341] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 83047958] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 83063017] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 83076437] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 83088139] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 83110587] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 83125433] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 83141080] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 83159958] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 83171382] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 83183474] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST12 . CR +[Hera] [HADES][INFO ] [KRELTSC: 83211252] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 83226213] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 83240853] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 83255149] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83271145] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 83285584] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83301360] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 83316127] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 83343800] L8[TABLE]: Config 6 → 7 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 48,480000,10000,0,0,221,92,26,4096,350,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 83382250] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 83399377] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83415031] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 83429682] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83445182] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 83460162] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 83474741] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 83488986] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83504694] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 83519786] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83535214] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 83550023] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 83564933] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 83579636] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83595151] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 83609676] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83625032] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 83639630] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 83654620] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 83668936] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83684468] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 83698926] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83714603] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 83729216] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 83743816] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 83758115] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 83774018] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 83791685] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 83812758] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 83826609] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 83843116] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 83854959] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 83877514] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 83892516] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 83908307] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 83919738] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 83931827] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST12 . CR +[Hera] [HADES][INFO ] [KRELTSC: 83960941] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 83976433] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 83991132] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 84005694] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84021656] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 84036136] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84053339] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 84068002] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 84083026] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 84097425] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84112928] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 84127593] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84143305] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 84157843] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 84172358] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 84186782] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84202217] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 84216958] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84232244] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 84246756] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 84261287] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 84276695] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84292172] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 84306570] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84321860] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 84336907] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 84351420] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 84365668] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84381311] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 84396228] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84411545] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 84426066] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 84440572] ECW: w=0xbe93b3b0 func=0xbe449b4c '<' +[Hera] [HADES][INFO ] [KRELTSC: 84455186] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 84470642] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 84488079] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 84508663] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 84522818] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 84536545] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 84547992] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 84570529] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 84585439] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 84601189] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 84619397] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 84630105] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 84642774] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] [HADES][INFO ] [KRELTSC: 84680815] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 84696111] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 84711389] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 84731865] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 84748249] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 84764398] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 84783528] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 84797875] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 84813838] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 84827787] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 84842556] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 84858279] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 84872204] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 84886375] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 84902440] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 84916399] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 84930626] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 84946310] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 84962257] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 84978085] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 84998429] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 85011994] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] [HADES][INFO ] [KRELTSC: 85036298] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85051137] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85065713] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 85080912] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85095148] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -5 [HADES][INFO ] [KRELTSC: 85111038] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85125203] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85139417] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -4 [HADES][INFO ] [KRELTSC: 85155943] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85169834] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85184215] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -3 [HADES][INFO ] [KRELTSC: 85199980] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85214213] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85228409] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -2 [HADES][INFO ] [KRELTSC: 85244416] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85258346] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 85274267] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 85294303] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 85308202] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 85326791] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 85348379] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 85362850] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; TEST16 CR +[Hera] [HADES][INFO ] [KRELTSC: 85389066] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85404450] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85419104] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 85433933] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85448541] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85463554] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 85478512] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 85496843] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85511431] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 85526343] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 85542236] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85556318] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 85570606] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85585204] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 85599548] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 85615373] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85629335] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 85643918] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85658239] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 85672557] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 85688571] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85702606] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85718018] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85732678] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 85747303] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 85762176] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 85776966] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85791313] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 85805609] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 85821308] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85835631] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 85849865] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85864043] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 85878286] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 85894198] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85908161] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 85922393] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 85936627] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 85950984] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 85967056] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85980999] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 85996010] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 86010988] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 86025874] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 86040609] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 86054849] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86069331] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 86084035] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 86100005] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86114108] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 86128400] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86143876] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 86158345] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 86174127] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86188373] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 86202693] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86217850] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 86232189] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 86248094] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86262140] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86277610] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 86294682] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 86315256] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 86329827] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 86345175] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 86356001] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 86368246] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] [HADES][INFO ] [KRELTSC: 86403884] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 86420249] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 86435044] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 86453160] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86469803] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 86487986] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86504217] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86519296] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 86536131] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86550103] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86564496] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 86580759] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86594695] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86608889] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 86624512] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86639464] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86655043] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 86671107] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86685118] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 86702983] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 86723917] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 86737655] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] [HADES][INFO ] [KRELTSC: 86764524] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 86793335] L8[TABLE]: Config 7 → 8 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 49,490000,10000,0,0,225,97,26,4096,528,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 86834937] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 86849657] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 86864398] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86878885] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -5 [HADES][INFO ] [KRELTSC: 86895625] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86909556] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86923787] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -4 [HADES][INFO ] [KRELTSC: 86939614] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86953487] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 86968310] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -3 [HADES][INFO ] [KRELTSC: 86984040] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 86997958] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87012301] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] -2 [HADES][INFO ] [KRELTSC: 87028472] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87042369] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 87059403] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 87080487] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 87094717] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 87117332] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 87140203] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 87157854] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; TEST16 CR +[Hera] [HADES][INFO ] [KRELTSC: 87189215] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87206026] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87220810] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 87235671] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87250421] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87265059] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 87280307] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87294561] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87308954] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87324454] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 87344644] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87359025] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87373420] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87387675] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87403747] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 87420386] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87434370] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87448601] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87463779] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87478144] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 87493780] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87508017] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87525219] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87542417] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87559507] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 87574732] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87590586] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87604854] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87619588] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 87635618] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87650320] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87664559] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87678756] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87693444] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 87710534] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87724523] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87738784] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87753052] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87768082] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 87783762] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87797649] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87812561] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87827095] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 87842213] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 87856915] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87871014] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87885335] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87900166] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 87915759] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 87929609] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 87943743] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 87958845] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 87973143] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 87988793] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88002704] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 88017382] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88031606] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 88045808] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 88061415] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88075610] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88091837] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 88108730] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 88128863] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 88143526] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 88158761] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 88177023] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 88187951] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 88200201] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] [HADES][INFO ] [KRELTSC: 88240048] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 88255997] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 88271636] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 88293048] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88307524] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 88323468] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88338253] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88352535] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 88368352] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88382555] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88397490] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 88413182] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88427103] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88441301] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 88457723] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88471729] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88485948] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 88501731] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88515755] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 88533142] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 88553417] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 88567408] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 88593278] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 88614768] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 88630026] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOOP ; TEST19 CR +[Hera] [HADES][INFO ] [KRELTSC: 88667500] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 88683079] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 88697837] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 88714354] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 88731220] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88747618] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 88763205] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 88778473] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88792736] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 88807297] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 88824040] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88838856] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 88853051] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88867243] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 88881696] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 88897704] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88911555] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 88925642] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 88939974] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 88954694] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 88970458] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88984300] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 88999228] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 89013667] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89028489] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 89043268] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 89057344] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89071465] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 89086467] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 89102099] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89116756] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 89131741] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89146687] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 89160991] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 89176673] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89190798] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89206636] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 89221367] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89235594] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 89250424] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 89264829] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89279690] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 89294809] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 89310483] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89324368] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89340159] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 89356775] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 89377023] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 89390997] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 89406795] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 89417688] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 89429813] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] [HADES][INFO ] [KRELTSC: 89458179] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 89473144] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 89488323] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 89503223] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89518172] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 89533908] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89547820] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89562016] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 89577810] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89592158] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89606399] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 89622020] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89636174] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89650849] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 89666548] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89680512] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89694734] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 89713211] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 89727170] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 89742762] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 89762975] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 89777191] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 89796995] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 89817643] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 89833504] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOOP ; TEST19 CR +[Hera] [HADES][INFO ] [KRELTSC: 89860449] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 89875387] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 89890229] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 89905737] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 89920351] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 89934637] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 89962527] L8[TABLE]: Config 8 → 9 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 50,500000,10000,0,0,214,100,27,4096,694,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 90001263] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 90015686] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90031077] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 90045536] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 90061294] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90075577] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 90090317] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90104631] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 90118950] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 90135084] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90149711] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 90164040] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90179318] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 90195575] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 90215500] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90229641] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90244616] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 90259163] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90279627] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 90300366] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 90319547] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90393893] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 90414296] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 90438454] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90460363] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 90480433] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90500670] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 90523452] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 90545966] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90565695] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90595061] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 90623400] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90651156] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 90676586] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 90701284] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 90725315] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 90743108] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 90762395] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90781155] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 90799309] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 90820458] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 90849747] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 90867043] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 90885340] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 90911277] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 90927248] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 90946708] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] [HADES][INFO ] [KRELTSC: 90986709] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 91005414] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 91027163] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 91046270] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91063379] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 91084342] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91100516] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91116915] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 91138468] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91162240] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91184607] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 91206890] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91224779] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91241812] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 91261682] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91280028] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91297441] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 91316607] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91334666] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 91355635] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 91380672] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 91399068] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 91421103] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 91435293] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 91465514] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 91488503] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 91523228] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 91541103] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 91560701] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] [HADES][INFO ] [KRELTSC: 91603691] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 91623083] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 91641019] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 91661799] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91679317] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 91701299] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91725992] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91750301] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 91773619] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91790899] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91808326] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 91828103] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91847099] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91864902] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 91884788] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91902982] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 91920617] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 91939862] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 91958690] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 91979776] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 92005061] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 92024047] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 92040560] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 92055418] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 92084587] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 92104459] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 92128710] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 92159241] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 92173699] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 92188653] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 92243348] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92263527] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92283763] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 92303090] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 92321389] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 92342402] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92360600] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 92393356] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 92412054] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 92432169] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92449218] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 92471476] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 92489209] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 92508777] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92526572] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 92545358] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 92562973] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 92584329] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92601212] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 92619810] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 92637602] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 92661430] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92679989] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 92703586] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 92727491] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 92753667] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 92772876] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST22 CR +[Hera] [HADES][INFO ] [KRELTSC: 92807838] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92827029] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92848854] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 92867497] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 92885328] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 92906881] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 92924281] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 92947173] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 92966211] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 92987313] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93004190] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93024274] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93041758] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 93061031] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93077505] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93101568] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93123509] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 7 [HADES][INFO ] [KRELTSC: 93151406] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93173080] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93197472] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93222246] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 93247962] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93271014] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93294129] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93315738] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 93343282] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93364295] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93388024] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93419359] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 93444817] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93470077] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93495666] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93522770] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 93550505] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93572182] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93600030] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93623103] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 93655678] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93677239] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93700925] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93726196] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 93753602] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93777627] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93802589] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 93826309] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 93854310] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 93876853] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 93903723] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 93931796] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 93967120] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 93989063] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TEST23 CR +[Hera] [HADES][INFO ] [KRELTSC: 94044956] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 94071840] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 94099209] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 94122606] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 94146828] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 94170491] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 94190760] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 94218680] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 94240946] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 94267561] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 94290910] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 94316376] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 94341338] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 94366811] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 94390714] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 94420175] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 94444454] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 94470163] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 94490268] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 94512767] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 94538906] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 94568705] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 94591163] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 94614258] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 94630759] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 94650754] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 94697241] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 94722936] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 94744267] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 94765002] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 94781472] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 94797409] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 94812218] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 94834338] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 94856073] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 94882474] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 94906668] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 94932066] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 94957346] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 94983790] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95006222] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 95033158] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 95056848] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 95085156] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95107619] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 95164946] L8[TABLE]: Config 9 → 10 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 51,510000,10000,0,0,227,102,28,4096,883,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 95235803] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 95260342] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 95288876] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95311575] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 95338571] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 95367138] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 95402719] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 95424780] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST22 CR +[Hera] [HADES][INFO ] [KRELTSC: 95472178] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95498067] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95523492] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 95546991] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 95568751] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 95595832] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95616434] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 95639809] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 95663275] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 95688123] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95711412] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 95735254] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 95757286] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 95784143] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95805196] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 95829877] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 95852453] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 7 [HADES][INFO ] [KRELTSC: 95876951] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95899771] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 95923194] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 95945154] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 95973005] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 95993688] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96019515] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96041569] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 96066908] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96089859] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96113517] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96135614] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 96162525] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96185199] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96214108] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96238555] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 96270731] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96297540] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96322267] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96346657] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 96372539] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96395797] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96421409] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96445432] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 96476365] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96498154] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96524443] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96548979] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 96575238] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96599038] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96622812] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 96653914] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 96685820] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 96708262] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TEST23 CR +[Hera] [HADES][INFO ] [KRELTSC: 96755973] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96785467] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 96809205] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 96834715] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96857762] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 96883384] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 96906881] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 96930431] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 96952282] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 96979968] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 97000657] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 97025567] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 97047099] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 97071499] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 97094569] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 97117930] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 97139610] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 97166775] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 97188159] ECW: w=0xbe9460d8 func=0xbe43eabc '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 97214287] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 97241421] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 97274699] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 97296629] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 97320062] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 97350032] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 97366343] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 97386224] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] [HADES][INFO ] [KRELTSC: 97448548] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 97475188] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 97497324] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 97522158] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 97544476] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 97569592] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 97593351] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 97615706] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 97652247] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 97677974] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 97700287] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 97727234] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 97748403] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 97771997] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 97797329] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 97819255] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 97844219] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 97864595] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 97895418] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 97914325] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] [HADES][INFO ] [KRELTSC: 97957945] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 97983113] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98005177] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 98030510] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 98056684] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 98083728] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 98105133] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 98127786] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 98152301] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 98182696] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 98202584] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] [HADES][INFO ] [KRELTSC: 98253638] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98280161] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98302240] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 98324146] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 98347914] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 98371701] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 98394416] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 98414865] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 98438105] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 98461197] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 98484020] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 98505893] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 98539739] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 98558948] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] [HADES][INFO ] [KRELTSC: 98602686] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98622237] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98650296] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 98669983] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 98688947] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98710585] ECW: w=0xbe939a60 func=0xbe43c048 '*' +[Hera] [HADES][INFO ] [KRELTSC: 98736758] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 98765120] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 98791366] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 98816579] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98844132] ECW: w=0xbe939a60 func=0xbe43c048 '*' +[Hera] [HADES][INFO ] [KRELTSC: 98869306] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 98902923] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 98926546] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 98950161] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 98977500] ECW: w=0xbe939a60 func=0xbe43c048 '*' +[Hera] [HADES][INFO ] [KRELTSC: 99003324] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 99033794] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 99058481] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 99086542] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 99111834] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 99146685] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 99188011] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 99217359] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 99234911] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 99255087] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] [HADES][INFO ] [KRELTSC: 99309220] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 99337747] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 99362603] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 99387727] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 99414880] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 99443794] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 99472811] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 99498838] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 99529246] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 99554713] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 99578789] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 99612803] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 99635864] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 99659800] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 99685042] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 99708295] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 99736947] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 99760835] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 99794215] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 99815515] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] [HADES][INFO ] [KRELTSC: 99858952] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 99879346] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 99897472] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 99914680] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 99932171] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 99950634] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 99969878] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 99986379] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 100003364] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 100026507] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 100041260] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] [HADES][INFO ] [KRELTSC: 100071606] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 100090805] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 100107309] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 100124987] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 100142137] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 100160484] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 100191817] L8[TABLE]: Config 10 → 11 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 52,520000,10000,0,0,208,102,29,4096,1043,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 100237283] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 100253489] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 100272219] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 100288395] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 100305212] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 100322168] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 100348998] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 100364237] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] [HADES][INFO ] [KRELTSC: 100400254] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 100419572] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 100444671] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 100470126] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 100492843] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 100517616] ECW: w=0xbe939a60 func=0xbe43c048 '*' +[Hera] [HADES][INFO ] [KRELTSC: 100542966] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 100569393] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 100593533] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 100621437] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 100646784] ECW: w=0xbe939a60 func=0xbe43c048 '*' +[Hera] [HADES][INFO ] [KRELTSC: 100670894] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 100697287] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 100721157] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 100744538] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 100769475] ECW: w=0xbe939a60 func=0xbe43c048 '*' +[Hera] [HADES][INFO ] [KRELTSC: 100793053] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 100817181] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 100839126] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 100860410] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 100880927] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 100905436] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 100921764] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 100939089] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 100960552] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 100972728] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 100986590] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] [HADES][INFO ] [KRELTSC: 101024130] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101041541] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101057910] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 101074581] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101096196] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101114159] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 101131493] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101149160] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 101168846] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101187241] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101205735] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 101226849] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101244921] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101262550] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 101283258] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101301231] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101321194] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101342995] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101362123] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 101383561] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101402809] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 101423465] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101440140] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101459069] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 101477503] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101493353] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101509532] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 101528796] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101543180] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101558614] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 101573804] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 101589877] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 101610325] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 101625038] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; TJ2 +[Hera] [HADES][INFO ] [KRELTSC: 101655947] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101671080] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101685855] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 101700852] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101716366] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101731168] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 101746079] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101760527] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 101775528] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 101790123] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 101806101] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101820348] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101835422] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 101850133] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 101864608] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 101880893] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101895497] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 101910707] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101925420] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 101940144] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 101955409] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 101969786] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 101984141] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 101998585] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 102014378] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102032883] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102047262] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 102061699] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 102076301] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 102092967] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102107130] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102123413] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 102138438] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 102155020] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 102175194] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 102189437] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 102205979] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 102216732] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 102228992] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] [HADES][INFO ] [KRELTSC: 102259787] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102275609] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102290406] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 102305411] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102320160] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102335367] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 102350487] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102364943] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 102380827] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102395399] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102410081] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 102425929] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102440091] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102454917] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 102470747] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102484895] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102500603] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102515382] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102530689] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 102545730] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102560129] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 102576025] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102590648] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102605260] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 102621097] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102635225] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102650021] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 102666084] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102680183] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102695994] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 102711491] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 102726657] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 102746786] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 102761499] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; TJ2 +[Hera] [HADES][INFO ] [KRELTSC: 102789513] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102804525] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102819298] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 102834749] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102849511] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 102864230] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 102879116] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102894688] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 102909063] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 102923579] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 102939502] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 102953612] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 102968413] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 102982752] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 102997130] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 103012931] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 103027353] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 103042678] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 103057294] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 103071940] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 103087138] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 103101680] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 103116050] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 103130914] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 103147341] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 103161432] ECW: w=0xbe946fd8 func=0xbe43fe20 'J' +[Hera] [HADES][INFO ] [KRELTSC: 103175785] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 103190133] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 103205114] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 103221963] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 103235993] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 103251028] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 103265815] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 103281186] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 103301251] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 103315357] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 103330865] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 103349232] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 103360394] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 103372661] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] [HADES][INFO ] [KRELTSC: 103397654] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 103413038] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 103430477] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 103450994] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 103464483] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE ; 3 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 103489934] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 103504895] ECW: w=0xbe93aff0 func=0xbe4498f8 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 103520059] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 103536284] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 103554157] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 103574591] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 103588041] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE ; -4 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 103627774] L8[TABLE]: Config 11 → 12 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 53,530000,10000,0,0,207,102,30,4096,1202,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 103670686] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 103685828] ECW: w=0xbe93aff0 func=0xbe4498f8 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 103700622] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 103723353] ECW: w=0xbe93a690 func=0xbe43c99c 'NEGATE' +[Hera] [HADES][INFO ] [KRELTSC: 103744736] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 103767060] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 103789717] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 103804334] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] [HADES][INFO ] [KRELTSC: 103835981] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 103854239] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 103871104] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 103892632] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 103914096] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 103927760] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 103943468] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 103955193] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 103967531] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] [HADES][INFO ] [KRELTSC: 103993460] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104008461] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 104026428] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 104047290] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 104060328] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE ; 3 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 104086295] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 104101610] ECW: w=0xbe93aff0 func=0xbe4498f8 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 104116366] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 104132144] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 104151193] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 104171755] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 104184782] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE ; -4 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 104218804] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 104235958] ECW: w=0xbe93aff0 func=0xbe4498f8 '0>' +[Hera] [HADES][INFO ] [KRELTSC: 104251138] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 104269011] ECW: w=0xbe93a690 func=0xbe43c99c 'NEGATE' +[Hera] [HADES][INFO ] [KRELTSC: 104284675] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 104304431] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 104326286] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 104340780] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] [HADES][INFO ] [KRELTSC: 104366216] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104381529] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104397939] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 104417428] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 104438125] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 104452027] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 104471037] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 104491905] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 104503335] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 104515647] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LOOP ; TLV . CR +[Hera] [HADES][INFO ] [KRELTSC: 104575622] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104593934] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104608960] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104623793] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 104638844] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 104653923] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104668756] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 104683312] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 104699119] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 104714258] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 104729554] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 104743978] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104758718] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 104773542] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 104789477] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 104804088] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 104819306] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 104834185] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104848945] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 104863388] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 104879132] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 104894808] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 104910084] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 104924521] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 104939236] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 104953661] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 104970042] ECW: w=0xbe9461c8 func=0xbe43ecc4 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 104988413] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105004074] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 105023150] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 105044620] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 105057801] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 105084778] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105100287] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105115070] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105129832] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 105145220] ECW: w=0xbe9461c8 func=0xbe43ecc4 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 105160635] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105176183] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 105193629] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 105215059] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 105228263] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ LOOP ; TLV3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 105256011] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105271575] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105286734] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105301540] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 105316720] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 105331553] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105346282] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 105360777] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105376447] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 105391125] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 105406777] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 105421224] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105436004] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 105450494] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105466856] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 105483595] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 105501052] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 105515521] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105531019] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 105545728] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105561471] ECW: w=0xbe9461c8 func=0xbe43ecc4 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 105576941] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105593083] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 105611220] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 105631981] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 105645796] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 105662076] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 105673500] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 105685782] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LOOP ; TLV . CR +[Hera] [HADES][INFO ] [KRELTSC: 105717170] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105732976] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105747718] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105762414] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 105777906] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 105792565] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105807295] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 105822162] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105838691] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 105853508] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 105868664] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 105882998] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105898327] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 105912757] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 105928599] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 105943122] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 105958858] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 105973322] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 105988015] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 106002439] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 106018516] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 106033083] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 106048206] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 106062590] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 106077264] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 106092053] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 106107930] ECW: w=0xbe9461c8 func=0xbe43ecc4 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 106123264] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 106139253] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 106157439] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 106178363] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 106191408] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 106216559] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 106231740] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 106246480] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 106261189] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 106276904] ECW: w=0xbe9461c8 func=0xbe43ecc4 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 106292448] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 106307988] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 106325475] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 106346642] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 106359932] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ LOOP ; TLV3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 106909522] L8[TABLE]: Config 12 → 13 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 54,540000,10000,0,0,200,102,31,4096,1319,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 106968242] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 106984190] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 106998996] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107013764] ECW: w=0xbe945e08 func=0xbe43e5b0 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 107029529] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107047051] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107065794] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 107083784] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107101756] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 107117726] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 107133850] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107150336] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107166429] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 107181225] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107196865] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 107212118] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 107227398] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107242037] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107256785] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 107272073] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107287756] ECW: w=0xbe9461c8 func=0xbe43ecc4 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 107303289] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107318800] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 107338706] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 107359755] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 107373867] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 107389784] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 107408787] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 107420573] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 107432843] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EXIT THEN LOOP 99 ; TUL . CR +[Hera] [HADES][INFO ] [KRELTSC: 107468439] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107483823] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107498529] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 107513506] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107528346] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107543791] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 107558484] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107574182] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 107589905] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107605507] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107624240] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 107644124] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107660022] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 107675470] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107689890] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107705118] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 107719856] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107735994] ECW: w=0xbe9470c8 func=0xbe43fe9c 'UNLOOP' +[Hera] [HADES][INFO ] [KRELTSC: 107756873] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107773236] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 107792052] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 107812866] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 107826145] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EXIT THEN LOOP 99 ; TUL2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 107859487] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107874625] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107889423] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 107905302] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107919776] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 107934534] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 107949059] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 107965279] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 107980542] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 107995076] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108009776] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 108024600] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 108040283] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 108055658] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 108070049] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108085692] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 108100221] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 108115879] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 108131086] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 108146321] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108161135] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 108176282] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 108191961] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 108207667] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 108222071] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108236843] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 108251420] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 108268458] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 108287795] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108308339] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 108333059] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 108359828] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 108377703] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 108396688] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 108410226] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 108422892] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EXIT THEN LOOP 99 ; TUL . CR +[Hera] [HADES][INFO ] [KRELTSC: 108463085] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108479717] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108494442] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 108511656] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 108531823] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108550528] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 108570079] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 108592639] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 108614588] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 108633451] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108652961] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 108671053] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 108691780] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 108712710] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 108730264] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108747164] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 108765674] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 108786449] ECW: w=0xbe9470c8 func=0xbe43fe9c 'UNLOOP' +[Hera] [HADES][INFO ] [KRELTSC: 108805778] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108821674] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 108846108] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 108867269] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 108880605] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EXIT THEN LOOP 99 ; TUL2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 108917037] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108936093] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 108953760] ECW: w=0xbe945ef8 func=0xbe43e7b4 '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 108973856] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 108992580] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109010907] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109032067] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109051052] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 109067133] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 109084967] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109103422] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109121903] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109138552] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 109155586] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 109171013] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109185754] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109200265] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109216644] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 109232060] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 109247785] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109263934] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109283264] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109303441] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 109321464] ECW: w=0xbe946ee8 func=0xbe43fda4 'I' +[Hera] [HADES][INFO ] [KRELTSC: 109341486] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109361285] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109379300] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109397542] ECW: w=0xbe945fe8 func=0xbe43e940 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 109412842] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109427505] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 109448296] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 109470879] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 109485430] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 109501465] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 109520618] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 109532038] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 109544398] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AGAIN ; TAG . CR +[Hera] [HADES][INFO ] [KRELTSC: 109586338] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109601935] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 109616708] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 109631596] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109647137] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109661793] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109677551] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109693184] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 109708559] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 109723375] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109738892] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109755033] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109776887] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109797629] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 109814558] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 109831492] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109846547] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 109861089] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 109876737] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 109896859] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 109918601] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 109932388] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN AGAIN ; CD . CR +[Hera] [HADES][INFO ] [KRELTSC: 109964442] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 109979979] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 109994734] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110023991] L8[TABLE]: Config 13 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 55,550000,10000,0,0,205,103,32,4096,1464,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 110064027] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110079230] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110095436] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110110924] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110125551] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110140282] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110155434] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110172310] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110187952] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110203367] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110219795] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110238561] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110255877] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110277038] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110294802] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110310883] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110326213] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110343037] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110358518] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110373131] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110388352] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110403714] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110419389] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110434955] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110450089] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110465750] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110480496] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110496226] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110512366] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110528090] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110542834] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110557609] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110573122] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110591102] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110608551] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110625121] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110644714] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110662737] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110678289] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110693787] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110709922] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110724635] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110740605] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110756253] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 110772437] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 110788430] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 110803532] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 110819707] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 110841237] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 110863566] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 110877160] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 110894213] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 110905704] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 110918129] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AGAIN ; TAG . CR +[Hera] [HADES][INFO ] [KRELTSC: 110956374] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 110972481] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 110987273] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111004913] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 111025913] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 111045206] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111065330] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111086332] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 111105169] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111124347] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 111145004] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 111164450] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111186460] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111211380] ECW: w=0xbe93a000 func=0xbe43c59c '1+' +[Hera] [HADES][INFO ] [KRELTSC: 111230231] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111248549] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 111267937] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 111289377] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111309352] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 111335505] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 111358577] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 111372821] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN AGAIN ; CD . CR +[Hera] [HADES][INFO ] [KRELTSC: 111410446] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 111430218] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 111447617] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111469704] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 111485438] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111505572] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111528292] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 111550309] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111567827] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 111588267] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111606272] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111621860] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 111636921] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111654484] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 111669731] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111686588] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111702698] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 111720701] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111737052] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 111753125] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111771300] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111788787] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 111803896] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111818922] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 111834885] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111850606] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111866553] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 111882835] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 111900594] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 111918683] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111938463] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 111960873] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 111981468] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 112001235] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 112022911] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112043173] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112063524] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 112083782] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 112102286] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 112121695] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112143610] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112163188] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 112181919] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 112200301] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 112219249] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112236280] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112252049] ECW: w=0xbe93a0f0 func=0xbe43c628 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 112267867] ECW: w=0xbe938200 func=0xbe44ff44 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 112282972] ECW: w=0xbe93ae10 func=0xbe449790 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 112297549] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112313403] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 112334357] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 112355153] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 112369772] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 112389354] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 112415621] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 112430778] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 112446333] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 1 TC +[Hera] [HADES][INFO ] [KRELTSC: 112529290] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 112547326] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 112562620] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 112577312] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112594401] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 112609416] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 112624383] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112639958] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 112656745] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 112670640] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 112685627] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 112707990] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 112721308] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 2 TC +[Hera] [HADES][INFO ] [KRELTSC: 112758576] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 112774305] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 112789261] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 112804001] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112819682] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 112834776] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 112849670] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 112864064] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112879716] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 112894976] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 112909648] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 112925174] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 20 [HADES][INFO ] [KRELTSC: 112941421] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 112955718] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 112970709] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 112993175] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 113006407] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 5 TC +[Hera] [HADES][INFO ] [KRELTSC: 113039723] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 113055006] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 113069901] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 113084868] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 113100540] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 113115480] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 113130337] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 113145190] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 113160820] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 113175529] ECW: w=0xbe9383e0 func=0xbe450114 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 113190580] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 113206100] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 113222308] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 113236151] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 113251454] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 113277062] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 113293862] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF 66 SWAP ENDCASE . CR ; 0 TC +[Hera] [HADES][INFO ] [KRELTSC: 113384332] L8[TABLE]: Config 14 → 0 regime=6 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 56,560000,10000,0,0,211,103,32,4096,1620,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 113447427] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 113469168] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 113488591] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 113505166] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 113522159] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 113538450] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 113553261] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 113568950] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 88 [HADES][INFO ] [KRELTSC: 113586026] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 113599964] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 113615355] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 113637224] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 113651884] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCASE . CR ; -1 TC +[Hera] [HADES][INFO ] [KRELTSC: 113700308] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 113726208] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 113744763] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 113759589] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 113777173] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 113792380] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 113808260] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 113823836] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 55 [HADES][INFO ] [KRELTSC: 113841800] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 113855745] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 113871030] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 113892179] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 113905657] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 113921379] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 113932840] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 113945112] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 1 TC +[Hera] [HADES][INFO ] [KRELTSC: 113985009] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114000351] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 114015285] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 114030390] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 114046129] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 114061617] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114082681] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 114102903] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 114125542] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 114145165] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 114163765] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 114184494] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 114197713] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 2 TC +[Hera] [HADES][INFO ] [KRELTSC: 114241831] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114261898] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 114283706] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 114302485] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 114322500] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114343048] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 114363135] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 114381065] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 114402550] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 114424312] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114446247] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 114470923] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 20 [HADES][INFO ] [KRELTSC: 114495180] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 114515888] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 114539892] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 114567758] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 114588666] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 5 TC +[Hera] [HADES][INFO ] [KRELTSC: 114647057] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114671167] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 114693608] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 114715683] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 114735356] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114753010] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 114774001] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 114791909] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 114808059] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114822859] ECW: w=0xbe9383e0 func=0xbe450114 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 114838741] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 114853775] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 114870117] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 114884172] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 114900134] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 114920764] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 114934414] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF 66 SWAP ENDCASE . CR ; 0 TC +[Hera] [HADES][INFO ] [KRELTSC: 114976340] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 114992825] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 115007934] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 115027843] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 115044204] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 115059656] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115074585] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 115091557] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 88 [HADES][INFO ] [KRELTSC: 115108929] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 115123596] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 115139177] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 115160818] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 115174325] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCASE . CR ; -1 TC +[Hera] [HADES][INFO ] [KRELTSC: 115209983] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115225247] ECW: w=0xbe9384d0 func=0xbe4501d8 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 115240254] ECW: w=0xbe93b1d0 func=0xbe4499ac '=' +[Hera] [HADES][INFO ] [KRELTSC: 115254795] ECW: w=0xbe945d10 func=0xbe43e47c '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 115270984] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 115285939] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115300719] ECW: w=0xbe945c18 func=0xbe43e3c0 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 115316565] ECW: w=0xbe93d750 func=0xbe44702c '.' +[Hera] 55 [HADES][INFO ] [KRELTSC: 115333321] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 115347349] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 115362335] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 115383322] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 115397194] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 115415713] === Control Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 115435929] +[Hera] === Testing Module: StarForth Words === +[Hera] [HADES][INFO ] [KRELTSC: 115452795] Running StarForth Words Tests (Module 17: StarForth Extensions)... +[Hera] [HADES][TEST ] [KRELTSC: 115474572] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 115495397] Testing word: ENTROPY@ +[Hera] [HADES][TEST ] [KRELTSC: 115507633] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 115520805] Running ENTROPY@.after_execution: : TESTWORD 1 1 + DROP ; TESTWORD ' TESTWORD ENTROPY@ . CR +[Hera] [HADES][INFO ] [KRELTSC: 115566980] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115583426] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115598187] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 115612799] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 115627768] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 115655223] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 115676529] Expected: Should show execution count > 0 +[Hera] [HADES][TEST ] [KRELTSC: 115692366] Running ENTROPY@.zero_initial: : NEWWORD ; ' NEWWORD ENTROPY@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 115717756] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 115740029] Expected: Should show 0 for unused word +[Hera] [HADES][TEST ] [KRELTSC: 115755505] Running ENTROPY@.multiple_calls: : ENTTEST 1 DROP ; ENTTEST ENTTEST ENTTEST ' ENTTEST ENTROPY@ . CR +[Hera] [HADES][INFO ] [KRELTSC: 115783972] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115798980] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 115814091] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 115829937] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115844858] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 115859726] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 115875235] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 115890008] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 115905501] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 115924103] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 115945300] Expected: Should increment with each call +[Hera] [HADES][TEST ] [KRELTSC: 115961466] Running ENTROPY@.null_addr: 0 ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 115979443] ENTROPY@: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 115993770] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116018080] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 116032914] Running ENTROPY@.empty_stack: ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 116048785] ENTROPY@: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 116062237] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116085814] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 116101058] ENTROPY@: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 116117972] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 116137371] Testing word: ENTROPY! +[Hera] [HADES][TEST ] [KRELTSC: 116149736] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 116162036] Running ENTROPY!.set_entropy: : ENTSET ; 42 ' ENTSET ENTROPY! ' ENTSET ENTROPY@ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 116201400] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116223197] Expected: Should set entropy to 42 +[Hera] [HADES][TEST ] [KRELTSC: 116237772] Running ENTROPY!.overwrite: : ENTOV ; 10 ' ENTOV ENTROPY! 20 ' ENTOV ENTROPY! ' ENTOV ENTROPY@ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 116274229] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116295576] Expected: Should overwrite previous value +[Hera] [HADES][TEST ] [KRELTSC: 116311466] Running ENTROPY!.zero_entropy: : ENTZERO ; 0 ' ENTZERO ENTROPY! ' ENTZERO ENTROPY@ . CR +[Hera] 0 [HADES][INFO ] [KRELTSC: 116354050] L8[TABLE]: Config 0 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 57,570000,10000,0,0,193,110,33,4096,1712,0,0,0,65536,0,0,65536,0,0 + +[Hera] [HADES][TEST ] [KRELTSC: 116395973] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116417231] Expected: Should set entropy to 0 +[Hera] [HADES][TEST ] [KRELTSC: 116431549] Running ENTROPY!.null_addr: 42 0 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 116450204] ENTROPY!: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 116465282] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116488390] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 116503353] Running ENTROPY!.one_arg: 42 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 116519871] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 116533405] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116556521] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 116571772] Running ENTROPY!.empty_stack: ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 116587313] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 116600512] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 116623590] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 116638818] ENTROPY!: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 116655706] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 116675421] Testing word: WORD-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 116688199] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 116700464] Running WORD-ENTROPY.display_all: 1 DUP DUP DUP DROP DROP DROP DROP WORD-ENTROPY +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 97 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 77 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 179 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6980 + +[Hera] Total words: 439 + +[Hera] Average executions per word: 15 + +[Hera] [HADES][TEST ] [KRELTSC: 117475167] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 117499834] Expected: Should display all word entropy stats +[Hera] [HADES][TEST ] [KRELTSC: 117518702] Running WORD-ENTROPY.after_execution: : WDENT 1 2 + DROP ; WDENT WDENT WORD-ENTROPY +[Hera] [HADES][INFO ] [KRELTSC: 117552360] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 117569680] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 117586613] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 117602483] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 117618291] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 117637249] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 117652632] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 117667383] ECW: w=0xbe939880 func=0xbe43bd20 '+' +[Hera] [HADES][INFO ] [KRELTSC: 117681776] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 117696849] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 100 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 77 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 182 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6997 + +[Hera] Total words: 440 + +[Hera] Average executions per word: 15 + +[Hera] [HADES][TEST ] [KRELTSC: 118371497] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 118394166] Expected: Should show defined word entropy +[Hera] [HADES][TEST ] [KRELTSC: 118410144] Running WORD-ENTROPY.stack_preserved: DEPTH WORD-ENTROPY DEPTH = . CR +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 100 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 78 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 182 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6999 + +[Hera] Total words: 440 + +[Hera] Average executions per word: 15 + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 119102502] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 119129133] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 119149420] WORD-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 119169849] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 119189077] Testing word: RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 119202451] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 119216227] Running RESET-ENTROPY.reset_defined: : RESETTEST 1 DROP ; RESETTEST RESETTEST RESETTEST RESET-ENTROPY +[Hera] [HADES][INFO ] [KRELTSC: 119256585] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119277969] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119297482] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 119321832] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119345005] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119364612] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 119385454] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119405679] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119425920] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 119458976] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 119486096] Expected: Should reset all entropy counters +[Hera] [HADES][TEST ] [KRELTSC: 119502072] Running RESET-ENTROPY.double_reset: RESET-ENTROPY RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 119526384] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 119548245] Expected: Should handle multiple resets +[Hera] [HADES][TEST ] [KRELTSC: 119563317] Running RESET-ENTROPY.after_usage: 1 DUP DUP DUP DROP DROP DROP DROP RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 119588947] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 119612014] Expected: Should reset after word usage +[Hera] [HADES][TEST ] [KRELTSC: 119627259] RESET-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 119645604] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 119664459] Testing word: TOP-WORDS +[Hera] [HADES][TEST ] [KRELTSC: 119676911] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 119689309] Running TOP-WORDS.display_top5: : TOPTEST 1 DROP ; TOPTEST TOPTEST TOPTEST TOPTEST TOPTEST 5 TOP-WORDS +[Hera] [HADES][INFO ] [KRELTSC: 119737787] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119758223] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119776075] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 119793510] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119808439] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119823620] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 119840926] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119855822] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119870718] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 119886354] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119904595] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119919487] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 119935596] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 119950546] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 119966461] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[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: 120037457] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120058888] Expected: Should display top 5 hot words +[Hera] [HADES][TEST ] [KRELTSC: 120075407] 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: 120135901] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120160418] Expected: Should display top 10 words +[Hera] [HADES][TEST ] [KRELTSC: 120179496] 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: 120227807] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120249781] Expected: Should handle display after reset +[Hera] [HADES][TEST ] [KRELTSC: 120266145] 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: 120304909] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120326500] Expected: Should display top 1 word +[Hera] [HADES][TEST ] [KRELTSC: 120342225] 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: 120379414] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120401764] Expected: Should handle large count +[Hera] [HADES][TEST ] [KRELTSC: 120416252] Running TOP-WORDS.zero_count: 0 TOP-WORDS +[Hera] TOP-WORDS: invalid count 0 + +[Hera] [HADES][TEST ] [KRELTSC: 120440591] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120464563] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 120478924] Running TOP-WORDS.negative_count: -5 TOP-WORDS +[Hera] TOP-WORDS: invalid count -5 + +[Hera] [HADES][TEST ] [KRELTSC: 120504643] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120528005] Expected: Should handle negative count +[Hera] [HADES][TEST ] [KRELTSC: 120543784] Running TOP-WORDS.empty_stack: TOP-WORDS +[Hera] [HADES][ERROR] [KRELTSC: 120565229] TOP-WORDS: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 120580316] Expected error occurred +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120607687] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 120627394] TOP-WORDS: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 120649079] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 120669566] Testing word: (- +[Hera] [HADES][TEST ] [KRELTSC: 120680515] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 120693231] Running (-.comment_line: (- This is a comment +[Hera] 1 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 120728883] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 120743023] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120764032] Expected: Should ignore rest of line +[Hera] [HADES][TEST ] [KRELTSC: 120781050] Running (-.mid_line: 1 (- comment here +[Hera] 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 120803389] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 120815897] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120837030] Expected: Should work mid-expression +[Hera] [HADES][TEST ] [KRELTSC: 120851761] Running (-.no_stack_effect: DEPTH (- comment +[Hera] DEPTH = . CR +[Hera] [HADES][WARN ] [KRELTSC: 120871858] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 120884345] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120905096] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 120919334] Running (-.multiple: 1 (- first +[Hera] 2 (- second +[Hera] + . CR +[Hera] [HADES][WARN ] [KRELTSC: 120940128] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 120952852] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 120973595] Expected: Should handle multiple comments +[Hera] [HADES][TEST ] [KRELTSC: 120989314] (-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121006435] === StarForth Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 121031686] +[Hera] === Testing Module: ACL Words === +[Hera] [HADES][INFO ] [KRELTSC: 121055557] Running ACL Words Tests (Module 24)... +[Hera] [HADES][INFO ] [KRELTSC: 121146649] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 121165297] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][WARN ] [KRELTSC: 121196485] ACL: denied '__acl_deny_test__' +[Hera] [HADES][INFO ] [KRELTSC: 121227094] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 121244095] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 121259364] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 121277091] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 121292289] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 121307946] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 121324081] ECW: w=0xbe945588 func=0xbe441c50 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 121339853] ECW: w=0xbe938110 func=0xbe44febc 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 121354927] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 121381467] SKIP: STRICT mode test (ACL.4th not loaded) +[Hera] [HADES][INFO ] [KRELTSC: 121403557] SKIP: ACL-TTL-COMPUTE (ACL.4th not loaded) +[Hera] [HADES][WARN ] [KRELTSC: 121424582] vm_create_word: cannot shadow pinned word '__acl_shadow_target__' +[Hera] [HADES][TEST ] [KRELTSC: 121456987] === ACL Words Summary: 17 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 121480872] +[Hera] === Testing Module: Mama FORTH Words === +[Hera] [HADES][INFO ] [KRELTSC: 121499261] Running Mama FORTH Words Tests (Capsule System M7.1)... +[Hera] [HADES][TEST ] [KRELTSC: 121525220] Testing word: CAPSULE-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 121540488] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121553810] CAPSULE-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121572523] Testing word: CAPSULE@ +[Hera] [HADES][TEST ] [KRELTSC: 121585963] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121598242] CAPSULE@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121614491] Testing word: CAPSULE-FLAGS@ +[Hera] [HADES][TEST ] [KRELTSC: 121628058] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121640522] CAPSULE-FLAGS@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121660144] Testing word: CAPSULE-LEN@ +[Hera] [HADES][TEST ] [KRELTSC: 121675415] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121689189] CAPSULE-LEN@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121708431] Testing word: CAPSULE-HASH@ +[Hera] [HADES][TEST ] [KRELTSC: 121721089] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121733859] CAPSULE-HASH@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121750833] Testing word: MAMA-VM-ID +[Hera] [HADES][TEST ] [KRELTSC: 121763258] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121777772] MAMA-VM-ID: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121796792] Testing word: VM-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 121810596] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121825031] VM-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121846045] Testing word: CAPSULE-BIRTH +[Hera] [HADES][TEST ] [KRELTSC: 121860588] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121874789] CAPSULE-BIRTH: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121896702] Testing word: CAPSULE-RUN +[Hera] [HADES][TEST ] [KRELTSC: 121910961] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121925178] CAPSULE-RUN: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 121947680] Testing word: CAPSULE-TEST +[Hera] [HADES][TEST ] [KRELTSC: 121966945] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 121984508] CAPSULE-TEST: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 122010960] === Mama FORTH Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 122043115] FINAL TEST SUMMARY: +[Hera] [HADES][INFO ] [KRELTSC: 122061019] Total tests run: 1003 +[Hera] [HADES][INFO ] [KRELTSC: 122080166] Passed: 965 +[Hera] [HADES][INFO ] [KRELTSC: 122098628] Failed: 0 +[Hera] [HADES][INFO ] [KRELTSC: 122116747] Stubs (not yet implemented): 38 +[Hera] [HADES][INFO ] [KRELTSC: 122137243] Errors: 0 +[Hera] [HADES][INFO ] [KRELTSC: 122157537] ALL IMPLEMENTED TESTS PASSED! +[Hera] [HADES][INFO ] [KRELTSC: 122178984] Contract checks (A4'/A1): all passed +[Hera] [HADES][INFO ] [KRELTSC: 122199762] ============================================== +[Hera] PARITY:M7.1a word_count=448 here=0x00000000000000d8 latest_id=612 hash=0x681c6187ac3a4539 +[Hera] PARITY:OK +[Hera] POST: PASSED +[Hera] [HAL][exec] regions frozen: +[Hera] kernel.text: [0x00000000be42b658, 0x00000000be42b65c) +[Hera] VM: parity bootstrap complete +[Hera] [HADES][INFO ] [KRELTSC: 123094508] blk: raw device LBN 2048..3071 (1024 blocks) +[Hera] PCI: init... +[Hera] virtio-blk: found device +[Hera] Artemis: virtio-blk attached +[Hera] [HADES][INFO ] [KRELTSC: 123517629] blk: disk 'StarForth Volume' v2 LBN 3072..26073 (23002 user blocks); devblocks=7680 bam=1 base=2 total=23034 free=23002 +[Hera] Init: Mama birth... +[Hera] [HADES][INFO ] [KRELTSC: 123775081] exec_block: block 2057 len 265 +[Hera] [HADES][INFO ] [KRELTSC: 123861262] exec_block: block 2049 len 177 +[Hera] [HADES][INFO ] [KRELTSC: 123898287] EXEC: capsule 'lib.4th' +[Hera] [HADES][INFO ] [KRELTSC: 124016297] exec_block: block 4050 len 440 +[Hera] [HADES][INFO ] [KRELTSC: 124082568] exec_block: block 2050 len 37 +[Hera] [HADES][INFO ] [KRELTSC: 124100259] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124116042] ECW: w=0xbe96a740 func=0xbe425c6c '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 124131655] ECW: w=0xbe940738 func=0xbe448db8 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 124167067] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124181499] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 124200108] ECW: w=0xbe940738 func=0xbe448db8 '(do-string)' +[Hera] LithosAnanke — FORTH-79 bare-metal kernel[HADES][INFO ] [KRELTSC: 124231979] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124249865] ECW: w=0xbe940738 func=0xbe448db8 '(do-string)' +[Hera] Stadium step one: Hera alone[HADES][INFO ] [KRELTSC: 124277267] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124294246] ECW: w=0xbe96a740 func=0xbe425c6c '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 124312010] ECW: w=0xbe940738 func=0xbe448db8 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 124338464] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124353001] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 124367910] ECW: w=0xbe940738 func=0xbe448db8 '(do-string)' +[Hera] Hera [live][HADES][INFO ] [KRELTSC: 124386788] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124402390] ECW: w=0xbe96a740 func=0xbe425c6c '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 124417211] ECW: w=0xbe940738 func=0xbe448db8 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 124441550] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124470570] L8[TABLE]: Config 14 → 15 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 58,580000,10000,0,0,190,5,67,4096,1775,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 124511147] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 124528284] ECW: w=0xbe940190 func=0xbe448a90 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 124543339] ECW: w=0xbe9471b8 func=0xbe43ff48 'EXIT' +[Hera] PARITY:MAMA_INIT capsule_id=0xb4c4b5559146a3bd mode=m capsule_hash=0xb4c4b5559146a3bd dict_hash=0x3d4e1daf289da94f +[Hera] Init: Mama birth OK +[Hera] ACL: CAPSULE-BIRTH pinned STRICT +[Hera] ACL: BIRTH pinned STRICT +[Hera] Starting heartbeat... +[Hera] Heartbeat running. +[Hera] Stadium words: promotions=354 evictions=0 +[Hera] Stadium conservation: resident_sum=65536 reservoir=0 sum=65536 (Q48_ONE=65536) +[Hera] Heartbeat: 4 ticks, trust=0x00010000, variance=0x00000000 +[Hera] LithosAnanke v1.5.4 +[Hera] StarForth Version 3.1.0 + +[Hera] StarForth Emergency CLI +[Hera] FORTH-79 interpreter — type BYE or power off to exit + +[Hera] ok> \ No newline at end of file diff --git a/logs/20260805-131030/riscv64/qemu-riscv64-20260805-131030.log b/logs/20260805-131030/riscv64/qemu-riscv64-20260805-131030.log new file mode 100644 index 0000000..fc3932f --- /dev/null +++ b/logs/20260805-131030/riscv64/qemu-riscv64-20260805-131030.log @@ -0,0 +1,10415 @@ + +OpenSBI v1.8 + ____ _____ ____ _____ + / __ \ / ____| _ \_ _| + | | | |_ __ ___ _ __ | (___ | |_) || | + | | | | '_ \ / _ \ '_ \ \___ \| _ < | | + | |__| | |_) | __/ | | |____) | |_) || |_ + \____/| .__/ \___|_| |_|_____/|____/_____| + | | + |_| + +Platform Name : riscv-virtio,qemu +Platform Features : medeleg +Platform HART Count : 1 +Platform HART Protection : pmp +Platform IPI Device : aclint-mswi +Platform Timer Device : aclint-mtimer @ 10000000Hz +Platform Console Device : uart8250 +Platform HSM Device : --- +Platform PMU Device : --- +Platform Reboot Device : syscon-reboot +Platform Shutdown Device : syscon-poweroff +Platform Suspend Device : --- +Platform CPPC Device : --- +Firmware Base : 0x80000000 +Firmware Size : 321 KB +Firmware RW Offset : 0x40000 +Firmware RW Size : 65 KB +Firmware Heap Offset : 0x47000 +Firmware Heap Size : 37 KB (total), 0 KB (reserved), 12 KB (used), 23 KB (free) +Firmware Scratch Size : 4096 B (total), 1464 B (used), 2632 B (free) +Runtime SBI Version : 3.0 +Standard SBI Extensions : ipi,pmu,srst,sse,hsm,rfnc,fwft,time,base,legacy,dbcn,dbtr +Experimental SBI Extensions : none + +Domain0 Name : root +Domain0 Boot HART : 0 +Domain0 HARTs : 0* +Domain0 Region00 : 0x0000000080040000-0x000000008005ffff M: (F,R,W) S/U: () +Domain0 Region01 : 0x0000000080000000-0x000000008003ffff M: (F,R,X) S/U: () +Domain0 Region02 : 0x0000000000100000-0x0000000000100fff M: (I,R,W) S/U: (R,W) +Domain0 Region03 : 0x0000000010000000-0x0000000010000fff M: (I,R,W) S/U: (R,W) +Domain0 Region04 : 0x0000000002000000-0x000000000200ffff M: (I,R,W) S/U: () +Domain0 Region05 : 0x000000000c400000-0x000000000c5fffff M: (I,R,W) S/U: (R,W) +Domain0 Region06 : 0x000000000c000000-0x000000000c3fffff M: (I,R,W) S/U: (R,W) +Domain0 Region07 : 0x0000000000000000-0xffffffffffffffff M: () S/U: (R,W,X) +Domain0 Next Address : 0x0000000020000000 +Domain0 Next Arg1 : 0x00000000bfe00000 +Domain0 Next Mode : S-mode +Domain0 SysReset : yes +Domain0 SysSuspend : yes + +Boot HART ID : 0 +Boot HART Domain : root +Boot HART Priv Version : v1.12 +Boot HART Base ISA : rv64imafdch +Boot HART ISA Extensions : sstc,zicntr,zihpm,zicboz,zicbom,sdtrig,svadu +Boot HART PMP Count : 16 +Boot HART PMP Granularity : 2 bits +Boot HART PMP Address Bits : 54 +Boot HART MHPM Info : 16 (0x0007fff8) +Boot HART Debug Triggers : 2 triggers +Boot HART MIDELEG : 0x0000000000001666 +Boot HART MEDELEG : 0x0000000000f4b509 +[=3hRISC-V EDK2 firmware version 2025.11-3ubuntu7 +Press ESCAPE within 5 seconds for boot options ERROR: C40000002:V03051002 I0 6D33944A-EC75-4855-A54D-809C75241F6C 83FFF850 +BdsDxe: failed to load Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x1,0x0): Not Found +[=3hStarKernel UEFI Loader +Loading kernel from ESP... +[CKPT 001] Entered efi_main - ConOut live +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: protocol not found +[CKPT 007] GOP: protocol not found +[CKPT 008] About to enter ExitBootServices retry loop +Calling kernel_main (monolithic)... + + + _____ _ _ __ _ + / ____| | | |/ / | | + | (___ | |_ __ _ _ __| ' / ___ _ __ _ __ ___| | + \___ \| __/ _` | '__| < / _ \ '__| '_ \ / _ \ | + ____) | || (_| | | | . \ __/ | | | | | __/ | + |_____/ \__\__,_|_| |_|\_\___|_| |_| |_|\___|_| + +LithosAnanke v1.5.4 +Architecture: riscv64 +Build: Aug 5 2026 13:10:15 + +UEFI BootServices: EXITED + +=== StarKernel Boot Information === +Memory map entries: 76 +Total memory: 1023 MB +Usable memory: 978 MB +=================================== + +PMM initialized. +PMM statistics: + Total pages: 251174 + Free pages : 250523 + Used pages : 651 + Total MB : 981 + Free MB : 978 + Used MB : 2 + +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: init done + +Timer: init... +Timer: RISC-V time CSR @ 10000000 Hz (FALLBACK, no devicetree) +Timer: init done + +Kernel heap initialized. +Heap statistics: + Total bytes: 536870872 + Free bytes: 536870872 + Used bytes: 0 + Peak bytes: 0 + +Heartbeat: init... +Heartbeat: init done +Kernel initialization complete. +Boot successful! + +Stadium: 76117 cells (4757 KB) +VM: bootstrap parity... +VM arena allocated: 0x0000000080267000 + (5 MB) +[HADES][INFO ] [KRELTSC: 0] Registering FORTH-79 Standard word set... +[HADES][INFO ] [KRELTSC: 3745812] Registering FORTH-79 arithmetic words... +[HADES][INFO ] [KRELTSC: 20706357] FORTH-79 Standard word set registration complete +[Hera] POST: Running comprehensive test suite... +[Hera] [HADES][INFO ] [KRELTSC: 40326594] Starting comprehensive FORTH-79 modular test suite... +[Hera] [HADES][INFO ] [KRELTSC: 40992693] ============================================== +[Hera] [HADES][INFO ] [KRELTSC: 41731998] +[Hera] === Testing Module: Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 42628236] Running Stack Words Tests (Module 1: Foundation)... +[Hera] [HADES][TEST ] [KRELTSC: 43350699] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 44090004] Testing word: DUP +[Hera] [HADES][TEST ] [KRELTSC: 44524893] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 45281880] Running DUP.basic: 5 DUP . . CR +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 51918804] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 52934889] Expected: Should print: 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 56053368] Running DUP.zero: 0 DUP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 56840490] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 57627486] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 59369352] Running DUP.negative: -42 DUP . . CR +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 60227685] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 61008843] Expected: Should print: -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 62752515] Running DUP.max_int: 2147483647 DUP . . CR +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 63569625] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 64403787] Expected: Should duplicate max int +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 66643563] Running DUP.min_int: -2147483648 DUP . . CR +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 67528461] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 68343450] Expected: Should duplicate min int +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 70658070] Running DUP.empty_stack: DUP +[Hera] [HADES][ERROR] [KRELTSC: 71307411] DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 71824032] Expected error occurred +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 72711093] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 73500042] DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 74330760] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 75117609] Testing word: DROP +[Hera] [HADES][TEST ] [KRELTSC: 75630408] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 76197513] Running DROP.basic: 5 7 DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 77383152] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 78327648] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 80122602] Running DROP.zero: 42 0 DROP . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 80764278] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 81584832] Expected: Should drop zero, print 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 83167161] Running DROP.negative: 10 -5 DROP . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 83901216] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 84685671] Expected: Should drop negative, print 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 86300697] Running DROP.double_drop: 1 2 3 DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 87019233] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 87821496] Expected: Should print: 1 +[Hera] 1 +[Hera] [HADES][INFO ] [KRELTSC: 99209670] L8[TABLE]: Config 17 → 0 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] tick_number,elapsed_ns,tick_interval_ns,cache_hits_delta,bucket_hits_delta,word_executions_delta,hot_word_count,avg_word_heat_q48,window_width,actual_window_size,predicted_label_hits,jitter_bits,apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,hera_heat_q48,hermes_heat_q48,artemis_heat_q48 +[Hera] [HADES][DOE ] 1,10000,10000,0,0,183,4,45,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 106124823] Running DROP.triple_drop: 1 2 3 4 DROP DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 106938888] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 107751882] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 109571847] Running DROP.sequential: 5 DROP 6 DROP 7 . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 110341791] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 111154596] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 112712775] Running DROP.single_item: 99 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 113636628] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 114453003] Expected: Should empty stack, depth=0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 116027289] Running DROP.depth_change: DEPTH 1 2 DROP DEPTH SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 117130818] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 117927327] Expected: Should change depth by 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 119715288] Running DROP.preserve_depth: DEPTH 5 6 DROP DROP DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 120761865] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 121559991] Expected: Should preserve net depth +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 123496296] L8[TABLE]: Config 0 → 1 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 2,20000,10000,0,0,173,5,44,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 125225058] Running DROP.max_int: 2147483647 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 125960436] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 126753480] Expected: Should drop max int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 128334024] Running DROP.min_int: -2147483648 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 129168438] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 129971079] Expected: Should drop min int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 131530077] Running DROP.with_dup: 5 DUP DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 132216966] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 133011102] Expected: Should duplicate then drop +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 134595552] Running DROP.with_swap: 1 2 SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 135301719] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 136117170] Expected: Should swap then drop +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 137771949] Running DROP.complex: 1 2 3 ROT DROP SWAP DROP . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 138986694] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 139811259] Expected: Should handle complex sequence +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 141548064] Running DROP.empty_stack: DROP +[Hera] [HADES][ERROR] [KRELTSC: 142128714] DROP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 142607031] Expected error occurred +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 143475402] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 144082722] DROP: 15 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 144740589] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 145436340] Testing word: SWAP +[Hera] [HADES][TEST ] [KRELTSC: 145892376] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 146382243] Running SWAP.basic: 5 7 SWAP . . CR +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 147167811] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 147983220] Expected: Should print: 7 5 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 149651229] Running SWAP.same_values: 42 42 SWAP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 150590958] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 151530897] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 153405714] L8[TABLE]: Config 1 → 2 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 3,30000,10000,0,0,184,6,60,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 155198589] Running SWAP.zero_nonzero: 0 99 SWAP . . CR +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 155980587] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 156872772] Expected: Should print: 99 0 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 158614932] Running SWAP.negative: -5 10 SWAP . . CR +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 159396510] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 160291404] Expected: Should print: 10 -5 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 162082431] Running SWAP.one_item: 42 SWAP +[Hera] [HADES][ERROR] [KRELTSC: 162748593] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 163397871] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 164337978] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 164984379] Running SWAP.empty_stack: SWAP +[Hera] [HADES][ERROR] [KRELTSC: 165569838] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 166177557] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 167169723] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 167812722] SWAP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 168461202] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 169236438] Testing word: OVER +[Hera] [HADES][TEST ] [KRELTSC: 169703709] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 170212833] Running OVER.basic: 5 7 OVER . . . CR +[Hera] 5 7 5 +[Hera] [HADES][TEST ] [KRELTSC: 171256386] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 172119234] 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: 173940438] Running OVER.zeros: 0 0 OVER . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 174757758] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 175640556] 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: 177434565] Running OVER.mixed: -1 42 OVER . . . CR +[Hera] -1 42 -1 +[Hera] [HADES][TEST ] [KRELTSC: 178222464] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 179076471] 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: 180980898] Running OVER.one_item: 42 OVER +[Hera] [HADES][ERROR] [KRELTSC: 181665099] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 182329728] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 183195474] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 183792441] Running OVER.empty_stack: OVER +[Hera] [HADES][ERROR] [KRELTSC: 184335249] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 184944858] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 185833830] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 186429054] OVER: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 187026483] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 187719231] Testing word: ROT +[Hera] [HADES][TEST ] [KRELTSC: 188165376] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 188635041] Running ROT.basic: 1 2 3 ROT . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 189386295] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 190345176] 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: 192364326] Running ROT.zeros: 0 0 0 ROT . . . CR +[Hera] [HADES][INFO ] [KRELTSC: 193197312] L8[TABLE]: Config 2 → 3 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 4,40000,10000,0,0,174,8,71,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 194841948] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 195630939] 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: 197466108] Running ROT.mixed: -1 0 1 ROT . . . CR +[Hera] -1 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 198184644] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 198997491] 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: 200761218] Running ROT.two_items: 1 2 ROT +[Hera] [HADES][ERROR] [KRELTSC: 201379668] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 201960045] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 202841919] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 203426013] Running ROT.one_item: 42 ROT +[Hera] [HADES][ERROR] [KRELTSC: 203943096] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 204494850] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 205376745] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 205952187] Running ROT.empty_stack: ROT +[Hera] [HADES][ERROR] [KRELTSC: 206476536] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 207052965] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 207914847] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 208492788] ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 209098764] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 209798547] Testing word: DEPTH +[Hera] [HADES][TEST ] [KRELTSC: 210235473] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 210704823] Running DEPTH.empty: DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 211442406] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 212240616] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 213719037] Running DEPTH.one_item: 42 DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 214384338] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 215196366] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 216726195] Running DEPTH.multiple: 1 2 3 DEPTH . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 217454181] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 218251362] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 219771489] DEPTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 220379880] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 221072397] Testing word: PICK +[Hera] [HADES][TEST ] [KRELTSC: 221520537] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 222013953] Running PICK.pick_0: 1 2 3 0 PICK . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 222952359] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 223771632] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 225339933] Running PICK.pick_1: 1 2 3 1 PICK . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 226040640] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 226837128] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][INFO ] [KRELTSC: 228334575] L8[TABLE]: Config 3 → 4 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 5,50000,10000,0,0,150,9,78,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 230035449] Running PICK.pick_2: 1 2 3 2 PICK . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 230715513] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 231506982] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 233039478] PICK: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 233661267] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 234398346] Testing word: ROLL +[Hera] [HADES][TEST ] [KRELTSC: 234830232] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 235302963] Running ROLL.roll_1: 1 2 3 1 ROLL . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 236375727] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 237179292] 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: 238942725] Running ROLL.roll_2: 1 2 3 2 ROLL . . . CR +[Hera] 2 3 1 +[Hera] [HADES][TEST ] [KRELTSC: 239683542] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 240494247] 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: 242225886] ROLL: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 242915967] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 243639543] Testing word: ?DUP +[Hera] [HADES][TEST ] [KRELTSC: 244070337] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 244556466] Running ?DUP.nonzero: 42 ?DUP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 245478513] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 246272061] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 247944102] Running ?DUP.negative: -5 ?DUP . . CR +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 248656485] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 249454464] Expected: Should print: -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 251108298] Running ?DUP.zero: 0 ?DUP DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 251805981] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 252613557] Expected: Should not dup: depth 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 254189985] Running ?DUP.empty_stack: ?DUP +[Hera] [HADES][ERROR] [KRELTSC: 254811228] ?DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 255362310] Expected error occurred +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 256238745] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 256863621] ?DUP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 257497422] â–¶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 258209889] Testing word: -ROT +[Hera] [HADES][TEST ] [KRELTSC: 258669789] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 259191912] Running -ROT.basic: 1 2 3 -ROT . . . CR +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 260212827] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 261009042] Expected: Should print: 1 3 2 +[Hera] [HADES][INFO ] [KRELTSC: 261669933] L8[TABLE]: Config 4 → 5 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 6,60000,10000,0,0,159,11,73,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 264344052] Running -ROT.zeros: 0 0 0 -ROT . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 265097175] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 265903743] 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: 267626163] Running -ROT.roundtrip: 1 2 3 -ROT ROT . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 268407027] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 269195346] 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: 271015521] Running -ROT.two_items: 1 2 -ROT +[Hera] [HADES][ERROR] [KRELTSC: 271622022] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 272276403] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 273145404] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 273784203] Running -ROT.empty_stack: -ROT +[Hera] [HADES][ERROR] [KRELTSC: 274322601] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 274880550] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 275740899] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 276337194] -ROT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 277023390] === Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 277820256] +[Hera] === Testing Module: Return Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 278490198] Running Return Stack Words Tests (Module 2)... +[Hera] [HADES][TEST ] [KRELTSC: 279158964] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 279919374] Testing word: >R +[Hera] [HADES][TEST ] [KRELTSC: 280357182] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 280825671] Running >R.basic: 42 >R R@ . R> . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 281957676] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 282759960] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 284552898] Running >R.zero: 0 >R R@ . R> . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 285341322] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 286117398] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 287839692] Running >R.negative: -123 >R R@ . R> . CR +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 288625029] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 289407972] Expected: Should print: -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 [HADES][INFO ] [KRELTSC: 290885091] L8[TABLE]: Config 5 → 6 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 7,70000,10000,0,0,188,15,71,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 293084232] Running >R.multiple: 1 2 >R >R R@ . R> . R@ . R> . CR +[Hera] 1 1 2 2 +[Hera] [HADES][TEST ] [KRELTSC: 293964153] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 294760095] 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: 296784285] Running >R.empty_stack: >R +[Hera] [HADES][ERROR] [KRELTSC: 297359832] >R: DSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 297810660] Expected error occurred +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 298668846] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 299277930] >R: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 299978133] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 300721176] Testing word: R> +[Hera] [HADES][TEST ] [KRELTSC: 301167930] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 301709856] Running R>.basic: 42 >R R> . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 302593242] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 303397017] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 304989573] Running R>.lifo_order: 1 2 >R >R R> . R> . CR +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 305772054] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 306553527] Expected: Should print: 2 1 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 308316939] Running R>.empty_rstack: R> +[Hera] [HADES][ERROR] [KRELTSC: 308908110] R>: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 309404970] Expected error occurred +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 310308810] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 310953615] R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 311595396] â–¶ Testing module: src/test_runner/modules/return_stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 312349170] Testing word: R@ +[Hera] [HADES][TEST ] [KRELTSC: 312785655] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 313298601] Running R@.basic: 42 >R R@ . R> DROP CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 314248872] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 315082929] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 317096661] Running R@.non_destructive: 99 >R R@ R@ = . R> DROP CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 318161172] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 319023495] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 320368209] L8[TABLE]: Config 6 → 7 regime=2 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 8,80000,10000,0,0,214,16,83,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 322669830] Running R@.empty_rstack: R@ +[Hera] [HADES][ERROR] [KRELTSC: 323297247] R@: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 323750238] Expected error occurred +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 324723063] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 325353945] R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 326045979] === Return Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 326998371] +[Hera] === Testing Module: Memory Words === +[Hera] [HADES][INFO ] [KRELTSC: 327669762] Running Memory Words Tests (Module 3)... +[Hera] [HADES][TEST ] [KRELTSC: 328362783] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 329154231] Testing word: ! +[Hera] [HADES][TEST ] [KRELTSC: 329570283] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 330096480] Running !.basic: 42 HERE ! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 331714950] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 332565849] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 334307715] Running !.zero: 0 HERE ! HERE @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 335052942] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 335841534] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 337490265] Running !.negative: -999 HERE ! HERE @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 338270877] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 339085866] Expected: Should print: -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 340858119] Running !.overwrite: 111 HERE ! 222 HERE ! HERE @ . CR +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 341706036] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 342478437] Expected: Should print: 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 344248212] Running !.max_int: 2147483647 HERE ! HERE @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 345070320] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 345852822] Expected: Should store max int +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 347779026] Running !.min_int: -2147483648 HERE ! HERE @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 348605859] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 349469295] Expected: Should store min int +[Hera] [HADES][INFO ] [KRELTSC: 350136255] L8[TABLE]: Config 7 → 8 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 9,90000,10000,0,0,216,19,82,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 353255574] Running !.empty_stack: ! +[Hera] [HADES][TEST ] [KRELTSC: 353859891] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 354720975] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 355300743] Running !.one_item: 42 ! +[Hera] [HADES][TEST ] [KRELTSC: 355815369] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 356666583] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 357270123] !: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 357937671] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 358650747] Testing word: @ +[Hera] [HADES][TEST ] [KRELTSC: 359089248] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 359563365] Running @.after_store: 123 HERE ! HERE @ . CR +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 360413004] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 361186098] Expected: Should print: 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 362884767] Running @.multiple_reads: 456 HERE ! HERE @ HERE @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 363717732] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 364506744] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 366262029] Running @.empty_stack: @ +[Hera] [HADES][TEST ] [KRELTSC: 366783774] Expected error occurred +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 367631082] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 368233971] @: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 368809791] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 369533955] Testing word: C! +[Hera] [HADES][TEST ] [KRELTSC: 369968067] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 370488258] Running C!.basic: 65 HERE C! HERE C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 371664699] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 372465639] Expected: Should print: 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 374133795] Running C!.zero: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 374862369] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 375645900] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 377245890] Running C!.high_byte: 255 HERE C! HERE C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 377999916] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 378794703] Expected: Should print: 255 +[Hera] 255 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 380132991] L8[TABLE]: Config 8 → 9 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 10,100000,10000,0,0,222,21,84,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 382066713] Running C!.truncation: 256 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 382847766] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 383637114] Expected: Should print: 0 (truncated) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 385325031] C!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 385918512] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 386620353] Testing word: C@ +[Hera] [HADES][TEST ] [KRELTSC: 387054738] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 387524676] Running C@.after_cstore: 97 HERE C! HERE C@ . CR +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 388280193] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 389079663] Expected: Should print: 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 390736752] Running C@.zero_byte: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 391549452] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 392336952] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 393950907] C@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 394538739] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 395241630] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 395672025] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 396163236] Running ,.basic: 42 , HERE 8 - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 397133058] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 397930407] Expected: Should compile 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 399590814] Running ,.negative: -999 , HERE 8 - @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 400333227] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 401110101] Expected: Should compile -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 403007850] ,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 403613742] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 404372577] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 404799990] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 405271524] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 406331919] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 407117046] Expected: Should compile byte 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][INFO ] [KRELTSC: 408132711] L8[TABLE]: Config 9 → 10 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 11,110000,10000,0,0,207,23,86,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 410475345] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 411187749] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 411965148] Expected: Should compile byte 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 413667345] C,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 414279642] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 414983709] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 415410282] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 415877217] Running 2,.roundtrip: 12345 67890 2, HERE 16 - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 417205068] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 417986835] Expected: Should print: 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 420094983] Running 2,.save-and-verify: 12345 67890 2, HERE 16 - 2@ 67890 = SWAP 12345 = AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 421290366] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 422082801] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 423982062] 2,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 424569957] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 425286498] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 425725944] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 426195903] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 426876975] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 427673442] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 429247854] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 SWAP / +[Hera] [HADES][INFO ] [KRELTSC: 430126620] L8[TABLE]: Config 10 → 11 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 12,120000,10000,0,0,189,26,83,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 432060573] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 432873441] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes on 64-bit) +[Hera] [HADES][TEST ] [KRELTSC: 434665602] HERE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 435288945] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 436000845] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 436444239] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 436936185] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 437974782] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 438778284] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 440755980] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 441655515] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 442459815] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 444119382] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 444924270] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 445745895] Expected: Should print: -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 447426903] ALLOT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 448096215] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 448802424] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 449225994] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 449696940] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 450526020] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 451322928] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 452957358] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 453715458] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 454516986] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 [HADES][INFO ] [KRELTSC: 455412636] L8[TABLE]: Config 11 → 12 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 13,130000,10000,0,0,221,28,80,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 457656696] PAD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 458264814] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 458965311] Testing word: +! +[Hera] [HADES][TEST ] [KRELTSC: 459384513] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 459855459] Running +!.basic: 10 HERE ! 5 HERE +! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 460859847] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 461643189] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 463414854] Running +!.by_zero: 42 HERE ! 0 HERE +! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 464204895] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 465000312] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 466737075] Running +!.negative: 10 HERE ! -3 HERE +! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 467561514] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 468342189] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 470033193] Running +!.accumulate: 0 HERE ! 1 HERE +! 2 HERE +! 3 HERE +! HERE @ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 471003981] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 471791460] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][INFO ] [KRELTSC: 473063577] L8[TABLE]: Config 12 → 13 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 14,140000,10000,0,0,204,29,83,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 475550229] Running +!.empty_stack: +! +[Hera] [HADES][TEST ] [KRELTSC: 476130081] Expected error occurred +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 476988288] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 477592815] +!: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 478184595] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 478885134] Testing word: -! +[Hera] [HADES][TEST ] [KRELTSC: 479320065] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 479788785] Running -!.basic: 10 HERE ! 3 HERE -! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 480787041] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 481587351] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 483283416] Running -!.by_zero: 42 HERE ! 0 HERE -! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 484092735] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 484882314] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 486616599] Running -!.negative: 10 HERE ! -5 HERE -! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 487422138] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 488223498] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 489968556] Running -!.empty_stack: -! +[Hera] [HADES][TEST ] [KRELTSC: 490503867] Expected error occurred +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 491369004] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 491967357] -!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 492552417] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 493253355] Testing word: 2! +[Hera] [HADES][TEST ] [KRELTSC: 493673586] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 494189052] Running 2!.basic: 11 22 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 495369630] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 496198773] Expected: Should print: 22 11 +[Hera] 11 22 +[Hera] 11 22 [HADES][INFO ] [KRELTSC: 497286216] L8[TABLE]: Config 13 → 14 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 15,150000,10000,0,0,203,30,82,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 11 22 +[Hera] 11 22 +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 499812054] Running 2!.zeros: 0 0 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 500671731] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 501462213] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 503340117] Running 2!.negative: -1 -2 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 504220269] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 505017387] Expected: Should print: -2 -1 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 506969106] Running 2!.empty_stack: 2! +[Hera] [HADES][TEST ] [KRELTSC: 507525942] Expected error occurred +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 508381356] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 508977777] 2!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 509561976] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 510267723] Testing word: FILL +[Hera] [HADES][TEST ] [KRELTSC: 510713175] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 511183722] Running FILL.basic: HERE 8 65 FILL HERE C@ . HERE 1+ C@ . CR +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 512358777] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 513300039] Expected: Should print: 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 [HADES][INFO ] [KRELTSC: 514999086] L8[TABLE]: Config 14 → 15 regime=2 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 16,160000,10000,0,0,201,32,83,567,567,0,0,0,65536,0,0,65536,0,0 + +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 516817035] Running FILL.zero_n: HERE 0 88 FILL +[Hera] [HADES][TEST ] [KRELTSC: 517454679] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 518256123] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 519391929] Running FILL.zero_byte: HERE 4 0 FILL HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 520183104] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 520973250] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 522605559] Running FILL.empty_stack: FILL +[Hera] [HADES][TEST ] [KRELTSC: 523239549] Expected error occurred +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 524109117] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 524694030] FILL: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 525314475] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 526013712] Testing word: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 526444464] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 526912491] Running MOVE.basic: HERE 65 OVER C! HERE 1+ 66 OVER C! HERE HERE 16 + 2 MOVE HERE 16 + C@ . HERE 17 + C@ . CR +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 528623403] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 529482639] Expected: Should print: 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 532047411] Running MOVE.zero_n: HERE HERE 8 + 0 MOVE +[Hera] [HADES][TEST ] [KRELTSC: 532714161] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 533510460] Expected: Should do nothing +[Hera] [HADES][INFO ] [KRELTSC: 534292878] L8[TABLE]: Config 15 → 16 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 17,170000,10000,0,0,190,34,86,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 536556195] Running MOVE.empty_stack: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 537155577] Expected error occurred +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 538044360] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 538623204] MOVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 539228277] â–¶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 539944755] Testing word: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 540382983] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 540853257] Running ERASE.basic: HERE 4 65 FILL HERE 4 ERASE HERE C@ . HERE 3 + C@ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 542195409] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 542997462] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 545001807] Running ERASE.zero_n: HERE 0 ERASE +[Hera] [HADES][TEST ] [KRELTSC: 545576262] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 546396564] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 547481340] Running ERASE.empty_stack: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 548060520] Expected error occurred +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 548949030] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 549528021] ERASE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 550153758] === Memory Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 550932816] +[Hera] === Testing Module: Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 551656875] Running Arithmetic Words Tests (Module 5)... +[Hera] [HADES][TEST ] [KRELTSC: 552295611] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 553060956] Testing word: + +[Hera] [HADES][TEST ] [KRELTSC: 553475874] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 553944027] Running +.basic: 5 7 + . CR +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 554592108] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 555363417] Expected: Should print: 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 556888941] Running +.zero_add: 42 0 + . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 557515854] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 558346173] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 559916427] Running +.negative: -5 3 + . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 560545482] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 561332415] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 562859241] Running +.both_negative: -5 -3 + . CR +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 563539536] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 564316725] Expected: Should print: -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] [HADES][INFO ] [KRELTSC: 565817511] L8[TABLE]: Config 16 → 18 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 18,180000,10000,0,0,170,35,73,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 567644175] Running +.overflow: 2147483647 1 + . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 568375164] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 569143848] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 570915639] Running +.underflow: -2147483648 -1 + . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 571681656] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 572451894] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 574258650] Running +.empty_stack: + +[Hera] [HADES][ERROR] [KRELTSC: 574803852] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 575266293] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 576138612] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 576713445] Running +.one_item: 42 + +[Hera] [HADES][ERROR] [KRELTSC: 577217382] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 577680789] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 578522700] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 579106374] +: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 579850824] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 580581162] Testing word: - +[Hera] [HADES][TEST ] [KRELTSC: 581003157] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 581480046] Running -.basic: 10 3 - . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 582234114] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 583006221] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 584546991] Running -.zero_sub: 42 0 - . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 585183228] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 585954306] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 587489322] Running -.from_zero: 0 5 - . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 588134337] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 588906402] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 590415714] Running -.negative: 5 -3 - . CR +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 591035991] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 591814818] Expected: Should print: 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 593329758] Running -.same_values: 42 42 - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 593973492] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 594765717] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 596221437] Running -.overflow: -2147483648 1 - . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 596976681] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 597754521] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 599544918] Running -.underflow: 2147483647 -1 - . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 600405897] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 601287813] Expected: Should overflow +[Hera] 2147483648 +[Hera] [HADES][INFO ] [KRELTSC: 602182770] L8[TABLE]: Config 18 → 19 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 19,190000,10000,0,0,154,28,44,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 604711527] Running -.empty_stack: - +[Hera] [HADES][ERROR] [KRELTSC: 605291883] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 605755983] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 606642855] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 607234152] Running -.one_item: 42 - +[Hera] [HADES][ERROR] [KRELTSC: 607728576] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 608160693] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 608999475] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 609591549] -: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 610165920] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 610895460] Testing word: * +[Hera] [HADES][TEST ] [KRELTSC: 611328459] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 611809506] Running *.basic: 6 7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 612582012] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 613376337] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 615018285] Running *.by_zero: 42 0 * . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 615667626] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 616460628] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 617980419] Running *.by_one: 42 1 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 618595677] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 619373118] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 620979660] Running *.by_negative: 6 -7 * . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 621656826] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 622432293] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 624038415] Running *.negative_negative: -6 -7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 624729189] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 625511502] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 627031293] Running *.large_numbers: 32767 2 * . CR +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 627737187] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 628527396] Expected: Should print: 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 630164388] Running *.overflow: 65536 65536 * . CR +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 630882924] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 631661856] Expected: May overflow +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 633398073] Running *.empty_stack: * +[Hera] [HADES][ERROR] [KRELTSC: 633945669] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 634420206] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 635267619] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 635871306] Running *.one_item: 42 * +[Hera] [HADES][ERROR] [KRELTSC: 636439839] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 636878004] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 637726782] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 638303400] *: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 638899674] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 639624531] Testing word: / +[Hera] [HADES][TEST ] [KRELTSC: 640043964] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 640533138] Running /.basic: 15 3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 641157195] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 641956392] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][INFO ] [KRELTSC: 643175736] L8[TABLE]: Config 19 → 20 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 20,200000,10000,0,0,154,28,41,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 645062040] Running /.by_one: 42 1 / . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 645678033] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 646456062] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 647972031] Running /.negative_dividend: -15 3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 648666480] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 649459986] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 650963691] Running /.negative_divisor: 15 -3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 651671412] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 652444212] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 653969967] Running /.both_negative: -15 -3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 654696315] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 655494252] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 656956755] Running /.truncation: 7 3 / . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 657603723] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 658377531] Expected: Should print: 2 (truncated) +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 659947722] Running /.by_zero: 42 0 / +[Hera] [HADES][ERROR] [KRELTSC: 660511782] /: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 661005849] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 661872813] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 662454912] Running /.empty_stack: / +[Hera] [HADES][ERROR] [KRELTSC: 663006624] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 663463962] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 664328406] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 664901706] Running /.one_item: 42 / +[Hera] [HADES][ERROR] [KRELTSC: 665401968] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 665851410] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 666692691] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 667275924] /: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 667868985] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 668591427] Testing word: MOD +[Hera] [HADES][TEST ] [KRELTSC: 669015858] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 669482226] Running MOD.basic: 17 5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 670569648] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 671364771] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 672958734] Running MOD.exact_division: 15 3 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 673661352] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 674473086] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 675996006] Running MOD.by_one: 42 1 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 676661832] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 677461659] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 679014840] Running MOD.negative_dividend: -17 5 MOD . CR +[Hera] [HADES][INFO ] [KRELTSC: 679757169] L8[TABLE]: Config 20 → 21 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 21,210000,10000,0,0,153,32,39,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 681362178] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 682166877] Expected: Should handle negative +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 683792655] Running MOD.negative_divisor: 17 -5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 684635700] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 685457577] Expected: Should handle negative +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 687069642] Running MOD.small_by_large: 3 7 MOD . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 687757728] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 688549617] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 690080769] Running MOD.by_zero: 42 0 MOD +[Hera] [HADES][ERROR] [KRELTSC: 690661356] MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 691167015] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 692027259] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 692608770] Running MOD.empty_stack: MOD +[Hera] [HADES][ERROR] [KRELTSC: 693160146] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 693623511] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 694489215] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 695086224] Running MOD.one_item: 42 MOD +[Hera] [HADES][ERROR] [KRELTSC: 695614815] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 696063123] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 696920658] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 697525269] MOD: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 698115474] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 698846568] Testing word: /MOD +[Hera] [HADES][TEST ] [KRELTSC: 699291768] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 699761076] Running /MOD.basic: 17 5 /MOD . . CR +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 700644336] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 701459577] Expected: Should print: 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 703108875] Running /MOD.exact: 15 3 /MOD . . CR +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 703813341] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 704607498] Expected: Should print: 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 706332039] Running /MOD.negative: -17 5 /MOD . . CR +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 707061663] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 707881020] Expected: Should handle negative dividend +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 709680048] Running /MOD.by_zero: 42 0 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 710281236] /MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 710768730] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 711643485] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 712242825] Running /MOD.empty_stack: /MOD +[Hera] [HADES][ERROR] [KRELTSC: 712791555] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 713287029] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 714202755] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 714776622] Running /MOD.one_item: 42 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 715317897] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 715770384] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 716648373] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 717228435] /MOD: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 717835125] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 718578735] Testing word: ABS +[Hera] [HADES][TEST ] [KRELTSC: 719005623] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 719490471] Running ABS.positive: 42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 720267240] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 721052661] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 722575245] Running ABS.negative: -42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 723222339] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 724016055] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 725588934] L8[TABLE]: Config 21 → 22 regime=2 score=26214 L1=0 L2=0 L3=1 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 22,220000,10000,0,0,167,35,42,582,582,0,0,0,65536,0,0,65536,0,0 + +[Hera] [HADES][TEST ] [KRELTSC: 727155450] Running ABS.zero: 0 ABS . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 727760229] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 728564466] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 730010505] Running ABS.min_int: -2147483648 ABS . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 730771251] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 731552934] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 733368657] Running ABS.empty_stack: ABS +[Hera] [HADES][ERROR] [KRELTSC: 733920852] ABS: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 734399106] Expected error occurred +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 735274344] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 735853293] ABS: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 736444149] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 737185911] Testing word: NEGATE +[Hera] [HADES][TEST ] [KRELTSC: 737631300] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 738100839] Running NEGATE.positive: 42 NEGATE . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 738880611] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 739697301] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 741242586] Running NEGATE.negative: -42 NEGATE . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 741923847] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 742723401] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 744240231] Running NEGATE.zero: 0 NEGATE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 744882936] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 745694817] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 747174519] Running NEGATE.min_int: -2147483648 NEGATE . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 747972351] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 748771842] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 750567846] Running NEGATE.empty_stack: NEGATE +[Hera] [HADES][ERROR] [KRELTSC: 751164225] NEGATE: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 751680657] Expected error occurred +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 752586849] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 753162543] NEGATE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 753792228] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 754515153] Testing word: MIN +[Hera] [HADES][TEST ] [KRELTSC: 754940655] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 755408640] Running MIN.basic: 5 3 MIN . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 756194523] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 756981162] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 758475228] Running MIN.equal: 42 42 MIN . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 759116022] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 759902346] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 761415438] Running MIN.negative: -5 -3 MIN . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 762119064] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 762903540] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 764449161] Running MIN.mixed: -1 1 MIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 765086742] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 765873675] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 767036676] L8[TABLE]: Config 22 → 23 regime=2 score=52428 L1=0 L2=0 L3=1 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 23,230000,10000,0,0,176,37,41,685,685,0,0,0,65536,0,0,65536,0,0 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 769014750] Running MIN.one_item: 42 MIN +[Hera] [HADES][ERROR] [KRELTSC: 769549809] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 770019936] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 770893662] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 771470490] Running MIN.empty_stack: MIN +[Hera] [HADES][ERROR] [KRELTSC: 771984654] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 772431429] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 773318931] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 773894583] MIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 774546318] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 775388019] Testing word: MAX +[Hera] [HADES][TEST ] [KRELTSC: 775825218] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 776293098] Running MAX.basic: 5 3 MAX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 777154140] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 777940863] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 779445135] Running MAX.equal: 42 42 MAX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 780106572] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 780899427] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 782438475] Running MAX.negative: -5 -3 MAX . CR +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 783140862] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 783921453] Expected: Should print: -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 785448531] Running MAX.mixed: -1 1 MAX . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 786076872] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 786862566] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 788372529] Running MAX.one_item: 42 MAX +[Hera] [HADES][ERROR] [KRELTSC: 789039279] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 789569298] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 790583451] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 791255136] Running MAX.empty_stack: MAX +[Hera] [HADES][ERROR] [KRELTSC: 791902482] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 792353856] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 793216179] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 793820097] MAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 794427585] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 795168339] Testing word: 1+ +[Hera] [HADES][TEST ] [KRELTSC: 795606315] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 796093851] Running 1+.basic: 5 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 796737900] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 797524455] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 799031646] Running 1+.zero: 0 1+ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 799619814] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 800423904] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 801894324] Running 1+.negative: -1 1+ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 802521447] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 803322786] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 804803307] Running 1+.chain: 3 1+ 1+ 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 805452333] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 806247225] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 807776004] Running 1+.overflow: 2147483647 1+ . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 808583979] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 809361189] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 [HADES][INFO ] [KRELTSC: 810424251] L8[TABLE]: Config 23 → 24 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 24,240000,10000,0,0,175,37,39,731,731,0,0,0,65536,0,0,65536,0,0 + +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 812730618] Running 1+.empty_stack: 1+ +[Hera] [HADES][ERROR] [KRELTSC: 813315405] 1+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 813782445] Expected error occurred +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 814655520] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 815233713] 1+: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 815815413] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 816554697] Testing word: 1- +[Hera] [HADES][TEST ] [KRELTSC: 816977658] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 817448016] Running 1-.basic: 5 1- . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 818146350] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 818939079] Expected: Should print: 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 820397130] Running 1-.to_zero: 1 1- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 821058735] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 821837016] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 823300800] Running 1-.to_negative: 0 1- . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 824041176] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 825037353] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 826739193] Running 1-.chain: 6 1- 1- 1- . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 827421735] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 828198714] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 829741878] Running 1-.underflow: -2147483648 1- . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 830483304] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 831284916] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 833058849] Running 1-.empty_stack: 1- +[Hera] [HADES][ERROR] [KRELTSC: 833656635] 1-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 834127749] Expected error occurred +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 835003722] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 835603272] 1-: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 836188815] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 836987403] Testing word: 2+ +[Hera] [HADES][TEST ] [KRELTSC: 837413976] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 837899391] Running 2+.basic: 5 2+ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 838632270] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 839414226] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 840886914] Running 2+.zero: 0 2+ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 841485309] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 842275707] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 843729012] Running 2+.negative: -3 2+ . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 844371486] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 845150565] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 846657567] Running 2+.empty_stack: 2+ +[Hera] [HADES][ERROR] [KRELTSC: 847184499] 2+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 847642320] Expected error occurred +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 848526441] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 849103395] 2+: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 849688413] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 850432716] Testing word: 2- +[Hera] [HADES][TEST ] [KRELTSC: 850853661] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 851322759] Running 2-.basic: 7 2- . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 852006729] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 852826884] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 854301000] Running 2-.zero: 2 2- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 854895972] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 855672405] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 856569924] L8[TABLE]: Config 24 → 25 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 25,250000,10000,0,0,196,38,37,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 858733995] Running 2-.negative: 0 2- . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 859356834] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 860139567] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 861660954] Running 2-.empty_stack: 2- +[Hera] [HADES][ERROR] [KRELTSC: 862208193] 2-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 862682310] Expected error occurred +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 863538165] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 864134838] 2-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 864717735] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 865454121] Testing word: 2* +[Hera] [HADES][TEST ] [KRELTSC: 865873848] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 866352942] Running 2*.basic: 5 2* . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 867068895] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 867848961] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 869360142] Running 2*.zero: 0 2* . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 869949864] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 870728229] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 872227902] Running 2*.negative: -3 2* . CR +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 872856495] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 873660606] Expected: Should print: -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 875149821] Running 2*.one: 1 2* . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 875748006] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 876528387] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 878000550] Running 2*.large: 1073741823 2* . CR +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 878706906] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 879525108] Expected: Should print: 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 881327748] Running 2*.empty_stack: 2* +[Hera] [HADES][ERROR] [KRELTSC: 881877486] 2*: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 882364224] Expected error occurred +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 883215039] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 883817991] 2*: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 884402442] â–¶ Testing module: src/test_runner/modules/arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 885124800] Testing word: 2/ +[Hera] [HADES][TEST ] [KRELTSC: 885544401] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 886023894] Running 2/.basic: 10 2/ . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 886726050] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 887506011] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 888976116] Running 2/.odd: 7 2/ . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 889558719] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 890356698] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 891809331] Running 2/.zero: 0 2/ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 892416063] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 893217801] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 894712623] Running 2/.negative_even: -10 2/ . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 895375299] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 896160720] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 897660666] Running 2/.one: 1 2/ . CR +[Hera] [HADES][INFO ] [KRELTSC: 898243962] L8[TABLE]: Config 25 → 26 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 26,260000,10000,0,0,192,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 899875998] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 900690861] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 902149206] Running 2/.empty_stack: 2/ +[Hera] [HADES][ERROR] [KRELTSC: 902695941] 2/: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 903170583] Expected error occurred +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 904023750] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 904623405] 2/: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 905222367] === Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 905998065] +[Hera] === Testing Module: Logical Words === +[Hera] [HADES][INFO ] [KRELTSC: 906631257] Running Logical Words Tests (Module 8)... +[Hera] [HADES][TEST ] [KRELTSC: 907271694] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 908001591] Testing word: AND +[Hera] [HADES][TEST ] [KRELTSC: 908432259] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 908915490] Running AND.both_true: -1 -1 AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 909597717] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 910382508] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 911995518] Running AND.first_false: 0 -1 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 912660021] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 913465959] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 914985120] Running AND.second_false: -1 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 915674088] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 916455351] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 917944335] Running AND.both_false: 0 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 918602601] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 919403478] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 920866380] Running AND.bitwise: 85 51 AND . CR +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 921586197] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 922368615] Expected: Should print: 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 923890044] Running AND.empty_stack: AND +[Hera] [HADES][ERROR] [KRELTSC: 924431298] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 924927129] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 925881390] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 926505468] Running AND.one_item: 42 AND +[Hera] [HADES][ERROR] [KRELTSC: 927065559] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 927559773] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 928502610] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 929128410] AND: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 929813913] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 930582030] Testing word: OR +[Hera] [HADES][TEST ] [KRELTSC: 931036995] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 931545153] Running OR.both_true: -1 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 932433348] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 933283806] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 934904082] Running OR.first_false: 0 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 935648175] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 936524946] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 938102340] Running OR.second_false: -1 0 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 938837823] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 939679377] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 940860354] L8[TABLE]: Config 26 → 27 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 27,270000,10000,0,0,158,40,38,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 942970896] Running OR.both_false: 0 0 OR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 943662258] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 944540121] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 946080576] Running OR.bitwise: 85 51 OR . CR +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 946803921] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 947648898] Expected: Should print: 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 949280430] Running OR.empty_stack: OR +[Hera] [HADES][ERROR] [KRELTSC: 949844763] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 950340720] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 951295086] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 951919668] Running OR.one_item: 42 OR +[Hera] [HADES][ERROR] [KRELTSC: 952468356] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 952969059] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 953894991] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 954520182] OR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 955168872] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 955937115] Testing word: XOR +[Hera] [HADES][TEST ] [KRELTSC: 956363751] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 956859078] Running XOR.both_true: -1 -1 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 957677679] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 958466544] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 959998830] Running XOR.first_false: 0 -1 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 960673182] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 961477335] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 962981103] Running XOR.second_false: -1 0 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 963791682] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 964576389] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 966100653] Running XOR.both_false: 0 0 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 966753039] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 967559586] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 969057159] Running XOR.bitwise: 85 51 XOR . CR +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 969739050] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 970524639] Expected: Should print: 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 972073809] Running XOR.empty_stack: XOR +[Hera] [HADES][ERROR] [KRELTSC: 972615126] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 973085085] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 973968744] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 974546601] Running XOR.one_item: 42 XOR +[Hera] [HADES][ERROR] [KRELTSC: 975065763] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 975512433] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 976417428] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 976993752] XOR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 977582025] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 978308856] Testing word: NOT +[Hera] [HADES][TEST ] [KRELTSC: 978733056] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 979200810] Running NOT.true: -1 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 979941438] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 980751009] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 982234344] Running NOT.false: 0 NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 982883727] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 983668203] Expected: Should print: -1 +[Hera] [HADES][INFO ] [KRELTSC: 984291588] L8[TABLE]: Config 27 → 28 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 28,280000,10000,0,0,158,40,35,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 986760558] Running NOT.positive: 42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 987420483] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 988203090] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 989673405] Running NOT.negative: -42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 990312456] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 991115706] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 992565105] Running NOT.empty_stack: NOT +[Hera] [HADES][ERROR] [KRELTSC: 993120639] NOT: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 993587049] Expected error occurred +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 994447860] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 995043336] NOT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 995634675] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 996343362] Testing word: = +[Hera] [HADES][TEST ] [KRELTSC: 996759246] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 997254720] Running =.equal: 42 42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 997915023] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 998688873] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1000217442] Running =.not_equal: 42 43 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1000857942] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1001653485] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1003131192] Running =.zero_equal: 0 0 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1003777509] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1004556336] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1006118337] Running =.negative_equal: -42 -42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1006811064] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1007609148] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1009144122] Running =.negative_positive: -42 42 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1009863372] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1010643375] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1012125891] Running =.empty_stack: = +[Hera] [HADES][ERROR] [KRELTSC: 1012647993] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1013108733] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1013995689] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1014581568] Running =.one_item: 42 = +[Hera] [HADES][ERROR] [KRELTSC: 1015083783] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1015526127] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1016433117] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1017017799] =: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1017603594] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1018337334] Testing word: <> +[Hera] [HADES][TEST ] [KRELTSC: 1018779888] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1019262510] Running <>.not_equal: 42 43 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1020112926] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1020904248] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1022430696] Running <>.equal: 42 42 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1023107820] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1023895992] Expected: Should print: 0 +[Hera] [HADES][INFO ] [KRELTSC: 1024513413] L8[TABLE]: Config 28 → 29 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 29,290000,10000,0,0,164,41,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1026964869] Running <>.zero_equal: 0 0 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1027615428] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1028421303] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1029892017] Running <>.negative: -42 42 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1030576638] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1031364579] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1032904068] Running <>.empty_stack: <> +[Hera] [HADES][ERROR] [KRELTSC: 1033431483] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1033897431] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1034782182] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1035365310] Running <>.one_item: 42 <> +[Hera] [HADES][ERROR] [KRELTSC: 1035924813] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1036411593] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1037305227] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1037894256] <>: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1038487002] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1039227987] Testing word: < +[Hera] [HADES][TEST ] [KRELTSC: 1039649709] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1040160156] Running <.less_than: 5 7 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1041064941] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1041847170] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1043408688] Running <.greater_than: 7 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1044102066] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1044884820] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1046386677] Running <.equal: 5 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1046992674] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1047801111] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1049299293] Running <.negative_positive: -5 5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1049999832] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1050783006] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1052305191] Running <.negative_negative: -7 -5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1053002664] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1053799614] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1055310900] Running <.empty_stack: < +[Hera] [HADES][ERROR] [KRELTSC: 1055849550] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1056318375] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1057173726] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1057778694] Running <.one_item: 42 < +[Hera] [HADES][ERROR] [KRELTSC: 1058279376] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1058720859] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1059572766] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1060180401] <: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1060764642] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1061506215] Testing word: > +[Hera] [HADES][TEST ] [KRELTSC: 1061940600] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1062421983] Running >.greater_than: 7 5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1063236195] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1064041377] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1065056517] L8[TABLE]: Config 29 → 30 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 30,300000,10000,0,0,154,43,39,685,685,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1067215107] Running >.less_than: 5 7 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1067891391] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1068699723] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1070195322] Running >.equal: 5 5 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1070812932] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1071594090] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1073076270] Running >.positive_negative: 5 -5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1073768115] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1074571281] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1076082399] Running >.negative_negative: -5 -7 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1076818323] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1077599607] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1079135715] Running >.empty_stack: > +[Hera] [HADES][ERROR] [KRELTSC: 1079650362] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1080110493] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1080979053] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1081563630] Running >.one_item: 42 > +[Hera] [HADES][ERROR] [KRELTSC: 1082063577] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1082527593] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1083407976] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1083988983] >: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1084571166] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1085298165] Testing word: 0= +[Hera] [HADES][TEST ] [KRELTSC: 1085722638] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1086195096] Running 0=.zero: 0 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1086966237] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1087756173] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1089286947] Running 0=.positive: 42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1089964218] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1090764969] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1092266805] Running 0=.negative: -42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1092900774] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1093710975] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1095162684] Running 0=.empty_stack: 0= +[Hera] [HADES][ERROR] [KRELTSC: 1095711897] 0=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1096178139] Expected error occurred +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1097037690] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1097635308] 0=: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1098224841] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1098938169] Testing word: 0< +[Hera] [HADES][TEST ] [KRELTSC: 1099364490] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1099861329] Running 0<.negative: -42 0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1100631924] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1101419088] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1102936611] Running 0<.zero: 0 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1103575368] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1104396804] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1105771758] L8[TABLE]: Config 30 → 31 regime=2 score=6553 L1=0 L2=0 L3=1 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 31,310000,10000,0,0,172,46,35,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1107415302] Running 0<.positive: 42 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1108054542] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1108839396] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1110312483] Running 0<.empty_stack: 0< +[Hera] [HADES][ERROR] [KRELTSC: 1110839331] 0<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1111337346] Expected error occurred +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1112230896] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1112821920] 0<: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1113410928] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1114122828] Testing word: 0> +[Hera] [HADES][TEST ] [KRELTSC: 1114572753] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1115056677] Running 0>.positive: 42 0> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1115826138] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1116638796] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1118130636] Running 0>.zero: 0 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1118786802] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1119572454] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1121051253] Running 0>.negative: -42 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1121684025] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1122469404] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1123980522] Running 0>.empty_stack: 0> +[Hera] [HADES][ERROR] [KRELTSC: 1124505291] 0>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1124987262] Expected error occurred +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1125846036] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1126428114] 0>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1127038794] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1127753256] Testing word: 0<> +[Hera] [HADES][TEST ] [KRELTSC: 1128186066] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1128661926] Running 0<>.nonzero_pos: 42 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1129460997] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1130255280] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1131792102] Running 0<>.nonzero_neg: -1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1132478970] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1133286273] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1134795648] Running 0<>.zero: 0 0<> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1135463217] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1136264766] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1137760008] Running 0<>.empty_stack: 0<> +[Hera] [HADES][ERROR] [KRELTSC: 1138304097] 0<>: stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1138770465] Expected error occurred +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1139664855] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1140248109] 0<>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1140844782] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1141571823] Testing word: U< +[Hera] [HADES][TEST ] [KRELTSC: 1142007720] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1142484168] Running U<.less: 3 5 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1143272235] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1144094826] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1145636919] Running U<.equal: 5 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1146319545] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1147106310] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1148606697] Running U<.greater: 7 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1149237327] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1150039884] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1151245893] L8[TABLE]: Config 31 → 32 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 32,320000,10000,0,0,180,49,34,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1153105653] Running U<.zero_one: 0 1 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1153764675] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1154572881] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1156110375] Running U<.empty_stack: U< +[Hera] [HADES][ERROR] [KRELTSC: 1156649844] U<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1157117220] Expected error occurred +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1157978829] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1158578379] U<: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1159170222] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1159885881] Testing word: U> +[Hera] [HADES][TEST ] [KRELTSC: 1160325936] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1160802216] Running U>.greater: 5 3 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1161593685] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1162399770] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1163935206] Running U>.equal: 5 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1164622326] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1165445316] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1166947929] Running U>.less: 3 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1167565938] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1168351800] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1169849037] Running U>.one_zero: 1 0 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1170492456] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1171295118] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1172860941] Running U>.empty_stack: U> +[Hera] [HADES][ERROR] [KRELTSC: 1173403392] U>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1173876795] Expected error occurred +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1174768560] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1175376279] U>: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1175965350] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1176696486] Testing word: WITHIN +[Hera] [HADES][TEST ] [KRELTSC: 1177161069] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1177638861] Running WITHIN.in_range: 3 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1178552781] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1179393474] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1180946802] Running WITHIN.at_low: 1 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1181671785] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1182481272] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1184030400] Running WITHIN.at_high: 5 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1184770545] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1185597819] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1186774197] L8[TABLE]: Config 32 → 33 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 33,330000,10000,0,0,145,51,35,567,567,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1188682404] Running WITHIN.below: 0 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1189366164] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1190200473] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1191702624] Running WITHIN.above: 6 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1192408224] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1193219034] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1194741702] Running WITHIN.empty_stack: WITHIN +[Hera] [HADES][ERROR] [KRELTSC: 1195332096] WITHIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1195833156] Expected error occurred +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1196762280] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1197366828] WITHIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1197979986] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1198708035] Testing word: TRUE +[Hera] [HADES][TEST ] [KRELTSC: 1199145381] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1199618805] Running TRUE.value: TRUE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1200372726] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1201171209] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1202685036] Running TRUE.as_flag: TRUE 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1203337002] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1204133679] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1205651769] Running TRUE.in_and: TRUE TRUE AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1206349137] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1207160955] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1208793789] TRUE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1209407934] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1210122900] Testing word: FALSE +[Hera] [HADES][TEST ] [KRELTSC: 1210568331] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1211060109] Running FALSE.value: FALSE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1211755587] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1212561084] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1214044755] Running FALSE.as_flag: FALSE 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1214712093] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1215543357] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1217128668] Running FALSE.in_or: TRUE FALSE OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1217834142] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1218633906] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1220228520] FALSE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1220836659] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1221573339] Testing word: >= +[Hera] [HADES][TEST ] [KRELTSC: 1221996846] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1222467960] Running >=.less: 3 5 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1223253801] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1224040125] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1225433790] L8[TABLE]: Config 33 → 34 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 34,340000,10000,0,0,203,53,37,582,582,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1227110430] Running >=.greater: 5 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1227870441] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1228655778] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1230212298] Running >=.equal: 3 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1230837888] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1231640382] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1233194802] Running >=.negative: -1 0 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1233855651] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1234641933] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1236143433] Running >=.neg_neg: -1 -2 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1236801006] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1237588779] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1239151641] Running >=.underflow: >= +[Hera] [HADES][ERROR] [KRELTSC: 1239670782] >=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1240165311] Expected error occurred +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1241045862] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1241627226] >=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1242230430] â–¶ Testing module: src/test_runner/modules/logical_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1242940041] Testing word: <= +[Hera] [HADES][TEST ] [KRELTSC: 1243364619] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1243837140] Running <=.less: 3 5 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1244702109] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1245491562] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1247089809] Running <=.greater: 5 3 <= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1247861265] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1248686838] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1250223135] Running <=.equal: 3 3 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1250877306] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1251667473] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1253228613] Running <=.negative: -1 0 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1253883561] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1254693237] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1256222373] Running <=.neg_neg: -2 -1 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1256889564] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1257708816] Expected: Should print: -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1258584999] L8[TABLE]: Config 34 → 35 regime=2 score=52428 L1=0 L2=1 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 35,350000,10000,0,0,154,55,39,731,731,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1261016484] Running <=.underflow: <= +[Hera] [HADES][ERROR] [KRELTSC: 1261605135] <=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1262095170] Expected error occurred +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1262955288] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1263567291] <=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1264178265] === Logical Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1264950561] +[Hera] === Testing Module: Mixed Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 1265663847] Running Mixed Arithmetic Words Tests (Module 7)... +[Hera] [HADES][TEST ] [KRELTSC: 1266339018] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1267156464] Testing word: */ +[Hera] [HADES][TEST ] [KRELTSC: 1267615839] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1268208480] Running */.basic: 6 7 4 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1269044805] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1269858807] Expected: Should print: 10 (6*7/4) +[Hera] [HADES][TEST ] [KRELTSC: 1270547124] Running */.exact_division: 12 5 3 */ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 1271277525] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1272095496] Expected: Should print: 20 (12*5/3) +[Hera] [HADES][TEST ] [KRELTSC: 1272656847] Running */.zero_multiply: 0 999 123 */ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1273384497] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1274182497] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1274686140] Running */.by_one: 42 5 1 */ . CR +[Hera] 210 +[Hera] [HADES][TEST ] [KRELTSC: 1275354675] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1276163238] Expected: Should print: 210 (42*5/1) +[Hera] [HADES][TEST ] [KRELTSC: 1276728243] Running */.truncation: 7 3 2 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1277407320] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1278208701] Expected: Should print: 10 (21/2 truncated) +[Hera] [HADES][TEST ] [KRELTSC: 1278820032] Running */.negative_multiply: -6 7 4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1279553226] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1280367774] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1280880342] Running */.negative_divisor: 6 7 -4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1281613200] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1282417122] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1282935717] Running */.div_by_zero: 6 7 0 */ +[Hera] [HADES][ERROR] [KRELTSC: 1283519076] */: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1284021060] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1284907869] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1285497213] Running */.empty_stack: */ +[Hera] [HADES][ERROR] [KRELTSC: 1286041869] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1286516490] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1287376272] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1287959358] Running */.two_items: 1 2 */ +[Hera] [HADES][ERROR] [KRELTSC: 1288517874] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1288968513] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1289828337] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1290509178] */: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1291145478] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1291938585] Testing word: */MOD +[Hera] [HADES][TEST ] [KRELTSC: 1292400606] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1292872770] Running */MOD.basic: 17 3 5 */MOD . . CR +[Hera] 10 1 +[Hera] [HADES][TEST ] [KRELTSC: 1293779634] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1294606635] Expected: Should print: 1 10 (51/5 = 10 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 1295233443] Running */MOD.exact_division: 15 4 3 */MOD . . CR +[Hera] 20 0 +[Hera] [HADES][TEST ] [KRELTSC: 1296017310] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1296841497] Expected: Should print: 0 20 (60/3 = 20 rem 0) +[Hera] [HADES][TEST ] [KRELTSC: 1297470636] Running */MOD.zero_multiply: 0 999 123 */MOD . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1298260152] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1299080349] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1299594702] Running */MOD.by_one: 42 5 1 */MOD . . CR +[Hera] 210 0 +[Hera] [HADES][TEST ] [KRELTSC: 1300334343] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1301167287] Expected: Should print: 0 210 +[Hera] [HADES][TEST ] [KRELTSC: 1301693652] Running */MOD.remainder: 7 8 5 */MOD . . CR +[Hera] 11 1 +[Hera] [HADES][TEST ] [KRELTSC: 1302467439] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1303285074] Expected: Should print: 1 11 (56/5 = 11 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 1303914990] Running */MOD.negative: -7 3 4 */MOD . . CR +[Hera] -5 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1304665467] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1305493434] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1306042794] Running */MOD.div_by_zero: 6 7 0 */MOD +[Hera] [HADES][ERROR] [KRELTSC: 1306663974] */MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1307174295] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1308050352] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1308640515] Running */MOD.empty_stack: */MOD +[Hera] [HADES][ERROR] [KRELTSC: 1309231791] */MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1309713384] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1310588832] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1311207345] */MOD: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1311823611] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1312597251] Testing word: M+ +[Hera] [HADES][TEST ] [KRELTSC: 1313049339] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1313540445] Running M+.basic: 0 100 200 M+ . . CR +[Hera] 300 0 +[Hera] [HADES][TEST ] [KRELTSC: 1314432378] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1315219794] Expected: Should print: 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1315777512] Running M+.overflow: 0 2147483647 1 M+ . . CR +[Hera] 2147483648 0 +[Hera] [HADES][TEST ] [KRELTSC: 1316589204] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1317378951] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 1317939735] Running M+.negative: 0 -100 50 M+ . . CR +[Hera] -50 0 +[Hera] [HADES][TEST ] [KRELTSC: 1318674987] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1319465007] Expected: Should print: 50 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1320025518] Running M+.zero_add: 0 42 0 M+ . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 1320729438] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1321518660] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 1322061090] Running M+.both_negative: 0 -100 -200 M+ . . CR +[Hera] -300 0 +[Hera] [HADES][TEST ] [KRELTSC: 1322881791] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1323671055] Expected: Should print: -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1324247526] Running M+.empty_stack: M+ +[Hera] [HADES][TEST ] [KRELTSC: 1324788150] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1325652258] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1326252963] Running M+.one_item: 42 M+ +[Hera] [HADES][TEST ] [KRELTSC: 1326767904] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1327630164] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1328230302] M+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1328819037] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1329585852] Testing word: M* +[Hera] [HADES][TEST ] [KRELTSC: 1330012257] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1330496958] Running M*.basic: 123 456 M* . . CR +[Hera] 0 56088 +[Hera] [HADES][TEST ] [KRELTSC: 1331333031] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1332119250] Expected: Should print: 56088 0 +[Hera] [HADES][TEST ] [KRELTSC: 1332682239] Running M*.by_zero: 999 0 M* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1333361232] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1334164902] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1334707248] Running M*.by_one: 42 1 M* . . CR +[Hera] 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 1335388026] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1336171284] Expected: Should print: 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 1336722114] Running M*.negative: -123 456 M* . . CR +[Hera] -1 4294911208 +[Hera] [HADES][TEST ] [KRELTSC: 1337486724] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1338272754] Expected: Should print: -56088 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1338840615] Running M*.large_multiply: 65536 65536 M* . . CR +[Hera] 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 1339608627] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1340391171] Expected: Should handle large result +[Hera] [HADES][TEST ] [KRELTSC: 1340980305] Running M*.both_negative: -100 -200 M* . . CR +[Hera] 0 20000 +[Hera] [HADES][TEST ] [KRELTSC: 1341752223] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1342546590] Expected: Should print: 20000 0 +[Hera] [HADES][TEST ] [KRELTSC: 1343108613] Running M*.empty_stack: M* +[Hera] [HADES][TEST ] [KRELTSC: 1343668242] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1344531531] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1345130262] Running M*.one_item: 42 M* +[Hera] [HADES][TEST ] [KRELTSC: 1345645623] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1346504376] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1347099957] M*: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1347689889] â–¶ Testing module: src/test_runner/modules/mixed_arithmetic_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1348455360] Testing word: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 1348907973] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1349395068] Running M/MOD.basic: 0 1000 100 M/MOD . . CR +[Hera] 10 0 +[Hera] [HADES][TEST ] [KRELTSC: 1350322554] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1351147077] Expected: Should print: 0 10 (1000/100) +[Hera] [HADES][TEST ] [KRELTSC: 1351734804] Running M/MOD.with_remainder: 0 1234 100 M/MOD . . CR +[Hera] 12 34 +[Hera] [HADES][TEST ] [KRELTSC: 1352538999] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1353357537] Expected: Should handle remainder +[Hera] [HADES][TEST ] [KRELTSC: 1353911202] Running M/MOD.double_dividend: 5001 0 10 M/MOD . . CR +[Hera] 2147913144729 6 +[Hera] [HADES][TEST ] [KRELTSC: 1354779720] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1355620770] Expected: Should print: 1 500 (5001/10) +[Hera] [HADES][TEST ] [KRELTSC: 1356209799] Running M/MOD.by_one: 0 42 1 M/MOD . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 1356939570] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1357772346] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 1358303352] Running M/MOD.negative_dividend: -1 1000 100 M/MOD . . CR +[Hera] -42949662 -96 +[Hera] [HADES][TEST ] [KRELTSC: 1359184659] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1360001853] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1360547853] Running M/MOD.div_by_zero: 0 100 0 M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 1361184510] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1362092088] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1362689160] Running M/MOD.empty_stack: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 1363254144] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1364150781] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1364746257] M/MOD: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1365371469] === Mixed Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1366219365] +[Hera] === Testing Module: Double Words === +[Hera] [HADES][INFO ] [KRELTSC: 1366843653] Running Double Number Words Tests (Module 6)... +[Hera] [HADES][TEST ] [KRELTSC: 1367501730] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1368255903] Testing word: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 1368705471] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1369182255] Running 2DROP.basic: 1 2 3 4 2DROP . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1370001843] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1370806437] Expected: Should print: 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 1371323121] Running 2DROP.zeros: 0 0 42 99 2DROP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1372068180] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1372880859] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1373397165] Running 2DROP.negative: -1 -2 100 200 2DROP . . CR +[Hera] -2 -1 +[Hera] [HADES][INFO ] [KRELTSC: 1374295881] L8[TABLE]: Config 35 → 36 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 36,360000,10000,0,0,144,57,37,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 1375782324] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1376602101] Expected: Should print: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1377130020] Running 2DROP.exact_four: 10 20 30 40 2DROP DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1377932535] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1378747881] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 1379258223] Running 2DROP.empty_stack: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 1379826168] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1380720264] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1381322250] Running 2DROP.one_item: 42 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 1381873710] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1382770410] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1383367629] 2DROP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1384022787] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1384774776] Testing word: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 1385213340] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1385700582] Running 2DUP.basic: 100 200 2DUP . . . . CR +[Hera] 200 100 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1386685545] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1387487766] Expected: Should print: 100 200 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1388089437] Running 2DUP.zeros: 0 0 2DUP . . . . CR +[Hera] 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1388847117] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1389640833] Expected: Should print: 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1390177740] Running 2DUP.negative: -100 -200 2DUP . . . . CR +[Hera] -200 -100 -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1391058963] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1391855304] Expected: Should duplicate negatives +[Hera] [HADES][TEST ] [KRELTSC: 1392424026] Running 2DUP.depth_check: 10 20 2DUP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1393180719] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1393979139] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 1394482908] Running 2DUP.empty_stack: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 1395052071] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1395942870] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1396546620] Running 2DUP.one_item: 42 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 1397085312] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1397974305] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1398565518] 2DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1399164606] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1399884234] Testing word: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 1400326830] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1400800170] Running 2OVER.basic: 10 20 30 40 2OVER . . . . . . CR +[Hera] 20 10 40 30 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 1401825369] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1402678746] Expected: Should print: 10 20 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 1403279745] Running 2OVER.zeros: 0 0 99 88 2OVER . . . . . . CR +[Hera] 0 0 88 99 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1404190494] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1404995949] Expected: Should print: 0 0 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1405591677] Running 2OVER.mixed: -1 2 -3 4 2OVER . . . . . . CR +[Hera] 2 -1 4 -3 2 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1406477373] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1407306726] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 1407887775] Running 2OVER.depth_check: 1 2 3 4 2OVER DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1408667085] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1409472351] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 1409994915] Running 2OVER.three_items: 1 2 3 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 1410620169] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1411524072] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1412127423] Running 2OVER.empty_stack: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 1412676258] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1413554499] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1414171206] 2OVER: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1414778505] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1415485113] Testing word: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 1415928549] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1416418164] Running 2SWAP.basic: 10 20 30 40 2SWAP . . . . CR +[Hera] 20 10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 1417425744] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1418271288] Expected: Should print: 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 1418834508] Running 2SWAP.zeros: 0 0 99 88 2SWAP . . . . CR +[Hera] 0 0 88 99 +[Hera] [HADES][TEST ] [KRELTSC: 1419647775] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1420466334] Expected: Should print: 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1421022855] Running 2SWAP.same_pairs: 42 42 42 42 2SWAP . . . . CR +[Hera] 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 1421887677] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1422702729] Expected: Should print: 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 1423265361] Running 2SWAP.negative: -10 -20 30 40 2SWAP . . . . CR +[Hera] -20 -10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 1424140998] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1424956092] Expected: Should print: 30 40 -10 -20 +[Hera] [HADES][TEST ] [KRELTSC: 1425539430] Running 2SWAP.depth_check: 1 2 3 4 2SWAP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1426311159] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1427142486] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 1427665407] Running 2SWAP.three_items: 1 2 3 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 1428287805] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1429182216] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1429764126] Running 2SWAP.empty_stack: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 1430311239] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1431199917] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1431790773] 2SWAP: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1432398324] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1433114403] Testing word: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 1433552169] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1434026055] Running 2ROT.basic: 10 20 30 40 50 60 2ROT . . . . . . CR +[Hera] 20 10 60 50 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 1435172109] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1435983192] Expected: Should print: 30 40 50 60 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 1436586900] Running 2ROT.zeros: 0 0 1 1 2 2 2ROT . . . . . . CR +[Hera] 0 0 2 2 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 1437472428] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1438280445] Expected: Should rotate with zeros +[Hera] [HADES][TEST ] [KRELTSC: 1438839255] Running 2ROT.negative: -1 -2 3 4 -5 -6 2ROT . . . . . . CR +[Hera] -2 -1 -6 -5 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 1439840619] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1440640446] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 1441208118] Running 2ROT.depth_check: 1 2 3 4 5 6 2ROT DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1441999734] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1442803320] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 1443328635] Running 2ROT.five_items: 1 2 3 4 5 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 1443956220] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1444840740] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1445439177] Running 2ROT.empty_stack: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 1445976336] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1446849222] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1447447113] 2ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1448048952] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1448769378] Testing word: D+ +[Hera] [HADES][TEST ] [KRELTSC: 1449194082] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1449681030] Running D+.basic: 100 200 300 400 D+ . . CR +[Hera] 600 400 +[Hera] [HADES][TEST ] [KRELTSC: 1450612527] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1451409120] Expected: Should print: 400 600 +[Hera] [HADES][TEST ] [KRELTSC: 1451975931] Running D+.zero_add: 42 99 0 0 D+ . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1452707676] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1453491921] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1454033889] Running D+.negative: -100 -200 50 75 D+ . . CR +[Hera] -125 -50 +[Hera] [HADES][TEST ] [KRELTSC: 1454815971] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1455599901] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 1456163268] Running D+.carry: 2147483647 0 1 0 D+ . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1456959567] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1457790999] Expected: Should handle carry +[Hera] [HADES][TEST ] [KRELTSC: 1458360183] Running D+.both_negative: -100 -200 -300 -400 D+ . . CR +[Hera] -599 -400 +[Hera] [HADES][TEST ] [KRELTSC: 1459364550] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1460185188] Expected: Should add negatives +[Hera] [HADES][TEST ] [KRELTSC: 1460724237] Running D+.three_items: 1 2 3 D+ +[Hera] [HADES][TEST ] [KRELTSC: 1461365976] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1462249530] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1462842108] Running D+.empty_stack: D+ +[Hera] [HADES][TEST ] [KRELTSC: 1463361942] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1464236697] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1464827490] D+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1465425843] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1466153535] Testing word: D- +[Hera] [HADES][TEST ] [KRELTSC: 1466591595] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1467068106] Running D-.basic: 500 600 100 200 D- . . CR +[Hera] 400 [HADES][INFO ] [KRELTSC: 1468043304] L8[TABLE]: Config 36 → 37 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 37,370000,10000,0,0,144,57,35,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 400 +[Hera] [HADES][TEST ] [KRELTSC: 1469606103] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1470399987] Expected: Should print: 400 400 +[Hera] [HADES][TEST ] [KRELTSC: 1470953568] Running D-.zero_sub: 42 99 0 0 D- . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1471686930] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1472467899] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1473007305] Running D-.from_zero: 0 0 100 200 D- . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1473779895] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1474564581] Expected: Should print: -100 -200 +[Hera] [HADES][TEST ] [KRELTSC: 1475126646] Running D-.negative: 100 200 -50 -75 D- . . CR +[Hera] 274 150 +[Hera] [HADES][TEST ] [KRELTSC: 1475904381] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1476690999] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 1477256781] Running D-.borrow: 0 0 1 0 D- . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1477966224] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1478752065] Expected: Should handle borrow +[Hera] [HADES][TEST ] [KRELTSC: 1479298947] Running D-.same_values: 100 200 100 200 D- . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1480088253] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1480883313] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1481506572] Running D-.three_items: 1 2 3 D- +[Hera] [HADES][TEST ] [KRELTSC: 1482172713] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1483064667] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1483646577] Running D-.empty_stack: D- +[Hera] [HADES][TEST ] [KRELTSC: 1484163828] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1485022413] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1485624168] D-: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1486213512] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1486919784] Testing word: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1487386362] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1487863524] Running DNEGATE.positive: 100 200 DNEGATE . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1488828432] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1489686597] Expected: Should negate positive double +[Hera] [HADES][TEST ] [KRELTSC: 1490273358] Running DNEGATE.negative: -100 -200 DNEGATE . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 1491080262] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1491926772] Expected: Should negate negative double +[Hera] [HADES][TEST ] [KRELTSC: 1492511307] Running DNEGATE.zero: 0 0 DNEGATE . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1493254119] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1494085887] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1494609312] Running DNEGATE.max_positive: 2147483647 0 DNEGATE . . CR +[Hera] -1 -2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1495492635] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1496320581] Expected: Should negate max positive +[Hera] [HADES][TEST ] [KRELTSC: 1496890521] Running DNEGATE.one_item: 42 DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1497532533] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1498444101] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1499027040] Running DNEGATE.empty_stack: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1499597337] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1500525621] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1501104738] DNEGATE: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1501718652] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1502441031] Testing word: DABS +[Hera] [HADES][TEST ] [KRELTSC: 1502878461] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1503353040] Running DABS.positive: 100 200 DABS . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1504206627] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1505007231] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1505548107] Running DABS.negative: -100 -200 DABS . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 1506339345] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1507139193] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1507678809] Running DABS.zero: 0 0 DABS . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1508362359] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1509161661] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1509677778] Running DABS.mixed_sign: 100 -1 DABS . . CR +[Hera] 0 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1510505115] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1511335119] Expected: Should handle mixed sign +[Hera] [HADES][TEST ] [KRELTSC: 1511894538] Running DABS.min_double: -2147483648 -1 DABS . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1512787668] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1513584891] Expected: Should handle min double +[Hera] [HADES][TEST ] [KRELTSC: 1514141559] Running DABS.one_item: 42 DABS +[Hera] [HADES][TEST ] [KRELTSC: 1514723049] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1515608808] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1516194078] Running DABS.empty_stack: DABS +[Hera] [HADES][TEST ] [KRELTSC: 1516748436] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1517649588] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1518235677] DABS: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1518851985] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1519560777] Testing word: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 1519999593] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1520475684] Running DMIN.basic: 100 200 300 400 DMIN . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 1521535533] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1522344999] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 1522903809] Running DMIN.equal: 42 99 42 99 DMIN . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1523757354] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1524571125] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1525117482] Running DMIN.negative: -100 -200 -50 -75 DMIN . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1525949922] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1526750274] Expected: Should find min negative +[Hera] [HADES][TEST ] [KRELTSC: 1527322230] Running DMIN.mixed: -100 -1 100 0 DMIN . . CR +[Hera] -1 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1528093371] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1528892610] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 1529469669] Running DMIN.three_items: 1 2 3 DMIN +[Hera] [HADES][TEST ] [KRELTSC: 1530072789] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1530957372] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1531556250] Running DMIN.empty_stack: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 1532096013] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1532977005] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1533573111] DMIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1534176672] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1534892751] Testing word: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 1535331882] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1535817108] Running DMAX.basic: 100 200 300 400 DMAX . . CR +[Hera] 400 300 +[Hera] [HADES][TEST ] [KRELTSC: 1536757971] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1537577979] Expected: Should print: 300 400 +[Hera] [HADES][TEST ] [KRELTSC: 1538121459] Running DMAX.equal: 42 99 42 99 DMAX . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 1538918346] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1539729765] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 1540258755] Running DMAX.negative: -300 -400 -100 -200 DMAX . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 1541098818] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1541911308] Expected: Should find max negative +[Hera] [HADES][TEST ] [KRELTSC: 1542485427] Running DMAX.mixed: -100 -1 100 0 DMAX . . CR +[Hera] 0 100 +[Hera] [HADES][TEST ] [KRELTSC: 1543276413] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1544107026] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 1544672262] Running DMAX.three_items: 1 2 3 DMAX +[Hera] [HADES][TEST ] [KRELTSC: 1545278595] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1546173867] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1546758549] Running DMAX.empty_stack: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 1547298228] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1548184428] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1548768816] DMAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1549372713] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1550082639] Testing word: D= +[Hera] [HADES][TEST ] [KRELTSC: 1550523366] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1551000549] Running D=.equal: 100 200 100 200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1551880638] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1552703187] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1553214957] Running D=.not_equal_low: 100 200 101 200 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1553990445] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1554794787] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1555300194] Running D=.not_equal_high: 100 200 100 201 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1556067324] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1556867949] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1557373188] Running D=.zero_equal: 0 0 0 0 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1558062219] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1558864713] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1559377029] Running D=.negative_equal: -100 -200 -100 -200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1560168393] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1560968724] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1561478877] Running D=.three_items: 1 2 3 D= +[Hera] [HADES][TEST ] [KRELTSC: 1562055495] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1562929830] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1563513252] Running D=.empty_stack: D= +[Hera] [HADES][TEST ] [KRELTSC: 1564052175] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1564925334] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1565507097] D=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1566094593] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1566798051] Testing word: D< +[Hera] [HADES][TEST ] [KRELTSC: 1567236258] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1567710081] Running D<.less_than: 100 200 300 400 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1568609784] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1569471372] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1570026633] Running D<.greater_than: 300 400 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1570863756] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1571730216] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1572276636] Running D<.equal: 100 200 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1573034316] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1573898676] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1574452509] Running D<.negative_positive: -100 -1 100 0 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1575291396] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1576146180] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1576700769] Running D<.negative_negative: -300 -1 -100 -1 D< . CR +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1577688210] L8[TABLE]: Config 37 → 38 regime=2 score=26214 L1=0 L2=1 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 38,380000,10000,0,0,132,57,34,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 1579316823] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1580187042] Expected: Should compare negatives +[Hera] [HADES][TEST ] [KRELTSC: 1580801775] Running D<.high_word_diff: 100 200 100 300 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1581648873] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1582505589] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1583061270] Running D<.three_items: 1 2 3 D< +[Hera] [HADES][TEST ] [KRELTSC: 1583696394] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1584633876] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1585292541] Running D<.empty_stack: D< +[Hera] [HADES][TEST ] [KRELTSC: 1585868655] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1586805108] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1587447519] D<: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1588100871] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1588869240] Testing word: D0= +[Hera] [HADES][TEST ] [KRELTSC: 1589339850] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1589856366] Running D0=.zero: 0 0 D0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1590682506] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1591573158] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1592149356] Running D0=.positive: 100 200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1592908716] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1593781413] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1594362735] Running D0=.negative: -100 -200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1595121276] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1595987127] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1596547890] Running D0=.zero_high: 0 100 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1597255737] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1598047311] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1598564268] Running D0=.zero_low: 100 0 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1599226314] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1600018686] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1600536630] Running D0=.one_item: 42 D0= +[Hera] [HADES][TEST ] [KRELTSC: 1601091597] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1601968956] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1602566091] Running D0=.empty_stack: D0= +[Hera] [HADES][TEST ] [KRELTSC: 1603091469] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1603962444] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1604545845] D0=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1605152157] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1605857862] Testing word: D0< +[Hera] [HADES][TEST ] [KRELTSC: 1606290399] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1606790808] Running D0<.negative: -100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1607602857] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1608400185] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1608931695] Running D0<.zero: 0 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1609579041] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1610374437] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1610880579] Running D0<.positive: 100 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1611562134] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1612355850] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1612861173] Running D0<.negative_high_only: 100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1613612910] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1614416034] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1614927783] Running D0<.large_negative: -1 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1615648230] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1616443353] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 1616954619] Running D0<.one_item: 42 D0< +[Hera] [HADES][TEST ] [KRELTSC: 1617556311] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1618433292] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1619016798] Running D0<.empty_stack: D0< +[Hera] [HADES][TEST ] [KRELTSC: 1619555826] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1620424092] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1621015704] D0<: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1621624767] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1622346327] Testing word: S>D +[Hera] [HADES][TEST ] [KRELTSC: 1622780040] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1623257979] Running S>D.positive: 5 S>D . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1624057239] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1624859712] Expected: Should sign-extend positive: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1625466675] Running S>D.negative: -5 S>D . . CR +[Hera] -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 1626242562] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1627046190] Expected: Should sign-extend negative: -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 1627680222] Running S>D.zero: 0 S>D . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1628325090] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1629118365] Expected: Should sign-extend zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1629701157] Running S>D.max_int: 2147483647 S>D . . CR +[Hera] 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1630492521] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1631295351] Expected: Should extend max int: 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1631932239] Running S>D.min_int: -2147483648 S>D . . CR +[Hera] -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1632726753] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1633530213] Expected: Should extend min int: -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1634183670] Running S>D.empty_stack: S>D +[Hera] [HADES][TEST ] [KRELTSC: 1634726289] Expected error occurred +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1635594366] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1636190136] S>D: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1636787733] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1637496777] Testing word: D2* +[Hera] [HADES][TEST ] [KRELTSC: 1637930784] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1638417921] Running D2*.basic: 5 0 D2* . . CR +[Hera] 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 1639229613] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1640028999] Expected: Should double 5: 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 1640587494] Running D2*.zero: 0 0 D2* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1641251871] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1642046994] Expected: Should double zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1642614372] Running D2*.negative: -1 -1 D2* . . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1643326209] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1644125049] Expected: Should double -1: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1644704250] Running D2*.carry: 0 1 D2* . . CR +[Hera] 2 0 +[Hera] [HADES][TEST ] [KRELTSC: 1645378812] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1646173746] Expected: Should shift high cell: 0 2 +[Hera] [HADES][TEST ] [KRELTSC: 1646772078] Running D2*.empty_stack: D2* +[Hera] [HADES][TEST ] [KRELTSC: 1647344097] Expected error occurred +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1648238529] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1648839696] D2*: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1649434647] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1650148542] Testing word: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 1650581604] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1651066599] Running D2/.basic: 10 0 D2/ . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1651858551] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1652654241] Expected: Should halve 10: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 1653214059] Running D2/.negative: -2 -1 D2/ . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1653929172] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1654727802] Expected: Should halve -2: -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 1655288439] Running D2/.zero: 0 0 D2/ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1655949183] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1656742458] Expected: Should halve zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 1657302129] Running D2/.odd: 3 0 D2/ . . CR +[Hera] 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 1657955460] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1658756400] Expected: Should truncate toward zero: 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 1659375165] Running D2/.empty_stack: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 1659916755] Expected error occurred +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1660793526] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1661390577] D2/: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1661987712] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1662697995] Testing word: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 1663132128] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1663619202] Running 2>R.roundtrip: 10 20 2>R 2R> . . CR +[Hera] 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 1664658723] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1665472158] Expected: Should store and retrieve: 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 1666081830] Running 2>R.depth_after: 1 2 2>R DEPTH . 2R> DROP DROP CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1666929432] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1667739129] Expected: Should empty data stack: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1668320955] Running 2>R.empty_stack: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 1668906960] Expected error occurred +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1669801350] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1670413794] 2>R: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1671019665] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1671748134] Testing word: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 1672181490] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1672670916] Running 2R>.roundtrip: 5 6 2>R 2R> . . CR +[Hera] 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 1673450247] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1674280167] Expected: Should retrieve double: 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 1674855210] Running 2R>.depth: 9 8 2>R 2R> DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1675572633] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1676380314] Expected: Should push 2 items to data stack: 2 +[Hera] [HADES][TEST ] [KRELTSC: 1677009621] Running 2R>.empty_rstack: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 1677581556] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1678463325] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1679090763] 2R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1679687058] â–¶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1680408114] Testing word: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 1680841596] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1681320669] Running 2R@.peek: 3 4 2>R 2R@ . . 2R> DROP DROP CR +[Hera] 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 1682289756] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1683081456] Expected: Should peek: 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 1683591882] Running 2R@.non_destructive: 7 8 2>R 2R@ DROP DROP 2R> . . CR +[Hera] 8 7 +[Hera] [HADES][TEST ] [KRELTSC: 1684468401] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1685260584] Expected: Should leave rstack intact +[Hera] [HADES][TEST ] [KRELTSC: 1685830293] Running 2R@.empty_rstack: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 1686386352] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1687255395] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1687881111] 2R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1688507646] === Double Number Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1689312198] +[Hera] === Testing Module: Format Words === +[Hera] [HADES][INFO ] [KRELTSC: 1689970317] Running Format Words Tests (Module 10)... +[Hera] [HADES][TEST ] [KRELTSC: 1690620855] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1691348904] Testing word: BASE +[Hera] [HADES][TEST ] [KRELTSC: 1691787762] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1692262383] Running BASE.decimal: DECIMAL 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1693033776] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1693834989] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 1694353626] Running BASE.hex: HEX FF . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1695108807] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1695912288] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 1696427985] Running BASE.octal: OCTAL 52 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1697163027] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1697964597] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 1698484578] Running BASE.base_store: 16 BASE ! 255 . CR +[Hera] 467 +[Hera] [HADES][TEST ] [KRELTSC: 1699349736] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1700171508] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 1700694681] Running BASE.base_fetch: BASE @ . CR +[Hera] 14 +[Hera] [HADES][TEST ] [KRELTSC: 1701387828] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1702190868] Expected: Should print current base +[Hera] [HADES][TEST ] [KRELTSC: 1702758897] BASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1703403870] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1704116463] Testing word: DECIMAL +[Hera] [HADES][TEST ] [KRELTSC: 1704583314] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1705060938] Running DECIMAL.from_hex: HEX FF DECIMAL . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1705816539] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1706646039] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 1707166146] Running DECIMAL.from_octal: OCTAL 52 DECIMAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1707937623] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1708758996] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 1709272950] Running DECIMAL.state_persist: DECIMAL 42 . CR 42 . CR HEX 42 . CR +[Hera] 42 +[Hera] 42 +[Hera] 66 +[Hera] [HADES][TEST ] [KRELTSC: 1710335172] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1711189641] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 1711739862] DECIMAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1712359950] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1713076197] Testing word: HEX +[Hera] [HADES][TEST ] [KRELTSC: 1713510246] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1714000953] Running HEX.from_decimal: DECIMAL 255 HEX . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1714750401] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1715541555] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 1716065904] Running HEX.from_octal: OCTAL 52 HEX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1716770118] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1717567908] Expected: Should print: 2A +[Hera] [HADES][TEST ] [KRELTSC: 1718090388] Running HEX.state_persist: HEX FF . CR DECIMAL 255 . CR +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 1718985345] L8[TABLE]: Config 38 → 39 regime=2 score=52428 L1=0 L2=1 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 39,390000,10000,0,0,180,57,32,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 1720576725] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1721378925] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 1721916147] HEX: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1722549906] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1723260147] Testing word: OCTAL +[Hera] [HADES][TEST ] [KRELTSC: 1723713327] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1724204160] Running OCTAL.from_decimal: DECIMAL 42 OCTAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1724973306] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1725809232] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 1726335681] Running OCTAL.from_hex: HEX 2A OCTAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1727044284] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1727859336] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 1728385008] Running OCTAL.state_persist: DECIMAL 42 . CR OCTAL 52 . CR +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1729287798] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1730128344] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 1730686986] OCTAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1731296322] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1732006017] Testing word: <# +[Hera] [HADES][TEST ] [KRELTSC: 1732468227] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1732942197] Running <#.basic: DECIMAL 42 S>D <# #S #> TYPE CR +[Hera] 774763251095801167872 +[Hera] [HADES][TEST ] [KRELTSC: 1735120905] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1735915692] Expected: Should format number +[Hera] [HADES][TEST ] [KRELTSC: 1736462217] Running <#.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1737108135] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1737898827] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 1738423470] Running <#.negative: -42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1739225691] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1740015627] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 1740577965] <#: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1741184823] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1741894539] Testing word: # +[Hera] [HADES][TEST ] [KRELTSC: 1742316198] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1742791806] Running #.single_digit: 15 <# # #> TYPE CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1743603708] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1744384719] Expected: Should print rightmost digit +[Hera] [HADES][TEST ] [KRELTSC: 1744974756] Running #.multiple: 15 <# # # #> TYPE CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 1745718702] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1746498411] Expected: Should print digits right to left +[Hera] [HADES][TEST ] [KRELTSC: 1747112241] Running #.zero_pad: 5 <# # 0 # #> TYPE CR +[Hera] 05 +[Hera] [HADES][TEST ] [KRELTSC: 1747853814] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1748635770] Expected: Should handle zero padding +[Hera] [HADES][TEST ] [KRELTSC: 1749226248] #: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1749815193] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1750525896] Testing word: #S +[Hera] [HADES][TEST ] [KRELTSC: 1750961646] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1751486079] Running #S.basic: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1752185589] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1753000767] Expected: Should convert all digits +[Hera] [HADES][TEST ] [KRELTSC: 1753596453] Running #S.zero: 0 <# #S #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1754296572] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1755086697] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 1755625809] Running #S.large: 1234567890 <# #S #> TYPE CR +[Hera] 1234567890 +[Hera] [HADES][TEST ] [KRELTSC: 1756439286] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1757225694] Expected: Should handle large numbers +[Hera] [HADES][TEST ] [KRELTSC: 1757815563] #S: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1758403815] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1759121406] Testing word: SIGN +[Hera] [HADES][TEST ] [KRELTSC: 1759560831] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1760050047] Running SIGN.negative: -42 ABS <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1760966487] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1761775218] Expected: Should add minus +[Hera] [HADES][TEST ] [KRELTSC: 1762302360] Running SIGN.positive: 42 <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1763064723] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1763871060] Expected: Should not add sign +[Hera] [HADES][TEST ] [KRELTSC: 1764435120] Running SIGN.zero: 0 <# #S SIGN #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1765174698] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1765972866] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 1766514120] SIGN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1767115707] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1767829875] Testing word: #> +[Hera] [HADES][TEST ] [KRELTSC: 1768269741] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1768745412] Running #>.normal: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1769450781] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1770270705] Expected: Should terminate formatting +[Hera] [HADES][TEST ] [KRELTSC: 1770887874] Running #>.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1771496370] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1772314530] Expected: Should handle empty format +[Hera] [HADES][TEST ] [KRELTSC: 1772887137] Running #>.stack_effect: 42 <# #S #> SWAP . . CR +[Hera] 24 2 +[Hera] [HADES][TEST ] [KRELTSC: 1773739737] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1774552857] Expected: Should leave addr u +[Hera] [HADES][TEST ] [KRELTSC: 1775086194] #>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1775677512] â–¶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1776393024] Testing word: HOLD +[Hera] [HADES][TEST ] [KRELTSC: 1776849522] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1777326852] Running HOLD.basic: 42 <# 46 HOLD #S #> TYPE CR +[Hera] 42. +[Hera] [HADES][TEST ] [KRELTSC: 1778125881] Test passed +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1778988561] Expected: Should insert dot +[Hera] [HADES][TEST ] [KRELTSC: 1779516207] Running HOLD.overflow: <# 257 HOLD #> +[Hera] [HADES][ERROR] [KRELTSC: 1780188900] HOLD: byte out of range (257) +[Hera] [HADES][TEST ] [KRELTSC: 1780939902] Expected error occurred +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1781817723] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 1782367734] HOLD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1783007058] === Format Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1783769820] +[Hera] === Testing Module: String Words === +[Hera] [HADES][INFO ] [KRELTSC: 1784402613] Running String Words Tests (Module 11)... +[Hera] [HADES][TEST ] [KRELTSC: 1785040467] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1785769062] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 1786219575] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1786704927] Running COUNT.basic: HERE S" Test" DROP COUNT . . CR +[Hera] 84 121 +[Hera] [HADES][TEST ] [KRELTSC: 1788220350] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1789028787] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 1789639467] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 1790449815] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1791295485] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 1791866202] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 1792728966] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1793552460] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 1794112635] Running COUNT.string_bounds: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1794960783] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1795780959] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 1796340252] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 1796907273] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1797443067] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1798327566] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1798912689] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1799562555] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1800273930] Testing word: -TRAILING +[Hera] [HADES][TEST ] [KRELTSC: 1800743973] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1801228023] Running -TRAILING.basic: HERE S" Test " -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1802367315] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1803234762] Expected: Should trim spaces +[Hera] [HADES][TEST ] [KRELTSC: 1803771669] Running -TRAILING.all_spaces: HERE S" " -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1804592790] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1805425734] Expected: Should handle all spaces +[Hera] [HADES][TEST ] [KRELTSC: 1806021945] Running -TRAILING.no_spaces: HERE S" Test" -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1806863331] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1807701147] Expected: Should handle no spaces +[Hera] [HADES][TEST ] [KRELTSC: 1808274300] Running -TRAILING.empty: HERE 0 -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1809027843] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1809867717] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 1810459098] -TRAILING: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1811093403] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1811802573] Testing word: CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 1812259995] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1812736380] Running CMOVE.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOVE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1813864521] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1814764665] Expected: Should copy string +[Hera] [HADES][TEST ] [KRELTSC: 1815290022] Running CMOVE.empty: HERE HERE 10 + 0 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 1815987831] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1816825227] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 1817383386] Running CMOVE.overlap: HERE DUP 1+ 5 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 1818076071] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1818902988] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 1819445040] Running CMOVE.bounds: HERE PAD 1000 CMOVE +[Hera] [HADES][ERROR] [KRELTSC: 1820116074] CMOVE: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 1820776083] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1821656487] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 1822188417] CMOVE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1822810479] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1823520741] Testing word: CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 1823972892] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1824459903] Running CMOVE>.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOVE> CR + +[Hera] [HADES][TEST ] [KRELTSC: 1825617087] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1826439300] Expected: Should copy backward +[Hera] [HADES][TEST ] [KRELTSC: 1826992461] Running CMOVE>.empty: HERE HERE 10 + 0 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 1827702387] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1828522269] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 1829098824] Running CMOVE>.overlap: HERE DUP 1+ 5 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 1829755242] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1830579765] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 1831136496] Running CMOVE>.bounds: HERE PAD 1000 CMOVE> +[Hera] [HADES][ERROR] [KRELTSC: 1831799298] CMOVE>: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 1832466405] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1833372555] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 1833903687] CMOVE>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1834516404] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1835235423] Testing word: COMPARE +[Hera] [HADES][TEST ] [KRELTSC: 1835718969] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1836194451] Running COMPARE.equal: HERE S" Test" HERE S" Test" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1837562706] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1838380404] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 1838890809] Running COMPARE.less: HERE S" Test1" HERE S" Test2" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1839785031] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1840602477] Expected: Should return -1 +[Hera] [HADES][TEST ] [KRELTSC: 1841113617] Running COMPARE.greater: HERE S" Test2" HERE S" Test1" COMPARE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1842023568] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1842839439] Expected: Should return 1 +[Hera] [HADES][TEST ] [KRELTSC: 1843350978] Running COMPARE.different_lengths: HERE S" Test" HERE S" Testing" COMPARE . CR +[Hera] [HADES][INFO ] [KRELTSC: 1862624127] L8[TABLE]: Config 39 → 40 regime=2 score=6553 L1=0 L2=1 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 40,400000,10000,0,0,220,63,29,4096,0,0,0,0,65536,0,0,65536,0,0 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1864306962] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1865148348] Expected: Should handle lengths +[Hera] [HADES][TEST ] [KRELTSC: 1865698779] Running COMPARE.empty: HERE 0 HERE 0 COMPARE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1866622275] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1867446840] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 1867982340] COMPARE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1868614041] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1869339570] Testing word: SEARCH +[Hera] [HADES][TEST ] [KRELTSC: 1869793527] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1870273524] Running SEARCH.found: HERE S" Testing" HERE S" Test" SEARCH . . . CR +[Hera] -1 15 120 +[Hera] [HADES][TEST ] [KRELTSC: 1871942919] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1872764775] Expected: Should find substring +[Hera] [HADES][TEST ] [KRELTSC: 1873322157] Running SEARCH.not_found: HERE S" Testing" HERE S" Xyz" SEARCH . . . CR +[Hera] -1 7 141 +[Hera] [HADES][TEST ] [KRELTSC: 1874403111] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1875241389] Expected: Should return false +[Hera] [HADES][TEST ] [KRELTSC: 1875772731] Running SEARCH.empty_pattern: HERE S" Test" HERE 0 SEARCH . . . CR +[Hera] -1 4 145 +[Hera] [HADES][TEST ] [KRELTSC: 1876776972] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1877616153] Expected: Should handle empty pattern +[Hera] [HADES][TEST ] [KRELTSC: 1878231768] Running SEARCH.empty_string: HERE 0 HERE S" Test" SEARCH . . . CR +[Hera] -1 30 120 +[Hera] [HADES][TEST ] [KRELTSC: 1879269693] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1880081574] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 1880692002] SEARCH: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1881395880] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1882109397] Testing word: SCAN +[Hera] [HADES][TEST ] [KRELTSC: 1882562115] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1883047572] Running SCAN.basic: HERE S" Test,Data" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1884296988] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1885101309] Expected: Should find space +[Hera] [HADES][TEST ] [KRELTSC: 1885635024] Running SCAN.not_found: HERE S" TestData" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1886403393] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1887203178] Expected: Should scan to end +[Hera] [HADES][TEST ] [KRELTSC: 1887738027] Running SCAN.empty: HERE 0 BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1888412610] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1889214516] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 1889762910] Running SCAN.all_delims: HERE S" " BL SCAN TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 1890639975] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1891440306] Expected: Should handle all delims +[Hera] [HADES][TEST ] [KRELTSC: 1892017701] SCAN: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1892620611] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1893330600] Testing word: SKIP +[Hera] [HADES][TEST ] [KRELTSC: 1893777732] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1894264302] Running SKIP.basic: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1895365542] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1896179859] Expected: Should skip spaces +[Hera] [HADES][TEST ] [KRELTSC: 1896704586] Running SKIP.no_delims: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 1897511784] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1898324127] Expected: Should not skip +[Hera] [HADES][TEST ] [KRELTSC: 1898829723] Running SKIP.empty: HERE 0 BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1899530388] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1900351446] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 1900881192] Running SKIP.all_delims: HERE S" " BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1901623122] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1902432000] Expected: Should skip all +[Hera] [HADES][TEST ] [KRELTSC: 1902936546] SKIP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1903533744] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1904244615] Testing word: BLANK +[Hera] [HADES][TEST ] [KRELTSC: 1904726565] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1905202425] Running BLANK.basic: HERE 5 BLANK HERE 5 TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 1906250703] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1907075079] Expected: Should fill with spaces +[Hera] [HADES][TEST ] [KRELTSC: 1907629332] Running BLANK.zero: HERE 0 BLANK HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 1908341883] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1909163928] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 1909725405] BLANK: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1910342826] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1911065373] Testing word: S" +[Hera] [HADES][TEST ] [KRELTSC: 1911493437] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1911970599] Running S".interpret_len: S" hello" . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1912727985] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1913521029] Expected: Should print: 5 (length) +[Hera] [HADES][TEST ] [KRELTSC: 1914085341] Running S".interpret_type: S" hello" TYPE CR +[Hera] hello +[Hera] [HADES][TEST ] [KRELTSC: 1914835020] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1915627014] Expected: Should print: hello +[Hera] [HADES][TEST ] [KRELTSC: 1916160225] Running S".empty: S" " . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1916769036] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1917581505] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1918090398] Running S".compile_type: : TSQ S" world" TYPE CR ; TSQ +[Hera] [HADES][INFO ] [KRELTSC: 1921066182] ECW: w=0xbe583520 func=0xbe0957a6 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1922506152] ECW: w=0xbe584ac8 func=0xbe08c10e 'TYPE' +[Hera] world[HADES][INFO ] [KRELTSC: 1923203331] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1923753426] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1924488153] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1925305137] Expected: Should print: world +[Hera] [HADES][TEST ] [KRELTSC: 1925847441] Running S".compile_len: : TSQ2 S" forth" SWAP DROP . CR ; TSQ2 +[Hera] [HADES][INFO ] [KRELTSC: 1926760395] ECW: w=0xbe583520 func=0xbe0957a6 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1927361772] ECW: w=0xbe57ca40 func=0xbe092a7a 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 1927963422] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 1928546088] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 1929168759] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1929738720] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1930334532] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1931128038] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 1931656314] Running S".compile_twice: : TSQ3 S" ab" TYPE S" cd" TYPE CR ; TSQ3 +[Hera] [HADES][INFO ] [KRELTSC: 1932615363] ECW: w=0xbe583520 func=0xbe0957a6 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1933231545] ECW: w=0xbe584ac8 func=0xbe08c10e 'TYPE' +[Hera] ab[HADES][INFO ] [KRELTSC: 1933927716] ECW: w=0xbe583520 func=0xbe0957a6 '(s")' +[Hera] [HADES][INFO ] [KRELTSC: 1934468991] ECW: w=0xbe584ac8 func=0xbe08c10e 'TYPE' +[Hera] cd[HADES][INFO ] [KRELTSC: 1935107139] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1935646503] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1936241895] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1937034876] Expected: Should print: abcd +[Hera] [HADES][TEST ] [KRELTSC: 1937567688] S": 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1938182085] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1938896904] Testing word: BL +[Hera] [HADES][TEST ] [KRELTSC: 1939326690] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1939804524] Running BL.value: BL . CR +[Hera] 32 +[Hera] [HADES][TEST ] [KRELTSC: 1940502480] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1941291324] Expected: Should print: 32 +[Hera] [HADES][TEST ] [KRELTSC: 1941823737] Running BL.as_char: BL EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 1942631187] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1943422026] Expected: Should emit a space +[Hera] [HADES][TEST ] [KRELTSC: 1943953536] Running BL.in_scan: HERE S" a b" BL SCAN SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1944815733] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1945601364] Expected: Should find space at offset 1 +[Hera] [HADES][TEST ] [KRELTSC: 1946191275] BL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1946794395] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1947503439] Testing word: SOURCE +[Hera] [HADES][TEST ] [KRELTSC: 1947954246] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1948439346] Running SOURCE.returns_pair: SOURCE SWAP DROP 0< NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1949834103] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1950676581] Expected: Should return non-negative length +[Hera] [HADES][TEST ] [KRELTSC: 1951295703] Running SOURCE.has_addr: SOURCE DROP 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1952076189] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1952911380] Expected: Should return non-null address +[Hera] [HADES][TEST ] [KRELTSC: 1953505932] SOURCE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1954118775] â–¶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1954840734] Testing word: >IN +[Hera] [HADES][TEST ] [KRELTSC: 1955273040] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1955753289] Running >IN.initial: >IN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1956621135] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1957435179] Expected: Should return input offset +[Hera] [HADES][TEST ] [KRELTSC: 1958010600] Running >IN.advances: : TWIN >IN @ >IN @ - . CR ; TWIN +[Hera] [HADES][INFO ] [KRELTSC: 1958883717] ECW: w=0xbe583700 func=0xbe0950b8 '>IN' +[Hera] [HADES][INFO ] [KRELTSC: 1959474909] ECW: w=0xbe57d3a0 func=0xbe08de58 '@' +[Hera] [HADES][INFO ] [KRELTSC: 1960037646] ECW: w=0xbe583700 func=0xbe0950b8 '>IN' +[Hera] [HADES][INFO ] [KRELTSC: 1960629678] ECW: w=0xbe57d3a0 func=0xbe08de58 '@' +[Hera] [HADES][INFO ] [KRELTSC: 1961211756] ECW: w=0xbe57dfd0 func=0xbe08109a '-' +[Hera] [HADES][INFO ] [KRELTSC: 1961775942] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 1962389016] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 1962925545] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 1963551597] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1964342142] Expected: Should print: 0 (no advance inside compiled word) +[Hera] [HADES][TEST ] [KRELTSC: 1965050052] >IN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1965688389] === String Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 1966450752] +[Hera] === Testing Module: I/O Words === +[Hera] [HADES][INFO ] [KRELTSC: 1967055153] Running I/O Words Tests (Module 9)... +[Hera] [HADES][TEST ] [KRELTSC: 1967740698] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1968450708] Testing word: . +[Hera] [HADES][TEST ] [KRELTSC: 1968875958] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1969373196] Running ..positive: 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1970064327] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1970847249] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 1971359733] Running ..negative: -42 . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 1971987591] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1972766082] Expected: Should print: -42 +[Hera] [HADES][TEST ] [KRELTSC: 1973282346] Running ..zero: 0 . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1973866020] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1974644490] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1975148217] Running ..max_int: 2147483647 . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1975853901] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1976629809] Expected: Should print: 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 1977184965] Running ..min_int: -2147483648 . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1977899343] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1978678485] Expected: Should print: -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1979242503] Running ..multiple: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1979944029] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1980723402] Expected: Should print: 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1981250292] Running ..empty_stack: . +[Hera] [HADES][TEST ] [KRELTSC: 1981774872] Expected error occurred +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1982670648] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1983253713] .: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1983867795] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1984568355] Testing word: CR +[Hera] [HADES][TEST ] [KRELTSC: 1984994634] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1985468415] Running CR.basic: 42 . CR 43 . CR +[Hera] 42 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 1986255138] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1987041504] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 1987635174] Running CR.multiple: CR CR CR + + + +[Hera] [HADES][TEST ] [KRELTSC: 1988237727] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1989023358] Expected: Should print multiple newlines +[Hera] [HADES][TEST ] [KRELTSC: 1989617175] Running CR.no_stack_effect: DEPTH CR DEPTH = . CR + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1990420068] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1991204691] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 1991755227] Running CR.after_output: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 1992490542] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1993278525] Expected: Should work after output +[Hera] [HADES][TEST ] [KRELTSC: 1993837482] CR: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1994428317] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 1995124341] Testing word: SPACE +[Hera] [HADES][TEST ] [KRELTSC: 1995567987] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1996041390] Running SPACE.basic: 42 . SPACE 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 1996852326] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1997657340] Expected: Should add space between numbers +[Hera] [HADES][TEST ] [KRELTSC: 1998262203] Running SPACE.multiple: SPACE SPACE SPACE +[Hera] [HADES][INFO ] [KRELTSC: 2000162031] L8[TABLE]: Config 40 → 0 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 41,410000,10000,0,0,215,64,28,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 2001682704] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2002451682] Expected: Should print multiple spaces +[Hera] [HADES][TEST ] [KRELTSC: 2003060451] Running SPACE.no_stack_effect: DEPTH SPACE DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2003905218] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2004719892] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 2005341807] Running SPACE.with_text: 65 EMIT SPACE 66 EMIT CR +[Hera] A B +[Hera] [HADES][TEST ] [KRELTSC: 2006109231] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2006914245] Expected: Should space between chars +[Hera] [HADES][TEST ] [KRELTSC: 2007499515] SPACE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2008109082] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2008793703] Testing word: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 2009265594] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2009740761] Running SPACES.zero: 0 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 2010412362] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2011266852] Expected: Should print no spaces +[Hera] [HADES][TEST ] [KRELTSC: 2011816128] Running SPACES.one: 1 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 2012432457] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2013254775] Expected: Should print one space +[Hera] [HADES][TEST ] [KRELTSC: 2013815811] Running SPACES.multiple: 5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 2014449654] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2015215923] Expected: Should print five spaces +[Hera] [HADES][TEST ] [KRELTSC: 2015792058] Running SPACES.large: 20 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 2016501459] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2017268442] Expected: Should print twenty spaces +[Hera] [HADES][TEST ] [KRELTSC: 2017857954] Running SPACES.negative: -5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 2018442909] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2019260481] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2019841068] Running SPACES.with_output: 42 . 3 SPACES 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 2020644066] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2021453364] Expected: Should space output +[Hera] [HADES][TEST ] [KRELTSC: 2022005496] Running SPACES.empty_stack: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 2022608154] Expected error occurred +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2023493283] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2024100813] SPACES: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2024717331] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2025403212] Testing word: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 2025866178] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2026370514] Running EMIT.letter_A: 65 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 2027011539] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2027810799] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 2028341091] Running EMIT.letter_Z: 90 EMIT CR +[Hera] Z +[Hera] [HADES][TEST ] [KRELTSC: 2028967836] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2029766928] Expected: Should print: Z +[Hera] [HADES][TEST ] [KRELTSC: 2030286720] Running EMIT.digit: 48 EMIT CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2030894544] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2031693531] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2032212126] Running EMIT.space_char: 32 EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 2032851891] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2033650395] Expected: Should print space +[Hera] [HADES][TEST ] [KRELTSC: 2034174303] Running EMIT.newline: 10 EMIT + +[Hera] [HADES][TEST ] [KRELTSC: 2034730740] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2035527522] Expected: Should print newline +[Hera] [HADES][TEST ] [KRELTSC: 2036060502] Running EMIT.high_ascii: 127 EMIT CR +[Hera]  +[Hera] [HADES][TEST ] [KRELTSC: 2036723766] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2037578781] Expected: Should print DEL char +[Hera] [HADES][TEST ] [KRELTSC: 2038164702] Running EMIT.truncation: 321 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 2038862847] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2039655156] Expected: Should truncate to low byte +[Hera] [HADES][TEST ] [KRELTSC: 2040228834] Running EMIT.negative: -1 EMIT CR +[Hera] ÿ +[Hera] [HADES][TEST ] [KRELTSC: 2040863055] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2041658535] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2042202624] Running EMIT.sequence: 72 EMIT 73 EMIT 10 EMIT +[Hera] HI +[Hera] [HADES][TEST ] [KRELTSC: 2042946423] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2043742743] Expected: Should print: HI +[Hera] [HADES][TEST ] [KRELTSC: 2044252581] Running EMIT.empty_stack: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 2044826322] Expected error occurred +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2045723316] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2046312870] EMIT: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2046933210] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2047614954] Testing word: KEY +[Hera] [HADES][TEST ] [KRELTSC: 2048046840] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2048542734] KEY: 0 passed, 0 failed, 4 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2049161100] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2049848787] Testing word: ?KEY +[Hera] [HADES][TEST ] [KRELTSC: 2050288926] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2050766319] ?KEY: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2051381724] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2052066912] Testing word: TYPE +[Hera] [HADES][TEST ] [KRELTSC: 2052506757] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2052983289] Running TYPE.basic_string: HERE S" Hello" DUP >R HERE SWAP CMOVE HERE R> TYPE CR +[Hera] Hello +[Hera] [HADES][TEST ] [KRELTSC: 2054081421] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2054884881] Expected: Should print: Hello +[Hera] [HADES][TEST ] [KRELTSC: 2055438315] Running TYPE.empty_string: HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2056078374] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2056910226] Expected: Should print nothing +[Hera] [HADES][TEST ] [KRELTSC: 2057468427] Running TYPE.single_char: HERE 65 OVER C! 1 TYPE CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 2058251748] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2059050651] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 2059577478] Running TYPE.numbers: HERE S" 12345" DUP >R HERE SWAP CMOVE HERE R> TYPE CR +[Hera] 12345 +[Hera] [HADES][TEST ] [KRELTSC: 2060574117] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2061373608] Expected: Should print: 12345 +[Hera] [HADES][TEST ] [KRELTSC: 2061924354] Running TYPE.zero_length: PAD 0 TYPE +[Hera] [HADES][TEST ] [KRELTSC: 2062511913] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2063314659] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 2063906607] Running TYPE.one_item: PAD TYPE +[Hera] [HADES][ERROR] [KRELTSC: 2064481566] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2064994428] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2065900515] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2066504685] Running TYPE.empty_stack: TYPE +[Hera] [HADES][ERROR] [KRELTSC: 2067039618] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2067531333] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2068414257] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2068998204] TYPE: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2069603046] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2070306735] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 2070751305] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2071225317] Running COUNT.basic: HERE S" Test" DROP C@ HERE 1+ SWAP COUNT . . CR +[Hera] 0 85 +[Hera] [HADES][TEST ] [KRELTSC: 2072214312] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2073021657] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 2073610371] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 2074419942] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2075224179] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 2075793195] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 2076662889] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2077465908] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 2078023332] Running COUNT.zero_addr_plus_one: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2078873433] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2079677376] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 2080235472] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 2080794072] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2081316132] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2082193407] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2082798501] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2083406094] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2084089161] Testing word: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 2084538834] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2085028953] Running EXPECT.zero_length: PAD 0 EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 2085924708] Test passed +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2086764729] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 2087334774] Running EXPECT.one_item: PAD EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 2087975799] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2088890097] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2089484061] Running EXPECT.empty_stack: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 2090057802] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2090958807] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2091548991] EXPECT: 3 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2092238820] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2092922181] Testing word: SPAN +[Hera] [HADES][TEST ] [KRELTSC: 2093389095] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2093863086] Running SPAN.zero_input: PAD 0 EXPECT SPAN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2094869175] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2095687419] Expected: Should show zero +[Hera] [HADES][TEST ] [KRELTSC: 2096201331] Running SPAN.variable_test: SPAN @ SPAN @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2096978205] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2097796155] Expected: Should be consistent +[Hera] [HADES][TEST ] [KRELTSC: 2098333797] Running SPAN.address_test: SPAN 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2099042148] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2099866356] Expected: Should be valid address +[Hera] [HADES][TEST ] [KRELTSC: 2100426909] SPAN: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2101031583] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2101736574] Testing word: WORD +[Hera] [HADES][TEST ] [KRELTSC: 2102176818] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2102653644] Running WORD.empty_input: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2103841425] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2104646124] Expected: Should handle empty input +[Hera] [HADES][TEST ] [KRELTSC: 2105213901] Running WORD.space_delim: 32 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2105853393] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2106657357] Expected: Should use space as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 2107248402] Running WORD.newline_delim: 10 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2107875651] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2108679342] Expected: Should use newline as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 2109312030] Running WORD.tab_delim: 9 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2109914478] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2110732764] Expected: Should use tab as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 2111310957] Running WORD.comma_delim: 44 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2111934090] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2112737676] Expected: Should use comma as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 2113326075] Running WORD.skip_leading: BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2113943454] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2114948388] Expected: Should skip leading spaces +[Hera] [HADES][TEST ] [KRELTSC: 2115536787] Running WORD.single_char: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2116342158] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2117139549] Expected: Should parse single character +[Hera] [HADES][TEST ] [KRELTSC: 2117726667] Running WORD.long_word: BL WORD COUNT 0 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2118497871] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2119295997] Expected: Should parse long word +[Hera] [HADES][TEST ] [KRELTSC: 2119841787] Running WORD.zero_delim: 0 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2120441358] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2121240429] Expected: Should handle null delimiter +[Hera] [HADES][TEST ] [KRELTSC: 2121822465] Running WORD.high_ascii: 127 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2122438311] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2123238453] Expected: Should handle DEL delimiter +[Hera] [HADES][TEST ] [KRELTSC: 2123815029] Running WORD.count_format: BL WORD C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2124754422] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2125572918] Expected: Should have count byte +[Hera] [HADES][TEST ] [KRELTSC: 2126134206] Running WORD.count_value: BL WORD COUNT SWAP DROP . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2127356133] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2128344498] Expected: Should return count +[Hera] [HADES][TEST ] [KRELTSC: 2128919310] Running WORD.empty_stack: WORD +[Hera] [HADES][TEST ] [KRELTSC: 2129570373] Expected error occurred +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2130478056] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2131079370] Running WORD.multi_delim: BL WORD DROP BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 2131813908] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2132623101] Expected: Should handle multiple parses +[Hera] [HADES][TEST ] [KRELTSC: 2133239640] WORD: 14 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2133850236] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2134532190] Testing word: BASE_OUTPUT +[Hera] [HADES][TEST ] [KRELTSC: 2135032788] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2135509425] Running BASE_OUTPUT.decimal: 10 BASE ! 255 . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2136297828] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2137148265] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 2137663311] Running BASE_OUTPUT.hex: 16 BASE ! 255 . CR +[Hera] 597 +[Hera] [HADES][TEST ] [KRELTSC: 2138389638] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2139280542] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 2139798129] Running BASE_OUTPUT.octal: 8 BASE ! 64 . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2140522545] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2141381256] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 2141895504] Running BASE_OUTPUT.binary: 5 2 BASE ! . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2142633465] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2143519770] Expected: Should print: 101 +[Hera] [HADES][TEST ] [KRELTSC: 2144036328] Running BASE_OUTPUT.base_restore: BASE @ DECIMAL 255 16 BASE ! . BASE ! CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2145097374] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2145962259] Expected: Should restore base +[Hera] [HADES][TEST ] [KRELTSC: 2146490766] BASE_OUTPUT: 5 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2147131182] â–¶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2147821704] Testing word: FORMAT_COMBO +[Hera] [HADES][TEST ] [KRELTSC: 2148305796] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2148779073] Running FORMAT_COMBO.number_space_number: DECIMAL 42 . SPACE 43 . CR +[Hera] 42 [HADES][INFO ] [KRELTSC: 2149772562] L8[TABLE]: Config 0 → 1 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 42,420000,10000,0,0,208,68,29,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 2151292605] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2152184727] Expected: Should format: 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 2152718715] Running FORMAT_COMBO.multi_line: DECIMAL 1 . CR 2 . CR 3 . CR +[Hera] 1 +[Hera] 2 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 2153710755] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2154566148] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 2155157172] Running FORMAT_COMBO.indented: DECIMAL 5 SPACES 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2156000070] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2156847840] Expected: Should indent number +[Hera] [HADES][TEST ] [KRELTSC: 2157381618] Running FORMAT_COMBO.table_format: DECIMAL 1 . 3 SPACES 10 . 3 SPACES 100 . CR +[Hera] 1 10 100 +[Hera] [HADES][TEST ] [KRELTSC: 2158442454] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2159287179] Expected: Should format table +[Hera] [HADES][TEST ] [KRELTSC: 2159815959] FORMAT_COMBO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2160541383] === I/O Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2161313847] +[Hera] === Testing Module: Block Words === +[Hera] [HADES][INFO ] [KRELTSC: 2161945695] Running Block Words Tests (Module 16)... +[Hera] [HADES][TEST ] [KRELTSC: 2162581701] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2163302568] Testing word: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 2163749280] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2164259454] Running BLOCK.basic: 1 BLOCK DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 2165817612] Test passed +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2166653538] Expected: Should return block address +[Hera] [HADES][TEST ] [KRELTSC: 2167236981] Running BLOCK.zero_block: 0 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 2167820214] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2168734806] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 2169277068] Running BLOCK.large_block: 65536 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 2169970698] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2170872039] Expected: Should handle large number +[Hera] [HADES][TEST ] [KRELTSC: 2171446515] Running BLOCK.negative: -1 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 2172002196] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2172934701] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2173482612] Running BLOCK.empty_stack: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 2174064795] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2174972940] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2175562179] BLOCK: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2176202070] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2176931631] Testing word: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 2177384286] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2177866362] Running BUFFER.basic: 1 BUFFER DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 2178871821] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2179710897] Expected: Should return buffer address +[Hera] [HADES][TEST ] [KRELTSC: 2180294676] Running BUFFER.zero_block: 0 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 2180881374] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2181791829] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 2182336548] Running BUFFER.flush_dirty: 2 BLOCK 1+ 2 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 2183055210] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2183893467] Expected: Should flush if dirty +[Hera] [HADES][TEST ] [KRELTSC: 2184437766] Running BUFFER.empty_stack: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 2185020600] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2185928304] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2186514687] BUFFER: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2187129798] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2187874185] Testing word: UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 2188324824] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2188799235] Running UPDATE.basic: 1 BLOCK UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 2189753328] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2190578124] Expected: Should mark block dirty +[Hera] [HADES][TEST ] [KRELTSC: 2191134351] Running UPDATE.multiple: 1 BLOCK UPDATE UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 2191847973] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2192685201] Expected: Should handle multiple updates +[Hera] [HADES][TEST ] [KRELTSC: 2193279123] Running UPDATE.no_block: 0 SCR ! UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 2194007802] Expected error occurred +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2194893687] Expected: Should error: blk=0 is invalid +[Hera] [HADES][TEST ] [KRELTSC: 2195490822] UPDATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2196144468] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2196848220] Testing word: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2197336218] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2197826778] Running SAVE-BUFFERS.basic: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2198815563] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2199677739] Expected: Should flush all buffers +[Hera] [HADES][TEST ] [KRELTSC: 2200274895] Running SAVE-BUFFERS.dirty_blocks: 1 BLOCK UPDATE SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2201118822] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2201986941] Expected: Should save dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 2202554382] Running SAVE-BUFFERS.no_dirty: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2203193874] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2204059410] Expected: Should handle no dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 2204651820] SAVE-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2205304395] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2206007433] Testing word: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2206582476] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2207057307] Running EMPTY-BUFFERS.basic: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2207926581] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2208812340] Expected: Should invalidate all buffers +[Hera] [HADES][TEST ] [KRELTSC: 2209404645] Running EMPTY-BUFFERS.after_use: 1 BLOCK EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2210125092] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2210994114] Expected: Should invalidate used buffers +[Hera] [HADES][TEST ] [KRELTSC: 2211590346] Running EMPTY-BUFFERS.dirty_blocks: 1 BLOCK UPDATE EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 2212388010] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2213276016] Expected: Should handle dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 2213866410] EMPTY-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2214534462] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2215241658] Testing word: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 2215686018] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2216173638] Running FLUSH.basic: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 2216778375] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2217589059] Expected: Should save and invalidate buffers +[Hera] [HADES][TEST ] [KRELTSC: 2218208265] Running FLUSH.dirty_blocks: 1 BLOCK UPDATE FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 2218970670] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2219783769] Expected: Should flush dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 2220350811] Running FLUSH.after_empty: EMPTY-BUFFERS FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 2221029699] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2221847544] Expected: Should handle empty buffers +[Hera] [HADES][TEST ] [KRELTSC: 2222462718] FLUSH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2223083499] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2223783450] Testing word: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 2224221468] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2224695879] Running LOAD.basic: 1 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 2225404251] Test passed +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2226208425] Expected: Should interpret block 1 +[Hera] [HADES][TEST ] [KRELTSC: 2226767949] Running LOAD.zero_block: 0 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 2227344168] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2228218545] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 2228761626] Running LOAD.nonexistent: 9999 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 2229346392] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2230224318] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 2230799907] Running LOAD.empty_stack: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 2231360145] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2232241347] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2232827058] LOAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2233450212] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2234151381] Testing word: LIST +[Hera] [HADES][TEST ] [KRELTSC: 2234591205] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2235092580] 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: 2244866085] Test passed +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2245670847] Expected: Should display block 1 +[Hera] [HADES][TEST ] [KRELTSC: 2246235348] Running LIST.zero_block: 0 LIST +[Hera] [HADES][TEST ] [KRELTSC: 2246805666] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2247704256] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 2248277934] Running LIST.nonexistent: 9999 LIST +[Hera] [HADES][TEST ] [KRELTSC: 2248857933] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2249725989] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 2250311364] Running LIST.empty_stack: LIST +[Hera] [HADES][TEST ] [KRELTSC: 2250862488] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2251736991] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2252345382] LIST: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2252945079] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2253644442] Testing word: SCR +[Hera] [HADES][TEST ] [KRELTSC: 2254076181] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2254562415] Running SCR.basic: SCR @ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2255218140] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2256021852] Expected: Should show current block +[Hera] [HADES][TEST ] [KRELTSC: 2256634905] 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: 2266085073] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2266888029] Expected: Should update after LIST +[Hera] [HADES][TEST ] [KRELTSC: 2267475924] Running SCR.after_load: 1 LOAD SCR @ . CR +[Hera] [HADES][TEST ] [KRELTSC: 2268105378] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2268906108] Expected: Should update after LOAD +[Hera] [HADES][TEST ] [KRELTSC: 2269503348] SCR: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2270099097] â–¶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2270800308] Testing word: THRU +[Hera] [HADES][TEST ] [KRELTSC: 2271253257] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2271729096] Running THRU.single_block: 1 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2272602066] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2273446455] Expected: Should load single block (1-1) +[Hera] [HADES][TEST ] [KRELTSC: 2274042624] Running THRU.ascending: 1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2274653892] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2275474320] Expected: Should load blocks 1-3 in order +[Hera] [HADES][TEST ] [KRELTSC: 2276084475] Running THRU.descending: 3 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2276733837] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2277576735] Expected: Should auto-swap and load 1-3 +[Hera] [HADES][TEST ] [KRELTSC: 2278173534] Running THRU.same_block: 2 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2278757523] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2279570055] Expected: Should load single block (2-2) +[Hera] [HADES][TEST ] [KRELTSC: 2280162717] Running THRU.zero_start: 0 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2280740994] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2281628034] Expected: Should reject block 0 as start +[Hera] [HADES][TEST ] [KRELTSC: 2282229306] Running THRU.zero_end: 1 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2282776503] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2283646071] Expected: Should reject block 0 as end +[Hera] [HADES][TEST ] [KRELTSC: 2284248855] Running THRU.both_zero: 0 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2284802457] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2285673453] Expected: Should reject both blocks as 0 +[Hera] [HADES][TEST ] [KRELTSC: 2286283020] Running THRU.invalid_start: 9999 10000 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2286904200] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2287774146] Expected: Should reject invalid start block +[Hera] [HADES][TEST ] [KRELTSC: 2288406414] Running THRU.invalid_end: 1 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2288989437] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2289860181] Expected: Should reject invalid end block +[Hera] [HADES][TEST ] [KRELTSC: 2290472436] Running THRU.both_invalid: 9998 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2291078160] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2291948211] Expected: Should reject both invalid blocks +[Hera] [HADES][TEST ] [KRELTSC: 2292573381] Running THRU.empty_stack: THRU +[Hera] [HADES][TEST ] [KRELTSC: 2293124001] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2293996950] Expected: Should cause stack underflow (no args) +[Hera] [HADES][TEST ] [KRELTSC: 2294666682] Running THRU.one_arg: 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2295194958] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2296065366] Expected: Should cause stack underflow (one arg) +[Hera] [HADES][TEST ] [KRELTSC: 2296725606] Running THRU.small_range: 1 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2297331981] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2298127881] Expected: Should load 2-block range +[Hera] [HADES][TEST ] [KRELTSC: 2298747003] Running THRU.medium_range: 1 5 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2299415034] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2300210052] Expected: Should load 5-block range +[Hera] [HADES][TEST ] [KRELTSC: 2300899209] Running THRU.negative_start: -1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2301587484] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2302467699] Expected: Should handle negative start +[Hera] [HADES][TEST ] [KRELTSC: 2303120631] Running THRU.negative_end: 1 -3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2303763840] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2304664992] Expected: Should handle negative end +[Hera] [HADES][TEST ] [KRELTSC: 2305244970] Running THRU.both_negative: -3 -1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 2305834923] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2306705478] Expected: Should handle both negative +[Hera] [HADES][TEST ] [KRELTSC: 2307311370] THRU: 17 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2307984231] === Block Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2308777821] +[Hera] === Testing Module: Dictionary Words === +[Hera] [HADES][INFO ] [KRELTSC: 2309473803] Running Dictionary Words Tests (Module 4)... +[Hera] [HADES][TEST ] [KRELTSC: 2310151620] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 2310596589] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2311088535] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2311815849] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2312611707] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2313135363] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 SWAP / +[Hera] [HADES][TEST ] [KRELTSC: 2313987060] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2314785291] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes on 64-bit) +[Hera] [HADES][TEST ] [KRELTSC: 2315571069] Running HERE.after_c_comma: HERE 65 C, HERE SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2316391560] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2317188258] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 2317727307] Running HERE.after_allot: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 2318566215] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2319386286] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 2319901101] Running HERE.stability: HERE DUP HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2320652103] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2321466105] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 2321987052] HERE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2322633012] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 2323081110] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2323571040] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 2324374353] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2325202236] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 2325724548] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2326495542] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2327300283] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2327817807] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 2328634602] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2329439385] Expected: Should print: -4 +[Hera] [HADES][TEST ] [KRELTSC: 2329964742] Running ALLOT.large: HERE 100 ALLOT HERE SWAP - . CR +[Hera] 100 +[Hera] [HADES][TEST ] [KRELTSC: 2330766522] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2331570486] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 2332100568] Running ALLOT.after_use: ALIGN HERE 10 ALLOT 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2333037630] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2333841825] Expected: Should store and retrieve +[Hera] [HADES][TEST ] [KRELTSC: 2334420123] Running ALLOT.empty_stack: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 2335011441] Expected error occurred +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2335893525] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2336497821] ALLOT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2337106359] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 2337527325] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2338013979] Running ,.basic: 42 , HERE 1 CELLS - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2338787913] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2339700468] Expected: Should compile 42 +[Hera] [HADES][TEST ] [KRELTSC: 2340356508] Running ,.negative: -999 , HERE 1 CELLS - @ . CR +[Hera] [HADES][INFO ] [KRELTSC: 2341170951] L8[TABLE]: Config 1 → 2 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 43,430000,10000,0,0,177,72,27,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 2342808594] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2343589479] Expected: Should compile -999 +[Hera] [HADES][TEST ] [KRELTSC: 2344118679] Running ,.zero: 0 , HERE 1 CELLS - @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2344863822] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2345650734] Expected: Should compile 0 +[Hera] [HADES][TEST ] [KRELTSC: 2346160887] Running ,.max_int: 2147483647 , HERE 1 CELLS - @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2347038645] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2347823121] Expected: Should compile max int +[Hera] [HADES][TEST ] [KRELTSC: 2348369037] Running ,.min_int: -2147483648 , HERE 1 CELLS - @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2349251982] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2350030641] Expected: Should compile min int +[Hera] [HADES][TEST ] [KRELTSC: 2350576557] Running ,.multiple: 10 , 20 , HERE 1 CELLS - @ . HERE 1 CELLS - @ . CR +[Hera] 20 20 +[Hera] [HADES][TEST ] [KRELTSC: 2351601945] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2352406644] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 2352979356] Running ,.empty_stack: , +[Hera] [HADES][TEST ] [KRELTSC: 2353543458] Expected error occurred +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2354400636] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2355001698] ,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2355597216] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 2356024692] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2356501140] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 2357255418] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2358042981] Expected: Should compile byte 65 +[Hera] [HADES][TEST ] [KRELTSC: 2358588036] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2359312578] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2360111796] Expected: Should compile byte 0 +[Hera] [HADES][TEST ] [KRELTSC: 2360667162] Running C,.high_byte: 255 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2361443301] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2362228911] Expected: Should compile byte 255 +[Hera] [HADES][TEST ] [KRELTSC: 2362779363] Running C,.truncation: 256 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2363539479] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2364331326] Expected: Should truncate to 0 +[Hera] [HADES][TEST ] [KRELTSC: 2364863445] Running C,.negative: -1 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2365619067] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2366403732] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2366948556] Running C,.multiple: 65 C, 66 C, HERE 2 - C@ . HERE 1 - C@ . CR +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 2367882510] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2368674105] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 2369225754] Running C,.empty_stack: C, +[Hera] [HADES][TEST ] [KRELTSC: 2369791578] Expected error occurred +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2370655959] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2371237701] C,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2371850544] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 2372276760] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2372750751] Running 2,.basic: 12345 67890 2, HERE 2 CELLS - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 2373667548] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2374469160] Expected: Should compile double +[Hera] [HADES][TEST ] [KRELTSC: 2375016210] Running 2,.zero: 0 0 2, HERE 2 CELLS - 2@ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2375810241] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2376608073] Expected: Should compile zero double +[Hera] [HADES][TEST ] [KRELTSC: 2377197774] Running 2,.negative: -1000 -2000 2, HERE 2 CELLS - 2@ . . CR +[Hera] -2000 -1000 +[Hera] [HADES][TEST ] [KRELTSC: 2378128494] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2378914545] Expected: Should compile negative double +[Hera] [HADES][TEST ] [KRELTSC: 2379600867] Running 2,.large: 2147483647 -1 2, HERE 2 CELLS - 2@ . . CR +[Hera] -1 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2380637763] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2381456406] Expected: Should compile large double +[Hera] [HADES][TEST ] [KRELTSC: 2382031953] Running 2,.one_item: 42 2, +[Hera] [HADES][TEST ] [KRELTSC: 2382619974] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2383480722] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2384062926] Running 2,.empty_stack: 2, +[Hera] [HADES][TEST ] [KRELTSC: 2384586708] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2385452832] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2386039572] 2,: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2386640088] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 2387072982] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2387553147] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2388222165] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2389024974] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2389533237] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2390271576] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2391101118] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2391612552] Running PAD.stability: PAD DUP PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2392350471] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2393154036] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 2393663202] Running PAD.usable: PAD 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2394381003] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2395182090] Expected: Should be usable memory +[Hera] [HADES][TEST ] [KRELTSC: 2395733445] PAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2396325288] Testing word: SP@ +[Hera] [HADES][TEST ] [KRELTSC: 2396755830] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2397260376] Running SP@.depth_effect: 42 SP@ SWAP DROP SP@ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2398192524] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2399009823] Expected: Should show stack effect +[Hera] [HADES][TEST ] [KRELTSC: 2399567982] Running SP@.empty_stack: DEPTH 0= SP@ AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2400319740] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2401124733] Expected: Should work on empty stack +[Hera] [HADES][TEST ] [KRELTSC: 2401693203] Running SP@.multiple_items: 1 2 3 SP@ SWAP DROP SWAP DROP SWAP DROP SP@ = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2402719032] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2403538242] Expected: Should track changes +[Hera] [HADES][TEST ] [KRELTSC: 2404071852] SP@: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2404664787] Testing word: SP! +[Hera] [HADES][TEST ] [KRELTSC: 2405096043] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2405587128] Running SP!.basic_restore: 1 2 3 SP@ 4 5 6 DROP DROP DROP SP! DEPTH . +[Hera] 3 [HADES][TEST ] [KRELTSC: 2406594981] Test passed +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2407398126] Expected: Should restore stack +[Hera] [HADES][TEST ] [KRELTSC: 2407934466] Running SP!.invalid_addr: 0 SP! +[Hera] [HADES][TEST ] [KRELTSC: 2408517741] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2409386700] Expected: Should cause error +[Hera] [HADES][TEST ] [KRELTSC: 2409922410] Running SP!.empty_stack: SP! +[Hera] [HADES][TEST ] [KRELTSC: 2410468284] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2411337852] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2411938536] SP!: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2412536868] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 2412990405] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2413469289] Running LATEST.basic: LATEST LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2414250720] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2415065604] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2415579747] Running LATEST.stability: LATEST DUP LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2416368297] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2417180640] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 2417692830] LATEST: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2418322725] Testing word: COMPILATION +[Hera] [HADES][TEST ] [KRELTSC: 2418811332] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2419286352] Running COMPILATION.here_comma_sequence: HERE 10 , 20 , 30 , HERE SWAP - 12 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2420309682] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2421158019] Expected: Should advance HERE by 12 +[Hera] [HADES][TEST ] [KRELTSC: 2421722058] Running COMPILATION.mixed_compilation: HERE 42 , 65 C, 100 200 2, HERE SWAP - 13 = . CR +[Hera] [HADES][INFO ] [KRELTSC: 2423075130] L8[TABLE]: Config 2 → 3 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 44,440000,10000,0,0,199,77,28,4096,24,0,0,0,65536,0,0,65536,0,0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2424889551] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2425740303] Expected: Should advance correctly +[Hera] [HADES][TEST ] [KRELTSC: 2426334393] Running COMPILATION.allot_comma_combo: HERE 10 ALLOT 99 , HERE SWAP - 14 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2427344073] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2428186215] Expected: Should combine allot and comma +[Hera] [HADES][TEST ] [KRELTSC: 2428795383] Running COMPILATION.pad_isolation: PAD 999 OVER ! HERE 42 , PAD @ 999 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2429815143] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2430703548] Expected: PAD should be isolated +[Hera] [HADES][TEST ] [KRELTSC: 2431272165] COMPILATION: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2431921884] Testing word: STACK_MGMT +[Hera] [HADES][TEST ] [KRELTSC: 2432397954] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2432889249] Running STACK_MGMT.sp_round_trip: 42 43 SP@ >R 44 45 R> SP! . . CR +[Hera] 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 2433820746] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2434670238] Expected: Should print: 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 2435201118] Running STACK_MGMT.depth_preservation: 1 2 3 DEPTH >R SP@ >R 4 5 6 R> SP! R> DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2436276885] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2437122996] Expected: Should preserve depth +[Hera] [HADES][TEST ] [KRELTSC: 2437665132] STACK_MGMT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2438364201] === Dictionary Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2439173163] +[Hera] === Testing Module: Dictionary Manipulation Words === +[Hera] [HADES][INFO ] [KRELTSC: 2439911649] Running Dictionary Manipulation Words Tests (Module 14)... +[Hera] [HADES][TEST ] [KRELTSC: 2440672038] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2441520291] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2441981640] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2442457773] Running CREATE.basic: CREATE test1 42 , test1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2443768110] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2444591835] Expected: Should create and store +[Hera] [HADES][TEST ] [KRELTSC: 2445163728] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2445743349] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2446629759] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 2447204361] Running CREATE.redefine_shadows: CREATE T 1 , CREATE T 2 , T @ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 2448183339] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2448994989] Expected: Newest definition should win (prints 2) +[Hera] [HADES][TEST ] [KRELTSC: 2449658190] Running CREATE.duplicate: CREATE test2 CREATE test2 +[Hera] [HADES][TEST ] [KRELTSC: 2450393757] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2451251061] Expected: Should allow redefinition (latest shadows) +[Hera] [HADES][TEST ] [KRELTSC: 2451933351] CREATE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2452587186] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2453397009] Testing word: FORGET +[Hera] [HADES][TEST ] [KRELTSC: 2453860584] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2454344865] Running FORGET.basic: CREATE temp1 FORGET temp1 +[Hera] [HADES][TEST ] [KRELTSC: 2456015205] Test passed +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2456858523] Expected: Should forget word +[Hera] [HADES][TEST ] [KRELTSC: 2457407778] Running FORGET.nonexistent: FORGET nonexistent +[Hera] [HADES][TEST ] [KRELTSC: 2458187298] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2459086602] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 2459659692] Running FORGET.protected: FORGET FORGET +[Hera] [HADES][TEST ] [KRELTSC: 2460313947] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2461208148] Expected: Should protect system words +[Hera] [HADES][TEST ] [KRELTSC: 2461788042] FORGET: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2462416383] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2463228180] Testing word: IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2463698118] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2464187838] Running IMMEDIATE.basic: : test3 42 ; IMMEDIATE test3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2465364153] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2466156567] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2466864813] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2467696140] Expected: Should execute immediately +[Hera] [HADES][TEST ] [KRELTSC: 2468292183] Running IMMEDIATE.already_immediate: : test4 43 ; IMMEDIATE IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2469147996] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2469982662] Expected: Should handle double immediate +[Hera] [HADES][TEST ] [KRELTSC: 2470592355] IMMEDIATE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2471232729] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2472041103] Testing word: FIND +[Hera] [HADES][TEST ] [KRELTSC: 2472489726] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2472965376] Running FIND.existing: FIND DUP . CR +[Hera] 3193423968 +[Hera] [HADES][TEST ] [KRELTSC: 2473853991] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2474672025] Expected: Should find system word +[Hera] [HADES][TEST ] [KRELTSC: 2475225711] Running FIND.user_word: : test5 44 ; FIND test5 . CR +[Hera] 3193590032 +[Hera] [HADES][TEST ] [KRELTSC: 2476124973] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2476940634] Expected: Should find user word +[Hera] [HADES][TEST ] [KRELTSC: 2477482119] Running FIND.nonexistent: FIND nonexistent . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2478223293] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2479041474] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 2479548561] Running FIND.empty: FIND +[Hera] [HADES][TEST ] [KRELTSC: 2480065686] Expected error occurred +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2480954175] Expected: Should error (no token) +[Hera] [HADES][TEST ] [KRELTSC: 2481555888] FIND: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2482165581] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2482988676] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2483482806] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2483970048] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2484679533] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2485535703] Expected: Should set current to context +[Hera] [HADES][TEST ] [KRELTSC: 2486124774] Running DEFINITIONS.multiple: FORTH DEFINITIONS DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2486876133] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2487746499] Expected: Should be idempotent +[Hera] [HADES][TEST ] [KRELTSC: 2488280151] DEFINITIONS: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2488919034] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2489738433] Testing word: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 2490185376] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2490656301] Running SMUDGE.during_def: : test6 SMUDGE 45 ; +[Hera] [HADES][TEST ] [KRELTSC: 2491380024] Test passed +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2492193102] Expected: Should hide incomplete def +[Hera] [HADES][TEST ] [KRELTSC: 2492760522] Running SMUDGE.outside_def: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 2493415029] Expected error occurred +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2494312506] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 2494874151] SMUDGE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2495501316] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2496311853] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 2496764403] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2497241040] Running LATEST.basic: LATEST @ . CR +[Hera] 3193464592 +[Hera] [HADES][TEST ] [KRELTSC: 2498034798] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2498846448] Expected: Should show latest word +[Hera] [HADES][TEST ] [KRELTSC: 2499399504] Running LATEST.after_def: : test7 46 ; LATEST @ . CR +[Hera] 3193485336 +[Hera] [HADES][TEST ] [KRELTSC: 2500302609] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2501114889] Expected: Should update after def +[Hera] [HADES][TEST ] [KRELTSC: 2501681553] Running LATEST.after_forget: CREATE test8 FORGET test8 LATEST @ . CR +[Hera] 3193485336 +[Hera] [HADES][TEST ] [KRELTSC: 2502724539] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2503534824] Expected: Should update after forget +[Hera] [HADES][TEST ] [KRELTSC: 2504117973] LATEST: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2504736003] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2505541101] Testing word: >BODY +[Hera] [HADES][TEST ] [KRELTSC: 2505993315] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2506497525] Running >BODY.basic: CREATE test9 ' test9 >BODY . CR +[Hera] 3193591112 +[Hera] [HADES][TEST ] [KRELTSC: 2507706411] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2508528330] Expected: Should get param field +[Hera] [HADES][TEST ] [KRELTSC: 2509083171] Running >BODY.variable: VARIABLE var1 ' var1 >BODY . CR +[Hera] 3193591352 +[Hera] [HADES][TEST ] [KRELTSC: 2510181534] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2510996292] Expected: Should get var storage +[Hera] [HADES][TEST ] [KRELTSC: 2511556362] Running >BODY.nonexistent: ' NONEXISTENT >BODY +[Hera] [HADES][ERROR] [KRELTSC: 2512219206] ': word 'NONEXISTENT' not found +[Hera] [HADES][TEST ] [KRELTSC: 2512757394] Expected error occurred +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2513693280] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 2514357237] >BODY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2514991164] â–¶ Testing module: src/test_runner/modules/dictionary_manipulation_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2515854978] Testing word: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 2516304357] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2516800503] Running HIDDEN.basic: : test10 HIDDEN 47 ; +[Hera] [HADES][TEST ] [KRELTSC: 2517660978] Test passed +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2518503162] Expected: Should hide word +[Hera] [HADES][TEST ] [KRELTSC: 2519016402] Running HIDDEN.outside_def: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 2519714673] Expected error occurred +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2520619164] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 2521193325] HIDDEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2521831851] === Dictionary Manipulation Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2522712570] +[Hera] === Testing Module: Vocabulary Words === +[Hera] [HADES][INFO ] [KRELTSC: 2523360147] Running Vocabulary Words Tests (Module 15)... +[Hera] [HADES][TEST ] [KRELTSC: 2524098843] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2524881954] Testing word: VOCABULARY +[Hera] [HADES][TEST ] [KRELTSC: 2525358087] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2525841045] Running VOCABULARY.basic: VOCABULARY TEST-VOC1 TEST-VOC1 DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2527909818] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2528772834] Expected: Should create vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 2529354093] Running VOCABULARY.create_and_switch: VOCABULARY MYVOC MYVOC DEFINITIONS CONTEXT @ . CR +[Hera] 3193592024 +[Hera] [HADES][TEST ] [KRELTSC: 2531302431] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2532147051] Expected: Should create and switch +[Hera] [HADES][TEST ] [KRELTSC: 2532713043] Running VOCABULARY.word_isolation: VOCABULARY ISOLATED ISOLATED DEFINITIONS : ISOWORD 99 ; FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2534913990] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2535784440] Expected: Should create word in isolated vocab +[Hera] [HADES][TEST ] [KRELTSC: 2536419186] Running VOCABULARY.cross_vocab_access: VOCABULARY V1 V1 DEFINITIONS : V1WORD 11 ; FORTH V1WORD . CR +[Hera] [HADES][INFO ] [KRELTSC: 2538543063] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2539136502] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 11 +[Hera] [HADES][TEST ] [KRELTSC: 2539829649] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2540696760] Expected: Should access word across vocabs +[Hera] [HADES][TEST ] [KRELTSC: 2541306096] Running VOCABULARY.multiple_vocabs: VOCABULARY VA VOCABULARY VB VOCABULARY VC VA DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2543007810] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2543860662] Expected: Should create multiple vocabs +[Hera] [HADES][TEST ] [KRELTSC: 2544451056] Running VOCABULARY.duplicate: VOCABULARY TESTVOC VOCABULARY TESTVOC +[Hera] [HADES][ERROR] [KRELTSC: 2545302165] VOCABULARY: duplicate 'TESTVOC' +[Hera] [HADES][TEST ] [KRELTSC: 2545848711] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2546761686] Expected: Should handle duplicate +[Hera] [HADES][TEST ] [KRELTSC: 2547326460] Running VOCABULARY.empty_name: VOCABULARY +[Hera] [HADES][ERROR] [KRELTSC: 2548034265] VOCABULARY: missing name +[Hera] [HADES][TEST ] [KRELTSC: 2548530579] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2549458233] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 2550038253] VOCABULARY: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2550708741] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2551450566] Testing word: FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2551903977] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2552395125] Running FORTH.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2553558042] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2554384203] Expected: Should select FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 2554949502] Running FORTH.persistence: FORTH : TEST1 42 ; TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2555787234] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2556406545] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2557088835] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2557900170] Expected: Should find word in FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2558480778] Running FORTH.from_other: VOCABULARY OTHER-VOC OTHER-VOC FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2559847374] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2560670952] Expected: Should return to FORTH +[Hera] [HADES][TEST ] [KRELTSC: 2561218674] FORTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2561827737] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2562602847] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2563082529] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2563557234] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2564775696] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2565673089] Expected: Should set current vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 2566268229] Running DEFINITIONS.new_vocab: VOCABULARY TEST-VOC6 TEST-VOC6 DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 2567749968] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2568591711] Expected: Should set new current +[Hera] [HADES][TEST ] [KRELTSC: 2569178283] Running DEFINITIONS.word_creation: VOCABULARY TEST-VOC7 TEST-VOC7 DEFINITIONS : TEST2 43 ; +[Hera] [HADES][TEST ] [KRELTSC: 2570926806] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2571799272] Expected: Should create in correct vocab +[Hera] [HADES][TEST ] [KRELTSC: 2572399473] DEFINITIONS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2573067273] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2573801412] Testing word: CONTEXT +[Hera] [HADES][TEST ] [KRELTSC: 2574269565] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2574765774] Running CONTEXT.basic: CONTEXT @ . CR +[Hera] 3193594928 +[Hera] [HADES][TEST ] [KRELTSC: 2575616799] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2576434623] Expected: Should show current context +[Hera] [HADES][TEST ] [KRELTSC: 2577012081] Running CONTEXT.modify: CONTEXT @ 1+ CONTEXT ! +[Hera] [HADES][TEST ] [KRELTSC: 2577707769] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2578534455] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 2579245074] Running CONTEXT.initial: FORTH CONTEXT @ . CR +[Hera] 3193469664 +[Hera] [HADES][TEST ] [KRELTSC: 2580502722] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2581332831] Expected: Should show FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 2581886202] CONTEXT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2582505261] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2583236019] Testing word: CURRENT +[Hera] [HADES][TEST ] [KRELTSC: 2583720594] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2584194165] Running CURRENT.basic: CURRENT @ . CR +[Hera] 3193594928 +[Hera] [HADES][TEST ] [KRELTSC: 2585062536] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2585935002] Expected: Should show current vocab +[Hera] [HADES][TEST ] [KRELTSC: 2586500847] Running CURRENT.after_def: VOCABULARY TEST-VOC8 TEST-VOC8 DEFINITIONS CURRENT @ . CR +[Hera] 3193595416 +[Hera] [HADES][TEST ] [KRELTSC: 2588179566] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2588999721] Expected: Should show new vocab +[Hera] [HADES][TEST ] [KRELTSC: 2589543663] Running CURRENT.protect: CURRENT @ 1+ CURRENT ! +[Hera] [HADES][TEST ] [KRELTSC: 2590232337] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2591058099] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 2591797404] CURRENT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2592421608] â–¶ Testing module: src/test_runner/modules/vocabulary_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2593163034] Testing word: ORDER +[Hera] [HADES][TEST ] [KRELTSC: 2593607835] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2594095812] Running ORDER.basic: ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 2595352872] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2596177563] Expected: Should list search order +[Hera] [HADES][TEST ] [KRELTSC: 2596738767] Running ORDER.multiple: VOCABULARY TEST-VOC9 TEST-VOC9 DEFINITIONS ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 2598575364] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2599382688] Expected: Should show all vocabs +[Hera] [HADES][TEST ] [KRELTSC: 2599930746] Running ORDER.after_forth: TEST-VOC9 FORTH ORDER +[Hera] Search order: + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 2601371997] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2602174785] Expected: Should show FORTH only +[Hera] [HADES][TEST ] [KRELTSC: 2602738803] ORDER: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2603373339] === Vocabulary Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2604158109] +[Hera] === Testing Module: System Words === +[Hera] [HADES][INFO ] [KRELTSC: 2604796236] Running System Words Tests (Module 18)... +[Hera] [HADES][WARN ] [KRELTSC: 2605384299] Some system tests marked as unimplemented due to system-level effects +[Hera] [HADES][TEST ] [KRELTSC: 2606175579] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2606917845] Testing word: QUIT +[Hera] [HADES][TEST ] [KRELTSC: 2607358929] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2607860094] Running QUIT.in_definition: : BAD-WORD QUIT ; +[Hera] [HADES][TEST ] [KRELTSC: 2608705806] Expected error occurred +[Hera] [HADES][TEST ] Testing QUIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2609600847] Expected: Should prevent compilation +[Hera] [HADES][TEST ] [KRELTSC: 2610172782] QUIT: 1 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2610820317] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2611524531] Testing word: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 2611966560] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2612439774] Running ABORT.basic: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 2613213267] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2614030860] Expected: Should clear stacks and return to QUIT +[Hera] [HADES][TEST ] [KRELTSC: 2614674048] Running ABORT.with_data: 1 2 3 ABORT DEPTH . CR +[Hera] [HADES][INFO ] [KRELTSC: 2615726862] L8[TABLE]: Config 3 → 4 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 45,450000,10000,0,0,223,82,26,4096,30,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][TEST ] [KRELTSC: 2617235964] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2618041965] Expected: Should clear stack +[Hera] [HADES][TEST ] [KRELTSC: 2618565054] Running ABORT.in_definition_runtime: : BAD-WORD ABORT ; 123 BAD-WORD DEPTH . CR +[Hera] [HADES][INFO ] [KRELTSC: 2619530655] ECW: w=0xbe5889f0 func=0xbe09746a 'ABORT' +[Hera] [HADES][TEST ] [KRELTSC: 2620226973] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2621046036] Expected: ABORT may appear in a definition; when executed it clears both stacks +[Hera] [HADES][TEST ] [KRELTSC: 2621897607] ABORT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2622505053] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2623228545] Testing word: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 2623677714] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2624154603] Running ABORT".condition_true: -1 ABORT" Error" + +[Hera] [HADES][TEST ] [KRELTSC: 2625309309] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2626134651] Expected: Should abort with message (no error; stacks cleared to QUIT) +[Hera] [HADES][TEST ] [KRELTSC: 2626908522] Running ABORT".condition_false: 0 ABORT" Error" +[Hera] [HADES][TEST ] [KRELTSC: 2627586885] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2628402399] Expected: Should not abort +[Hera] [HADES][TEST ] [KRELTSC: 2628914190] Running ABORT".empty_stack: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 2629550427] Expected error occurred +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2630621553] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2631306237] ABORT": 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2631978657] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2632693833] Testing word: BYE +[Hera] [HADES][TEST ] [KRELTSC: 2633132397] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2633609412] BYE: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2634243024] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2634951291] Testing word: COLD +[Hera] [HADES][TEST ] [KRELTSC: 2635390695] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2635881003] COLD: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2636481897] â–¶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2637200118] Testing word: WARM +[Hera] [HADES][TEST ] [KRELTSC: 2637639711] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2638128360] WARM: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2638769595] === System Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2639545965] +[Hera] === Testing Module: Defining Words === +[Hera] [HADES][INFO ] [KRELTSC: 2640201354] Running Defining Words Tests (Module 13)... +[Hera] [HADES][TEST ] [KRELTSC: 2640870204] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2641629396] Testing word: : +[Hera] [HADES][TEST ] [KRELTSC: 2642050383] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2642608353] Running :.basic: : TEST1 42 ; TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2643426219] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2644015437] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2644727337] Test passed +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2645507739] Expected: Should define and execute +[Hera] [HADES][TEST ] [KRELTSC: 2646074424] Running :.empty_name: : +[Hera] [HADES][TEST ] [KRELTSC: 2646640437] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2647505343] Expected: Should handle empty definition +[Hera] [HADES][TEST ] [KRELTSC: 2648100693] Running :.nested: : TEST3 : ; +[Hera] [HADES][ERROR] [KRELTSC: 2648712339] Nested ':' inside a definition is not allowed +[Hera] [HADES][TEST ] [KRELTSC: 2649334905] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2650258191] Expected: Should prevent nested definition +[Hera] [HADES][TEST ] [KRELTSC: 2650887813] :: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2651531778] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2652256446] Testing word: ; +[Hera] [HADES][TEST ] [KRELTSC: 2652693645] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2653175931] Running ;.alone: ; +[Hera] [HADES][TEST ] [KRELTSC: 2653798602] Expected error occurred +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2654673987] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2655273432] Running ;.immediate: : TEST4 42 ; IMMEDIATE TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2656073259] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2656651872] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2657340546] Test passed +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2658118113] Expected: Should handle immediate +[Hera] [HADES][TEST ] [KRELTSC: 2658670371] ;: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2659265742] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2659987743] Testing word: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 2660448840] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2660922726] Running CONSTANT.basic: 42 CONSTANT MEANING MEANING . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2662145934] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2662970289] Expected: Should create constant +[Hera] [HADES][TEST ] [KRELTSC: 2663538192] Running CONSTANT.zero: 0 CONSTANT ZERO ZERO . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2664329178] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2665167855] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2665692477] Running CONSTANT.negative: -1 CONSTANT MINUS MINUS . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2666604843] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2667608349] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2668212561] Running CONSTANT.empty_stack: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 2668924461] Expected error occurred +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2669915682] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2670557988] CONSTANT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2671238745] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2672039895] Testing word: VARIABLE +[Hera] [HADES][TEST ] [KRELTSC: 2672542824] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2673060390] Running VARIABLE.basic: VARIABLE VAR1 42 VAR1 ! VAR1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2674313040] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2675252643] Expected: Should create variable +[Hera] [HADES][TEST ] [KRELTSC: 2675877057] Running VARIABLE.multiple: VARIABLE VAR2 VARIABLE VAR3 +[Hera] [HADES][TEST ] [KRELTSC: 2676698892] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2677598133] Expected: Should create multiple +[Hera] [HADES][TEST ] [KRELTSC: 2678203983] Running VARIABLE.store_fetch: VARIABLE VAR4 -99 VAR4 ! VAR4 @ . CR +[Hera] -99 +[Hera] [HADES][TEST ] [KRELTSC: 2679199950] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2680044045] Expected: Should store/fetch +[Hera] [HADES][TEST ] [KRELTSC: 2680567323] VARIABLE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2681192304] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2681926380] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2682374919] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2682846999] Running CREATE.basic: CREATE OBJ1 +[Hera] [HADES][TEST ] [KRELTSC: 2683494513] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2684327289] Expected: Should create word +[Hera] [HADES][TEST ] [KRELTSC: 2684960544] Running CREATE.with_data: CREATE OBJ2 42 , OBJ2 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2685905775] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2686734057] Expected: Should allow data +[Hera] [HADES][TEST ] [KRELTSC: 2687250027] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 2687801004] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2688696381] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 2689254708] CREATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2689877232] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2690613429] Testing word: DOES> +[Hera] [HADES][TEST ] [KRELTSC: 2691059322] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2691542658] Running DOES>.basic: : CONST CREATE , DOES> @ ; 42 CONST MEANING MEANING . CR +[Hera] [HADES][INFO ] [KRELTSC: 2692938696] ECW: w=0xbe589268 func=0xbe085ea8 'CREATE' +[Hera] [HADES][INFO ] [KRELTSC: 2693590158] ECW: w=0xbe585db0 func=0xbe0881ba ',' +[Hera] [HADES][INFO ] [KRELTSC: 2694165957] ECW: w=0xbe589dc8 func=0xbe085ce8 'does_rt' +[Hera] [HADES][INFO ] [KRELTSC: 2695076517] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2696427636] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2697254238] Expected: Should define behavior +[Hera] [HADES][TEST ] [KRELTSC: 2697805803] Running DOES>.multiple: : ARRAY CREATE DOES> SWAP CELLS + ; CREATE ARR 10 CELLS ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 2698886820] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2699701221] Expected: Should work with arrays +[Hera] [HADES][TEST ] [KRELTSC: 2700262236] Running DOES>.outside: DOES> +[Hera] [HADES][ERROR] [KRELTSC: 2700825519] DOES>: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2701286847] Expected error occurred +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2702165214] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2702772135] DOES>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2703398880] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2704128819] Testing word: [ +[Hera] [HADES][TEST ] [KRELTSC: 2704550331] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2705038182] Running [.basic: : TEST5 [ 42 ] LITERAL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2706067140] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2706775659] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2707572021] Expected: Should enter interpret +[Hera] [HADES][TEST ] [KRELTSC: 2708119911] Running [.outside: [ +[Hera] [HADES][TEST ] [KRELTSC: 2708601315] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2709394779] Expected: Should be allowed outside definition (no error) +[Hera] [HADES][TEST ] [KRELTSC: 2710092189] [: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2710674162] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2711408616] Testing word: ] +[Hera] [HADES][TEST ] [KRELTSC: 2711827881] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2712301347] Running ].basic: [ 42 ] . CR +[Hera] [HADES][TEST ] [KRELTSC: 2712921036] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2713715823] Expected: Should resume compile +[Hera] [HADES][TEST ] [KRELTSC: 2714256888] Running ].nested: : TEST6 [ ] 42 ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2714986113] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2715581421] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2716253190] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2717040900] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2717663277] ]: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2718245040] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2718965739] Testing word: DEFER +[Hera] [HADES][TEST ] [KRELTSC: 2719407516] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2719897677] Running DEFER.basic: DEFER DF1 : DF1W 42 . CR ; ' DF1W IS DF1 DF1 +[Hera] [HADES][INFO ] [KRELTSC: 2721317235] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2721927831] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 42 [HADES][INFO ] [KRELTSC: 2722549200] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2723091147] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2723691831] Test passed +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2724515115] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 2725040766] Running DEFER.uninit: DEFER DF2 DF2 +[Hera] [HADES][ERROR] [KRELTSC: 2725754892] DEFER runtime: no target set for 'DF2' +[Hera] [HADES][TEST ] [KRELTSC: 2726432520] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2727353370] Expected: Should error: uninitialized deferred word +[Hera] [HADES][TEST ] [KRELTSC: 2728035597] DEFER: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2728643673] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2729374221] Testing word: IS +[Hera] [HADES][TEST ] [KRELTSC: 2729800101] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2730287763] Running IS.basic: DEFER IS1 : IS1W 99 . CR ; ' IS1W IS IS1 IS1 +[Hera] [HADES][INFO ] [KRELTSC: 2731304688] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2731893738] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 2732538060] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 2733072027] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 2733679284] Test passed +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2734479363] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 2734991448] Running IS.not_defer: 42 IS DUP +[Hera] [HADES][ERROR] [KRELTSC: 2735570691] IS: 'DUP' was not created by DEFER +[Hera] [HADES][TEST ] [KRELTSC: 2736138279] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2737012131] Expected: Should error: DUP is not a DEFER word +[Hera] [HADES][TEST ] [KRELTSC: 2737648683] Running IS.not_found: 42 IS NOSUCH +[Hera] [HADES][ERROR] [KRELTSC: 2738229669] IS: word 'NOSUCH' not found +[Hera] [HADES][TEST ] [KRELTSC: 2738781864] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2739660357] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 2740247685] IS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2740850679] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2741571609] Testing word: DEFER@ +[Hera] [HADES][TEST ] [KRELTSC: 2742019602] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2742491850] Running DEFER@.basic: DEFER DFA1 : DFA1W 7 . CR ; ' DFA1W IS DFA1 DEFER@ DFA1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2743947381] Test passed +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2744775180] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2745291528] Running DEFER@.not_found: DEFER@ NOSUCH2 +[Hera] [HADES][ERROR] [KRELTSC: 2745908256] DEFER@: word 'NOSUCH2' not found +[Hera] [HADES][TEST ] [KRELTSC: 2746458519] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2747355996] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 2747939061] DEFER@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2748551190] â–¶ Testing module: src/test_runner/modules/defining_words_tests.c +[Hera] [HADES][TEST ] [KRELTSC: 2749285686] Testing word: ['] +[Hera] [HADES][TEST ] [KRELTSC: 2749718685] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2750194020] Running ['].compile_xt: : BKT1 ['] DUP ; 77 BKT1 EXECUTE . . CR +[Hera] [HADES][INFO ] [KRELTSC: 2751214620] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2751804510] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 2752635795] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2753445702] Expected: Should print: 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 2753975490] Running ['].pin_like: : BKT2 ['] DROP ; 1 2 BKT2 EXECUTE . CR +[Hera] [HADES][INFO ] [KRELTSC: 2754788925] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2755382658] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2756057808] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2756857299] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 2757374592] Running ['].not_found: : BKT3 ['] NOSUCHWORD ; +[Hera] [HADES][ERROR] [KRELTSC: 2758084434] [']': word 'NOSUCHWORD' not found +[Hera] [HADES][TEST ] [KRELTSC: 2758703220] Expected error occurred +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2759597148] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 2760204132] [']: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2760819348] === Defining Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 2761604223] +[Hera] === Testing Module: Control Words === +[Hera] [HADES][INFO ] [KRELTSC: 2762233677] Running Control Words Tests (Module 12)... +[Hera] [HADES][TEST ] [KRELTSC: 2762876676] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2763613167] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 2764052760] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2764528683] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2766250725] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2767002063] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2767590504] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2768294487] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2768979234] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2769775113] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 2770342701] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2771179593] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2771826771] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2772426573] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 2773119090] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2773908774] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 2774479869] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; -1 -1 TEST3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2775464958] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2776081623] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2776697595] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2777265288] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2777913180] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2778532932] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2779200018] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2779996128] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2780596098] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2781791082] L8[TABLE]: Config 4 → 5 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 46,460000,10000,0,0,202,85,24,4096,67,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2783310642] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2783920419] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2784491535] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2785183611] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2785969704] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2786528577] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 2787115275] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2787574734] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2788431933] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2789029383] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2789638026] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 2790066552] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2790545247] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2791475148] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2792086857] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2792654445] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2793268170] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2793941010] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2794725171] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 2795291961] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2796133263] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2796754506] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2797337613] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 2798005518] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2798795559] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 2799367095] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; -1 -1 TEST3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2800346535] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2800961247] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2801582196] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2802216417] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2802813972] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2803417323] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 2804097324] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2804881002] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 2805419946] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2806211226] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2806821465] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2807396781] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2808079008] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2808863526] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2809419417] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 2809941792] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2810374791] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2811231675] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2811814656] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2812476807] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2813212500] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2813653038] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2814142632] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 2814731787] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2815185093] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2816077509] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2816631363] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2817393012] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 2817837393] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2818726260] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2819315667] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2819935587] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2820390846] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2820865635] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 2821495656] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2821938315] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2822820903] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2823369822] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2824140144] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 2824597944] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2825464929] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 2826042030] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2826654369] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2827363350] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 2827798932] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2828271075] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 2828888055] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2829342369] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2830219308] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2830785153] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2831492265] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 2831969112] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 2832409965] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2833300743] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 2833866021] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2834467419] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 2834919255] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2835401079] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 2835963228] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2836403682] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2837328816] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 2837878491] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 2838569055] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 2838990462] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 2839446015] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2840315373] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 2840879013] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2841490554] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2842202790] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2842704228] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2843181831] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2844439227] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2845033107] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2845620309] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2846209422] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2846812563] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2847474651] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2848100724] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2848665225] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2849241150] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2849822325] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2850383340] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2851073946] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2851716693] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2852287242] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2852858799] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2853425064] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2854043766] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2854608603] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2855177220] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2855753922] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2856323673] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2856928893] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2857491756] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2858070033] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2858639721] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2859198510] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2859814692] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2860541649] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2861345403] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 2861910555] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2863410837] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2863999635] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2864642949] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2865214464] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2865780729] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2866431225] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2866998939] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2867613504] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2868183003] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2868765396] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2869322715] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2869926528] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2870496489] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2871129072] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2871697122] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2872273698] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2872847145] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2873451441] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2874014346] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2874609717] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2875188498] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2875756044] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2876312019] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2876930595] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2877525021] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2878124466] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2878699362] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2879305800] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2879864694] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2880469011] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2881041807] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2881640853] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2882208420] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2882782665] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2883363105] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2883967422] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2884663677] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2885482803] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 2886092937] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 2886671781] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2887144470] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2888039112] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2888642043] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2889258204] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2889714786] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2890190226] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2891209797] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2891821107] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2892385272] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2892950844] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2893522968] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2894098578] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2894702307] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2895263679] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2895853233] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2896421136] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2896985049] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2897587224] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2898164052] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2898732333] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2899298619] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2899873452] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2900482389] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2901046260] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2901622185] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2902202478] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2902758831] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2903360376] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2903921748] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2904510840] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2905182735] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 2905747719] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2906390865] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2907096297] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2907900723] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 2908467030] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT ; TEST6 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2909496219] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2910076974] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2910666171] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2911238589] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2911801935] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2912407365] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2912996142] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2913597372] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2914164918] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2914747752] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2915303664] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2915906154] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2916466917] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2917097841] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2917666983] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2918234277] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2918805687] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2919409437] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2919971271] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2920568826] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2921148531] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2921715321] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2922677268] L8[TABLE]: Config 5 → 6 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 47,470000,10000,0,0,218,91,25,4096,198,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 2924187084] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2924799675] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2925380808] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2925998334] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2926616952] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2927215221] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2927772456] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2928373896] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2928941484] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2929551513] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2930117022] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2930681439] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2931252492] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2931871110] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2932549473] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2933358498] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 2933922369] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 2934433215] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2934887172] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2935777173] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 2936383359] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2937049185] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2937776331] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 2938266282] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2938792647] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TEST8 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2939891808] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2940481635] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2941049811] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2941618281] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2942199687] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2942807994] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2943402105] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2944011189] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2944581024] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2945145819] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2945789112] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2946389376] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2946953604] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2947538706] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2948153250] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2948758575] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2949326205] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2949896439] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2950476774] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2951040120] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2951644458] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2952220131] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2952797694] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2953366563] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2953929552] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2954561883] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2955242304] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2956048620] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 2956584876] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2957418660] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2958234006] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 2958781896] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 2959385184] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2959845882] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2960735652] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2961312816] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2961923391] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 2962369788] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2962869882] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TEST8 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2963830548] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2964408195] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2964988068] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2965554606] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2966115306] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2966724747] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2967361005] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2967943692] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2968513317] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2969175804] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2969781087] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2970348255] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2970912315] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2971499139] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2972061015] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2972663190] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2973249489] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2973813507] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2974381179] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2974945260] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2975568582] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2976136275] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 2976699138] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2977266978] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 2977843617] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2978448228] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2979129888] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2979954957] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 2980474854] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 2981291649] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2982119238] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 2982675822] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 2983202040] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 2983651272] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2984534028] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 2985100482] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2985711057] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2986428480] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 2986869648] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2987341056] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST10 . CR +[Hera] [HADES][INFO ] [KRELTSC: 2988398196] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2988998607] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2989569786] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2990173347] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2990823927] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2991391788] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2992000746] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2992585974] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2993157153] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2993715711] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2994350835] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2994913320] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2995510707] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2996078169] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 2996659512] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 2997216873] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2997817977] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 2998397157] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 2998994376] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 2999560746] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3000127935] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3000706632] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3001309731] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3001878474] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3002474181] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3003056217] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3003623616] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3004179318] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3004803396] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3005366595] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3005963982] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3006530919] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3007110372] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3007669098] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3008274108] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3008972400] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3009820989] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 3010326060] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPEAT ; 0 TEST11 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3011326710] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3011906058] ECW: w=0xbe57f560 func=0xbe08ca60 '0<' +[Hera] [HADES][INFO ] [KRELTSC: 3012478938] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3013109358] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3013773504] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3014578098] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 3015186027] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 3015792654] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 3016255704] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3017134344] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 3017721840] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3018329874] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 3018775095] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3019257738] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST10 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3020282706] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3020858148] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3021447723] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3022006344] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3022611123] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3023172747] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3023784519] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3024351540] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3024918351] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3025481907] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3026095002] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3026657151] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3027253509] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3027831639] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3028400592] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3028957596] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3029561283] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3030228348] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3030873195] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3031460712] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3032061942] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3032620164] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3033223305] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3033784152] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3034393929] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3034960425] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3035527614] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3036090855] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3036704706] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3037265826] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3037861407] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3038447706] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3039016008] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3039572025] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3040175376] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3040865289] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3041668623] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 3042173169] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPEAT ; 0 TEST11 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3043272057] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3043851384] ECW: w=0xbe57f560 func=0xbe08ca60 '0<' +[Hera] [HADES][INFO ] [KRELTSC: 3044426217] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3045047943] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3045729267] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3046531971] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 3047133201] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 3047658159] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 3048108126] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3048993528] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 3049566975] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3050175807] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3050899278] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 3051349539] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3051824748] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST12 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3052918743] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3053497608] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3054067716] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3054624930] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3055251843] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3055813866] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3056412135] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3056979240] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3057898452] L8[TABLE]: Config 6 → 7 regime=7 score=26214 L1=0 L2=0 L3=0 L4=0 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 48,480000,10000,0,0,221,92,26,4096,350,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3059364630] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3059922768] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3060530151] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3061144632] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3061760772] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3062327163] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3062893764] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3063464901] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3064066908] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3064627671] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3065224554] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3065801319] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3066366135] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3066919989] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3067520295] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3068093007] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3068689932] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3069256596] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3069835083] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3070394880] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3071018727] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3071579784] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3072200796] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3072821325] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3073393722] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3073968135] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3074573187] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3075251844] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3076080672] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 3076621191] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 3077227776] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 3077694081] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3078659703] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 3079231785] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3079844103] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 3080305599] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3080779926] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT ; 0 TEST12 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3081834105] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3082432311] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3083003343] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3083561733] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3084168255] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3084749871] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3085349799] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3085919361] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3086500809] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3087057372] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3087688485] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3088252356] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3088873830] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3089441628] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3090010602] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3090567480] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3091183662] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3091744404] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3092340237] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3092926704] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3093493368] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3094068075] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3094703262] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3095295273] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3095907066] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3096476292] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3097091340] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3097649142] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3098255202] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3098817960] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3099434373] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3100003683] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3100571628] ECW: w=0xbe57fa10 func=0xbe08ccf8 '<' +[Hera] [HADES][INFO ] [KRELTSC: 3101159103] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3101766360] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3102449826] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3103270884] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 3103812684] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 3104351019] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 3104805522] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3105707010] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 3106314687] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3106925262] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3107656755] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 3108082152] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3108561330] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] [HADES][INFO ] [KRELTSC: 3109953966] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3110546481] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3111123876] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3111899910] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3112524471] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3113146680] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3113857131] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3114423837] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3115040733] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3115628880] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3116233050] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3116845704] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3117391452] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3117968154] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3118581669] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3119127921] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3119685513] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3120308079] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3120904248] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3121515453] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3122315721] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 3122844984] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] [HADES][INFO ] [KRELTSC: 3123740781] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3124342326] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3124912455] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3125487750] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3126046497] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -5 [HADES][INFO ] [KRELTSC: 3126685065] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3127232640] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3127787628] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -4 [HADES][INFO ] [KRELTSC: 3128427708] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3128973897] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3129528318] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -3 [HADES][INFO ] [KRELTSC: 3130143009] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3130700937] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3131255568] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -2 [HADES][INFO ] [KRELTSC: 3131870112] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3132414180] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3133046469] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3133832205] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3134380200] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 3135137355] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3135929769] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 3136494354] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; TEST16 CR +[Hera] [HADES][INFO ] [KRELTSC: 3137536962] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3138118557] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3138688182] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3139295565] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3139864539] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3140432862] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3141042576] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3141720645] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3142284789] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3142846896] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3143474523] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3144023169] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3144582357] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3145161831] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3145721376] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3146333148] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3146879001] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3147449760] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3148007772] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3148567275] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3149195175] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3149816754] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3150403662] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3150973497] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3151566096] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3152141958] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3152698752] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3153255420] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3153825738] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3154437573] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3154982292] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3155537637] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3156115305] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3156723192] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3157335972] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3157903644] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3158461362] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3159017148] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3159573984] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3160196613] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3160743243] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3161328849] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3161916093] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3162489645] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3163064079] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3163620243] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3164196735] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3164753907] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3165365091] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3165910713] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3166479687] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3167035809] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3167593107] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3168215379] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3168764487] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3169322121] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3169879020] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3170450934] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3171062643] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3171608370] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3172195320] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3172849260] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3173638062] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 3174208905] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3174808245] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 3175233999] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3175713471] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] [HADES][INFO ] [KRELTSC: 3176675082] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3177258294] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3177832749] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3178460397] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3179044008] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3179655969] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3180202536] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3180773568] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3181394307] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3181942239] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3182500734] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3183125253] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3183670665] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3184227060] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3184836711] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3185403270] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3185960295] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3186570828] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3187147131] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3187753422] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3188538234] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 3189067455] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] [HADES][INFO ] [KRELTSC: 3189946683] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3190862031] L8[TABLE]: Config 7 → 8 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 49,490000,10000,0,0,225,97,26,4096,528,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3192349944] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3192946197] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3193537536] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3194096640] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -5 [HADES][INFO ] [KRELTSC: 3194714334] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3195259032] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3195826221] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -4 [HADES][INFO ] [KRELTSC: 3196439778] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3196983699] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3197551350] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -3 [HADES][INFO ] [KRELTSC: 3198167427] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3198713070] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3199298634] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] -2 [HADES][INFO ] [KRELTSC: 3199956900] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3200523249] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3201152535] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3201961203] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3202511067] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 3203228973] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3204031824] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 3204595317] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; TEST16 CR +[Hera] [HADES][INFO ] [KRELTSC: 3205546638] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3206137095] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3206701785] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3207274287] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3207841791] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3208422294] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3209006220] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3209563791] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3210143307] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3210702138] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3211311411] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3211856088] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3212574288] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3213130872] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3213686784] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3214313172] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3214864674] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3215418654] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3215973264] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3216542889] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3217151805] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3217694739] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3218277909] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3218876367] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3219443409] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3220017990] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3220587678] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3221200416] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3221756118] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3222365664] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3222926700] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3223485027] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3224043438] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3224601702] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3225232143] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3225792276] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3226349364] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3226926969] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3227488026] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3228098706] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3228642543] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3229238649] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3229804494] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3230370948] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3230942862] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3231520026] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3232074636] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3232630632] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3233253261] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3233797161] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3234352800] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3234907809] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3235518972] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3236127468] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3236671179] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3237224592] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3237801777] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3238357500] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3238965534] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3239578041] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3240216966] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3240834156] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3241631358] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 3242181327] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3242771763] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3243483894] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 3243925104] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3244399263] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] [HADES][INFO ] [KRELTSC: 3245609115] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3246208581] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3246782112] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3247562766] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3248149170] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3248762328] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3249309021] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3249867222] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3250490292] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3251037342] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3251607408] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3252230352] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3252777318] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3253335372] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3253947060] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3254514963] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3255073584] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3255685377] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3256244460] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3256852326] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3257644572] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 3258174423] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 3258941595] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3259736109] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 3260282088] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOOP ; TEST19 CR +[Hera] [HADES][INFO ] [KRELTSC: 3261279399] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3261906165] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3262493514] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3263076621] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3263645280] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3264201318] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3264794358] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3265358964] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3265916577] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3266474232] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3267104526] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3267650232] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3268206480] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3268775265] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3269341215] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3269952357] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3270503502] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3271119369] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3271676688] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3272232810] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3272842692] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3273448269] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3274034253] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3274601274] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3275170668] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3275760495] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3276316407] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3276871710] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3277463595] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3278072091] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3278615466] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3279169761] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3279744237] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3280301325] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3280911585] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3281466531] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3282061167] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3282676971] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3283233534] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3283834827] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3284389710] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3284943900] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3285498783] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3286120677] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3286663653] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3287247474] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3287875416] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3288664848] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 3289206921] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3289814976] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 3290246316] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3290719992] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] [HADES][INFO ] [KRELTSC: 3291632484] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3292231425] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3292801176] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3293381784] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3293953887] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3294573471] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3295118022] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3295673241] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3296291040] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3296834331] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3297388227] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3298026522] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3298595433] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3299153361] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3299764545] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3300324930] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3300891321] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3301500846] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3302045985] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3302679954] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3303474090] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 3304049553] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 3304834050] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3305646624] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 3306193023] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOOP ; TEST19 CR +[Hera] [HADES][INFO ] [KRELTSC: 3307191510] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3307770039] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3308340525] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3308937324] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3309507810] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3310065045] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3310991586] L8[TABLE]: Config 8 → 9 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=0 L7=1 +[Hera] [HADES][DOE ] 50,500000,10000,0,0,214,100,27,4096,694,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3312455034] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3313030434] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3313592163] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3314154375] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3314769948] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3315337893] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3315895716] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3316451481] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3317022933] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3317639787] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3318182700] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3318736995] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3319305969] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3319860810] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3320470230] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3321013899] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3321613323] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3322184880] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3322741380] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3323341182] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3323907363] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3324465207] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3325023156] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3325647087] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3326269443] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3326847216] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3327403905] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3328015950] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3328914540] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3329784381] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3330663105] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3331535319] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3332433972] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3333338862] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3334001790] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3334616082] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3335254377] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3335969658] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3336568809] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3337305006] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3338049456] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3338908650] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 3339502446] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3340164408] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3340934163] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 3341408658] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3341929017] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] [HADES][INFO ] [KRELTSC: 3343020555] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3343653999] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3344282550] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3344919480] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3345571131] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3346238301] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3346907718] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3347513841] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3348178029] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3348787302] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3349390296] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3350050914] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3350670225] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3351280464] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3351942111] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3352531455] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3353153349] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3353815731] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3354406335] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3355078902] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3355940931] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 3356524416] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 3357218424] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 3357742017] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3358659990] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 3359229930] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3359832588] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 3360270249] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3360745857] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] [HADES][INFO ] [KRELTSC: 3361871604] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3362464329] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3363034101] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3363641505] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3364198047] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3364810722] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3365370918] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3365932731] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3366606264] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3367152096] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3367722183] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3368331456] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3368874453] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3369440970] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3370081638] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3370646580] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3371203710] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3371839737] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3372384813] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3373020084] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3373828122] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 3374371812] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 3374870310] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 3375314082] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3376194318] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 3376748109] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3377348751] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3378071445] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 3378522777] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3379215777] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 3380746488] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3381499464] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3382112727] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3382701168] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3383258319] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3383874291] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3384436293] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3385309809] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3385872609] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3386502189] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3387038907] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3387673191] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3388281561] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3388894761] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3389423520] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3390014733] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3390586017] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 3391201485] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3391727808] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3392318475] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3392893938] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 3393503547] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3394031277] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3394689207] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3395343714] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3396150471] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 3396690276] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST22 CR +[Hera] [HADES][INFO ] [KRELTSC: 3397672383] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3398250534] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3398831583] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3399405114] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3399961089] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 3400577292] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3401117496] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3401750982] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3402309015] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 3402965013] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3403500891] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3404091999] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3404647617] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 3405267852] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3405795288] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3406386123] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3406941846] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 7 [HADES][INFO ] [KRELTSC: 3407576235] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3408112029] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3408703536] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3409337169] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 3409948122] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3410493891] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3411129015] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3411703344] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 3412314045] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3412840494] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3413445252] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3414008598] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3414619719] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3415176156] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3415796286] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3416354655] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3416965587] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3417493149] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3418097781] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3418661547] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3419271702] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3419820894] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3420414921] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3420973059] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3421592538] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3422136879] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3422729541] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3423286083] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3423908502] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3424438206] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3425039121] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3425661519] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3426481737] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 3427002621] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TEST23 CR +[Hera] [HADES][INFO ] [KRELTSC: 3427974606] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3428581128] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3429151614] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3429727938] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3430297962] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3430955850] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3431483034] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3432072420] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3432643032] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3433250730] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3433774638] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3434376351] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3434929407] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 3435543153] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3436095789] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3436698090] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3437260512] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 3437867832] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3438392643] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3438994020] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3439598736] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3440398458] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 3440958234] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3441596067] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 3442039041] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3442513305] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 3443461203] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3444039501] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3444607341] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3445192611] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3445753941] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3446362416] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3446886618] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3447584868] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3448140444] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3448750305] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3449288829] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3449899719] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3450490302] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3451113750] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3451640556] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3452230950] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3452795073] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 3453441411] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3453967440] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3454894506] L8[TABLE]: Config 9 → 10 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=0 +[Hera] [HADES][DOE ] 51,510000,10000,0,0,227,102,28,4096,883,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3456369672] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3456928545] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 3457547625] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3458079786] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3458669256] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3459272985] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3460085391] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 3460607367] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST22 CR +[Hera] [HADES][INFO ] [KRELTSC: 3461512866] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3462122685] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3462691701] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3463266093] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3463857600] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 3464483001] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3465008442] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3465598857] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3466167747] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 3466784958] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3467311176] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3467935065] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3468490998] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 8 [HADES][INFO ] [KRELTSC: 3469099704] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3469624641] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3470226585] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3470789700] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 7 [HADES][INFO ] [KRELTSC: 3471397566] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3471935859] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3472550907] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3473106945] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 3473715630] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3474252978] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3474842259] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3475395987] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 5 [HADES][INFO ] [KRELTSC: 3476002404] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3476540445] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3477140961] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3477696222] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3478305390] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3478843116] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3479432187] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3479987616] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3480651573] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3481184238] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3481773288] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3482328108] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3482949246] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3483537645] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3484126989] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3484694199] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3485303052] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3485828241] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3486417207] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3486981939] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3487603140] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3488130030] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3488719689] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3489337131] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3490139352] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 3490654671] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TEST23 CR +[Hera] [HADES][INFO ] [KRELTSC: 3491583837] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3492159279] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3492778464] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3493369488] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3493924770] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3494534211] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3495125508] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3495719031] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3496274229] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3496882410] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3497421480] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3498020232] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3498576291] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 6 [HADES][INFO ] [KRELTSC: 3499184871] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3499720707] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3500315112] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3500869680] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 9 [HADES][INFO ] [KRELTSC: 3501488277] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3502016952] ECW: w=0xbe58a738 func=0xbe08362c '(+LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3502610748] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' + +[Hera] [HADES][TEST ] [KRELTSC: 3503222478] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3504034548] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 3504591846] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3505195995] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3505915350] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 3506342343] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3506819484] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] [HADES][INFO ] [KRELTSC: 3507708078] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3508298703] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3508867740] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3509443581] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3510012765] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3510624075] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3511173246] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3511728507] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3512351325] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3512912067] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3513467685] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3514142793] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3514708302] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3515263899] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3515884344] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3516444729] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3517027248] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3517602564] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3518388552] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 3518926908] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] [HADES][INFO ] [KRELTSC: 3519713379] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3520300749] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3520868652] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3521450394] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3522006222] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3522627192] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3523170504] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3523749453] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3524322417] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3525125184] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3525626454] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] [HADES][INFO ] [KRELTSC: 3526397763] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3526986645] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3527559168] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3528130662] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3528699531] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3529307439] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3529851318] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3530404647] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3531021438] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3531563322] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3532133787] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3532705512] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3533497380] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 3534010389] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] [HADES][INFO ] [KRELTSC: 3534821829] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3535410648] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3535976976] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3536549100] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3537116226] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3537682260] ECW: w=0xbe57e0c0 func=0xbe081128 '*' +[Hera] [HADES][INFO ] [KRELTSC: 3538265745] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3538874703] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3539431749] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3539993520] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3540561045] ECW: w=0xbe57e0c0 func=0xbe081128 '*' +[Hera] [HADES][INFO ] [KRELTSC: 3541115781] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3541734798] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3542277858] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3542830851] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3543405978] ECW: w=0xbe57e0c0 func=0xbe081128 '*' +[Hera] [HADES][INFO ] [KRELTSC: 3543959769] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3544566123] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3545107755] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3545691786] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3546269685] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3547045467] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 3547582941] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3548164389] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 3548581869] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3549053550] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] [HADES][INFO ] [KRELTSC: 3549882798] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3550464015] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3551028684] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3551601438] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3552167745] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3552783738] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3553328457] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3553895562] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3554503155] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3555045312] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3555599544] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3556354620] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3556912716] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3557473332] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3558094302] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3558635829] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3559205769] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3559780140] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3560580408] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 3561127521] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] [HADES][INFO ] [KRELTSC: 3561912060] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3562502286] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3563068698] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3563653443] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3564206940] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3564826314] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3565370109] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3565941813] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3566529351] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3567308157] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3567810708] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] [HADES][INFO ] [KRELTSC: 3568591488] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3569178333] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3569745963] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3570321216] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3570890526] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 3 [HADES][INFO ] [KRELTSC: 3571501563] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3572387343] L8[TABLE]: Config 10 → 11 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=0 L6=1 L7=1 +[Hera] [HADES][DOE ] 52,520000,10000,0,0,208,102,29,4096,1043,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3573896046] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3574460820] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3575089077] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3575633943] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3576207705] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3576789972] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3577584465] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 3578112741] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] [HADES][INFO ] [KRELTSC: 3579028530] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3579611469] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3580186155] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3580764936] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3581335296] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3581902947] ECW: w=0xbe57e0c0 func=0xbe081128 '*' +[Hera] [HADES][INFO ] [KRELTSC: 3582462576] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3583071303] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3583626543] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3584190141] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3584758443] ECW: w=0xbe57e0c0 func=0xbe081128 '*' +[Hera] [HADES][INFO ] [KRELTSC: 3585325821] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3585937614] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3586490376] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3587046393] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3587629794] ECW: w=0xbe57e0c0 func=0xbe081128 '*' +[Hera] [HADES][INFO ] [KRELTSC: 3588186252] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 4 [HADES][INFO ] [KRELTSC: 3588796806] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3589368636] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3589954116] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3590538000] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3591317625] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 3591859950] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3592448979] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3593157960] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 3593575776] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3594059280] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] [HADES][INFO ] [KRELTSC: 3594992268] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3595566996] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3596149956] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3596724600] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3597290361] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3597866664] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3598437675] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3598993335] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3599601705] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3600156588] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3600710211] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3601325133] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3601866513] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3602430090] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3603038208] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3603581499] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3604175673] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3604741497] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3605306103] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3605878647] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3606442665] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3607052946] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3607595649] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3608337138] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3608950821] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3609501420] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3610056324] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3610675446] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3611217603] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3611799891] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3612372582] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3612993153] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3613770258] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 3614335746] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; TJ2 +[Hera] [HADES][INFO ] [KRELTSC: 3615400803] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3615977295] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3616542678] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3617129292] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3617701899] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3618266190] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3618848583] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3619403130] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3619964901] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3620536143] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3621159423] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3621703722] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3622257198] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3622811262] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3623376687] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3623991756] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3624536517] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3625130754] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3625730157] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3626294532] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3626863674] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3627449406] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3628007229] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3628562994] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3629173884] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3629739792] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3630299337] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3630854409] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3631424265] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3632033454] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3632585754] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3633221676] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3633824145] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3634405803] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3635189607] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 3635749887] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3636333393] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 3636758748] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3637233201] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] [HADES][INFO ] [KRELTSC: 3638267514] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3638847030] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3639415122] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3640014819] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3640600404] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3641174292] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3641747046] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3642316041] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3642931803] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3643473456] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3644038041] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3644644416] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3645185502] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3645737529] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3646356126] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3646897044] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3647478681] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3648042783] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3648629796] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3649203747] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3649759386] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3650383065] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3650926335] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3651480651] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3652087761] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3652645437] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3653199039] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3653806422] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3654350196] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3654945189] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3655525272] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3656100084] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3656899974] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 3657460506] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; TJ2 +[Hera] [HADES][INFO ] [KRELTSC: 3658405842] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3658996845] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3659563068] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3660142794] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3660723486] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3661288911] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3661860153] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3662412327] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3662979495] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3663534147] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 0 [HADES][INFO ] [KRELTSC: 3664168326] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3664714851] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3665284791] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3665856558] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3666418392] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3667038438] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3667581960] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3668166012] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3668731521] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3669308622] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3669880074] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3670440711] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3670994628] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3671562153] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 1 [HADES][INFO ] [KRELTSC: 3672169263] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3672713415] ECW: w=0xbe58b638 func=0xbe083980 'J' +[Hera] [HADES][INFO ] [KRELTSC: 3673285224] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3673842459] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 3674400240] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 2 [HADES][INFO ] [KRELTSC: 3675011991] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3675566559] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3676153656] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3676734978] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3677312121] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3678099516] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 3678641442] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3679222932] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3679944576] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 3680382258] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3680863851] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] [HADES][INFO ] [KRELTSC: 3681712692] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3682289793] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3682952658] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3683770818] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 3684273915] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE ; 3 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3685216101] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3685794399] ECW: w=0xbe57f650 func=0xbe08cafc '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3686374566] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3686978883] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3687640278] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3688443171] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3688943391] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE ; -4 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3690332058] L8[TABLE]: Config 11 → 12 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=0 +[Hera] [HADES][DOE ] 53,530000,10000,0,0,207,102,30,4096,1202,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3691894017] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3692480463] ECW: w=0xbe57f650 func=0xbe08cafc '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3693043326] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3693653712] ECW: w=0xbe57ecf0 func=0xbe0818d8 'NEGATE' +[Hera] [HADES][INFO ] [KRELTSC: 3694274220] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 3694946220] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3695745123] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 3696245931] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] [HADES][INFO ] [KRELTSC: 3697061655] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3697645371] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3698211930] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3698910432] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3699712842] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3700228350] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3700840143] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 3701276313] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3701747112] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] [HADES][INFO ] [KRELTSC: 3702557103] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3703154259] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3703826196] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3704622768] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 3705146907] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE ; 3 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3706143294] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3706719639] ECW: w=0xbe57f650 func=0xbe08cafc '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3707300016] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3707903409] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3708562389] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3709369692] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3709871550] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE ; -4 TEX2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3710796873] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3711380757] ECW: w=0xbe57f650 func=0xbe08cafc '0>' +[Hera] [HADES][INFO ] [KRELTSC: 3711943998] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3712554153] ECW: w=0xbe57ecf0 func=0xbe0818d8 'NEGATE' +[Hera] [HADES][INFO ] [KRELTSC: 3713156076] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 3713823246] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3714616374] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 3715117329] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] [HADES][INFO ] [KRELTSC: 3715913817] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3716496315] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3717081963] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3717777987] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3718604022] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3719117682] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3719730336] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3720439737] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 3720881262] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3721353657] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LOOP ; TLV . CR +[Hera] [HADES][INFO ] [KRELTSC: 3722798247] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3723383979] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3723978531] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3724550067] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3725130402] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3725717940] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3726287523] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3726849546] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3727455669] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3728036844] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3728626503] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3729191340] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3729759726] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3730329960] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3730934466] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3731497581] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3732097677] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3732656319] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3733233756] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3733793595] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3734418933] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3734980851] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3735567024] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3736131882] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3736711629] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3737267457] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3737873811] ECW: w=0xbe58a828 func=0xbe0837f0 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3738571074] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3739173186] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3739840314] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3740652678] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3741154473] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3742065810] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3742669896] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3743249769] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3743815929] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3744388578] ECW: w=0xbe58a828 func=0xbe0837f0 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3744992958] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3745588581] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3746252370] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3747063537] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3747564933] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ LOOP ; TLV3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3748612119] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3749224500] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3749792529] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3750367173] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3750962838] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3751516230] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3752081865] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3752644329] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3753255702] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3753814806] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3754397955] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3754950696] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3755527671] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3756080202] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3756686325] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3757260213] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3757843278] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3758397237] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3758961507] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3759525924] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3760126104] ECW: w=0xbe58a828 func=0xbe0837f0 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3760721559] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3761326611] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3761988363] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3762784263] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 3763286982] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3763899930] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 3764340174] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3764811141] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LOOP ; TLV . CR +[Hera] [HADES][INFO ] [KRELTSC: 3765868281] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3766441833] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3767013684] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3767589945] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3768159759] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3768726927] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3769297518] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3769875396] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3770479251] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3771038943] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3771622890] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3772190541] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3772755882] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3773310240] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3773924091] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3774482229] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3775065042] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3775617720] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3776191965] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3776746995] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3777348498] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3777908316] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3778500705] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3779054223] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3779619984] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3780184842] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3780785967] ECW: w=0xbe58a828 func=0xbe0837f0 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3781374597] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3781968477] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3782640330] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3783453219] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3784003839] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3785090295] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3785695431] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3786265581] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3786856080] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3787437339] ECW: w=0xbe58a828 func=0xbe0837f0 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3788034432] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3788653071] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3789331308] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3790155453] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3790674531] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ LOOP ; TLV3 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3791936106] L8[TABLE]: Config 12 → 13 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=0 L7=1 +[Hera] [HADES][DOE ] 54,540000,10000,0,0,200,102,31,4096,1319,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3793586097] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3794167566] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3794759850] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3795340185] ECW: w=0xbe58a468 func=0xbe0831c2 '(?DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3795921045] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3796476642] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3797054226] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3797610957] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3798215589] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3798786306] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3799387242] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3799941012] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3800506962] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3801062265] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3801675255] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3802236732] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3802828932] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3803395260] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3803963373] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3804520650] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3805124484] ECW: w=0xbe58a828 func=0xbe0837f0 '(LEAVE)' +[Hera] [HADES][INFO ] [KRELTSC: 3805728528] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3806328414] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3807004614] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3807877794] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 3808387716] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3809001630] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3809728923] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 3810177399] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3810653994] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EXIT THEN LOOP 99 ; TUL . CR +[Hera] [HADES][INFO ] [KRELTSC: 3811813530] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3812399304] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3812977098] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3813552897] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3814121073] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3814688472] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3815253225] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3815867496] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3816452808] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3817007859] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3817574565] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3818141439] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3818744790] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3819337368] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3819909828] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3820489218] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3821046243] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3821660514] ECW: w=0xbe58b728 func=0xbe08387a 'UNLOOP' +[Hera] [HADES][INFO ] [KRELTSC: 3822430437] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3823031982] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3823726641] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3824550114] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 3825109596] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EXIT THEN LOOP 99 ; TUL2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3826219173] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3826810470] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3827377029] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3827962278] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3828536754] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3829105791] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3829661913] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3830276541] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3830874852] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3831429735] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3832002006] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3832583727] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3833187267] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3833770080] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3834323682] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3834900993] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3835456296] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3836057694] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3836640276] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3837234765] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3837894018] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3838449951] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3839074890] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3839657661] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3840210675] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3840782862] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3841351395] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3841951281] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3842540478] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3843114450] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 3843814464] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3844621116] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 3845162958] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3845797242] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 3846245466] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3846723657] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EXIT THEN LOOP 99 ; TUL . CR +[Hera] [HADES][INFO ] [KRELTSC: 3847925235] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3848501664] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3849095187] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3849711222] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3850267365] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3850831950] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3851386119] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3851999865] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3852583413] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3853144050] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3853719933] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3854272002] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3854872224] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3855460560] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3856021890] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3856585635] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3857138544] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3857747502] ECW: w=0xbe58b728 func=0xbe08387a 'UNLOOP' +[Hera] [HADES][INFO ] [KRELTSC: 3858333864] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3858898743] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3859577799] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3860393712] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 3860901723] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EXIT THEN LOOP 99 ; TUL2 . CR +[Hera] [HADES][INFO ] [KRELTSC: 3861977994] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3862557006] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3863122284] ECW: w=0xbe58a558 func=0xbe08337c '(DO)' +[Hera] [HADES][INFO ] [KRELTSC: 3863693778] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3864260169] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3864825489] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3865381989] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3865989477] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3866586276] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3867139899] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3867705534] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3868270203] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3868913265] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3869506977] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3870069063] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3870655446] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3871226205] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3871835709] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3872430282] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3872985291] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3873550779] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3874104759] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3874725834] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3875315094] ECW: w=0xbe58b548 func=0xbe083918 'I' +[Hera] [HADES][INFO ] [KRELTSC: 3875869263] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3876442836] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3877010907] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3877611297] ECW: w=0xbe58a648 func=0xbe0834d8 '(LOOP)' +[Hera] [HADES][INFO ] [KRELTSC: 3878202909] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3878779884] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 3879457701] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3880264269] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 3880787820] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3881398374] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3882118233] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 3882567822] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3883055484] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AGAIN ; TAG . CR +[Hera] [HADES][INFO ] [KRELTSC: 3884341524] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3884926059] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3885510657] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3886080429] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3886680189] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3887264115] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3887895753] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3888496395] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3889064634] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3889645557] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3890213040] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3890818323] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3891435261] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3892031409] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3892592928] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3893165745] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3893745072] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3894300333] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3894907758] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3895621044] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3896425722] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3896978883] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN AGAIN ; CD . CR +[Hera] [HADES][INFO ] [KRELTSC: 3898136781] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3898763463] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3899382942] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3900361605] L8[TABLE]: Config 13 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 55,550000,10000,0,0,205,103,32,4096,1464,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 3901970016] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3902583657] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3903237513] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3903902856] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3904513410] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3905127744] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3905798610] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3906466137] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3907111614] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3907727040] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3908393979] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3909004281] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3909662946] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3910393263] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3911013918] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3911634594] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3912255900] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3912907866] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3913551768] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3914158500] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3914781696] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3915390045] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3916050096] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3916722642] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3917335128] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3917951541] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3918577950] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3919231365] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3919875855] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3920482671] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3921111999] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3921720663] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3922380840] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3923036397] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3923644515] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3924258114] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3924876375] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3925478613] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3926071863] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3926639052] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3927213045] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3927770448] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3928397550] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3929011842] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3929570568] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3930133872] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3930691107] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3931304391] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3931995585] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3932839155] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3933400149] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3934007091] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 3934446201] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3934917819] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AGAIN ; TAG . CR +[Hera] [HADES][INFO ] [KRELTSC: 3936047724] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3936623985] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3937183719] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3937760820] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3938325048] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3938880771] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3939490653] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3940084722] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3940643931] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3941208537] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3941786058] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3942339933] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3942939357] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3943532523] ECW: w=0xbe57e660 func=0xbe081592 '1+' +[Hera] [HADES][INFO ] [KRELTSC: 3944113047] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3944685612] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3945249672] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3945816000] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3946416663] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3947082699] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3947892837] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 3948394569] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN AGAIN ; CD . CR +[Hera] [HADES][INFO ] [KRELTSC: 3949358679] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3949977570] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3950607528] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3951258927] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3951823134] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3952451328] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3953049555] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3953611263] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3954249978] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3954812337] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3955413609] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3956007888] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3956581461] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3957147033] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3957707964] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3958328850] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3958923885] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3959482758] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3960046839] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3960620328] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3961222461] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3961815921] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3962374500] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3962951034] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3963510516] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3964110612] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3964716546] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3965277624] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3965840928] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3966399822] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3967012035] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3967604466] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3968162415] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3968731683] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3969303324] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3969903672] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3970497195] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3971068647] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3971634114] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3972192966] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3972800202] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3973404960] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3973978512] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3974546100] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3975132504] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3975817083] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3976413189] ECW: w=0xbe57e750 func=0xbe081608 '1-' +[Hera] [HADES][INFO ] [KRELTSC: 3976972545] ECW: w=0xbe57c860 func=0xbe0928d4 'DUP' +[Hera] [HADES][INFO ] [KRELTSC: 3977554896] ECW: w=0xbe57f470 func=0xbe08c9c6 '0=' +[Hera] [HADES][INFO ] [KRELTSC: 3978115323] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3978717288] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3979415874] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3980227755] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3980735598] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3981350310] â–¶ Testing module: src/test_runner/modules/control_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3982065234] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 3982502244] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3982976970] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 1 TC +[Hera] [HADES][INFO ] [KRELTSC: 3985236591] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3985847586] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3986423532] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3986984001] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3987589746] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3988178733] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3988746447] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3989346774] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 3989982150] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 3990515676] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 3991092420] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3991908165] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 3992420019] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 2 TC +[Hera] [HADES][INFO ] [KRELTSC: 3993587346] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3994174527] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3994745391] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3995354874] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3995983992] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3996608448] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 3997187670] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 3997748559] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 3998375304] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 3998948499] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 3999514554] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4000111647] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 20 [HADES][INFO ] [KRELTSC: 4000748367] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4001281410] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4001865630] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4002708297] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 4003226094] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 5 TC +[Hera] [HADES][INFO ] [KRELTSC: 4004509635] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4005093855] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4005665895] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4006224117] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4006839585] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4007406921] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4007977134] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4008531912] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4009145784] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4009714044] ECW: w=0xbe57ca40 func=0xbe092a7a 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 4010291649] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4010874861] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 4011492282] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4012023792] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4012607907] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4013412144] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4013921121] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF 66 SWAP ENDCASE . CR ; 0 TC +[Hera] [HADES][INFO ] [KRELTSC: 4033562505] L8[TABLE]: Config 14 → 0 regime=6 score=26214 L1=0 L2=0 L3=0 L4=0 L5=0 L6=0 L7=0 +[Hera] [HADES][DOE ] 56,560000,10000,0,0,211,103,32,4096,1620,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 4035455802] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4036067532] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4036663617] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4037259051] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4037874960] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4038474573] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4039042728] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4039642782] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 88 [HADES][INFO ] [KRELTSC: 4040299809] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4040836044] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4041416505] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4042235043] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 4042751412] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCASE . CR ; -1 TC +[Hera] [HADES][INFO ] [KRELTSC: 4043842761] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4044441681] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4045015548] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4045570704] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4046179809] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4046804328] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4047388128] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4047991206] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 55 [HADES][INFO ] [KRELTSC: 4048632525] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4049167395] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4049744139] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4050555201] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 4051068924] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4051669146] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 4052105085] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4052588358] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 1 TC +[Hera] [HADES][INFO ] [KRELTSC: 4053824859] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4054401309] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4054990233] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4055548077] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4056151260] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4056724035] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4057316697] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4057914315] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 10 [HADES][INFO ] [KRELTSC: 4058582010] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4059147540] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4059725145] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4060519701] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 4061050371] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 2 TC +[Hera] [HADES][INFO ] [KRELTSC: 4062214527] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4062787449] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4063376583] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4063934343] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4064538513] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4065114837] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4065698784] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4066254738] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4066856976] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4067454804] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4068021846] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4068616986] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 20 [HADES][INFO ] [KRELTSC: 4069232538] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4069781730] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4070356626] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4071149733] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 4071670701] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 99 SWAP ENDCASE . CR ; 5 TC +[Hera] [HADES][INFO ] [KRELTSC: 4072821186] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4073416410] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4074004578] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4074566370] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4075169931] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4075809969] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4076384340] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4076942436] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4077549861] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4078131813] ECW: w=0xbe57ca40 func=0xbe092a7a 'SWAP' +[Hera] [HADES][INFO ] [KRELTSC: 4078705407] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4079280429] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 99 [HADES][INFO ] [KRELTSC: 4079963412] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4080521151] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4081105098] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4081909146] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4082517390] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF 66 SWAP ENDCASE . CR ; 0 TC +[Hera] [HADES][INFO ] [KRELTSC: 4083778881] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4084370451] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4084942197] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4085497836] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4086099717] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4086685701] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4087251945] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4087848051] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 88 [HADES][INFO ] [KRELTSC: 4088481306] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4089011745] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4089585948] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4090391067] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 4090900359] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCASE . CR ; -1 TC +[Hera] [HADES][INFO ] [KRELTSC: 4091914764] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4092511689] ECW: w=0xbe57cb30 func=0xbe092b30 'OVER' +[Hera] [HADES][INFO ] [KRELTSC: 4093083078] ECW: w=0xbe57f830 func=0xbe08cb98 '=' +[Hera] [HADES][INFO ] [KRELTSC: 4093636554] ECW: w=0xbe58a370 func=0xbe0830c8 '(0BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4094235285] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4094823180] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4095388836] ECW: w=0xbe58a278 func=0xbe083026 '(BRANCH)' +[Hera] [HADES][INFO ] [KRELTSC: 4095982905] ECW: w=0xbe581db0 func=0xbe08abd4 '.' +[Hera] 55 [HADES][INFO ] [KRELTSC: 4096595076] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4097137800] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4097712297] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4098504270] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 4099091766] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4099769772] === Control Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 4100538309] +[Hera] === Testing Module: StarForth Words === +[Hera] [HADES][INFO ] [KRELTSC: 4101211107] Running StarForth Words Tests (Module 17: StarForth Extensions)... +[Hera] [HADES][TEST ] [KRELTSC: 4101978006] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4102732641] Testing word: ENTROPY@ +[Hera] [HADES][TEST ] [KRELTSC: 4103206233] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4103677158] Running ENTROPY@.after_execution: : TESTWORD 1 1 + DROP ; TESTWORD ' TESTWORD ENTROPY@ . CR +[Hera] [HADES][INFO ] [KRELTSC: 4104753030] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4105340211] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4105904985] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 4106458902] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4107026889] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4108003116] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4108842927] Expected: Should show execution count > 0 +[Hera] [HADES][TEST ] [KRELTSC: 4109468076] Running ENTROPY@.zero_initial: : NEWWORD ; ' NEWWORD ENTROPY@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4110389262] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4111218384] Expected: Should show 0 for unused word +[Hera] [HADES][TEST ] [KRELTSC: 4111818060] Running ENTROPY@.multiple_calls: : ENTTEST 1 DROP ; ENTTEST ENTTEST ENTTEST ' ENTTEST ENTROPY@ . CR +[Hera] [HADES][INFO ] [KRELTSC: 4112853738] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4113443859] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4114017873] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4114603479] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4115171739] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4115760369] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4116347802] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4116919695] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4117552992] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4118260398] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4119078369] Expected: Should increment with each call +[Hera] [HADES][TEST ] [KRELTSC: 4119686676] Running ENTROPY@.null_addr: 0 ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 4120311489] ENTROPY@: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 4120842810] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4121733168] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 4122334692] Running ENTROPY@.empty_stack: ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 4122934536] ENTROPY@: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4123456890] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4124363334] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4124965362] ENTROPY@: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4125619470] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4126355583] Testing word: ENTROPY! +[Hera] [HADES][TEST ] [KRELTSC: 4126818843] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4127293884] Running ENTROPY!.set_entropy: : ENTSET ; 42 ' ENTSET ENTROPY! ' ENTSET ENTROPY@ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4128583767] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4129406673] Expected: Should set entropy to 42 +[Hera] [HADES][TEST ] [KRELTSC: 4129966155] Running ENTROPY!.overwrite: : ENTOV ; 10 ' ENTOV ENTROPY! 20 ' ENTOV ENTROPY! ' ENTOV ENTROPY@ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 4131152823] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4131973965] Expected: Should overwrite previous value +[Hera] [HADES][TEST ] [KRELTSC: 4132593360] Running ENTROPY!.zero_entropy: : ENTZERO ; 0 ' ENTZERO ENTROPY! ' ENTZERO ENTROPY@ . CR +[Hera] 0 [HADES][INFO ] [KRELTSC: 4133964492] L8[TABLE]: Config 0 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=0 +[Hera] [HADES][DOE ] 57,570000,10000,0,0,193,110,33,4096,1712,0,0,0,65536,0,0,65536,0,0 + +[Hera] [HADES][TEST ] [KRELTSC: 4135445559] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4136267163] Expected: Should set entropy to 0 +[Hera] [HADES][TEST ] [KRELTSC: 4136840946] Running ENTROPY!.null_addr: 42 0 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4137473613] ENTROPY!: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 4138035321] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4138956927] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 4139533566] Running ENTROPY!.one_arg: 42 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4140138282] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4140677814] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4141620630] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4142200755] Running ENTROPY!.empty_stack: ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4142798079] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4143309513] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4144199703] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4144788648] ENTROPY!: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4145436708] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4146156693] Testing word: WORD-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 4146638727] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4147121811] Running WORD-ENTROPY.display_all: 1 DUP DUP DUP DROP DROP DROP DROP WORD-ENTROPY +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 97 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 77 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 179 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6980 + +[Hera] Total words: 439 + +[Hera] Average executions per word: 15 + +[Hera] [HADES][TEST ] [KRELTSC: 4173298395] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4174149231] Expected: Should display all word entropy stats +[Hera] [HADES][TEST ] [KRELTSC: 4174809828] Running WORD-ENTROPY.after_execution: : WDENT 1 2 + DROP ; WDENT WDENT WORD-ENTROPY +[Hera] [HADES][INFO ] [KRELTSC: 4175820579] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4176418365] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4176999372] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 4177558749] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4178133120] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4178736156] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4179304605] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4179870639] ECW: w=0xbe57dee0 func=0xbe08100e '+' +[Hera] [HADES][INFO ] [KRELTSC: 4180425354] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4181009616] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 100 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 77 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 182 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6997 + +[Hera] Total words: 440 + +[Hera] Average executions per word: 15 + +[Hera] [HADES][TEST ] [KRELTSC: 4206595386] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4207455924] Expected: Should show defined word entropy +[Hera] [HADES][TEST ] [KRELTSC: 4208107932] Running WORD-ENTROPY.stack_preserved: DEPTH WORD-ENTROPY DEPTH = . CR +[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] FORGET: 4 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 16 + +[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] ]: 3 + +[Hera] [: 4 + +[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] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 174 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 26 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 42 + +[Hera] MAX: 25 + +[Hera] MIN: 3 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 18 + +[Hera] 1-: 78 + +[Hera] 1+: 83 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 19 + +[Hera] MOD: 37 + +[Hera] /: 34 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 100 + +[Hera] CELLS: 16 + +[Hera] ERASE: 10 + +[Hera] MOVE: 2 + +[Hera] FILL: 22 + +[Hera] 2!: 16 + +[Hera] 2@: 12 + +[Hera] -!: 15 + +[Hera] +!: 33 + +[Hera] C!: 50 + +[Hera] C@: 96 + +[Hera] !: 109 + +[Hera] @: 181 + +[Hera] R@: 45 + +[Hera] R>: 62 + +[Hera] >R: 64 + +[Hera] ROLL: 8 + +[Hera] PICK: 14 + +[Hera] DEPTH: 78 + +[Hera] -ROT: 16 + +[Hera] ROT: 29 + +[Hera] OVER: 51 + +[Hera] SWAP: 117 + +[Hera] ?DUP: 15 + +[Hera] DUP: 177 + +[Hera] DROP: 182 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6999 + +[Hera] Total words: 440 + +[Hera] Average executions per word: 15 + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4234005468] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4234855254] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 4235431893] WORD-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4236086316] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4236811719] Testing word: RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 4237314732] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4237788723] Running RESET-ENTROPY.reset_defined: : RESETTEST 1 DROP ; RESETTEST RESETTEST RESETTEST RESET-ENTROPY +[Hera] [HADES][INFO ] [KRELTSC: 4238983392] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4239592119] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4240166931] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4240761462] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4241347089] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4241925429] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4242512379] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4243109220] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4243706460] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][TEST ] [KRELTSC: 4244553516] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4245410988] Expected: Should reset all entropy counters +[Hera] [HADES][TEST ] [KRELTSC: 4246047582] Running RESET-ENTROPY.double_reset: RESET-ENTROPY RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 4246819080] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4247707884] Expected: Should handle multiple resets +[Hera] [HADES][TEST ] [KRELTSC: 4248327258] Running RESET-ENTROPY.after_usage: 1 DUP DUP DUP DROP DROP DROP DROP RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 4249250607] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4250131872] Expected: Should reset after word usage +[Hera] [HADES][TEST ] [KRELTSC: 4250718402] RESET-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4251368982] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4252119984] Testing word: TOP-WORDS +[Hera] [HADES][TEST ] [KRELTSC: 4252586898] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4253063409] Running TOP-WORDS.display_top5: : TOPTEST 1 DROP ; TOPTEST TOPTEST TOPTEST TOPTEST TOPTEST 5 TOP-WORDS +[Hera] [HADES][INFO ] [KRELTSC: 4254271392] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4254900783] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4255475133] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4256079366] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4256654829] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4257228129] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4257814302] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4258414188] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4258988097] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4259593317] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4260185286] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4260763605] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4261347741] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4261914384] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4262500389] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[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: 4264936704] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4265771832] Expected: Should display top 5 hot words +[Hera] [HADES][TEST ] [KRELTSC: 4266377514] 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: 4268565987] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4269390867] Expected: Should display top 10 words +[Hera] [HADES][TEST ] [KRELTSC: 4269968262] 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: 4271418375] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4272242142] Expected: Should handle display after reset +[Hera] [HADES][TEST ] [KRELTSC: 4272862251] 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: 4274169942] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4275031866] Expected: Should display top 1 word +[Hera] [HADES][TEST ] [KRELTSC: 4275596073] 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: 4276955340] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4277793051] Expected: Should handle large count +[Hera] [HADES][TEST ] [KRELTSC: 4278378531] Running TOP-WORDS.zero_count: 0 TOP-WORDS +[Hera] TOP-WORDS: invalid count 0 + +[Hera] [HADES][TEST ] [KRELTSC: 4279259775] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4280089044] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 4280647791] Running TOP-WORDS.negative_count: -5 TOP-WORDS +[Hera] TOP-WORDS: invalid count -5 + +[Hera] [HADES][TEST ] [KRELTSC: 4281649827] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4282474497] Expected: Should handle negative count +[Hera] [HADES][TEST ] [KRELTSC: 4283054643] Running TOP-WORDS.empty_stack: TOP-WORDS +[Hera] [HADES][ERROR] [KRELTSC: 4283687520] TOP-WORDS: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4284216825] Expected error occurred +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4285117116] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4285883154] TOP-WORDS: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4286516829] â–¶ Testing module: src/test_runner/modules/starforth_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4287292926] Testing word: (- +[Hera] [HADES][TEST ] [KRELTSC: 4287741885] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4288215666] Running (-.comment_line: (- This is a comment +[Hera] 1 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 4289218731] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 4289748834] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4290535179] Expected: Should ignore rest of line +[Hera] [HADES][TEST ] [KRELTSC: 4291105875] Running (-.mid_line: 1 (- comment here +[Hera] 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 4291823487] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 4292306466] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4293090060] Expected: Should work mid-expression +[Hera] [HADES][TEST ] [KRELTSC: 4293722916] Running (-.no_stack_effect: DEPTH (- comment +[Hera] DEPTH = . CR +[Hera] [HADES][WARN ] [KRELTSC: 4294484103] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 4294966494] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4295772852] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 4296325383] Running (-.multiple: 1 (- first +[Hera] 2 (- second +[Hera] + . CR +[Hera] [HADES][WARN ] [KRELTSC: 4297104042] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 4297587567] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4298393148] Expected: Should handle multiple comments +[Hera] [HADES][TEST ] [KRELTSC: 4298992383] (-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4299595797] === StarForth Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 4300393083] +[Hera] === Testing Module: ACL Words === +[Hera] [HADES][INFO ] [KRELTSC: 4300994418] Running ACL Words Tests (Module 24)... +[Hera] [HADES][INFO ] [KRELTSC: 4303264896] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4304005062] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][WARN ] [KRELTSC: 4305042882] ACL: denied '__acl_deny_test__' +[Hera] [HADES][INFO ] [KRELTSC: 4305981498] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4306592325] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4307185029] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4307804634] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4308394188] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4308972423] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4309583397] ECW: w=0xbe589be8 func=0xbe08592e 'LIT' +[Hera] [HADES][INFO ] [KRELTSC: 4310154282] ECW: w=0xbe57c770 func=0xbe09285c 'DROP' +[Hera] [HADES][INFO ] [KRELTSC: 4310828571] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4311753852] SKIP: STRICT mode test (ACL.4th not loaded) +[Hera] [HADES][INFO ] [KRELTSC: 4312541205] SKIP: ACL-TTL-COMPUTE (ACL.4th not loaded) +[Hera] [HADES][WARN ] [KRELTSC: 4313298192] vm_create_word: cannot shadow pinned word '__acl_shadow_target__' +[Hera] [HADES][TEST ] [KRELTSC: 4314230487] === ACL Words Summary: 17 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 4314999990] +[Hera] === Testing Module: Mama FORTH Words === +[Hera] [HADES][INFO ] [KRELTSC: 4315649436] Running Mama FORTH Words Tests (Capsule System M7.1)... +[Hera] [HADES][TEST ] [KRELTSC: 4316356422] Testing word: CAPSULE-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 4316872497] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4317358605] CAPSULE-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4318039383] Testing word: CAPSULE@ +[Hera] [HADES][TEST ] [KRELTSC: 4318504890] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4319006328] CAPSULE@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4319630553] Testing word: CAPSULE-FLAGS@ +[Hera] [HADES][TEST ] [KRELTSC: 4320128463] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4320603735] CAPSULE-FLAGS@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4321276995] Testing word: CAPSULE-LEN@ +[Hera] [HADES][TEST ] [KRELTSC: 4321768605] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4322245326] CAPSULE-LEN@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4322890614] Testing word: CAPSULE-HASH@ +[Hera] [HADES][TEST ] [KRELTSC: 4323401775] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4323876102] CAPSULE-HASH@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4324527690] Testing word: MAMA-VM-ID +[Hera] [HADES][TEST ] [KRELTSC: 4325000652] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4325486886] MAMA-VM-ID: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4326168861] Testing word: VM-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 4326633213] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4327109829] VM-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4327765197] Testing word: CAPSULE-BIRTH +[Hera] [HADES][TEST ] [KRELTSC: 4328258718] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4328735061] CAPSULE-BIRTH: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4329405570] Testing word: CAPSULE-RUN +[Hera] [HADES][TEST ] [KRELTSC: 4329895164] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4330370982] CAPSULE-RUN: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4331022990] Testing word: CAPSULE-TEST +[Hera] [HADES][TEST ] [KRELTSC: 4331524533] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4332000792] CAPSULE-TEST: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4332672855] === Mama FORTH Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors === +[Hera] [HADES][INFO ] [KRELTSC: 4333504560] FINAL TEST SUMMARY: +[Hera] [HADES][INFO ] [KRELTSC: 4333978299] Total tests run: 1003 +[Hera] [HADES][INFO ] [KRELTSC: 4334464449] Passed: 965 +[Hera] [HADES][INFO ] [KRELTSC: 4334942073] Failed: 0 +[Hera] [HADES][INFO ] [KRELTSC: 4335407244] Stubs (not yet implemented): 38 +[Hera] [HADES][INFO ] [KRELTSC: 4335983169] Errors: 0 +[Hera] [HADES][INFO ] [KRELTSC: 4336475850] ALL IMPLEMENTED TESTS PASSED! +[Hera] [HADES][INFO ] [KRELTSC: 4337035500] Contract checks (A4'/A1): all passed +[Hera] [HADES][INFO ] [KRELTSC: 4337677617] ============================================== +[Hera] PARITY:M7.1a word_count=448 here=0x00000000000000d8 latest_id=612 hash=0x681c6187ac3a4539 +[Hera] PARITY:OK +[Hera] POST: PASSED +[Hera] [HAL][exec] regions frozen: +[Hera] kernel.text: [0x00000000be05b000, 0x00000000be09c986) +[Hera] VM: parity bootstrap complete +[Hera] [HADES][INFO ] [KRELTSC: 4360216392] blk: raw device LBN 2048..3071 (1024 blocks) +[Hera] PCI: init... +[Hera] virtio-blk: found device +[Hera] Artemis: virtio-blk attached +[Hera] [HADES][INFO ] [KRELTSC: 4374837411] blk: disk 'StarForth Volume' v2 LBN 3072..26073 (23002 user blocks); devblocks=7680 bam=1 base=2 total=23034 free=23002 +[Hera] Init: Mama birth... +[Hera] [HADES][INFO ] [KRELTSC: 4382869239] exec_block: block 2057 len 265 +[Hera] [HADES][INFO ] [KRELTSC: 4386325398] exec_block: block 2049 len 177 +[Hera] [HADES][INFO ] [KRELTSC: 4388225856] EXEC: capsule 'lib.4th' +[Hera] [HADES][INFO ] [KRELTSC: 4392031980] exec_block: block 4050 len 440 +[Hera] [HADES][INFO ] [KRELTSC: 4395055329] exec_block: block 2050 len 37 +[Hera] [HADES][INFO ] [KRELTSC: 4395951315] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4396604478] ECW: w=0xbe5aeda0 func=0xbe06f59e '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 4397326353] ECW: w=0xbe584d98 func=0xbe08c2e4 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 4398765525] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4399394853] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4400149614] ECW: w=0xbe584d98 func=0xbe08c2e4 '(do-string)' +[Hera] LithosAnanke — FORTH-79 bare-metal kernel[HADES][INFO ] [KRELTSC: 4401448107] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4402077834] ECW: w=0xbe584d98 func=0xbe08c2e4 '(do-string)' +[Hera] Stadium step one: Hera alone[HADES][INFO ] [KRELTSC: 4402981548] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4403516733] ECW: w=0xbe5aeda0 func=0xbe06f59e '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 4404096060] ECW: w=0xbe584d98 func=0xbe08c2e4 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 4405062207] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4405594179] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4406186610] ECW: w=0xbe584d98 func=0xbe08c2e4 '(do-string)' +[Hera] Hera [live][HADES][INFO ] [KRELTSC: 4406928708] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4407459693] ECW: w=0xbe5aeda0 func=0xbe06f59e '.SEP' +[Hera] [HADES][INFO ] [KRELTSC: 4408030347] ECW: w=0xbe584d98 func=0xbe08c2e4 '(do-string)' +[Hera] ================================================[HADES][INFO ] [KRELTSC: 4409030577] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4409956341] L8[TABLE]: Config 14 → 15 regime=7 score=6553 L1=0 L2=0 L3=0 L4=1 L5=1 L6=1 L7=1 +[Hera] [HADES][DOE ] 58,580000,10000,0,0,190,5,67,4096,1775,0,0,0,65536,0,0,65536,0,0 +[Hera] [HADES][INFO ] [KRELTSC: 4411634283] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] [HADES][INFO ] [KRELTSC: 4412218755] ECW: w=0xbe5847f0 func=0xbe08c00a 'CR' + +[Hera] [HADES][INFO ] [KRELTSC: 4412811984] ECW: w=0xbe58b818 func=0xbe0839e8 'EXIT' +[Hera] PARITY:MAMA_INIT capsule_id=0xb4c4b5559146a3bd mode=m capsule_hash=0xb4c4b5559146a3bd dict_hash=0x3d4e1daf289da94f +[Hera] Init: Mama birth OK +[Hera] ACL: CAPSULE-BIRTH pinned STRICT +[Hera] ACL: BIRTH pinned STRICT +[Hera] Starting heartbeat... +[Hera] SBI: timer armed (TIME extension) +[Hera] Heartbeat running. +[Hera] Stadium words: promotions=354 evictions=0 +[Hera] Stadium conservation: resident_sum=65536 reservoir=0 sum=65536 (Q48_ONE=65536) +[Hera] Heartbeat: 3 ticks, trust=0x00010000, variance=0x00000000 +[Hera] LithosAnanke v1.5.4 +[Hera] StarForth Version 3.1.0 + +[Hera] StarForth Emergency CLI +[Hera] FORTH-79 interpreter — type BYE or power off to exit + +[Hera] ok> \ No newline at end of file diff --git a/src/dictionary_management.c b/src/dictionary_management.c index 1dad306..00116d7 100644 --- a/src/dictionary_management.c +++ b/src/dictionary_management.c @@ -55,6 +55,10 @@ #include #include #include +#ifdef __STARKERNEL__ +#include "starkernel/vm/stadium_words.h" /* item 4.1: FORGET coherence hook */ +#include "starkernel/vm_uuid.h" /* vm_uuid_hera() */ +#endif /* LIKELY/UNLIKELY macros are defined in vm.h */ #ifndef SF_FC_BUCKETS @@ -112,14 +116,28 @@ void vm_dictionary_untrack_entry(VM *vm, DictEntry *entry) { /* Cache coherence: the entry is about to be removed (FORGET frees it) — * a stale pointer left in the hot-words ring would be a use-after-free, - * and an older same-named word may become visible again. */ + * and an older same-named word may become visible again. + * §17.3 (item 4.1): retired under __STARKERNEL__ -- the kernel word + * layer stays inert to this mechanism entirely, so there is nothing to + * keep coherent here on the kernel side. Hosted is unaffected. */ +#ifndef __STARKERNEL__ hotwords_cache_evict_entry(vm->hotwords_cache, entry); +#endif uint32_t word_id = entry->word_id; if (word_id == WORD_ID_INVALID || word_id >= DICTIONARY_SIZE) { return; } +#ifdef __STARKERNEL__ + /* item 4.1 coherence hook: if this word_id is resident on the Stadium, + * reclaim its cell (crediting heat back to the reservoir) BEFORE the id + * is recycled below -- otherwise the next word assigned this same id + * would alias onto the forgotten word's stale cell (same failure class + * as the 2026-08-02 block_words.c aliasing bug). */ + stadium_word_forget(word_id); +#endif + if (vm->word_id_map[word_id] == entry) { vm->word_id_map[word_id] = NULL; } @@ -316,12 +334,18 @@ DictEntry *vm_find_word(VM *vm, const char *name, size_t len) { /* Use hot-words cache for physics-driven frequency-based acceleration. * The cache's bucket fallback resolves via vm_dict_resolve_in_bucket(), - * so a non-NULL result already honors newest-first shadowing. */ + * so a non-NULL result already honors newest-first shadowing. + * §17.3 (item 4.1): bypassed under __STARKERNEL__ -- the kernel side + * feeds the Stadium instead (vm_core.c's dispatch sites), and this + * lookup fast path is retired in favor of the ordinary bucket scan + * below. Hosted is unaffected. */ +#ifndef __STARKERNEL__ DictEntry *found = hotwords_cache_lookup(vm, vm->hotwords_cache, bucket, n, name, len); if (found) { sf_mutex_unlock(&vm->dict_lock); return found; } +#endif /* Phase 2: Choose lookup strategy based on pattern diversity */ if (vm->lookup_strategy == 1) { @@ -431,8 +455,12 @@ DictEntry *vm_create_word(VM *vm, const char *name, size_t len, word_func_t func /* Cache coherence: this definition may shadow an older word of the same * name that the hot-words cache is still serving. Evict the name so the - * next lookup re-resolves through the arbitrated bucket scan. */ + * next lookup re-resolves through the arbitrated bucket scan. + * §17.3 (item 4.1): retired under __STARKERNEL__, same as the other + * hotwords_cache_* call sites in this file. */ +#ifndef __STARKERNEL__ hotwords_cache_evict_name(vm->hotwords_cache, name, len); +#endif log_message(LOG_DEBUG, "vm_create_word: '%.*s' len=%zu total=%zu @%p", (int) len, name, len, total, (void *) entry); @@ -492,9 +520,12 @@ void vm_hide_word(VM *vm) { if (vm && vm->latest) { vm->latest->flags |= WORD_HIDDEN; physics_metadata_refresh_state(vm->latest); - /* Visibility changed: this name may now resolve to an older entry */ + /* Visibility changed: this name may now resolve to an older entry. + * §17.3 (item 4.1): retired under __STARKERNEL__. */ +#ifndef __STARKERNEL__ hotwords_cache_evict_name(vm->hotwords_cache, vm->latest->name, vm->latest->name_len); +#endif } } @@ -508,9 +539,12 @@ void vm_smudge_word(VM *vm) { } vm->latest->flags ^= WORD_SMUDGED; physics_metadata_refresh_state(vm->latest); - /* Visibility changed in either direction: force re-resolution */ + /* Visibility changed in either direction: force re-resolution. + * §17.3 (item 4.1): retired under __STARKERNEL__. */ +#ifndef __STARKERNEL__ hotwords_cache_evict_name(vm->hotwords_cache, vm->latest->name, vm->latest->name_len); +#endif } void vm_pin_execution_heat(VM *vm) { diff --git a/src/starkernel/kernel_main.c b/src/starkernel/kernel_main.c index f4afbb5..6b725da 100644 --- a/src/starkernel/kernel_main.c +++ b/src/starkernel/kernel_main.c @@ -53,6 +53,7 @@ EFI_RUNTIME_SERVICES *g_sk_runtime_services = NULL; #include "starkernel/vm/bootstrap/sk_vm_bootstrap.h" #include "starkernel/vm/parity.h" #include "starkernel/vm/stadium.h" +#include "starkernel/vm/stadium_words.h" #include "starkernel/capsule_generated.h" #include "starkernel/capsule_loader.h" #include "starkernel/capsule_birth.h" /* capsule_birth_mama, capsule_find_mama_init */ @@ -484,6 +485,14 @@ static void kernel_main_deep(BootInfo *boot_info) { * yet, so a failed allocation logs and boot continues. */ (void)stadium_boot_init(); + /* item 4.1, FABRIC.md item 3.6/§17.7: actually enforce "Hera is patron + * zero" before anything else can land on cell 0 via the free list, then + * bring up the word layer's map. Both must happen before the first word + * ever dispatches -- capsule birth below runs init.4th, which dispatches + * words. */ + (void)stadium_birth_hera(); + stadium_words_init(); + /* M7: VM Bootstrap and Parity Validation */ console_println("VM: bootstrap parity..."); ParityPacket parity_pkt; @@ -614,6 +623,11 @@ static void kernel_main_deep(BootInfo *boot_info) { #ifdef STARFORTH_ENABLE_VM VM *mama = (VM *)sk_get_mama_vm(); + /* item 4.1 diagnostic (§25.5 acceptance: "observable via a diagnostic + * word or boot console output"): word patrons already dispatched during + * capsule birth above, so this is non-vacuous by this point. */ + stadium_words_print_boot_diagnostics(vm_uuid_hera()); + /* * Runtime --doe flag: inject "EXEC-DOE BYE" if requested via boot args. * Checked before SK_STARTUP_FORTH so a runtime --doe takes precedence. diff --git a/src/starkernel/vm/stadium.c b/src/starkernel/vm/stadium.c index 15c14a5..e6964be 100644 --- a/src/starkernel/vm/stadium.c +++ b/src/starkernel/vm/stadium.c @@ -38,6 +38,7 @@ #include "starkernel/pmm.h" #include "starkernel/console.h" #include "starkernel/hal/hal.h" +#include "starkernel/q48_16.h" /* Q48_ONE -- item 4.1's reservoir starts each VM's quota at 1.0 */ static StadiumCell *stadium_cell_array = (StadiumCell *)0; static uint8_t *stadium_bitmap = (uint8_t *)0; @@ -71,6 +72,11 @@ typedef struct { VMUuid vm_id; int in_use; size_t free_head; + uint64_t reservoir; /* item 4.1, FABRIC.md §17.7 -- Q48.16, heat this VM's + * quota holds but no resident patron has claimed. + * Invariant: Σ(resident patron heat) + reservoir == + * Q48_ONE, checked the same way vm_physics_conserved() + * checks the fleet sum. */ } StadiumVMQuota; static StadiumVMQuota stadium_quotas[STADIUM_MAX_VM_COUNT]; @@ -152,11 +158,16 @@ int stadium_boot_init(void) { stadium_quotas[i].vm_id = vm_uuid_none(); stadium_quotas[i].in_use = 0; stadium_quotas[i].free_head = STADIUM_CELL_NONE; + stadium_quotas[i].reservoir = 0; } } stadium_quotas[0].vm_id = vm_uuid_hera(); stadium_quotas[0].in_use = 1; stadium_quotas[0].free_head = 0; + /* item 4.1, §17.7: at quota-grant time, before any resident patron + * exists, the reservoir holds the VM's entire conserved share -- mirrors + * Hera holding the fleet's whole Q48_ONE before any other VM is born. */ + stadium_quotas[0].reservoir = Q48_ONE; stadium_cell_array = cells; stadium_bitmap = bitmap; @@ -282,6 +293,13 @@ int stadium_evict(size_t cell_index) { bitmap_clear(cell_index); slot = stadium_owner[cell_index]; + /* item 4.1, §17.7: the departing patron's remaining heat must flow back + * to its owner's reservoir before the cell returns to the free list, or + * every reap leaks heat and Σ(resident) + reservoir drifts below + * Q48_ONE. Captured BEFORE the zero-fill below, which would otherwise + * destroy it. */ + stadium_quotas[slot].reservoir += header->heat; + { uint8_t *raw = (uint8_t *)header; size_t i; @@ -380,4 +398,64 @@ size_t stadium_admit(VMUuid vm_id, const StadiumPatronHeader *candidate) { return idx; } +uint64_t stadium_reservoir_pull(VMUuid vm_id, uint64_t amount) { + int slot = quota_slot_for_vm(vm_id); + uint64_t pulled; + + if (slot < 0) return 0; + + pulled = (amount > stadium_quotas[slot].reservoir) ? stadium_quotas[slot].reservoir : amount; + stadium_quotas[slot].reservoir -= pulled; + return pulled; +} + +void stadium_reservoir_push(VMUuid vm_id, uint64_t amount) { + int slot = quota_slot_for_vm(vm_id); + + if (slot < 0) return; + stadium_quotas[slot].reservoir += amount; +} + +uint64_t stadium_reservoir_peek(VMUuid vm_id) { + int slot = quota_slot_for_vm(vm_id); + + if (slot < 0) return 0; + return stadium_quotas[slot].reservoir; +} + +/* + * FABRIC.md item 3.6 / item 4.1: see stadium.h's doc. Idempotent via the + * item-3.1 discriminator bitmap -- if cell 0 already reads as resident, + * something already birthed her (or, if it isn't actually Hera, something + * else already claimed cell 0 -- either way this must not clobber it). + */ +int stadium_birth_hera(void) { + StadiumPatronHeader candidate; + size_t idx; + + if (!stadium_initialized) return -1; + if (stadium_ncells > 0 && bitmap_get(STADIUM_HERA_CELL_INDEX)) return 0; + + { + uint8_t *raw = (uint8_t *)&candidate; + size_t i; + for (i = 0; i < sizeof(candidate); i++) raw[i] = 0; + } + candidate.identity = 0; + candidate.heat = 0; + candidate.ttl = 0; + candidate.link = STADIUM_LINK_NONE; + candidate.contains = STADIUM_CONTAINS_NONE; + candidate.mass = 1; + candidate.flags = STADIUM_FLAG_PIN; + candidate.behaviour = (uint8_t)STADIUM_BEHAVIOUR_COOL; + + idx = stadium_admit(vm_uuid_hera(), &candidate); + if (idx == STADIUM_CELL_NONE) return -1; /* refused; should not happen (quota is fresh and empty) */ + if (idx != STADIUM_HERA_CELL_INDEX) { + sk_hal_panic("Stadium: birth_hera did not land on cell 0 -- patron-zero invariant broken"); + } + return 0; +} + #endif /* __STARKERNEL__ */ \ No newline at end of file diff --git a/src/starkernel/vm/stadium_words.c b/src/starkernel/vm/stadium_words.c new file mode 100644 index 0000000..27595d9 --- /dev/null +++ b/src/starkernel/vm/stadium_words.c @@ -0,0 +1,231 @@ +/* + StarForth — Steady-State Virtual Machine Runtime + + Copyright (c) 2023–2025 Robert A. James + All rights reserved. + + This file is part of the StarForth project. + + Licensed under the StarForth License, Version 1.0 (the "License"); + you may not use this file except in compliance with the License. + + You may obtain a copy of the License at: + https://github.com/star.4th@proton.me/StarForth/LICENSE.txt + + This software is provided "AS IS", WITHOUT WARRANTY OF ANY KIND, + express or implied, including but not limited to the warranties of + merchantability, fitness for a particular purpose, and noninfringement. + + See the License for the specific language governing permissions and + limitations under the License. + + */ + +/** + * stadium_words.c - Word patrons on the Stadium (FABRIC.md §17.3/§17.7, + * punch list item 4.1). See stadium_words.h for the design rationale. + */ + +#include "starkernel/vm/stadium_words.h" + +#ifdef __STARKERNEL__ + +#include "starkernel/vm/stadium.h" +#include "starkernel/console.h" +#include "starkernel/q48_16.h" /* Q48_ONE -- diagnostic print only */ +#include "vm.h" /* DICTIONARY_SIZE, WORD_ID_INVALID */ + +/* + * StadiumWordSlot - the kernel-side word_id -> cell_index map (decided + * 2026-08-05: no DictEntry field). `last_decay_tick` is this layer's own + * bookkeeping, separate from DictEntry.physics.last_decay_tick -- that field + * belongs to execution_heat's decay, which item 4.1 does not touch. + */ +typedef struct { + size_t cell_index; /* STADIUM_CELL_NONE if not resident */ + uint64_t last_decay_tick; +} StadiumWordSlot; + +static StadiumWordSlot word_slots[DICTIONARY_SIZE]; +static int words_initialized = 0; +static uint64_t stat_promotions = 0; +static uint64_t stat_evictions = 0; + +void stadium_words_init(void) { + uint32_t i; + for (i = 0; i < DICTIONARY_SIZE; i++) { + word_slots[i].cell_index = STADIUM_CELL_NONE; + word_slots[i].last_decay_tick = 0; + } + stat_promotions = 0; + stat_evictions = 0; + words_initialized = 1; +} + +static int cell_is_resident(size_t idx) { + const uint8_t *bm = stadium_header_bitmap(); + if (!bm) return 0; + return (bm[idx / 8u] >> (idx % 8u)) & 1u; +} + +/* + * resolve_resident_cell - Self-healing lookup (advisor-flagged reverse + * coherence gap): the map may claim word_id is resident at a cell that was + * actually reclaimed by someone else's stadium_admit() eviction fallback + * since the map was last written. Detected here, lazily, against ground + * truth already public via stadium_cells()/stadium_header_bitmap() -- + * no new coupling from stadium.c into this file. A stale mapping is cleared + * and counted as an eviction on discovery. + */ +static size_t resolve_resident_cell(uint32_t word_id) { + size_t cell = word_slots[word_id].cell_index; + StadiumCell *cells; + + if (cell == STADIUM_CELL_NONE) return STADIUM_CELL_NONE; + if (cell >= stadium_cell_count() || !cell_is_resident(cell)) { + word_slots[word_id].cell_index = STADIUM_CELL_NONE; + stat_evictions++; + return STADIUM_CELL_NONE; + } + cells = stadium_cells(); + if (cells[cell].header.identity != (uint64_t)word_id) { + word_slots[word_id].cell_index = STADIUM_CELL_NONE; + stat_evictions++; + return STADIUM_CELL_NONE; + } + return cell; +} + +void stadium_word_dispatch(VMUuid vm_id, uint32_t word_id, uint64_t heartbeat_ticks) { + size_t cell; + + if (!words_initialized) return; + if (word_id == WORD_ID_INVALID || word_id >= DICTIONARY_SIZE) return; + + cell = resolve_resident_cell(word_id); + + if (cell != STADIUM_CELL_NONE) { + StadiumPatronHeader *h = &stadium_cells()[cell].header; + uint64_t elapsed = heartbeat_ticks - word_slots[word_id].last_decay_tick; + + if (elapsed > 0) { + /* Redirected Loop #3 (§17.7): a FRACTION of the cell's own + * current heat per elapsed tick -- unit-safe for a conserved + * share of 1.0, unlike execution_heat's flat per-tick amount. + * STADIUM_WORD_COOL_RATE_Q48 / 65536 is that fraction. */ + uint64_t per_tick = (h->heat * (uint64_t)STADIUM_WORD_COOL_RATE_Q48) >> 16; + uint64_t cooled = per_tick * elapsed; + if (cooled > h->heat) cooled = h->heat; + if (cooled > 0) { + h->heat -= cooled; + stadium_reservoir_push(vm_id, cooled); + } + word_slots[word_id].last_decay_tick = heartbeat_ticks; + } + + h->heat += stadium_reservoir_pull(vm_id, (uint64_t)STADIUM_WORD_HEAT_QUANTUM); + return; + } + + /* Not resident: Option B starter-grant admission (§17.7). execution_heat + * plays no role -- density is decided entirely by the pulled quantum. */ + { + uint64_t pulled = stadium_reservoir_pull(vm_id, (uint64_t)STADIUM_WORD_HEAT_QUANTUM); + StadiumPatronHeader candidate; + uint8_t *raw = (uint8_t *)&candidate; + size_t i; + size_t idx; + + for (i = 0; i < sizeof(candidate); i++) raw[i] = 0; + candidate.identity = (uint64_t)word_id; + candidate.heat = pulled; + candidate.ttl = 0; + candidate.link = 0; /* unused for word patrons; no continuation/consumer yet */ + candidate.contains = STADIUM_CONTAINS_NONE; + candidate.mass = 1; + candidate.flags = 0; /* unpinned -- words carry no pin exception (§17.3) */ + candidate.behaviour = (uint8_t)STADIUM_BEHAVIOUR_COOL; + + idx = stadium_admit(vm_id, &candidate); + if (idx == STADIUM_CELL_NONE) { + stadium_reservoir_push(vm_id, pulled); /* rollback: preserve conservation */ + return; + } + + word_slots[word_id].cell_index = idx; + word_slots[word_id].last_decay_tick = heartbeat_ticks; + stat_promotions++; + } +} + +void stadium_word_forget(uint32_t word_id) { + size_t cell; + + if (!words_initialized) return; + if (word_id == WORD_ID_INVALID || word_id >= DICTIONARY_SIZE) return; + + cell = resolve_resident_cell(word_id); + if (cell == STADIUM_CELL_NONE) return; + + if (stadium_evict(cell) == 0) { + word_slots[word_id].cell_index = STADIUM_CELL_NONE; + stat_evictions++; + } +} + +void stadium_words_stats(uint64_t *promotions, uint64_t *evictions) { + if (promotions) *promotions = stat_promotions; + if (evictions) *evictions = stat_evictions; +} + +/* Freestanding: no libc printf. Prints an unsigned decimal, no leading + * zeros -- same small utility stadium.c already duplicates locally. */ +static void console_put_u64(uint64_t v) { + char buf[21]; + int i = 20; + buf[20] = '\0'; + if (v == 0) { + console_puts("0"); + return; + } + while (v > 0 && i > 0) { + buf[--i] = (char)('0' + (v % 10)); + v /= 10; + } + console_puts(&buf[i]); +} + +void stadium_words_print_boot_diagnostics(VMUuid vm_id) { + uint64_t promotions = 0, evictions = 0; + uint64_t resident_sum = 0; + uint64_t reservoir; + size_t ncells = stadium_cell_count(); + size_t i; + + stadium_words_stats(&promotions, &evictions); + + for (i = 0; i < ncells; i++) { + if (cell_is_resident(i)) { + resident_sum += stadium_cells()[i].header.heat; + } + } + reservoir = stadium_reservoir_peek(vm_id); + + console_puts("Stadium words: promotions="); + console_put_u64(promotions); + console_puts(" evictions="); + console_put_u64(evictions); + console_println(""); + + console_puts("Stadium conservation: resident_sum="); + console_put_u64(resident_sum); + console_puts(" reservoir="); + console_put_u64(reservoir); + console_puts(" sum="); + console_put_u64(resident_sum + reservoir); + console_puts(" (Q48_ONE="); + console_put_u64((uint64_t)Q48_ONE); + console_println(")"); +} + +#endif /* __STARKERNEL__ */ \ No newline at end of file diff --git a/src/starkernel/vm/vm_core.c b/src/starkernel/vm/vm_core.c index 99a77d8..11577ed 100644 --- a/src/starkernel/vm/vm_core.c +++ b/src/starkernel/vm/vm_core.c @@ -58,6 +58,7 @@ #include "starkernel/vm/arena.h" #include "starkernel/console.h" /* g_sk_fault_word */ #include "platform_alloc.h" /* sf_free for call_stack */ +#include "starkernel/vm/stadium_words.h" /* item 4.1: word patrons on the Stadium */ #endif #include "word_source/include/vocabulary_words.h" #include "vm_internal.h" @@ -681,6 +682,12 @@ void execute_colon_word(VM* vm) physics_execution_heat_increment(w); + /* item 4.1, FABRIC.md §17.7: feed the Stadium's independent + * conserved heat wire. execution_heat above is untouched by + * this call. vm_uuid_hera() is hardcoded here -- Tripod is + * pruned to Hera alone (item 0.1); revisit at item 4.2. */ + stadium_word_dispatch(vm_uuid_hera(), w->word_id, vm->heartbeat.tick_count); + uint32_t word_id = w->word_id; if (word_id < DICTIONARY_SIZE) { @@ -874,6 +881,7 @@ void vm_interpret_word(VM* vm, const char* word_str, size_t len) entry->physics.last_decay_ns = lookup_ns; physics_execution_heat_increment(entry); + stadium_word_dispatch(vm_uuid_hera(), entry->word_id, vm->heartbeat.tick_count); if (canon && canon != entry) { /* Apply decay to canonical entry as well */ @@ -884,6 +892,7 @@ void vm_interpret_word(VM* vm, const char* word_str, size_t len) canon->physics.last_decay_ns = lookup_ns; physics_execution_heat_increment(canon); + stadium_word_dispatch(vm_uuid_hera(), canon->word_id, vm->heartbeat.tick_count); physics_metadata_touch(canon, canon->execution_heat, lookup_ns); } sf_mutex_unlock(&vm->dict_lock);