fn main() {
    (&[1u32, 2, 3] as &[u32])[1];
}

// END RUST SOURCE
// START rustc.main.ConstProp.before.mir
//  bb0: {
//      ...
//      _4 = &(promoted[0]: [u32; 3]);
//      _3 = _4;
//      _2 = move _3 as &[u32] (Pointer(Unsize));
//      ...
//      _6 = const 1usize;
//      _7 = Len((*_2));
//      _8 = Lt(_6, _7);
//      assert(move _8, "index out of bounds: the len is move _7 but the index is _6") -> bb1;
//  }
//  bb1: {
//      _1 = (*_2)[_6];
//      ...
//      return;
//  }
// END rustc.main.ConstProp.before.mir
// START rustc.main.ConstProp.after.mir
//  bb0: {
//      ...
//      _4 = &(promoted[0]: [u32; 3]);
//      _3 = _4;
//      _2 = move _3 as &[u32] (Pointer(Unsize));
//      ...
//      _6 = const 1usize;
//      _7 = const 3usize;
//      _8 = const true;
//      assert(const true, "index out of bounds: the len is move _7 but the index is _6") -> bb1;
//  }
//  bb1: {
//      _1 = const 2u32;
//      ...
//      return;
//  }
// END rustc.main.ConstProp.after.mir
