|
@@ -72,6 +72,7 @@ use {
|
|
|
mem::transmute,
|
|
mem::transmute,
|
|
|
panic::AssertUnwindSafe,
|
|
panic::AssertUnwindSafe,
|
|
|
path::{Path, PathBuf},
|
|
path::{Path, PathBuf},
|
|
|
|
|
+ ptr,
|
|
|
sync::{
|
|
sync::{
|
|
|
atomic::{AtomicBool, Ordering},
|
|
atomic::{AtomicBool, Ordering},
|
|
|
Arc, RwLock,
|
|
Arc, RwLock,
|
|
@@ -114,7 +115,7 @@ fn get_invoke_context<'a, 'b>() -> &'a mut InvokeContext<'b, 'b> {
|
|
|
Some(val) => val,
|
|
Some(val) => val,
|
|
|
None => panic!("Invoke context not set!"),
|
|
None => panic!("Invoke context not set!"),
|
|
|
});
|
|
});
|
|
|
- unsafe { transmute::<usize, &mut InvokeContext>(ptr) }
|
|
|
|
|
|
|
+ unsafe { &mut *ptr::with_exposed_provenance_mut(ptr) }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
pub fn invoke_builtin_function(
|
|
pub fn invoke_builtin_function(
|