2023-10-16 17:36:39 +00:00
|
|
|
// skip-filecheck
|
2024-04-17 23:55:35 -07:00
|
|
|
//@ compile-flags: -O -Zmir-opt-level=2
|
2024-04-16 11:11:30 -07:00
|
|
|
// EMIT_MIR_FOR_EACH_PANIC_STRATEGY
|
2023-04-30 14:53:24 +00:00
|
|
|
|
|
|
|
#![crate_type = "lib"]
|
|
|
|
#![feature(step_trait)]
|
|
|
|
|
|
|
|
// EMIT_MIR checked_ops.step_forward.PreCodegen.after.mir
|
2024-04-16 11:11:30 -07:00
|
|
|
pub fn step_forward(x: u16, n: usize) -> u16 {
|
|
|
|
// This uses `u16` so that the conversion to usize is always widening.
|
2023-04-30 14:53:24 +00:00
|
|
|
std::iter::Step::forward(x, n)
|
|
|
|
}
|
|
|
|
|
|
|
|
// EMIT_MIR checked_ops.checked_shl.PreCodegen.after.mir
|
|
|
|
pub fn checked_shl(x: u32, rhs: u32) -> Option<u32> {
|
|
|
|
x.checked_shl(rhs)
|
|
|
|
}
|