// expect: 10 hi 2 4 9 / // destructors 1: heap(v) boxes an int, a string and a struct into a fresh owned block sized to the value include rt; struct foo { int bar; int baz; } fn main() { int* a = heap(10); char* s = heap("hi"); foo v; v.bar = 4; v.baz = 9; foo* f = heap(v); rt.put_n(*a); rt.put_c(32); rt.put_s(s); rt.put_c(32); rt.put_n(rt.len_w(s)); rt.put_c(32); rt.put_n(f.bar); rt.put_c(32); rt.put_n(f.baz); rt.put_c(32); rt.put_c(10); return 0; } // zc0: skip