- // MIR for `main` before ConstProp + // MIR for `main` after ConstProp fn main() -> () { let mut _0: (); // return place in scope 0 at $DIR/tuple_literal_propagation.rs:2:11: 2:11 let _1: (u32, u32); // in scope 0 at $DIR/tuple_literal_propagation.rs:3:9: 3:10 let _2: (); // in scope 0 at $DIR/tuple_literal_propagation.rs:5:5: 5:15 let mut _3: (u32, u32); // in scope 0 at $DIR/tuple_literal_propagation.rs:5:13: 5:14 scope 1 { debug x => _1; // in scope 1 at $DIR/tuple_literal_propagation.rs:3:9: 3:10 } bb0: { StorageLive(_1); // scope 0 at $DIR/tuple_literal_propagation.rs:3:9: 3:10 _1 = (const 1_u32, const 2_u32); // scope 0 at $DIR/tuple_literal_propagation.rs:3:13: 3:19 // ty::Const // + ty: u32 // + val: Value(Scalar(0x00000001)) // mir::Constant - // + span: $DIR/tuple_literal_propagation.rs:3:14: 3:15 + // + span: $DIR/tuple_literal_propagation.rs:3:13: 3:19 // + literal: Const { ty: u32, val: Value(Scalar(0x00000001)) } // ty::Const // + ty: u32 // + val: Value(Scalar(0x00000002)) // mir::Constant - // + span: $DIR/tuple_literal_propagation.rs:3:17: 3:18 + // + span: $DIR/tuple_literal_propagation.rs:3:13: 3:19 // + literal: Const { ty: u32, val: Value(Scalar(0x00000002)) } StorageLive(_2); // scope 1 at $DIR/tuple_literal_propagation.rs:5:5: 5:15 StorageLive(_3); // scope 1 at $DIR/tuple_literal_propagation.rs:5:13: 5:14 - _3 = _1; // scope 1 at $DIR/tuple_literal_propagation.rs:5:13: 5:14 + _3 = (const 1_u32, const 2_u32); // scope 1 at $DIR/tuple_literal_propagation.rs:5:13: 5:14 + // ty::Const + // + ty: u32 + // + val: Value(Scalar(0x00000001)) + // mir::Constant + // + span: $DIR/tuple_literal_propagation.rs:5:13: 5:14 + // + literal: Const { ty: u32, val: Value(Scalar(0x00000001)) } + // ty::Const + // + ty: u32 + // + val: Value(Scalar(0x00000002)) + // mir::Constant + // + span: $DIR/tuple_literal_propagation.rs:5:13: 5:14 + // + literal: Const { ty: u32, val: Value(Scalar(0x00000002)) } _2 = const consume(move _3) -> bb1; // scope 1 at $DIR/tuple_literal_propagation.rs:5:5: 5:15 // ty::Const // + ty: fn((u32, u32)) {consume} // + val: Value(Scalar()) // mir::Constant // + span: $DIR/tuple_literal_propagation.rs:5:5: 5:12 // + literal: Const { ty: fn((u32, u32)) {consume}, val: Value(Scalar()) } } bb1: { StorageDead(_3); // scope 1 at $DIR/tuple_literal_propagation.rs:5:14: 5:15 StorageDead(_2); // scope 1 at $DIR/tuple_literal_propagation.rs:5:15: 5:16 _0 = const (); // scope 0 at $DIR/tuple_literal_propagation.rs:2:11: 6:2 // ty::Const // + ty: () // + val: Value(Scalar()) // mir::Constant // + span: $DIR/tuple_literal_propagation.rs:2:11: 6:2 // + literal: Const { ty: (), val: Value(Scalar()) } StorageDead(_1); // scope 0 at $DIR/tuple_literal_propagation.rs:6:1: 6:2 return; // scope 0 at $DIR/tuple_literal_propagation.rs:6:2: 6:2 } }