diff options
| author | 2026-10-14 18:22:04 +0330 | |
|---|---|---|
| committer | 2026-10-14 20:03:38 +0330 | |
| commit | 459b7661aaa0d65d01be064bd4b9976c4f045a5c (patch) | |
| tree | eccb0738631fc52e5116fb238c2f7f961784ff36 /src/compiler/decl.zc | |
| parent | zy: nonzero exit on compile errors (diff) | |
bounds: body scan, loop-entry hoisting, pointer proofs from requested size, --explain-checks v1 (non-o3 code)
Diffstat (limited to 'src/compiler/decl.zc')
| -rw-r--r-- | src/compiler/decl.zc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/decl.zc b/src/compiler/decl.zc index 87281ad..1c72ba0 100644 --- a/src/compiler/decl.zc +++ b/src/compiler/decl.zc @@ -133,6 +133,7 @@ int prescan(int kind, int obj) { // compile a whole unit from stdin int unit_stdin() { int src = readsrc(); + xc_src = src + 0; // a plain copy of the address, not a second owner module_name = 0; module_imports = 0; prescan(3, src); src_push(3, src, 0, 0); @@ -381,7 +382,7 @@ int fndef(int chk, int rty, int ret, int n) { sflag[s] = sflag[s] | F_DEF; fixall(sfix[s], here); sfix[s] = 0; fn_begin(chk, ret); - lt = lt_begin(sval[s], sname[s], lfl); + lt = lt_begin(sval[s], sname[s], lfl); xc_fn = sname[s]; finsym = s; finfer = !ret; effect_current = effect_record(s); rt.fill_w(effect_current, 0, 50); effect_current[0] = 1; if (!chk || stubgen) effect_current[0] = 2; effect_current[1] = np; i = 0; while (i < np) { if (pt[i] == 2) { effect_current[2 + i] = EF_CONSUME; effect_current[26 + i] = EF_CONSUME; } i++; } |
