Extend the ADT test suite with nested-pattern coverage. The spec-level match-pattern function in spec/evaluator.sx already recurses through constructor sub-patterns via the dict-shape shim ((get value :_adt| :_ctor|:_fields)), and already handles _ wildcards, quoted literals, and bare-symbol variable bindings. Step 5+6 added the AdtValue native type with the same dict-key access surface, so no host changes are needed for nesting. Added 8 new deftests covering: - nested constructor sanity (Just x / Nothing) - nested constructor binds inner fields ((Just (Pair a b)) -> a+b) - nested wildcard ((Just _) -> "yes") - nested literal equality ((Just 42) literal vs (else) var) - nested literal-vs-var fall-through (literal fails, var binds) - deeply nested constructors (W1(W2(L3 n)) -> n) - mixed bind+wildcard ((BoxM (PairM x _)) -> x) - nested ctor fail-through (WX (LeftX) vs WX (RightX)) Tests: OCaml 4532 -> 4540 (+8), JS 2578 -> 2586 (+8). Zero regressions on either host (failures unchanged at 1339 / 2465 baselines). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
13 KiB
13 KiB