//# publish // tests various mixed usage of signer in function arguments module 0x42.M { public main1(s1: signer, s2: &signer, s3: signer) { label l0: return; } public main2(s1: &signer, u: u64, s2: signer, f: bool, s3: &signer) { label l0: return; } public main3(u: u64, f: bool, a: address, s1: signer, s2: &signer) { label l0: return; } } //# run 0x42::M::main1 --args @0x1 @0x1 @0x1 //# run 0x42::M::main2 --args @0x1 0 @0x1 false @0x1 //# run 0x42::M::main3 --args 0 false @0x1 @0x2 @0x3