[INFO] crate tak 0.6.1 is already in cache
[INFO] checking tak-0.6.1 against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] extracting crate tak 0.6.1 into /workspace/builds/worker-5/source
[INFO] validating manifest of crates.io crate tak 0.6.1 on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking crates.io crate tak 0.6.1
[INFO] finished tweaking crates.io crate tak 0.6.1
[INFO] tweaked toml for crates.io crate tak 0.6.1 written to /workspace/builds/worker-5/source/Cargo.toml
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[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-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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] 178f3d428761111e8971e252c1460de0ab00aa06b816c01e2802be4a1affcdf1
[INFO] running `"docker" "start" "-a" "178f3d428761111e8971e252c1460de0ab00aa06b816c01e2802be4a1affcdf1"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Checking twiddle v1.1.0
[INFO] [stderr]     Checking tak v0.6.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/point.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |         try!(write!(f, "{}", letters[self.x]));
[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/turn.rs:138:25
[INFO] [stderr]     |
[INFO] [stderr] 138 |             let point = try!(slice(s, 1, 3).parse::<Point>());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:145:25
[INFO] [stderr]     |
[INFO] [stderr] 145 |             let point = try!(slice(s, 1, 3).parse::<Point>());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:146:29
[INFO] [stderr]     |
[INFO] [stderr] 146 |             let direction = try!(slice(s, 3, 4).parse::<Direction>());
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:147:25
[INFO] [stderr]     |
[INFO] [stderr] 147 |             let drops = try!(get_drops(&slice(s, 4, s.len())));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:157:29
[INFO] [stderr]     |
[INFO] [stderr] 157 |                 let drops = try!(get_drops(&slice(s, 3, s.len())));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:193:17
[INFO] [stderr]     |
[INFO] [stderr] 193 |                 try!(write!(f, "{}{}{}", num_pieces, point, direction));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:195:21
[INFO] [stderr]     |
[INFO] [stderr] 195 |                     try!(write!(f, "{}", x));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:203:9
[INFO] [stderr]     |
[INFO] [stderr] 203 |         try!(b.add_piece(point, piece));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:224:13
[INFO] [stderr]     |
[INFO] [stderr] 224 |             try!(parse_square(str, b, &Point::new(index, y)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:271:5
[INFO] [stderr]     |
[INFO] [stderr] 271 |     try!(write!(f, "{}", full));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:274:5
[INFO] [stderr]     |
[INFO] [stderr] 274 |     try!(write!(f, "P1: {}/{} Flatstones\n", count.p1_flat, count.max_flat));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:275:5
[INFO] [stderr]     |
[INFO] [stderr] 275 |     try!(write!(f, "P1: {}/{} Capstones\n", count.p1_cap, count.max_cap));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:276:5
[INFO] [stderr]     |
[INFO] [stderr] 276 |     try!(write!(f, "P2: {}/{} Flatstones\n", count.p2_flat, count.max_flat));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board5.rs:189:9
[INFO] [stderr]     |
[INFO] [stderr] 189 |         try!(piece.move_onto(&mut top));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:34:27
[INFO] [stderr]    |
[INFO] [stderr] 34 |             Some(base) => try!(piece.move_onto(base)),
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:83:19
[INFO] [stderr]    |
[INFO] [stderr] 83 |         let row = try!(self.grid.get_mut(point.y).ok_or("Invalid point"));
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:98:19
[INFO] [stderr]    |
[INFO] [stderr] 98 |         let row = try!(self.grid.get(point.y).ok_or("Invalid point"));
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:99:20
[INFO] [stderr]    |
[INFO] [stderr] 99 |         let cell = try!(row.get(point.x).ok_or("Invalid point"));
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:107:19
[INFO] [stderr]     |
[INFO] [stderr] 107 |         let row = try!(self.grid.get_mut(point.y).ok_or("Invalid point"));
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:108:22
[INFO] [stderr]     |
[INFO] [stderr] 108 |         let square = try!(row.get_mut(point.x).ok_or("Invalid point"));
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:121:26
[INFO] [stderr]     |
[INFO] [stderr] 121 |             let square = try!(self.at_mut(point));
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:122:13
[INFO] [stderr]     |
[INFO] [stderr] 122 |             try!(square.place_piece(piece));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:130:26
[INFO] [stderr]     |
[INFO] [stderr] 130 |             let square = try!(self.at_mut(point));
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:131:13
[INFO] [stderr]     |
[INFO] [stderr] 131 |             try!(square.add_piece(piece));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/game.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |         try!(write!(f, "{}\n", self.board));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/game.rs:95:37
[INFO] [stderr]    |
[INFO] [stderr] 95 |                     Some(player) => try!(self.place(point, stone, &player)),
[INFO] [stderr]    |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/game.rs:100:17
[INFO] [stderr]     |
[INFO] [stderr] 100 |                 try!(self.slide(num_pieces, point, direction, drops));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/game.rs:135:26
[INFO] [stderr]     |
[INFO] [stderr] 135 |         let mut pieces = try!(self.board.at_reset(point));
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/game.rs:158:36
[INFO] [stderr]     |
[INFO] [stderr] 158 |                     Some(piece) => try!(self.board.add_piece(&p, piece)),
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/piece.rs:90:24
[INFO] [stderr]    |
[INFO] [stderr] 90 |         Stone::from_u8((*self as u8 & 0x3)).unwrap()
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::VecDeque`
[INFO] [stderr]  --> src/board5.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::VecDeque;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::BTreeSet`
[INFO] [stderr]  --> src/board5.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::collections::BTreeSet;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `board5::Board5`
[INFO] [stderr]  --> src/game.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use board5::Board5;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/point.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |         try!(write!(f, "{}", letters[self.x]));
[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/turn.rs:138:25
[INFO] [stderr]     |
[INFO] [stderr] 138 |             let point = try!(slice(s, 1, 3).parse::<Point>());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:145:25
[INFO] [stderr]     |
[INFO] [stderr] 145 |             let point = try!(slice(s, 1, 3).parse::<Point>());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:146:29
[INFO] [stderr]     |
[INFO] [stderr] 146 |             let direction = try!(slice(s, 3, 4).parse::<Direction>());
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:147:25
[INFO] [stderr]     |
[INFO] [stderr] 147 |             let drops = try!(get_drops(&slice(s, 4, s.len())));
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:157:29
[INFO] [stderr]     |
[INFO] [stderr] 157 |                 let drops = try!(get_drops(&slice(s, 3, s.len())));
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:193:17
[INFO] [stderr]     |
[INFO] [stderr] 193 |                 try!(write!(f, "{}{}{}", num_pieces, point, direction));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/turn.rs:195:21
[INFO] [stderr]     |
[INFO] [stderr] 195 |                     try!(write!(f, "{}", x));
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:203:9
[INFO] [stderr]     |
[INFO] [stderr] 203 |         try!(b.add_piece(point, piece));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:224:13
[INFO] [stderr]     |
[INFO] [stderr] 224 |             try!(parse_square(str, b, &Point::new(index, y)));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:271:5
[INFO] [stderr]     |
[INFO] [stderr] 271 |     try!(write!(f, "{}", full));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:274:5
[INFO] [stderr]     |
[INFO] [stderr] 274 |     try!(write!(f, "P1: {}/{} Flatstones\n", count.p1_flat, count.max_flat));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:275:5
[INFO] [stderr]     |
[INFO] [stderr] 275 |     try!(write!(f, "P1: {}/{} Capstones\n", count.p1_cap, count.max_cap));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board.rs:276:5
[INFO] [stderr]     |
[INFO] [stderr] 276 |     try!(write!(f, "P2: {}/{} Flatstones\n", count.p2_flat, count.max_flat));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board5.rs:189:9
[INFO] [stderr]     |
[INFO] [stderr] 189 |         try!(piece.move_onto(&mut top));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:34:27
[INFO] [stderr]    |
[INFO] [stderr] 34 |             Some(base) => try!(piece.move_onto(base)),
[INFO] [stderr]    |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:83:19
[INFO] [stderr]    |
[INFO] [stderr] 83 |         let row = try!(self.grid.get_mut(point.y).ok_or("Invalid point"));
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:98:19
[INFO] [stderr]    |
[INFO] [stderr] 98 |         let row = try!(self.grid.get(point.y).ok_or("Invalid point"));
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/board_naive.rs:99:20
[INFO] [stderr]    |
[INFO] [stderr] 99 |         let cell = try!(row.get(point.x).ok_or("Invalid point"));
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:107:19
[INFO] [stderr]     |
[INFO] [stderr] 107 |         let row = try!(self.grid.get_mut(point.y).ok_or("Invalid point"));
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:108:22
[INFO] [stderr]     |
[INFO] [stderr] 108 |         let square = try!(row.get_mut(point.x).ok_or("Invalid point"));
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:121:26
[INFO] [stderr]     |
[INFO] [stderr] 121 |             let square = try!(self.at_mut(point));
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:122:13
[INFO] [stderr]     |
[INFO] [stderr] 122 |             try!(square.place_piece(piece));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:130:26
[INFO] [stderr]     |
[INFO] [stderr] 130 |             let square = try!(self.at_mut(point));
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/board_naive.rs:131:13
[INFO] [stderr]     |
[INFO] [stderr] 131 |             try!(square.add_piece(piece));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/game.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |         try!(write!(f, "{}\n", self.board));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]   --> src/game.rs:95:37
[INFO] [stderr]    |
[INFO] [stderr] 95 |                     Some(player) => try!(self.place(point, stone, &player)),
[INFO] [stderr]    |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/game.rs:100:17
[INFO] [stderr]     |
[INFO] [stderr] 100 |                 try!(self.slide(num_pieces, point, direction, drops));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/game.rs:135:26
[INFO] [stderr]     |
[INFO] [stderr] 135 |         let mut pieces = try!(self.board.at_reset(point));
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/game.rs:158:36
[INFO] [stderr]     |
[INFO] [stderr] 158 |                     Some(piece) => try!(self.board.add_piece(&p, piece)),
[INFO] [stderr]     |                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]   --> src/piece.rs:90:24
[INFO] [stderr]    |
[INFO] [stderr] 90 |         Stone::from_u8((*self as u8 & 0x3)).unwrap()
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::VecDeque`
[INFO] [stderr]  --> src/board5.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::VecDeque;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::BTreeSet`
[INFO] [stderr]  --> src/board5.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::collections::BTreeSet;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `board5::Board5`
[INFO] [stderr]  --> src/game.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use board5::Board5;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:20:26
[INFO] [stderr]    |
[INFO] [stderr] 20 |         if extra[i].bits(15..11) != 0 {
[INFO] [stderr]    |                          ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:20:26
[INFO] [stderr]    |
[INFO] [stderr] 20 |         if extra[i].bits(15..11) != 0 {
[INFO] [stderr]    |                          ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:22:60
[INFO] [stderr]    |
[INFO] [stderr] 22 |             extra[i] = (extra[i] & 0xF800) | extra[i].bits(9..2);
[INFO] [stderr]    |                                                            ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:22:60
[INFO] [stderr]    |
[INFO] [stderr] 22 |             extra[i] = (extra[i] & 0xF800) | extra[i].bits(9..2);
[INFO] [stderr]    |                                                            ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:35:45
[INFO] [stderr]    |
[INFO] [stderr] 35 |         *spot = (temp & 0xF800) | temp.bits(11..2);
[INFO] [stderr]    |                                             ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:35:45
[INFO] [stderr]    |
[INFO] [stderr] 35 |         *spot = (temp & 0xF800) | temp.bits(11..2);
[INFO] [stderr]    |                                             ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:39:46
[INFO] [stderr]    |
[INFO] [stderr] 39 |         let piece = Piece::from_u8(temp.bits(15..13) as u8).unwrap();
[INFO] [stderr]    |                                              ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:39:46
[INFO] [stderr]    |
[INFO] [stderr] 39 |         let piece = Piece::from_u8(temp.bits(15..13) as u8).unwrap();
[INFO] [stderr]    |                                              ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:54:15
[INFO] [stderr]    |
[INFO] [stderr] 54 |     spot.bits(15..13) as u8
[INFO] [stderr]    |               ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:82:70
[INFO] [stderr]    |
[INFO] [stderr] 82 |                     extra[i] = (extra[i] & location) | extra[i].bits(9..2);
[INFO] [stderr]    |                                                                      ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:90:52
[INFO] [stderr]    |
[INFO] [stderr] 90 |                 spot = (spot & 0xE000) | spot.bits(11..2);
[INFO] [stderr]    |                                                    ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:54:15
[INFO] [stderr]    |
[INFO] [stderr] 54 |     spot.bits(15..13) as u8
[INFO] [stderr]    |               ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:109:70
[INFO] [stderr]     |
[INFO] [stderr] 109 |                     extra[i] = (extra[i] & location) | extra[i].bits(9..2);
[INFO] [stderr]     |                                                                      ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:82:70
[INFO] [stderr]    |
[INFO] [stderr] 82 |                     extra[i] = (extra[i] & location) | extra[i].bits(9..2);
[INFO] [stderr]    |                                                                      ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:118:52
[INFO] [stderr]     |
[INFO] [stderr] 118 |                 spot = (spot & 0xE000) | spot.bits(11..2);
[INFO] [stderr]     |                                                    ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/board5.rs:90:52
[INFO] [stderr]    |
[INFO] [stderr] 90 |                 spot = (spot & 0xE000) | spot.bits(11..2);
[INFO] [stderr]    |                                                    ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]               found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:136:32
[INFO] [stderr]     |
[INFO] [stderr] 136 |                 if square.bits(15..13) == 0 {
[INFO] [stderr]     |                                ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:109:70
[INFO] [stderr]     |
[INFO] [stderr] 109 |                     extra[i] = (extra[i] & location) | extra[i].bits(9..2);
[INFO] [stderr]     |                                                                      ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:149:48
[INFO] [stderr]     |
[INFO] [stderr] 149 |                 match Piece::from_u8(spot.bits(15..13) as u8) {
[INFO] [stderr]     |                                                ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:118:52
[INFO] [stderr]     |
[INFO] [stderr] 118 |                 spot = (spot & 0xE000) | spot.bits(11..2);
[INFO] [stderr]     |                                                    ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:136:32
[INFO] [stderr]     |
[INFO] [stderr] 136 |                 if square.bits(15..13) == 0 {
[INFO] [stderr]     |                                ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:160:37
[INFO] [stderr]     |
[INFO] [stderr] 160 |                     match spot.bits((2 * i + 1)..(2 * i)) {
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:149:48
[INFO] [stderr]     |
[INFO] [stderr] 149 |                 match Piece::from_u8(spot.bits(15..13) as u8) {
[INFO] [stderr]     |                                                ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:160:37
[INFO] [stderr]     |
[INFO] [stderr] 160 |                     match spot.bits((2 * i + 1)..(2 * i)) {
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:191:36
[INFO] [stderr]     |
[INFO] [stderr] 191 |         let mut lowest = spot.bits(1..0);
[INFO] [stderr]     |                                    ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:191:36
[INFO] [stderr]     |
[INFO] [stderr] 191 |         let mut lowest = spot.bits(1..0);
[INFO] [stderr]     |                                    ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:192:34
[INFO] [stderr]     |
[INFO] [stderr] 192 |         let mut temp = spot.bits(11..2);
[INFO] [stderr]     |                                  ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:192:34
[INFO] [stderr]     |
[INFO] [stderr] 192 |         let mut temp = spot.bits(11..2);
[INFO] [stderr]     |                                  ^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:207:39
[INFO] [stderr]     |
[INFO] [stderr] 207 |                     temp |= cont.bits(9..2); // Shift everything thats there
[INFO] [stderr]     |                                       ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:207:39
[INFO] [stderr]     |
[INFO] [stderr] 207 |                     temp |= cont.bits(9..2); // Shift everything thats there
[INFO] [stderr]     |                                       ^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:221:30
[INFO] [stderr]     |
[INFO] [stderr] 221 |                 if cont.bits(15..11) == 0 {
[INFO] [stderr]     |                              ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/board5.rs:221:30
[INFO] [stderr]     |
[INFO] [stderr] 221 |                 if cont.bits(15..11) == 0 {
[INFO] [stderr]     |                              ^^^^^^ expected struct `std::ops::RangeInclusive`, found struct `std::ops::Range`
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected struct `std::ops::RangeInclusive<usize>`
[INFO] [stderr]                found struct `std::ops::Range<{integer}>`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 16 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0308`.
[INFO] [stderr] error: could not compile `tak`.
[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: aborting due to 16 previous errors
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0308`.
[INFO] [stderr] error: could not compile `tak`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "178f3d428761111e8971e252c1460de0ab00aa06b816c01e2802be4a1affcdf1"`
[INFO] running `"docker" "rm" "-f" "178f3d428761111e8971e252c1460de0ab00aa06b816c01e2802be4a1affcdf1"`
[INFO] [stdout] 178f3d428761111e8971e252c1460de0ab00aa06b816c01e2802be4a1affcdf1
