aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJorge Aparicio <jorge@japaric.io>2017-07-18 20:17:09 -0500
committerJorge Aparicio <jorge@japaric.io>2017-07-18 20:17:09 -0500
commit877a32448fa9933d6f60ae1f25551751d4d651a8 (patch)
tree2c1879f2bd0615eb4e98919b6b80f97d5b13aba3
parent97a7e38db7eb0643a6334aba30077622d09e5c85 (diff)
make compatible with the unsafe_code lint
-rw-r--r--macros/src/trans.rs10
-rw-r--r--src/lib.rs2
2 files changed, 12 insertions, 0 deletions
diff --git a/macros/src/trans.rs b/macros/src/trans.rs
index ef224c1..5262bc4 100644
--- a/macros/src/trans.rs
+++ b/macros/src/trans.rs
@@ -18,6 +18,7 @@ pub fn app(app: &App, ownerships: &Ownerships) -> Tokens {
::trans::tasks(app, ownerships, &mut root);
root.push(quote! {
+ #[allow(unsafe_code)]
fn main() {
#(#main)*
}
@@ -161,6 +162,7 @@ fn idle(
}
mod_items.push(quote! {
+ #[allow(unsafe_code)]
impl Resources {
pub unsafe fn new() -> Self {
Resources {
@@ -175,6 +177,7 @@ fn idle(
}
root.push(quote! {
+ #[allow(unsafe_code)]
mod idle {
#(#mod_items)*
}
@@ -227,6 +230,7 @@ fn init(app: &App, main: &mut Vec<Tokens>, root: &mut Vec<Tokens>) {
mod_items.push(quote! {
pub use ::_initResources as Resources;
+ #[allow(unsafe_code)]
impl<#lifetime> Resources<#lifetime> {
pub unsafe fn new() -> Self {
Resources {
@@ -241,6 +245,7 @@ fn init(app: &App, main: &mut Vec<Tokens>, root: &mut Vec<Tokens>) {
}
root.push(quote! {
+ #[allow(unsafe_code)]
mod init {
pub use ::#device::Peripherals;
@@ -435,6 +440,7 @@ fn resources(app: &App, ownerships: &Ownerships, root: &mut Vec<Tokens>) {
impls.push(quote! {
#[allow(dead_code)]
+ #[allow(unsafe_code)]
impl _resource::#name {
#(#impl_items)*
}
@@ -444,6 +450,7 @@ fn resources(app: &App, ownerships: &Ownerships, root: &mut Vec<Tokens>) {
#[allow(non_camel_case_types)]
pub struct #name { _0: () }
+ #[allow(unsafe_code)]
impl #name {
pub unsafe fn new() -> Self {
#name { _0: () }
@@ -455,6 +462,7 @@ fn resources(app: &App, ownerships: &Ownerships, root: &mut Vec<Tokens>) {
}
root.push(quote! {
+ #[allow(unsafe_code)]
mod _resource {
#(#items)*
}
@@ -538,6 +546,7 @@ fn tasks(app: &App, ownerships: &Ownerships, root: &mut Vec<Tokens>) {
}
items.push(quote! {
+ #[allow(unsafe_code)]
impl<#lifetime> Resources<#lifetime> {
pub unsafe fn new() -> Self {
Resources {
@@ -551,6 +560,7 @@ fn tasks(app: &App, ownerships: &Ownerships, root: &mut Vec<Tokens>) {
root.push(quote!{
#[allow(dead_code)]
#[allow(non_snake_case)]
+ #[allow(unsafe_code)]
mod #name {
#[deny(dead_code)]
pub const #name: u8 = #priority;
diff --git a/src/lib.rs b/src/lib.rs
index a4cfbec..26bc2bd 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -219,6 +219,7 @@ where
macro_rules! task {
($NAME:ident, $body:path) => {
#[allow(non_snake_case)]
+ #[allow(unsafe_code)]
#[no_mangle]
pub unsafe extern "C" fn $NAME() {
let f: fn(&mut $crate::Threshold, ::$NAME::Resources) = $body;
@@ -237,6 +238,7 @@ macro_rules! task {
}
#[allow(non_snake_case)]
+ #[allow(unsafe_code)]
#[no_mangle]
pub unsafe extern "C" fn $NAME() {
let f: fn(