//# publish module 0x42.A { struct Coin has store { value: u64 } struct A { c: Self.Coin } public destroy_zero(c: Self.Coin) { label b0: Coin {} = move(c); assert(() == 0, 42); return; } public destroy_a(a: Self.A) { label b0: A {} = move(a); Self.destroy_zero(); return; } } //# run import 0x42.A; main() { let zero_resource: Diem.Diem; let s: A.A; label b0: zero_resource = Diem.zero(); s = A.new(move(zero_resource)); A.destroy_a(move(s)); return; }