diff options
author | 2021-04-08 18:25:09 +0200 | |
---|---|---|
committer | 2021-04-08 19:58:20 +0200 | |
commit | 6aa0fb450f417ce899b43f4539eb226b391a0f2e (patch) | |
tree | 2202c8bb4aa2ba2451f025784a5bad99c4370b2e /macros/src/codegen/pre_init.rs | |
parent | 43c5ad79c27fbdefa00e2373eba554ec11e1d9df (diff) | |
download | rtic-6aa0fb450f417ce899b43f4539eb226b391a0f2e.tar.gz rtic-6aa0fb450f417ce899b43f4539eb226b391a0f2e.tar.zst rtic-6aa0fb450f417ce899b43f4539eb226b391a0f2e.zip |
Goodbye static mut
Diffstat (limited to 'macros/src/codegen/pre_init.rs')
-rw-r--r-- | macros/src/codegen/pre_init.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/macros/src/codegen/pre_init.rs b/macros/src/codegen/pre_init.rs index 287f41a4..3a62da50 100644 --- a/macros/src/codegen/pre_init.rs +++ b/macros/src/codegen/pre_init.rs @@ -20,7 +20,7 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream let fq_ident = util::mark_internal_ident(&fq_ident); stmts.push(quote!( - (0..#cap).for_each(|i| #fq_ident.enqueue_unchecked(i)); + (0..#cap).for_each(|i| #fq_ident.get_mut_unchecked().enqueue_unchecked(i)); )); } @@ -86,7 +86,9 @@ pub fn codegen(app: &App, analysis: &Analysis, extra: &Extra) -> Vec<TokenStream let tq = util::mark_internal_ident(&tq); // Initialize timer queues - stmts.push(quote!(#tq.as_mut_ptr().write(rtic::export::TimerQueue::new());)); + stmts.push( + quote!(#tq.get_mut_unchecked().as_mut_ptr().write(rtic::export::TimerQueue::new());), + ); // Compile time assert that this priority is supported by the device stmts.push(quote!(let _ = [(); ((1 << #nvic_prio_bits) - #priority as usize)];)); |