diff options
Diffstat (limited to 'examples/not-sync.rs')
| -rw-r--r-- | examples/not-sync.rs | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/examples/not-sync.rs b/examples/not-sync.rs deleted file mode 100644 index 68af04a..0000000 --- a/examples/not-sync.rs +++ /dev/null @@ -1,57 +0,0 @@ -//! `examples/not-sync.rs` - -// #![deny(unsafe_code)] -#![deny(warnings)] -#![deny(missing_docs)] -#![no_main] -#![no_std] - -use core::marker::PhantomData; -use panic_semihosting as _; - -/// Not sync -pub struct NotSync { - /// Phantom action - _0: PhantomData<*const ()>, -} - -unsafe impl Send for NotSync {} - -#[rtic::app(device = lm3s6965, dispatchers = [SSI0])] -mod app { - use super::NotSync; - use core::marker::PhantomData; - use cortex_m_semihosting::debug; - - #[shared] - struct Shared { - /// This resource is not Sync - shared: NotSync, - } - - #[local] - struct Local {} - - #[init] - fn init(_: init::Context) -> (Shared, Local, init::Monotonics) { - debug::exit(debug::EXIT_SUCCESS); // Exit QEMU simulator - - ( - Shared { - shared: NotSync { _0: PhantomData }, - }, - Local {}, - init::Monotonics(), - ) - } - - #[task(shared = [&shared])] - fn foo(c: foo::Context) { - let _: &NotSync = c.shared.shared; - } - - #[task(shared = [&shared])] - fn bar(c: bar::Context) { - let _: &NotSync = c.shared.shared; - } -} |
