code wiki / _hdl_build / _constarg_probe.nx
_constarg_probe.nx
buildroot/runtime/_hdl_build/_constarg_probe.nx
about
_constarg_probe.nx -- minimal repro lattice for debt 1785866425: a const IDENTIFIER passed as a
function-call ARGUMENT arrived as 0 in nx_being_showcase (tm_vcol(i, BS_SKIN) painted black), while
the same value built in let-locals passed fine. This probe enumerates the suspect axes -- const
initializer shape (literal vs expression), value size, and use position (arg1/arg2/store/compare) --
so the compiler fix targets the REAL failing surface, not a guess. expect_exit: 0 when the bug is fixed.
dependencies 1 imports · 0 importers
imports: nx_syscalls.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 8 | const CA_SMALL: i64 = 2600 |
| 9 | const CA_BIG_LIT: i64 = 11190506 |
| 10 | const CA_BIG_EXPR: i64 = 234 + 192*256 + 170*65536 |
| 11 | const CA_NEG_EXPR: i64 = 0-150 |
functions
| 13 | func cw(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } |
| 14 | func cn(v: i64) -> i64 |
| 25 | func echo1(v: i64) -> i64 { return v } called by 1: main |
| 26 | func echo2(a: i64, v: i64) -> i64 { return v } called by 1: main |
| 27 | func tooth(name: *u8, got: i64, want: i64, fails: *i64) -> i64 |
| 34 | func main() -> i64 |