diff --git a/examples/bare3.rs b/examples/bare3.rs
index 7b3752942fb894850b3485569b6ee89d1c81d6f8..9cffaed981defbe04a2693260181c041e43c39f0 100644
--- a/examples/bare3.rs
+++ b/examples/bare3.rs
@@ -15,6 +15,8 @@ extern crate panic_halt;
 use cortex_m_rt::entry;
 use cortex_m_semihosting::{hprint, hprintln};
 
+use core::convert::TryInto;
+
 #[entry]
 fn main() -> ! {
     hprintln!("bare3").unwrap();
@@ -29,14 +31,17 @@ fn main() -> ! {
         hprint!("{},", c as &u8).unwrap();
     }
 
-    let mut a = [0u8; 4];
-
     hprintln!("iterate iterate using (raw) indexing").unwrap();
     for i in 0usize..s.len() {
         hprintln!("{},", bs[i]).unwrap();
-        a[i] = bs[i];
+        // a[i] = bs[i];
     }
 
+    let a: [u8; 4];
+
+    // a = bs.into();
+    a = bs.try_into().expect("incorrect length");
+
     hprintln!("").unwrap();