summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/const_prop/inherit_overflow.main.ConstProp.panic-abort.diff
blob: e0467e3fcff00848c440d65c70213611a3475b2d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
- // MIR for `main` before ConstProp
+ // MIR for `main` after ConstProp
  
  fn main() -> () {
      let mut _0: ();
      let mut _1: u8;
      let mut _2: u8;
      let mut _3: u8;
      scope 1 {
      }
      scope 2 (inlined <u8 as Add>::add) {
          debug self => _2;
          debug other => _3;
          let mut _4: (u8, bool);
      }
  
      bb0: {
          StorageLive(_1);
          StorageLive(_2);
          _2 = const u8::MAX;
          StorageLive(_3);
          _3 = const 1_u8;
-         _4 = CheckedAdd(_2, _3);
-         assert(!move (_4.1: bool), "attempt to compute `{} + {}`, which would overflow", _2, _3) -> [success: bb1, unwind unreachable];
+         _4 = const (0_u8, true);
+         assert(!const true, "attempt to compute `{} + {}`, which would overflow", _2, _3) -> [success: bb1, unwind unreachable];
      }
  
      bb1: {
-         _1 = move (_4.0: u8);
+         _1 = const 0_u8;
          StorageDead(_3);
          StorageDead(_2);
          StorageDead(_1);
          _0 = const ();
          return;
      }
  }