agra
61f5700a36
P5.7 Step E: fix issue 0141 (reject silent [*]T -> []T coercion); land regression
...
The 0141 repro relied on a silent-wrong coercion: passing List.items (a
[*]T many-pointer, no length) to a []T parameter passed the bare 8-byte
pointer into a 16-byte {ptr,len} slot — garbage .len, at comptime a segfault
in the VM slice decoder (decodeMemberSlice), at runtime an LLVM verify failure.
Fix (root cause): classify [*]T -> []T as many_to_slice_reject in
conversions.zig and emit a build-gating diagnostic in coerce.zig telling the
user to slice with a length (ptr[0..len]). Guard runComptimeTypeFunc to skip
VM eval once diagnostics.hasErrors() — a type-fn body that failed coercion
holds malformed comptime data (a real host Addr) that would fault the VM's
Ref-level guards.
Land the corrected feature as examples/0640 (List-grown comptime enum via
vs.items[0..vs.len] -> green=7) and the rejection as
examples/1183-diagnostics-many-pointer-to-slice-rejected. Mark issue 0141
RESOLVED.
708/0 corpus + 476/476 unit.
2026-06-19 20:40:21 +03:00
..
2026-06-15 11:18:35 +03:00
2026-06-15 11:18:35 +03:00
2026-06-15 11:14:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-05-27 21:44:39 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-01 16:47:51 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-04 02:00:13 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-05 01:32:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-04 17:04:41 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-05 20:48:49 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 12:35:20 +03:00
2026-06-05 23:33:22 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-09 22:16:47 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 09:31:53 +03:00
2026-06-19 15:32:07 +03:00
2026-06-12 09:31:53 +03:00
2026-06-12 09:31:53 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 13:36:54 +03:00
2026-06-15 11:18:35 +03:00
2026-06-12 21:52:11 +03:00
2026-06-13 18:55:41 +03:00
2026-06-13 18:55:41 +03:00
2026-06-13 13:41:30 +03:00
2026-06-13 13:41:30 +03:00
2026-06-13 18:55:10 +03:00
2026-06-13 21:18:40 +03:00
2026-06-15 20:21:25 +03:00
2026-06-16 06:29:36 +03:00
2026-06-16 22:24:31 +03:00
2026-06-17 04:31:38 +03:00
2026-06-19 20:40:21 +03:00
2026-06-18 10:47:36 +03:00
2026-06-18 19:42:42 +03:00