code wiki / _hdl_build / nx_doc_heal_let.nx
nx_doc_heal_let.nx
buildroot/runtime/_hdl_build/nx_doc_heal_let.nx
about
nx_doc_heal_let.nx -- DOCTOR auto-fixer (doc_heal family) for the #1 empty-.s cause: a `let` binding that is
later REASSIGNED (let is immutable in NishiLang -> reassign silently compile-fails to an empty .s). dhl_heal
rewrites each offending `let NAME` -> `var NAME`, and ONLY those: it does NOT touch a clean `let` (never
reassigned), a `==` comparison, or a `NAME[i] = ...` index-assignment (the pointer isn't reassigned). This turns
the team from autonomous RECALL (NX-LET-REASSIGN) into autonomous FIX. Pure string transform; the wired Doctor
runs it on an empty-.s source then recompiles. license_tier: ORIGINAL
dependencies 1 imports · 5 importers
imports: nx_syscalls.nx
imported by: nx_doc_autoheal.nxnx_doc_constscan.nxnx_doc_heal_let_gate.nxnx_doc_kwscan.nxnx_doc_ubscan.nx
structs
| none |
consts
| none |
functions
| 9 | func dhl_isident(c: i64) -> i64 |
| 17 | func dhl_name_at(src: *u8, n: i64, pos: i64, out: *u8) -> i64 |
| 27 | func dhl_is_reassigned(src: *u8, n: i64, name: *u8, nl: i64, declnamepos: i64) -> i64 |
| 59 | func dhl_heal(src: *u8, n: i64, out: *u8, outcap: i64) -> i64 |