// expect error: b: can't move out of a value with drop // destructors 6.15.5: an array that is a field of a value with a drop is part of it, so pop on it is refused too include rt; struct bag { int*[?] items; void drop() { rt.put_s("bag drop\n"); } } fn main() { bag* b = rt.new(bag); b.items = rt.new(int*[?]); int* x = rt.new(int); *x = 5; b.items.push(x); int* y = b.items.pop(); rt.put_n(*y); return 0; } // zc0: skip