Module wasmtime_environ::__core::ub_checks
source · 🔬This is a nightly-only experimental API. (
ub_checks
)Expand description
Provides the assert_unsafe_precondition
macro as well as some utility functions that cover
common preconditions.
Macros§
- assert_unsafe_preconditionExperimentalCheck that the preconditions of an unsafe function are followed. The check is enabled at runtime if debug assertions are enabled when the caller is monomorphized. In const-eval/Miri checks implemented with this macro for language UB are always ignored.
Functions§
- check_library_ubExperimentalReturns whether we should perform some UB-checking at runtime. This eventually evaluates to
cfg!(ub_checks)
, but behaves different fromcfg!
when mixing crates built with different flags: if the crate has UB checks enabled or carries the#[rustc_preserve_ub_checks]
attribute, evaluation is delayed until monomorphization (or until the call gets inlined into a crate that does not delay evaluation further); otherwise it can happen any time.