aboutsummaryrefslogtreecommitdiff
path: root/cortex-m-rt/macros/src/lib.rs
diff options
context:
space:
mode:
authorGravatar Emil Fresk <emil.fresk@gmail.com> 2020-01-07 22:01:15 +0100
committerGravatar Emil Fresk <emil.fresk@gmail.com> 2020-01-07 22:01:15 +0100
commitfda8b742a1a6e72740e3a9512378efe5a82b5487 (patch)
tree38a2e42899e504e4137aff40b8c1294ed3c22606 /cortex-m-rt/macros/src/lib.rs
parent5fdbab999bc849fd41e376f5f97f03fdf85c7442 (diff)
downloadcortex-m-fda8b742a1a6e72740e3a9512378efe5a82b5487.tar.gz
cortex-m-fda8b742a1a6e72740e3a9512378efe5a82b5487.tar.zst
cortex-m-fda8b742a1a6e72740e3a9512378efe5a82b5487.zip
Reduced number of whitelist checks
Diffstat (limited to 'cortex-m-rt/macros/src/lib.rs')
-rw-r--r--cortex-m-rt/macros/src/lib.rs17
1 files changed, 5 insertions, 12 deletions
diff --git a/cortex-m-rt/macros/src/lib.rs b/cortex-m-rt/macros/src/lib.rs
index d18cc58..eda77f2 100644
--- a/cortex-m-rt/macros/src/lib.rs
+++ b/cortex-m-rt/macros/src/lib.rs
@@ -294,6 +294,11 @@ pub fn exception(args: TokenStream, input: TokenStream) -> TokenStream {
.into();
}
+ if let Err(error) = check_attr_whitelist(&f.attrs) {
+ return error;
+ }
+
+
let fspan = f.span();
let ident = f.sig.ident.clone();
@@ -351,10 +356,6 @@ pub fn exception(args: TokenStream, input: TokenStream) -> TokenStream {
let tramp_ident = Ident::new(&format!("{}_trampoline", f.sig.ident), Span::call_site());
let ident = &f.sig.ident;
- if let Err(error) = check_attr_whitelist(&f.attrs) {
- return error;
- }
-
let (ref cfgs, ref attrs) = extract_cfgs(f.attrs.clone());
quote!(
@@ -412,10 +413,6 @@ pub fn exception(args: TokenStream, input: TokenStream) -> TokenStream {
let tramp_ident = Ident::new(&format!("{}_trampoline", f.sig.ident), Span::call_site());
let ident = &f.sig.ident;
- if let Err(error) = check_attr_whitelist(&f.attrs) {
- return error;
- }
-
let (ref cfgs, ref attrs) = extract_cfgs(f.attrs.clone());
quote!(
@@ -505,10 +502,6 @@ pub fn exception(args: TokenStream, input: TokenStream) -> TokenStream {
})
.collect::<Vec<_>>();
- if let Err(error) = check_attr_whitelist(&f.attrs) {
- return error;
- }
-
let (ref cfgs, ref attrs) = extract_cfgs(f.attrs.clone());
quote!(