1 // check that we clear the "ADT master drop flag" even when there are
2 // no fields to be dropped.
9 // older versions of rustc used to not clear the
10 // drop flag for `e` in this path.
15 fn cond() -> bool { false }
40 // let mut _8: bool; // drop flag for `e`
43 // let mut _11: isize;
44 // let mut _12: isize;
52 // _2 = const cond() -> [return: bb3, unwind: bb2];
64 // switchInt(_2) -> [0u8: bb5, otherwise: bb4];
70 // _5 = K::{{constructor}};
91 // _7 = discriminant(_1);
92 // switchInt(_7) -> [0isize: bb10, otherwise: bb9];
102 // _10 = const false;
103 // _6 = ((_1 as F).0: K);
140 // _8 = const false; // clear the drop flag - must always be reached
154 // drop(_1) -> [return: bb16, unwind: bb17];
162 // _11 = discriminant(_1);
163 // switchInt(_11) -> [0isize: bb16, otherwise: bb19];
167 // switchInt(_8) -> [0u8: bb16, otherwise: bb21];
171 // _12 = discriminant(_1);
172 // switchInt(_12) -> [0isize: bb18, otherwise: bb20];
176 // switchInt(_8) -> [0u8: bb17, otherwise: bb23];