diff options
Diffstat (limited to 'tests/mir-opt/const_prop/control_flow_simplification.rs')
-rw-r--r-- | tests/mir-opt/const_prop/control_flow_simplification.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/mir-opt/const_prop/control_flow_simplification.rs b/tests/mir-opt/const_prop/control_flow_simplification.rs new file mode 100644 index 000000000..7dbe8e734 --- /dev/null +++ b/tests/mir-opt/const_prop/control_flow_simplification.rs @@ -0,0 +1,21 @@ +// unit-test: ConstProp +// compile-flags: -Zmir-opt-level=1 + +trait NeedsDrop: Sized { + const NEEDS: bool = std::mem::needs_drop::<Self>(); +} + +impl<This> NeedsDrop for This {} + +// EMIT_MIR control_flow_simplification.hello.ConstProp.diff +// EMIT_MIR control_flow_simplification.hello.PreCodegen.before.mir +fn hello<T>(){ + if <bool>::NEEDS { + panic!() + } +} + +pub fn main() { + hello::<()>(); + hello::<Vec<()>>(); +} |