diff --git a/examples/rtic_bare4.rs b/examples/rtic_bare4.rs index 6b4284b613942ff9c8274b09e4444bb2fabb01cd..9f7f176fef8e7a9d0df1fb5173d79eb1f5dfebfb 100644 --- a/examples/rtic_bare4.rs +++ b/examples/rtic_bare4.rs @@ -35,8 +35,8 @@ use address::*; #[inline(always)] fn read_u32(addr: u32) -> u32 { - unsafe { core::ptr::read_volatile(addr as *const _) } - // core::ptr::read_volatile(addr as *const _) + //unsafe { core::ptr::read_volatile(addr as *const _) } + core::ptr::read_volatile(addr as *const _); } #[inline(always)] @@ -100,12 +100,13 @@ const APP: () = { // // What was the error message and explain why. // -// ** your answer here ** +// This operation is unsafe and requires an unsafe function or block. +// The function read_volatile is declared to be unsafe. // // Digging a bit deeper, why do you think `read_volatile` is declared `unsafe`. // (https://doc.rust-lang.org/core/ptr/fn.read_volatile.html, for some food for thought ) // -// ** your answer here ** +// It is unsafe because it can't guarantee the value is the expected value. // // Commit your answers (bare4_2) //