From 55fabf35b1069e071e46a153896d897829268db9 Mon Sep 17 00:00:00 2001 From: Ben Kimock Date: Wed, 7 Feb 2024 10:25:32 -0500 Subject: [PATCH] Add a new debug_assertions intrinsic --- library/core/src/intrinsics.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/library/core/src/intrinsics.rs b/library/core/src/intrinsics.rs index 6ea80c8d42f..7ff9730254c 100644 --- a/library/core/src/intrinsics.rs +++ b/library/core/src/intrinsics.rs @@ -2569,6 +2569,17 @@ extern "rust-intrinsic" { #[rustc_nounwind] #[cfg(not(bootstrap))] pub fn is_val_statically_known(arg: T) -> bool; + + #[rustc_const_unstable(feature = "delayed_debug_assertions", issue = "none")] + #[rustc_safe_intrinsic] + #[cfg(not(bootstrap))] + pub(crate) fn debug_assertions() -> bool; +} + +#[cfg(bootstrap)] +#[rustc_const_unstable(feature = "delayed_debug_assertions", issue = "none")] +pub(crate) const fn debug_assertions() -> bool { + cfg!(debug_assertions) } // FIXME: Seems using `unstable` here completely ignores `rustc_allow_const_fn_unstable`