This PR adds support for detecting if overflow checks are enabled in similar fashion as debug_assertions are detected.
Possible use-case of this, for example, if we want to use checked integer casts in builds with overflow checks, e.g.
```rust
pub fn cast(val: usize)->u16 {
if cfg!(overflow_checks) {
val.try_into().unwrap()
}
else{
vas as _
}
}
```
Resolves #91130.
Tracking issue: #111466.
7 lines
137 B
Rust
7 lines
137 B
Rust
#![crate_type = "lib"]
|
|
|
|
#[cfg(overflow_checks)] //~ ERROR `cfg(overflow_checks)` is experimental
|
|
pub fn cast(v: i64)->u32{
|
|
todo!()
|
|
}
|