//# publish module 0x42.M { public foo(): u64 { label b0: return 5; } } //# publish module 0x43.M { public bar(): u64 { label b0: return 7; } } //# publish module 0x44.M { import 0x43.M as M1; import 0x44.M as M2; public run() { let x: u64; label b0: x = M1.foo(); assert(move(x) == 5, 42); x = M2.bar(); assert(move(x) == 7, 42); return; } } //# run import 0x42.M; main() { label b0: M.run(); return; } //# publish module 0x45.M { public baz(): u64 { label b0: return 9; } } //# run import 0x42.M as M1; import 0x43.M as M2; import 0x44.M as M3; main() { let x: u64; label b0: x = M1.foo(); assert(move(x) == 5, 42); x = M2.bar(); assert(move(x) == 7, 42); x = M3.baz(); assert(move(x) == 9, 42); return; }