aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/rt.zc
diff options
context:
space:
mode:
authorGravatar zinc <zinc@downsta.ir> 2026-10-15 02:37:51 +0330
committerGravatar zinc <zinc@downsta.ir> 2026-10-15 02:40:51 +0330
commitfd18cb8fa5117b98939db553c2f61dd83b84d7d8 (patch)
tree73ffa71eb12442df94a1fb7c095e3eaed338787b /src/runtime/rt.zc
parentdestructors: hint: x: has drop and is live at spawn; the worker's copy drops ... (diff)
rt: memreport marks a leaked value whose drop never ran with (drop); spec 4.11, readme, memdebug_report_drop.zc
Diffstat (limited to 'src/runtime/rt.zc')
-rw-r--r--src/runtime/rt.zc4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/runtime/rt.zc b/src/runtime/rt.zc
index 099ca2e..3d448b0 100644
--- a/src/runtime/rt.zc
+++ b/src/runtime/rt.zc
@@ -1627,7 +1627,9 @@ int memreport() {
if (site_p[i]) {
p = site_p[i] ^ MAGIC;
if (isobj(p)) {
- put_s("leak: line "); put_n(site_line[i]); put_s(" "); put_n(paylen(p)); put_s(" words\n"); // n, the words new asked for
+ put_s("leak: line "); put_n(site_line[i]); put_s(" "); put_n(paylen(p)); put_s(" words"); // n, the words new asked for
+ if ((p[-4] & (F_HASDROP | F_DROPPED)) == F_HASDROP) put_s(" (drop)"); // a leaked resource: its drop never ran
+ put_c(10);
n++;
}
}