diff --git a/examples/bare3.rs b/examples/bare3.rs
index f3bdf0891cc9a697b9602223431368424fc980cd..d9a0f71e035af982d823660cf696a37f10205c1d 100644
--- a/examples/bare3.rs
+++ b/examples/bare3.rs
@@ -13,21 +13,23 @@ use core::str;
 extern crate cortex_m_debug;
 
 fn main() {
-    let s = "ABCD";
-    let bs = s.as_bytes();
+    let s: &str = "ABCD";
+    let bs: &[u8] = s.as_bytes();
 
     ipln!("s = {}", s);
     ipln!("bs = {:?}", bs);
 
     ipln!("iterate over slice");
+    let c: u8;
     for c in bs {
-        ip!("{},", c)
+        ip!("{},", c);
     }
 
-    let mut a = [65u8; 4];
+    let mut a: [u8; 4] = [65; 4];
     //let mut a = [0u8; 4];
     ipln!();
     ipln!("iterate iterate using (raw) indexing");
+    let i: usize;
     for i in 0..s.len() {
         ip!("{},", bs[i]);
     }