diff options
| author | Jorge Aparicio <jorge@japaric.io> | 2017-04-21 21:24:28 -0500 |
|---|---|---|
| committer | Jorge Aparicio <jorge@japaric.io> | 2017-04-21 21:24:28 -0500 |
| commit | eea803008390cbae307e873ce6d39e01d6367759 (patch) | |
| tree | c759d6c28a01fa8fa89abd52326720c5d3b5b8d3 /tests/cfail/race-2.rs | |
| parent | 1c82f1b1190cb40a3502d5b74a8c98775a788850 (diff) | |
reword the comments in compile-fail tests
Diffstat (limited to 'tests/cfail/race-2.rs')
| -rw-r--r-- | tests/cfail/race-2.rs | 43 |
1 files changed, 31 insertions, 12 deletions
diff --git a/tests/cfail/race-2.rs b/tests/cfail/race-2.rs index 55dedb6..6bd957e 100644 --- a/tests/cfail/race-2.rs +++ b/tests/cfail/race-2.rs @@ -8,21 +8,40 @@ static R2: Resource<i32, C4> = Resource::new(0); fn j1(prio: P1) { let ceil = prio.as_ceiling(); - ceil.raise(&R1, |ceil| { - let r1 = R1.borrow(&prio, ceil); + ceil.raise( + &R1, |ceil| { + let r1 = R1.borrow(&prio, ceil); - // Would preempt this critical section - // rtfm::request(j2); - }); + // `j2` preempts this critical section + rtfm::request(j2); + } + ); } -fn j2(prio: P3) { +fn j2(_task: Task, prio: P3) { let ceil = prio.as_ceiling(); - ceil.raise(&R2, |ceil| { - // OK C2 (R1's ceiling) <= C4 (system ceiling) - // BAD C2 (R1's ceiling) < P3 (j2's priority) - let r1 = R1.borrow(&prio, ceil); - //~^ error - }); + ceil.raise( + &R2, |ceil| { + // OK C2 (R1's ceiling) <= C4 (system ceiling) + // BAD C2 (R1's ceiling) < P3 (j2's priority) + let r1 = R1.borrow(&prio, ceil); + //~^ error + } + ); +} + +// glue +extern crate cortex_m; + +use cortex_m::ctxt::Context; +use cortex_m::interrupt::Nr; + +struct Task; + +unsafe impl Context for Task {} +unsafe impl Nr for Task { + fn nr(&self) -> u8 { + 0 + } } |
