1 2 3 4 5 6 7 8 9 10 11 12 13 14
namespace; include rt; // expect: p: used after it was given away fn take(int* .d p) { rt.free(p); return 0; } fn main(a) { int* p = rt.new(int); defer rt.free(p); if (a) { take(p); return 1; } return 0; }