aboutsummaryrefslogtreecommitdiff
path: root/embassy-executor/src/arch/std.rs
diff options
context:
space:
mode:
Diffstat (limited to 'embassy-executor/src/arch/std.rs')
-rw-r--r--embassy-executor/src/arch/std.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/embassy-executor/src/arch/std.rs b/embassy-executor/src/arch/std.rs
index f490084d6..5b2f7e2e4 100644
--- a/embassy-executor/src/arch/std.rs
+++ b/embassy-executor/src/arch/std.rs
@@ -14,7 +14,7 @@ mod thread {
14 use crate::{raw, Spawner}; 14 use crate::{raw, Spawner};
15 15
16 #[export_name = "__pender"] 16 #[export_name = "__pender"]
17 fn __pender(context: crate::raw::PenderContext) { 17 fn __pender(context: *mut ()) {
18 let signaler: &'static Signaler = unsafe { std::mem::transmute(context) }; 18 let signaler: &'static Signaler = unsafe { std::mem::transmute(context) };
19 signaler.signal() 19 signaler.signal()
20 } 20 }
@@ -29,9 +29,9 @@ mod thread {
29 impl Executor { 29 impl Executor {
30 /// Create a new Executor. 30 /// Create a new Executor.
31 pub fn new() -> Self { 31 pub fn new() -> Self {
32 let signaler = &*Box::leak(Box::new(Signaler::new())); 32 let signaler = Box::leak(Box::new(Signaler::new()));
33 Self { 33 Self {
34 inner: raw::Executor::new(unsafe { std::mem::transmute(signaler) }), 34 inner: raw::Executor::new(signaler as *mut Signaler as *mut ()),
35 not_send: PhantomData, 35 not_send: PhantomData,
36 signaler, 36 signaler,
37 } 37 }