aboutsummaryrefslogtreecommitdiff
path: root/macros/src/codegen/post_init.rs
diff options
context:
space:
mode:
authorGravatar Emil Fresk <emil.fresk@gmail.com> 2020-10-21 20:20:26 +0200
committerGravatar Emil Fresk <emil.fresk@gmail.com> 2020-10-21 20:25:13 +0200
commitf076b33bb91e9cd2cb1f71ba22ebfebab085d3a8 (patch)
treef5b3ca8705ee1038365a4b8744f650dbceabad01 /macros/src/codegen/post_init.rs
parentf96b25fdf2d7421cc16830a4ccac4ebb3e69cc5d (diff)
downloadrtic-f076b33bb91e9cd2cb1f71ba22ebfebab085d3a8.tar.gz
rtic-f076b33bb91e9cd2cb1f71ba22ebfebab085d3a8.tar.zst
rtic-f076b33bb91e9cd2cb1f71ba22ebfebab085d3a8.zip
Namespace cleanup
Diffstat (limited to 'macros/src/codegen/post_init.rs')
-rw-r--r--macros/src/codegen/post_init.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/macros/src/codegen/post_init.rs b/macros/src/codegen/post_init.rs
index c35c6976..8defc85d 100644
--- a/macros/src/codegen/post_init.rs
+++ b/macros/src/codegen/post_init.rs
@@ -2,7 +2,7 @@ use proc_macro2::TokenStream as TokenStream2;
use quote::quote;
use rtic_syntax::ast::App;
-use crate::analyze::Analysis;
+use crate::{analyze::Analysis, codegen::util};
/// Generates code that runs after `#[init]` returns
pub fn codegen(app: &App, analysis: &Analysis) -> Vec<TokenStream2> {
@@ -12,13 +12,14 @@ pub fn codegen(app: &App, analysis: &Analysis) -> Vec<TokenStream2> {
if analysis.late_resources.len() > 0 {
// BTreeSet wrapped in a vector
for name in analysis.late_resources.first().unwrap() {
+ let mangled_name = util::mangle_ident(&name);
// If it's live
let cfgs = app.late_resources[name].cfgs.clone();
if analysis.locations.get(name).is_some() {
// Need to also include the cfgs
stmts.push(quote!(
#(#cfgs)*
- #name.as_mut_ptr().write(late.#name);
+ #mangled_name.as_mut_ptr().write(late.#name);
));
}
}