Adds `#[rustc_force_inline]` which is similar to always inlining but reports an error if the inlining was not possible, and which always attempts to inline annotated items, regardless of optimisation levels. It can only be applied to free functions to guarantee that the MIR inliner will be able to resolve calls.
11 lines
184 B
Rust
11 lines
184 B
Rust
//@ compile-flags: --crate-type=lib
|
|
#![feature(rustc_attrs)]
|
|
|
|
#[rustc_force_inline = "the test requires it"]
|
|
pub fn forced_with_reason() {
|
|
}
|
|
|
|
#[rustc_force_inline]
|
|
pub fn forced() {
|
|
}
|