jolt/test/unit
Yogthos d35783bf1b Reject a malformed catch clause with a clean error in both modes
jolt's catch is (catch class binding body*); the binding (3rd element) must be
a symbol. Neither the analyzer nor the interpreter validated it, so a non-symbol
binding crashed with an internal Janet error (expected integer key for array...)
and, in the interpreter, a malformed clause whose body never threw was silently
swallowed (returned the try value). Clojure rejects a non-class/non-symbol catch
clause; match that with an up-front error in analyze-try and eval-try.

Surfaced building the Chez try/throw emit. Regression rows in exceptions-spec
(runs x3 modes) plus a unit test asserting the clean message in interpret and
compile. jolt-kg6p.
2026-06-17 17:25:14 -04:00
..
compile-fallback-test.janet core: AOT context image — init-cached recovers the bootstrap cost across processes 2026-06-10 13:57:37 -04:00
config-test.janet Refactor phase 4: lift run-mode into config.janet + fix the cache-key footgun 2026-06-15 03:15:24 -04:00
eval-test.janet core: AOT context image — init-cached recovers the bootstrap cost across processes 2026-06-10 13:57:37 -04:00
evaluator-test.janet core: AOT context image — init-cached recovers the bootstrap cost across processes 2026-06-10 13:57:37 -04:00
interop-test.janet core: AOT context image — init-cached recovers the bootstrap cost across processes 2026-06-10 13:57:37 -04:00
lazy-seq-test.janet core: AOT context image — init-cached recovers the bootstrap cost across processes 2026-06-10 13:57:37 -04:00
macro-test.janet test: restructure into unit / integration / spec layers + shared harness 2026-06-05 00:00:16 -04:00
persistent-map-test.janet phm: grow the bucket array past load factor 2 (map-read 4.5x recovery) 2026-06-10 17:06:03 -04:00
phm-hamt-test.janet Persistent hash map: HAMT instead of O(n) copy-on-write (jolt-684u) (#136) 2026-06-16 05:01:22 +00:00
reader-test.janet Protocol/interop fixes to run metosin/malli (jolt-ltwk) (#105) 2026-06-15 03:20:33 +00:00
seed-overlay-registry-test.janet Refactor phase 5d/5e: seed↔overlay registry + rep↔API boundary docs (jolt-bvek) 2026-06-15 04:22:05 -04:00
try-catch-validation-test.janet Reject a malformed catch clause with a clean error in both modes 2026-06-17 17:25:14 -04:00
types-test.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00