diff options
| author | Jonas Schievink <jonasschievink@gmail.com> | 2017-09-22 18:21:12 +0200 |
|---|---|---|
| committer | Jonas Schievink <jonasschievink@gmail.com> | 2017-09-22 18:21:12 +0200 |
| commit | be1a27ccf98e68c5994ed7a4ccb4379ba27b134a (patch) | |
| tree | 29b00e0dac07f4d8b662aa9192710e160e461046 /tests/cfail | |
| parent | 1556948458a386d13ff756e64dc60f8a6198e9d8 (diff) | |
Add cfail test for late resources
Diffstat (limited to 'tests/cfail')
| -rw-r--r-- | tests/cfail/late-resource-init.rs | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/cfail/late-resource-init.rs b/tests/cfail/late-resource-init.rs new file mode 100644 index 0000000..a997b5c --- /dev/null +++ b/tests/cfail/late-resource-init.rs @@ -0,0 +1,49 @@ +#![deny(warnings)] +#![feature(proc_macro)] +#![no_std] + +extern crate cortex_m_rtfm as rtfm; +extern crate stm32f103xx; + +use rtfm::{app, Threshold}; + +app! { + device: stm32f103xx, + + resources: { + static A: u8 = 0; + static LATE: u8; + }, + + tasks: { + EXTI0: { + path: exti0, + priority: 1, + resources: [A, LATE], + }, + + EXTI1: { + path: exti1, + priority: 2, + resources: [A, LATE], + }, + }, +} + +fn init(_p: init::Peripherals, r: init::Resources) -> init::LateResourceValues { + // Try to use a resource that's not yet initialized: + r.LATE; + //~^ error: no field `LATE` + + init::LateResourceValues { + LATE: 0, + } +} + +fn idle() -> ! { + loop {} +} + +fn exti0(_t: &mut Threshold, _r: EXTI0::Resources) {} + +fn exti1(_t: &mut Threshold, _r: EXTI1::Resources) {} |
