diff options
| author | Eric Huss <eric@huss.org> | 2025-02-13 12:52:22 -0800 |
|---|---|---|
| committer | Eric Huss <eric@huss.org> | 2025-02-14 07:36:17 -0800 |
| commit | 80a7eb1c09b97f7ad1a68f538d2d9b04ded7da2b (patch) | |
| tree | 77fa0b6dec8cde4a1d93f8eceb923b392d542b66 /library/proc_macro | |
| parent | 4f4ea35a6969cdbebfdf96778e8a9d49bea8c9ce (diff) | |
| download | rust-80a7eb1c09b97f7ad1a68f538d2d9b04ded7da2b.tar.gz rust-80a7eb1c09b97f7ad1a68f538d2d9b04ded7da2b.zip | |
proc_macro: Apply unsafe_op_in_unsafe_fn
Diffstat (limited to 'library/proc_macro')
| -rw-r--r-- | library/proc_macro/src/bridge/closure.rs | 2 | ||||
| -rw-r--r-- | library/proc_macro/src/lib.rs | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/library/proc_macro/src/bridge/closure.rs b/library/proc_macro/src/bridge/closure.rs index 524fdf53d6b..e0e688434dc 100644 --- a/library/proc_macro/src/bridge/closure.rs +++ b/library/proc_macro/src/bridge/closure.rs @@ -19,7 +19,7 @@ struct Env; impl<'a, A, R, F: FnMut(A) -> R> From<&'a mut F> for Closure<'a, A, R> { fn from(f: &'a mut F) -> Self { unsafe extern "C" fn call<A, R, F: FnMut(A) -> R>(env: *mut Env, arg: A) -> R { - (*(env as *mut _ as *mut F))(arg) + unsafe { (*(env as *mut _ as *mut F))(arg) } } Closure { call: call::<A, R, F>, env: f as *mut _ as *mut Env, _marker: PhantomData } } diff --git a/library/proc_macro/src/lib.rs b/library/proc_macro/src/lib.rs index 6611ce30a1b..d9141eab591 100644 --- a/library/proc_macro/src/lib.rs +++ b/library/proc_macro/src/lib.rs @@ -33,6 +33,7 @@ #![deny(ffi_unwind_calls)] #![warn(rustdoc::unescaped_backticks)] #![warn(unreachable_pub)] +#![deny(unsafe_op_in_unsafe_fn)] #[unstable(feature = "proc_macro_internals", issue = "27812")] #[doc(hidden)] |
