extern crate fsevent;
use std::sync::mpsc::channel;
use std::thread;

fn main() {
  let (sender, receiver) = channel();

  let _t = thread::spawn(move || {
    let fsevent = fsevent::FsEvent::new(sender);
    fsevent.append_path("../../");
    fsevent.observe();
  });

  loop {
    let val = receiver.recv();
    println!("{:?}", val.unwrap());
  }
}

extern crate fsevent;
use std::sync::mpsc::channel;
use std::thread;

#[allow(dead_code)]
fn main() {
  let (sender, receiver) = channel();

  let _t = thread::spawn(move || {
    let fsevent = fsevent::FsEvent::new(sender);
    fsevent.append_path("../../");
    fsevent.observe();
  });

  loop {
    select! (
      val = receiver.recv() => {
        println!("{:?}", val.unwrap());
      }
    )
  }
}

--- 
+++ 
@@ -2,7 +2,6 @@
 use std::sync::mpsc::channel;
 use std::thread;
 
-#[allow(dead_code)]
 fn main() {
   let (sender, receiver) = channel();
 
@@ -13,10 +12,7 @@
   });
 
   loop {
-    select! (
-      val = receiver.recv() => {
-        println!("{:?}", val.unwrap());
-      }
-    )
+    let val = receiver.recv();
+    println!("{:?}", val.unwrap());
   }
 }
Remove select and fix sample code
