aboutsummaryrefslogtreecommitdiff
path: root/macros/src/codegen/resources_struct.rs
diff options
context:
space:
mode:
Diffstat (limited to 'macros/src/codegen/resources_struct.rs')
-rw-r--r--macros/src/codegen/resources_struct.rs11
1 files changed, 6 insertions, 5 deletions
diff --git a/macros/src/codegen/resources_struct.rs b/macros/src/codegen/resources_struct.rs
index 92d5b666..ffc72757 100644
--- a/macros/src/codegen/resources_struct.rs
+++ b/macros/src/codegen/resources_struct.rs
@@ -36,6 +36,7 @@ pub fn codegen(
None
};
let ty = &res.ty;
+ let mangled_name = util::mangle_ident(&name);
if ctxt.is_init() {
if !analysis.ownerships.contains_key(name) {
@@ -47,7 +48,7 @@ pub fn codegen(
values.push(quote!(
#(#cfgs)*
- #name: &#mut_ #name
+ #name: &#mut_ #mangled_name
));
} else {
// Owned by someone else
@@ -60,7 +61,7 @@ pub fn codegen(
values.push(quote!(
#(#cfgs)*
- #name: &mut #name
+ #name: &mut #mangled_name
));
}
} else {
@@ -115,9 +116,9 @@ pub fn codegen(
let is_late = expr.is_none();
if is_late {
let expr = if mut_.is_some() {
- quote!(&mut *#name.as_mut_ptr())
+ quote!(&mut *#mangled_name.as_mut_ptr())
} else {
- quote!(&*#name.as_ptr())
+ quote!(&*#mangled_name.as_ptr())
};
values.push(quote!(
@@ -127,7 +128,7 @@ pub fn codegen(
} else {
values.push(quote!(
#(#cfgs)*
- #name: &#mut_ #name
+ #name: &#mut_ #mangled_name
));
}
}