aboutsummaryrefslogtreecommitdiff
path: root/cortex-m-rt/macros/src/lib.rs
diff options
context:
space:
mode:
authorGravatar Jorge Aparicio <jorge@japaric.io> 2018-09-06 16:09:01 +0200
committerGravatar Jorge Aparicio <jorge@japaric.io> 2018-09-06 16:09:01 +0200
commit5fd25ff084daf914207193d15a7ade53cff7411e (patch)
treeaef38f623c0f75f8921d9936b5b83f43dbde5239 /cortex-m-rt/macros/src/lib.rs
parent7854e96f69f98570504c701ae860175efc7a25d9 (diff)
downloadcortex-m-5fd25ff084daf914207193d15a7ade53cff7411e.tar.gz
cortex-m-5fd25ff084daf914207193d15a7ade53cff7411e.tar.zst
cortex-m-5fd25ff084daf914207193d15a7ade53cff7411e.zip
v0.6.0
this also adds compile-fail soundness tests and patches a soundness issue in `#[entry]`
Diffstat (limited to 'cortex-m-rt/macros/src/lib.rs')
-rw-r--r--cortex-m-rt/macros/src/lib.rs6
1 files changed, 2 insertions, 4 deletions
diff --git a/cortex-m-rt/macros/src/lib.rs b/cortex-m-rt/macros/src/lib.rs
index bd34b04..3435756 100644
--- a/cortex-m-rt/macros/src/lib.rs
+++ b/cortex-m-rt/macros/src/lib.rs
@@ -99,7 +99,7 @@ pub fn entry(args: TokenStream, input: TokenStream) -> TokenStream {
// XXX should we blacklist other attributes?
let attrs = f.attrs;
- let ident = f.ident;
+ let hash = random_ident();
let (statics, stmts) = extract_static_muts(f.block.stmts);
let vars = statics
@@ -123,11 +123,9 @@ pub fn entry(args: TokenStream, input: TokenStream) -> TokenStream {
}).collect::<Vec<_>>();
quote!(
- // TODO(forbid) see tests/compile-fail/entry-hidden.rs
- // #[forbid(dead_code)]
#[export_name = "main"]
#(#attrs)*
- pub fn #ident() -> ! {
+ pub fn #hash() -> ! {
#(#vars)*
#(#stmts)*