[INFO] updating cached repository https://github.com/marcmmiller/rsscm
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 056fb54bceb15d069ab5a5068f6f6db30d13a840
[INFO] checking marcmmiller/rsscm against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmarcmmiller%2Frsscm" "/workspace/builds/worker-2/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/marcmmiller/rsscm on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/marcmmiller/rsscm
[INFO] finished tweaking git repo https://github.com/marcmmiller/rsscm
[INFO] tweaked toml for git repo https://github.com/marcmmiller/rsscm written to /workspace/builds/worker-2/source/Cargo.toml
[INFO] crate git repo https://github.com/marcmmiller/rsscm already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] fd6b0ff5d71d245da0c1499f2efffdfc0ed4ec853c697d8b23928f9fd7e9efcf
[INFO] running `"docker" "start" "-a" "fd6b0ff5d71d245da0c1499f2efffdfc0ed4ec853c697d8b23928f9fd7e9efcf"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Checking rsscm v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/main.rs:82:21
[INFO] [stderr]    |
[INFO] [stderr] 82 |             let c = try!(self.next_char());
[INFO] [stderr]    |                     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:132:9
[INFO] [stderr]     |
[INFO] [stderr] 132 |         try!(match self.ty {
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:223:27
[INFO] [stderr]     |
[INFO] [stderr] 223 |         let t = Token::Id(try!(
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:230:17
[INFO] [stderr]     |
[INFO] [stderr] 230 |         let s = try!(
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/main.rs:82:21
[INFO] [stderr]    |
[INFO] [stderr] 82 |             let c = try!(self.next_char());
[INFO] [stderr]    |                     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:132:9
[INFO] [stderr]     |
[INFO] [stderr] 132 |         try!(match self.ty {
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:223:27
[INFO] [stderr]     |
[INFO] [stderr] 223 |         let t = Token::Id(try!(
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:230:17
[INFO] [stderr]     |
[INFO] [stderr] 230 |         let s = try!(
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:242:19
[INFO] [stderr]     |
[INFO] [stderr] 242 |             match try!(self.reader.next_char()) {
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:246:31
[INFO] [stderr]     |
[INFO] [stderr] 246 |                     let esc = try!(self.reader.next_char());
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:270:26
[INFO] [stderr]     |
[INFO] [stderr] 270 |             return match try!(self.reader.next_char()) {
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:276:28
[INFO] [stderr]     |
[INFO] [stderr] 276 |                 '\"' => Ok(try!(self.read_quoted_string())),
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:278:21
[INFO] [stderr]     |
[INFO] [stderr] 278 |                     try!(self.reader.read_while(&|c: char| { c != '\n' }));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:282:30
[INFO] [stderr]     |
[INFO] [stderr] 282 |                     let bc = try!(self.reader.next_char());
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:293:24
[INFO] [stderr]     |
[INFO] [stderr] 293 |                     Ok(try!(self.read_number()))
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:297:24
[INFO] [stderr]     |
[INFO] [stderr] 297 |                     Ok(try!(self.read_scheme_id()))
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:440:30
[INFO] [stderr]     |
[INFO] [stderr] 440 |         let (ref car, _) = **try!(self.unwrap_cons());
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:445:24
[INFO] [stderr]     |
[INFO] [stderr] 445 |         let (car, _) = try!(self.take_cons()).take();
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:450:30
[INFO] [stderr]     |
[INFO] [stderr] 450 |         let (_, ref cdr) = **try!(self.unwrap_cons());
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:455:24
[INFO] [stderr]     |
[INFO] [stderr] 455 |         let (_, cdr) = try!(self.take_cons()).take();
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:460:36
[INFO] [stderr]     |
[INFO] [stderr] 460 |         let (ref car, ref cdr) = **try!(self.unwrap_cons());
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:465:26
[INFO] [stderr]     |
[INFO] [stderr] 465 |         let (car, cdr) = try!(self.take_cons()).take();
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:504:17
[INFO] [stderr]     |
[INFO] [stderr] 504 |                 try!(write!(f, "({}", it.next().unwrap()));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:506:21
[INFO] [stderr]     |
[INFO] [stderr] 506 |                     try!(write!(f, " {}", i));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:509:21
[INFO] [stderr]     |
[INFO] [stderr] 509 |                     try!(write!(f, " . {}", it.cur));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:844:18
[INFO] [stderr]     |
[INFO] [stderr] 844 |         Ok(match try!(self.tokenizer.next()) {
[INFO] [stderr]     |                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:851:47
[INFO] [stderr]     |
[INFO] [stderr] 851 | ...                   Sexp::new_cons(try!(self.next_sexp()), Nil)),
[INFO] [stderr]     |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:852:26
[INFO] [stderr]     |
[INFO] [stderr] 852 |             Token::OP => try!(self.next_sexp_list(false)),
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:859:17
[INFO] [stderr]     |
[INFO] [stderr] 859 |         let t = try!(self.tokenizer.next());
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:863:27
[INFO] [stderr]     |
[INFO] [stderr] 863 |                 let ret = try!(self.next_sexp());
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:864:28
[INFO] [stderr]     |
[INFO] [stderr] 864 |                 assert_eq!(try!(self.tokenizer.next()), Token::CP);
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:870:32
[INFO] [stderr]     |
[INFO] [stderr] 870 |                 Sexp::new_cons(try!(self.next_sexp()),
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:871:32
[INFO] [stderr]     |
[INFO] [stderr] 871 | ...                   try!(self.next_sexp_list(true)))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1357:23
[INFO] [stderr]      |
[INFO] [stderr] 1357 |             let arg = try!(rsarg);
[INFO] [stderr]      |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1372:5
[INFO] [stderr]      |
[INFO] [stderr] 1372 |     try!(res);
[INFO] [stderr]      |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1396:19
[INFO] [stderr]      |
[INFO] [stderr] 1396 |     let mut res = try!(rsres);
[INFO] [stderr]      |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1402:19
[INFO] [stderr]      |
[INFO] [stderr] 1402 |             res = try!(tramp.apply(vec!(), tramp_env, ctx.clone()));
[INFO] [stderr]      |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1422:45
[INFO] [stderr]      |
[INFO] [stderr] 1422 |                 let (did_stuff, expanded) = try!(self.expand_macros_once(s));
[INFO] [stderr]      |                                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1432:34
[INFO] [stderr]      |
[INFO] [stderr] 1432 |             if let Id(ref id) = *try!(s.car()) {
[INFO] [stderr]      |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1455:27
[INFO] [stderr]      |
[INFO] [stderr] 1455 |                 Ok((true, try!(res)))
[INFO] [stderr]      |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1458:36
[INFO] [stderr]      |
[INFO] [stderr] 1458 |                 let (ocar, ocdr) = try!(s.carcdr());
[INFO] [stderr]      |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1459:38
[INFO] [stderr]      |
[INFO] [stderr] 1459 |                 let (did_car, car) = try!(self.expand_macros_once(ocar.clone()));
[INFO] [stderr]      |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1460:38
[INFO] [stderr]      |
[INFO] [stderr] 1460 |                 let (did_cdr, cdr) = try!(self.expand_macros_once(ocdr.clone()));
[INFO] [stderr]      |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1537:26
[INFO] [stderr]      |
[INFO] [stderr] 1537 |             let valval = try!(val.call(env.clone()));
[INFO] [stderr]      |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1551:26
[INFO] [stderr]      |
[INFO] [stderr] 1551 |             let valval = try!(val.call(env.clone()));
[INFO] [stderr]      |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1575:41
[INFO] [stderr]      |
[INFO] [stderr] 1575 |             if let Sexp::Closure(rsc) = try!(evalue.call(env.clone())) {
[INFO] [stderr]      |                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1595:25
[INFO] [stderr]      |
[INFO] [stderr] 1595 |                         try!(ecar.call(env.clone())),
[INFO] [stderr]      |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1596:25
[INFO] [stderr]      |
[INFO] [stderr] 1596 |                         try!(ecdr.call(env.clone()))))
[INFO] [stderr]      |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1643:23
[INFO] [stderr]      |
[INFO] [stderr] 1643 |                 res = try!(e.call(env.clone()));
[INFO] [stderr]      |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1657:24
[INFO] [stderr]      |
[INFO] [stderr] 1657 |             let func = try!(efunc.call(env.clone()));
[INFO] [stderr]      |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1701:16
[INFO] [stderr]      |
[INFO] [stderr] 1701 |             if try!(etest.call(env.clone())).to_bool() {
[INFO] [stderr]      |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1716:24
[INFO] [stderr]      |
[INFO] [stderr] 1716 |                 last = try!(i.call(env.clone()));
[INFO] [stderr]      |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1731:24
[INFO] [stderr]      |
[INFO] [stderr] 1731 |                 last = try!(i.call(env.clone()));
[INFO] [stderr]      |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2242:34
[INFO] [stderr]      |
[INFO] [stderr] 2242 |         ("car", Box::new(|it| Ok(try!(n!(it).car()).clone()))),
[INFO] [stderr]      |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2243:34
[INFO] [stderr]      |
[INFO] [stderr] 2243 |         ("cdr", Box::new(|it| Ok(try!(n!(it).cdr()).clone()))),
[INFO] [stderr]      |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2334:26
[INFO] [stderr]      |
[INFO] [stderr] 2334 |         let mut result = try!(get_num(&args.next().unwrap()));
[INFO] [stderr]      |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2336:32
[INFO] [stderr]      |
[INFO] [stderr] 2336 |             result = f(result, try!(get_num(&s)));
[INFO] [stderr]      |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2349:21
[INFO] [stderr]      |
[INFO] [stderr] 2349 |             let a = try!(v[i].num());
[INFO] [stderr]      |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2350:21
[INFO] [stderr]      |
[INFO] [stderr] 2350 |             let b = try!(v[i+1].num());
[INFO] [stderr]      |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2367:20
[INFO] [stderr]      |
[INFO] [stderr] 2367 |         let sexp = try!(parser.next_sexp());
[INFO] [stderr]      |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2371:43
[INFO] [stderr]      |
[INFO] [stderr] 2371 |             if let Sexp::Str(file_name) = try!(try!(sexp.cdr_take()).car_take()) {
[INFO] [stderr]      |                                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2371:48
[INFO] [stderr]      |
[INFO] [stderr] 2371 |             if let Sexp::Str(file_name) = try!(try!(sexp.cdr_take()).car_take()) {
[INFO] [stderr]      |                                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2372:17
[INFO] [stderr]      |
[INFO] [stderr] 2372 |                 try!(process(file_name.clone(), a, env.clone()));
[INFO] [stderr]      |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2410:19
[INFO] [stderr]      |
[INFO] [stderr] 2410 |         interpret(try!(File::open(file_name)), a, env)
[INFO] [stderr]      |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Ref`
[INFO] [stderr]  --> src/main.rs:2:32
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::cell::{Cell, RefCell, Ref, UnsafeCell};
[INFO] [stderr]   |                                ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Mutex`
[INFO] [stderr]   --> src/main.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::sync::Mutex;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:51:17
[INFO] [stderr]    |
[INFO] [stderr] 51 |     reader: Box<Read>,
[INFO] [stderr]    |                 ^^^^ help: use `dyn`: `dyn Read`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:79:37
[INFO] [stderr]    |
[INFO] [stderr] 79 |     fn read_while(&mut self, pred: &Fn(char) -> bool) -> std::io::Result<String> {
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(char) -> bool`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:120:42
[INFO] [stderr]     |
[INFO] [stderr] 120 |     fn cause<'a>(&'a self) -> Option<&'a std::error::Error> {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:133:49
[INFO] [stderr]     |
[INFO] [stderr] 133 |             ErrorType::IOError(ref e) => (e as &Display).fmt(f),
[INFO] [stderr]     |                                                 ^^^^^^^ help: use `dyn`: `dyn Display`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/main.rs:182:9
[INFO] [stderr]     |
[INFO] [stderr] 182 | /         ((p == '-') || (p == '_') || (p == '*') ||
[INFO] [stderr] 183 | |          (p == '+') || (p == '?') || (p == '-') ||
[INFO] [stderr] 184 | |          (p == '!') || (p == '/') || (p == '<') ||
[INFO] [stderr] 185 | |          (p == '>') || (p == '=') || (p == '$') ||
[INFO] [stderr] 186 | |          (p == '%') || (p == '&') || (p == '~') ||
[INFO] [stderr] 187 | |          (p == '^'))
[INFO] [stderr]     | |____________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 182 |         (p == '-') || (p == '_') || (p == '*') ||
[INFO] [stderr] 183 |          (p == '+') || (p == '?') || (p == '-') ||
[INFO] [stderr] 184 |          (p == '!') || (p == '/') || (p == '<') ||
[INFO] [stderr] 185 |          (p == '>') || (p == '=') || (p == '$') ||
[INFO] [stderr] 186 |          (p == '%') || (p == '&') || (p == '~') ||
[INFO] [stderr] 187 |          (p == '^')
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:497:46
[INFO] [stderr]     |
[INFO] [stderr] 497 |             Sexp::Closure(ref sc) => (sc as &Display).fmt(f),
[INFO] [stderr]     |                                              ^^^^^^^ help: use `dyn`: `dyn Display`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:498:46
[INFO] [stderr]     |
[INFO] [stderr] 498 |             Sexp::Builtin(ref bi) => (bi as &Display).fmt(f),
[INFO] [stderr]     |                                              ^^^^^^^ help: use `dyn`: `dyn Display`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/main.rs:654:30
[INFO] [stderr]     |
[INFO] [stderr] 654 |             DUMP.with(|c| if (c.get() > 0) {
[INFO] [stderr]     |                              ^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:676:23
[INFO] [stderr]     |
[INFO] [stderr] 676 | type BuiltinPtr = Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>;
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:676:31
[INFO] [stderr]     |
[INFO] [stderr] 676 | type BuiltinPtr = Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>;
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:242:19
[INFO] [stderr]     |
[INFO] [stderr] 242 |             match try!(self.reader.next_char()) {
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:246:31
[INFO] [stderr]     |
[INFO] [stderr] 246 |                     let esc = try!(self.reader.next_char());
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:270:26
[INFO] [stderr]     |
[INFO] [stderr] 270 |             return match try!(self.reader.next_char()) {
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:276:28
[INFO] [stderr]     |
[INFO] [stderr] 276 |                 '\"' => Ok(try!(self.read_quoted_string())),
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:278:21
[INFO] [stderr]     |
[INFO] [stderr] 278 |                     try!(self.reader.read_while(&|c: char| { c != '\n' }));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:282:30
[INFO] [stderr]     |
[INFO] [stderr] 282 |                     let bc = try!(self.reader.next_char());
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:293:24
[INFO] [stderr]     |
[INFO] [stderr] 293 |                     Ok(try!(self.read_number()))
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:297:24
[INFO] [stderr]     |
[INFO] [stderr] 297 |                     Ok(try!(self.read_scheme_id()))
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:440:30
[INFO] [stderr]     |
[INFO] [stderr] 440 |         let (ref car, _) = **try!(self.unwrap_cons());
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:445:24
[INFO] [stderr]     |
[INFO] [stderr] 445 |         let (car, _) = try!(self.take_cons()).take();
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:450:30
[INFO] [stderr]     |
[INFO] [stderr] 450 |         let (_, ref cdr) = **try!(self.unwrap_cons());
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:455:24
[INFO] [stderr]     |
[INFO] [stderr] 455 |         let (_, cdr) = try!(self.take_cons()).take();
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:460:36
[INFO] [stderr]     |
[INFO] [stderr] 460 |         let (ref car, ref cdr) = **try!(self.unwrap_cons());
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:465:26
[INFO] [stderr]     |
[INFO] [stderr] 465 |         let (car, cdr) = try!(self.take_cons()).take();
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:504:17
[INFO] [stderr]     |
[INFO] [stderr] 504 |                 try!(write!(f, "({}", it.next().unwrap()));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:506:21
[INFO] [stderr]     |
[INFO] [stderr] 506 |                     try!(write!(f, " {}", i));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:509:21
[INFO] [stderr]     |
[INFO] [stderr] 509 |                     try!(write!(f, " . {}", it.cur));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:844:18
[INFO] [stderr]     |
[INFO] [stderr] 844 |         Ok(match try!(self.tokenizer.next()) {
[INFO] [stderr]     |                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:851:47
[INFO] [stderr]     |
[INFO] [stderr] 851 | ...                   Sexp::new_cons(try!(self.next_sexp()), Nil)),
[INFO] [stderr]     |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:852:26
[INFO] [stderr]     |
[INFO] [stderr] 852 |             Token::OP => try!(self.next_sexp_list(false)),
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:859:17
[INFO] [stderr]     |
[INFO] [stderr] 859 |         let t = try!(self.tokenizer.next());
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:863:27
[INFO] [stderr]     |
[INFO] [stderr] 863 |                 let ret = try!(self.next_sexp());
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:864:28
[INFO] [stderr]     |
[INFO] [stderr] 864 |                 assert_eq!(try!(self.tokenizer.next()), Token::CP);
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:870:32
[INFO] [stderr]     |
[INFO] [stderr] 870 |                 Sexp::new_cons(try!(self.next_sexp()),
[INFO] [stderr]     |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/main.rs:871:32
[INFO] [stderr]     |
[INFO] [stderr] 871 | ...                   try!(self.next_sexp_list(true)))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1357:23
[INFO] [stderr]      |
[INFO] [stderr] 1357 |             let arg = try!(rsarg);
[INFO] [stderr]      |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1372:5
[INFO] [stderr]      |
[INFO] [stderr] 1372 |     try!(res);
[INFO] [stderr]      |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1396:19
[INFO] [stderr]      |
[INFO] [stderr] 1396 |     let mut res = try!(rsres);
[INFO] [stderr]      |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1402:19
[INFO] [stderr]      |
[INFO] [stderr] 1402 |             res = try!(tramp.apply(vec!(), tramp_env, ctx.clone()));
[INFO] [stderr]      |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1422:45
[INFO] [stderr]      |
[INFO] [stderr] 1422 |                 let (did_stuff, expanded) = try!(self.expand_macros_once(s));
[INFO] [stderr]      |                                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1432:34
[INFO] [stderr]      |
[INFO] [stderr] 1432 |             if let Id(ref id) = *try!(s.car()) {
[INFO] [stderr]      |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1455:27
[INFO] [stderr]      |
[INFO] [stderr] 1455 |                 Ok((true, try!(res)))
[INFO] [stderr]      |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1458:36
[INFO] [stderr]      |
[INFO] [stderr] 1458 |                 let (ocar, ocdr) = try!(s.carcdr());
[INFO] [stderr]      |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1459:38
[INFO] [stderr]      |
[INFO] [stderr] 1459 |                 let (did_car, car) = try!(self.expand_macros_once(ocar.clone()));
[INFO] [stderr]      |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1460:38
[INFO] [stderr]      |
[INFO] [stderr] 1460 |                 let (did_cdr, cdr) = try!(self.expand_macros_once(ocdr.clone()));
[INFO] [stderr]      |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1537:26
[INFO] [stderr]      |
[INFO] [stderr] 1537 |             let valval = try!(val.call(env.clone()));
[INFO] [stderr]      |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1551:26
[INFO] [stderr]      |
[INFO] [stderr] 1551 |             let valval = try!(val.call(env.clone()));
[INFO] [stderr]      |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1575:41
[INFO] [stderr]      |
[INFO] [stderr] 1575 |             if let Sexp::Closure(rsc) = try!(evalue.call(env.clone())) {
[INFO] [stderr]      |                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1595:25
[INFO] [stderr]      |
[INFO] [stderr] 1595 |                         try!(ecar.call(env.clone())),
[INFO] [stderr]      |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1596:25
[INFO] [stderr]      |
[INFO] [stderr] 1596 |                         try!(ecdr.call(env.clone()))))
[INFO] [stderr]      |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1643:23
[INFO] [stderr]      |
[INFO] [stderr] 1643 |                 res = try!(e.call(env.clone()));
[INFO] [stderr]      |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1657:24
[INFO] [stderr]      |
[INFO] [stderr] 1657 |             let func = try!(efunc.call(env.clone()));
[INFO] [stderr]      |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1701:16
[INFO] [stderr]      |
[INFO] [stderr] 1701 |             if try!(etest.call(env.clone())).to_bool() {
[INFO] [stderr]      |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1716:24
[INFO] [stderr]      |
[INFO] [stderr] 1716 |                 last = try!(i.call(env.clone()));
[INFO] [stderr]      |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:1731:24
[INFO] [stderr]      |
[INFO] [stderr] 1731 |                 last = try!(i.call(env.clone()));
[INFO] [stderr]      |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2242:34
[INFO] [stderr]      |
[INFO] [stderr] 2242 |         ("car", Box::new(|it| Ok(try!(n!(it).car()).clone()))),
[INFO] [stderr]      |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2243:34
[INFO] [stderr]      |
[INFO] [stderr] 2243 |         ("cdr", Box::new(|it| Ok(try!(n!(it).cdr()).clone()))),
[INFO] [stderr]      |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2334:26
[INFO] [stderr]      |
[INFO] [stderr] 2334 |         let mut result = try!(get_num(&args.next().unwrap()));
[INFO] [stderr]      |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2336:32
[INFO] [stderr]      |
[INFO] [stderr] 2336 |             result = f(result, try!(get_num(&s)));
[INFO] [stderr]      |                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2349:21
[INFO] [stderr]      |
[INFO] [stderr] 2349 |             let a = try!(v[i].num());
[INFO] [stderr]      |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2350:21
[INFO] [stderr]      |
[INFO] [stderr] 2350 |             let b = try!(v[i+1].num());
[INFO] [stderr]      |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2367:20
[INFO] [stderr]      |
[INFO] [stderr] 2367 |         let sexp = try!(parser.next_sexp());
[INFO] [stderr]      |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2371:43
[INFO] [stderr]      |
[INFO] [stderr] 2371 |             if let Sexp::Str(file_name) = try!(try!(sexp.cdr_take()).car_take()) {
[INFO] [stderr]      |                                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2371:48
[INFO] [stderr]      |
[INFO] [stderr] 2371 |             if let Sexp::Str(file_name) = try!(try!(sexp.cdr_take()).car_take()) {
[INFO] [stderr]      |                                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2372:17
[INFO] [stderr]      |
[INFO] [stderr] 2372 |                 try!(process(file_name.clone(), a, env.clone()));
[INFO] [stderr]      |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]     --> src/main.rs:2410:19
[INFO] [stderr]      |
[INFO] [stderr] 2410 |         interpret(try!(File::open(file_name)), a, env)
[INFO] [stderr]      |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Ref`
[INFO] [stderr]  --> src/main.rs:2:32
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::cell::{Cell, RefCell, Ref, UnsafeCell};
[INFO] [stderr]   |                                ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Mutex`
[INFO] [stderr]   --> src/main.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::sync::Mutex;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:51:17
[INFO] [stderr]    |
[INFO] [stderr] 51 |     reader: Box<Read>,
[INFO] [stderr]    |                 ^^^^ help: use `dyn`: `dyn Read`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:79:37
[INFO] [stderr]    |
[INFO] [stderr] 79 |     fn read_while(&mut self, pred: &Fn(char) -> bool) -> std::io::Result<String> {
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(char) -> bool`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:120:42
[INFO] [stderr]     |
[INFO] [stderr] 120 |     fn cause<'a>(&'a self) -> Option<&'a std::error::Error> {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:133:49
[INFO] [stderr]     |
[INFO] [stderr] 133 |             ErrorType::IOError(ref e) => (e as &Display).fmt(f),
[INFO] [stderr]     |                                                 ^^^^^^^ help: use `dyn`: `dyn Display`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/main.rs:182:9
[INFO] [stderr]     |
[INFO] [stderr] 182 | /         ((p == '-') || (p == '_') || (p == '*') ||
[INFO] [stderr] 183 | |          (p == '+') || (p == '?') || (p == '-') ||
[INFO] [stderr] 184 | |          (p == '!') || (p == '/') || (p == '<') ||
[INFO] [stderr] 185 | |          (p == '>') || (p == '=') || (p == '$') ||
[INFO] [stderr] 186 | |          (p == '%') || (p == '&') || (p == '~') ||
[INFO] [stderr] 187 | |          (p == '^'))
[INFO] [stderr]     | |____________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 182 |         (p == '-') || (p == '_') || (p == '*') ||
[INFO] [stderr] 183 |          (p == '+') || (p == '?') || (p == '-') ||
[INFO] [stderr] 184 |          (p == '!') || (p == '/') || (p == '<') ||
[INFO] [stderr] 185 |          (p == '>') || (p == '=') || (p == '$') ||
[INFO] [stderr] 186 |          (p == '%') || (p == '&') || (p == '~') ||
[INFO] [stderr] 187 |          (p == '^')
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:497:46
[INFO] [stderr]     |
[INFO] [stderr] 497 |             Sexp::Closure(ref sc) => (sc as &Display).fmt(f),
[INFO] [stderr]     |                                              ^^^^^^^ help: use `dyn`: `dyn Display`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:498:46
[INFO] [stderr]     |
[INFO] [stderr] 498 |             Sexp::Builtin(ref bi) => (bi as &Display).fmt(f),
[INFO] [stderr]     |                                              ^^^^^^^ help: use `dyn`: `dyn Display`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/main.rs:654:30
[INFO] [stderr]     |
[INFO] [stderr] 654 |             DUMP.with(|c| if (c.get() > 0) {
[INFO] [stderr]     |                              ^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:676:23
[INFO] [stderr]     |
[INFO] [stderr] 676 | type BuiltinPtr = Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>;
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/main.rs:676:31
[INFO] [stderr]     |
[INFO] [stderr] 676 | type BuiltinPtr = Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>;
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/main.rs:774:12
[INFO] [stderr]     |
[INFO] [stderr] 774 |         if (self.c.is_none()) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:1220:39
[INFO] [stderr]      |
[INFO] [stderr] 1220 |     fn sexps<'a>(&'a mut self) -> Box<Iterator<Item=&'a mut Sexp> + 'a> {
[INFO] [stderr]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=&'a mut Sexp> + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:1227:43
[INFO] [stderr]      |
[INFO] [stderr] 1227 |     fn all_sexps<'a>(&'a mut self) -> Box<Iterator<Item=&'a mut Sexp> + 'a> {
[INFO] [stderr]      |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=&'a mut Sexp> + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:1272:12
[INFO] [stderr]      |
[INFO] [stderr] 1272 |     f: Box<Fn(FramePtr) -> SResult<Sexp>>
[INFO] [stderr]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(FramePtr) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/main.rs:1561:16
[INFO] [stderr]      |
[INFO] [stderr] 1561 |             if (!update) {
[INFO] [stderr]      |                ^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/main.rs:1675:12
[INFO] [stderr]      |
[INFO] [stderr] 1675 |         if (tail) {
[INFO] [stderr]      |            ^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `::Atom`
[INFO] [stderr]     --> src/main.rs:1794:9
[INFO] [stderr]      |
[INFO] [stderr] 1794 |     use ::Atom;
[INFO] [stderr]      |         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2132:46
[INFO] [stderr]      |
[INFO] [stderr] 2132 |         fn copy_all(&mut self, live_it: &mut Iterator<Item=&mut Sexp>) {
[INFO] [stderr]      |                                              ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=&mut Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition
[INFO] [stderr]     --> src/main.rs:2192:5
[INFO] [stderr]      |
[INFO] [stderr] 2192 | /     macro_rules! slist {
[INFO] [stderr] 2193 | |         ( $i:ident => $it:ident, $e:expr ) => {
[INFO] [stderr] 2194 | |             if let Some($i) = $it.next() {
[INFO] [stderr] 2195 | |                 $e
[INFO] [stderr] ...    |
[INFO] [stderr] 2202 | |         }
[INFO] [stderr] 2203 | |     }
[INFO] [stderr]      | |_____^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_macros)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2230:28
[INFO] [stderr]      |
[INFO] [stderr] 2230 |     let b : Vec<(&str, Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>)> = vec!(
[INFO] [stderr]      |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2230:36
[INFO] [stderr]      |
[INFO] [stderr] 2230 |     let b : Vec<(&str, Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>)> = vec!(
[INFO] [stderr]      |                                    ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2299:26
[INFO] [stderr]      |
[INFO] [stderr] 2299 | fn scheme_apply(it: &mut Iterator<Item=Sexp>, env: FramePtr, ctx: Rc<IntCtx>) -> SResult<Sexp> {
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2330:26
[INFO] [stderr]      |
[INFO] [stderr] 2330 | fn mathy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>)->SResult<Sexp>>
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>)->SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2330:34
[INFO] [stderr]      |
[INFO] [stderr] 2330 | fn mathy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>)->SResult<Sexp>>
[INFO] [stderr]      |                                  ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2342:25
[INFO] [stderr]      |
[INFO] [stderr] 2342 | fn cmpy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>
[INFO] [stderr]      |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2342:33
[INFO] [stderr]      |
[INFO] [stderr] 2342 | fn cmpy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>
[INFO] [stderr]      |                                 ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]    --> src/main.rs:774:12
[INFO] [stderr]     |
[INFO] [stderr] 774 |         if (self.c.is_none()) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:1220:39
[INFO] [stderr]      |
[INFO] [stderr] 1220 |     fn sexps<'a>(&'a mut self) -> Box<Iterator<Item=&'a mut Sexp> + 'a> {
[INFO] [stderr]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=&'a mut Sexp> + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:1227:43
[INFO] [stderr]      |
[INFO] [stderr] 1227 |     fn all_sexps<'a>(&'a mut self) -> Box<Iterator<Item=&'a mut Sexp> + 'a> {
[INFO] [stderr]      |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=&'a mut Sexp> + 'a`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:1272:12
[INFO] [stderr]      |
[INFO] [stderr] 1272 |     f: Box<Fn(FramePtr) -> SResult<Sexp>>
[INFO] [stderr]      |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(FramePtr) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/main.rs:1561:16
[INFO] [stderr]      |
[INFO] [stderr] 1561 |             if (!update) {
[INFO] [stderr]      |                ^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]     --> src/main.rs:1675:12
[INFO] [stderr]      |
[INFO] [stderr] 1675 |         if (tail) {
[INFO] [stderr]      |            ^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `::Atom`
[INFO] [stderr]     --> src/main.rs:1794:9
[INFO] [stderr]      |
[INFO] [stderr] 1794 |     use ::Atom;
[INFO] [stderr]      |         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2132:46
[INFO] [stderr]      |
[INFO] [stderr] 2132 |         fn copy_all(&mut self, live_it: &mut Iterator<Item=&mut Sexp>) {
[INFO] [stderr]      |                                              ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=&mut Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition
[INFO] [stderr]     --> src/main.rs:2192:5
[INFO] [stderr]      |
[INFO] [stderr] 2192 | /     macro_rules! slist {
[INFO] [stderr] 2193 | |         ( $i:ident => $it:ident, $e:expr ) => {
[INFO] [stderr] 2194 | |             if let Some($i) = $it.next() {
[INFO] [stderr] 2195 | |                 $e
[INFO] [stderr] ...    |
[INFO] [stderr] 2202 | |         }
[INFO] [stderr] 2203 | |     }
[INFO] [stderr]      | |_____^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_macros)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2230:28
[INFO] [stderr]      |
[INFO] [stderr] 2230 |     let b : Vec<(&str, Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>)> = vec!(
[INFO] [stderr]      |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2230:36
[INFO] [stderr]      |
[INFO] [stderr] 2230 |     let b : Vec<(&str, Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>)> = vec!(
[INFO] [stderr]      |                                    ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2299:26
[INFO] [stderr]      |
[INFO] [stderr] 2299 | fn scheme_apply(it: &mut Iterator<Item=Sexp>, env: FramePtr, ctx: Rc<IntCtx>) -> SResult<Sexp> {
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2330:26
[INFO] [stderr]      |
[INFO] [stderr] 2330 | fn mathy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>)->SResult<Sexp>>
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>)->SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2330:34
[INFO] [stderr]      |
[INFO] [stderr] 2330 | fn mathy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>)->SResult<Sexp>>
[INFO] [stderr]      |                                  ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2342:25
[INFO] [stderr]      |
[INFO] [stderr] 2342 | fn cmpy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>
[INFO] [stderr]      |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/main.rs:2342:33
[INFO] [stderr]      |
[INFO] [stderr] 2342 | fn cmpy<F>(f: F) -> Box<Fn(&mut Iterator<Item=Sexp>) -> SResult<Sexp>>
[INFO] [stderr]      |                                 ^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item=Sexp>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the size for values of type `Self` cannot be known at compilation time
[INFO] [stderr]     --> src/main.rs:1321:26
[INFO] [stderr]      |
[INFO] [stderr] 1296 | struct Lastable<I> where I: Iterator {
[INFO] [stderr]      | ------------------------------------ required by `Lastable`
[INFO] [stderr] ...
[INFO] [stderr] 1321 |     fn lastable(self) -> Lastable<Self>;
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^- help: consider further restricting `Self`: `where Self: std::marker::Sized`
[INFO] [stderr]      |                          |
[INFO] [stderr]      |                          doesn't have a size known at compile-time
[INFO] [stderr]      |
[INFO] [stderr]      = help: the trait `std::marker::Sized` is not implemented for `Self`
[INFO] [stderr]      = note: to learn more, visit <https://doc.rust-lang.org/book/ch19-04-advanced-types.html#dynamically-sized-types-and-the-sized-trait>
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `Self` is not an iterator
[INFO] [stderr]     --> src/main.rs:1321:26
[INFO] [stderr]      |
[INFO] [stderr] 1296 | struct Lastable<I> where I: Iterator {
[INFO] [stderr]      | ------------------------------------ required by `Lastable`
[INFO] [stderr] ...
[INFO] [stderr] 1321 |     fn lastable(self) -> Lastable<Self>;
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^- help: consider further restricting `Self`: `where Self: std::iter::Iterator`
[INFO] [stderr]      |                          |
[INFO] [stderr]      |                          `Self` is not an iterator
[INFO] [stderr]      |
[INFO] [stderr]      = help: the trait `std::iter::Iterator` is not implemented for `Self`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the size for values of type `Self` cannot be known at compilation time
[INFO] [stderr]     --> src/main.rs:1321:26
[INFO] [stderr]      |
[INFO] [stderr] 1296 | struct Lastable<I> where I: Iterator {
[INFO] [stderr]      | ------------------------------------ required by `Lastable`
[INFO] [stderr] ...
[INFO] [stderr] 1321 |     fn lastable(self) -> Lastable<Self>;
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^- help: consider further restricting `Self`: `where Self: std::marker::Sized`
[INFO] [stderr]      |                          |
[INFO] [stderr]      |                          doesn't have a size known at compile-time
[INFO] [stderr]      |
[INFO] [stderr]      = help: the trait `std::marker::Sized` is not implemented for `Self`
[INFO] [stderr]      = note: to learn more, visit <https://doc.rust-lang.org/book/ch19-04-advanced-types.html#dynamically-sized-types-and-the-sized-trait>
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `Self` is not an iterator
[INFO] [stderr]     --> src/main.rs:1321:26
[INFO] [stderr]      |
[INFO] [stderr] 1296 | struct Lastable<I> where I: Iterator {
[INFO] [stderr]      | ------------------------------------ required by `Lastable`
[INFO] [stderr] ...
[INFO] [stderr] 1321 |     fn lastable(self) -> Lastable<Self>;
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^- help: consider further restricting `Self`: `where Self: std::iter::Iterator`
[INFO] [stderr]      |                          |
[INFO] [stderr]      |                          `Self` is not an iterator
[INFO] [stderr]      |
[INFO] [stderr]      = help: the trait `std::iter::Iterator` is not implemented for `Self`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 2 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0277`.
[INFO] [stderr] error: aborting due to 2 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0277`.
[INFO] [stderr] error: could not compile `rsscm`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rsscm`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "fd6b0ff5d71d245da0c1499f2efffdfc0ed4ec853c697d8b23928f9fd7e9efcf"`
[INFO] running `"docker" "rm" "-f" "fd6b0ff5d71d245da0c1499f2efffdfc0ed4ec853c697d8b23928f9fd7e9efcf"`
[INFO] [stdout] fd6b0ff5d71d245da0c1499f2efffdfc0ed4ec853c697d8b23928f9fd7e9efcf
