diff options
author | 2021-11-02 13:41:12 +0100 | |
---|---|---|
committer | 2021-11-02 13:41:12 +0100 | |
commit | 8065d741aceb96ea06e70afce05408e334a977b5 (patch) | |
tree | bcba74ecf2bc4985a39cfdceee627b0742cb4820 /macros/src/codegen/shared_resources_struct.rs | |
parent | b25d775771f7ecc4fdfc5a2faaeb52e63cc344c9 (diff) | |
download | rtic-8065d741aceb96ea06e70afce05408e334a977b5.tar.gz rtic-8065d741aceb96ea06e70afce05408e334a977b5.tar.zst rtic-8065d741aceb96ea06e70afce05408e334a977b5.zip |
Fixed aliasing issue due to RacyCell implementation
Diffstat (limited to 'macros/src/codegen/shared_resources_struct.rs')
-rw-r--r-- | macros/src/codegen/shared_resources_struct.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/macros/src/codegen/shared_resources_struct.rs b/macros/src/codegen/shared_resources_struct.rs index 5a805412..9983aa4c 100644 --- a/macros/src/codegen/shared_resources_struct.rs +++ b/macros/src/codegen/shared_resources_struct.rs @@ -75,9 +75,9 @@ pub fn codegen(ctxt: Context, needs_lt: &mut bool, app: &App) -> (TokenStream2, } let expr = if access.is_exclusive() { - quote!(&mut *#mangled_name.get_mut_unchecked().as_mut_ptr()) + quote!(&mut *(&mut *#mangled_name.get_mut()).as_mut_ptr()) } else { - quote!(&*#mangled_name.get_unchecked().as_ptr()) + quote!(&*(&*#mangled_name.get()).as_ptr()) }; values.push(quote!( |