aboutsummaryrefslogtreecommitdiff
path: root/tests/cfail/local-token.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/cfail/local-token.rs')
-rw-r--r--tests/cfail/local-token.rs45
1 files changed, 0 insertions, 45 deletions
diff --git a/tests/cfail/local-token.rs b/tests/cfail/local-token.rs
deleted file mode 100644
index 90a9560..0000000
--- a/tests/cfail/local-token.rs
+++ /dev/null
@@ -1,45 +0,0 @@
-#![deny(warnings)]
-#![feature(const_fn)]
-#![feature(proc_macro)]
-#![no_std]
-
-#[macro_use(task)]
-extern crate cortex_m_rtfm as rtfm;
-extern crate stm32f103xx;
-
-use rtfm::{app, Threshold};
-
-app! {
- device: stm32f103xx,
-
- tasks: {
- EXTI0: {
- enabled: true,
- priority: 1,
- },
- }
-}
-
-fn init(_p: init::Peripherals) {}
-
-fn idle() -> ! {
- loop {}
-}
-
-task!(EXTI0, exti0, Old {
- static TOKEN: Option<Threshold> = None;
-});
-
-fn exti0(nt: &mut Threshold, old: &mut Old, _r: EXTI0::Resources) {
- if let Some(ot) = old.TOKEN.take() {
- let _: (Threshold, Threshold) = (*nt, ot);
- //~^ error cannot move out of borrowed content
-
- return
- }
-
- // ERROR can't store a threshold token in a local variable, otherwise you
- // would end up with two threshold tokens in a task (see `if let` above)
- *old.TOKEN = Some(*nt);
- //~^ error cannot move out of borrowed content
-}