[INFO] cloning repository https://github.com/jonas-schievink/breeze-emu
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jonas-schievink/breeze-emu" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjonas-schievink%2Fbreeze-emu", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjonas-schievink%2Fbreeze-emu'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a36eab547e384b1951b589484f8d9251f393efa2
[INFO] testing jonas-schievink/breeze-emu against 1.54.0 for beta-1.55-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjonas-schievink%2Fbreeze-emu" "/workspace/builds/worker-13/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-13/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jonas-schievink/breeze-emu on toolchain 1.54.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jonas-schievink/breeze-emu
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/jonas-schievink/breeze-emu
[INFO] tweaked toml for git repo https://github.com/jonas-schievink/breeze-emu written to /workspace/builds/worker-13/source/Cargo.toml
[INFO] crate git repo https://github.com/jonas-schievink/breeze-emu already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b892e8329f0663e28a8d1a015b7f2bea4de555450136bb3545ee025ed4fa973f
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "b892e8329f0663e28a8d1a015b7f2bea4de555450136bb3545ee025ed4fa973f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b892e8329f0663e28a8d1a015b7f2bea4de555450136bb3545ee025ed4fa973f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b892e8329f0663e28a8d1a015b7f2bea4de555450136bb3545ee025ed4fa973f", kill_on_drop: false }`
[INFO] [stdout] b892e8329f0663e28a8d1a015b7f2bea4de555450136bb3545ee025ed4fa973f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6e67d54f8da292803300c3c2ae305f5c1b64d808d2f37b99330190e58ea9c832
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "6e67d54f8da292803300c3c2ae305f5c1b64d808d2f37b99330190e58ea9c832", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling libc v0.2.24
[INFO] [stderr]    Compiling num-traits v0.1.39
[INFO] [stderr]    Compiling log v0.3.8
[INFO] [stderr]    Compiling serde v0.9.15
[INFO] [stderr]    Compiling khronos_api v1.0.1
[INFO] [stderr]    Compiling gcc v0.3.51
[INFO] [stderr]    Compiling sdl2-sys v0.24.0
[INFO] [stderr]    Compiling breeze_backend v0.1.0 (/opt/rustwide/workdir/src/breeze_backend)
[INFO] [stderr]    Compiling cfg-if v0.1.1
[INFO] [stderr]    Compiling libsavestate v0.1.0 (/opt/rustwide/workdir/src/libsavestate)
[INFO] [stderr]    Compiling byte_array v0.1.0 (/opt/rustwide/workdir/src/byte_array)
[INFO] [stderr]    Compiling unicode-segmentation v1.1.0
[INFO] [stderr]    Compiling slicevec v0.1.0
[INFO] [stderr]    Compiling xml-rs v0.6.0
[INFO] [stderr]    Compiling x11-dl v2.14.0
[INFO] [stderr]    Compiling ole32-sys v0.2.0
[INFO] [stderr]    Compiling alsa-sys v0.1.1
[INFO] [stderr]    Compiling wayland-scanner v0.5.11
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/libsavestate/lib.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         try!(read_exact(r, &mut val));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/libsavestate/lib.rs:5:9
[INFO] [stdout]    |
[INFO] [stdout] 5  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:108:21
[INFO] [stdout]     |
[INFO] [stdout] 108 |             None => try!(false.save_state(w)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 try!(true.save_state(w));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:111:17
[INFO] [stdout]     |
[INFO] [stdout] 111 |                 try!(t.save_state(w));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         try!(read_exact(r, &mut val));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:125:17
[INFO] [stdout]     |
[INFO] [stdout] 125 |                 try!(t.restore_state(r));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:141:21
[INFO] [stdout]     |
[INFO] [stdout] 141 |                       try!(t.save_state(w))
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 | / impl_fixed_size_array!(
[INFO] [stdout] 158 | |     0 1 2 3 4 5 6 7 8
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_fixed_size_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:149:21
[INFO] [stdout]     |
[INFO] [stdout] 149 |                       try!(t.restore_state(r));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 | / impl_fixed_size_array!(
[INFO] [stdout] 158 | |     0 1 2 3 4 5 6 7 8
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_fixed_size_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(self.len().save_state(w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:170:13
[INFO] [stdout]     |
[INFO] [stdout] 170 |             try!(item.save_state(w));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 |         try!(len.restore_state(r));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             try!(obj.restore_state(r));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backend/lib.rs:23:43
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type BackendResult<T> = Result<T, Box<Error>>;
[INFO] [stdout]    |                                           ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_backend/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling thread_local v0.3.4
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling spc700 v0.1.0 (/opt/rustwide/workdir/src/spc700)
[INFO] [stderr]    Compiling wdc65816 v0.1.0 (/opt/rustwide/workdir/src/wdc65816)
[INFO] [stderr]    Compiling num-integer v0.1.34
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling num-complex v0.1.38
[INFO] [stderr]    Compiling rand v0.3.15
[INFO] [stderr]    Compiling fs2 v0.2.5
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/spc700/addressing.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         (hi << 8 | lo)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/spc700/lib.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl_save_state!(Voice { lvol, rvol, pitch, source, adsr1, adsr2, gain, env, out, fir } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/spc700/lib.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/spc700/lib.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl_save_state!(Voice { lvol, rvol, pitch, source, adsr1, adsr2, gain, env, out, fir } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:78:1
[INFO] [stdout]    |
[INFO] [stdout] 78 | / impl_save_state!(Dsp { voices, lmvol, rmvol, levol, revol, keyon, keyoff, flags, endx, efb, pmod,
[INFO] [stdout] 79 | |     noise, echo, srcdir, echo_buf, echo_delay } ignore {});
[INFO] [stdout]    | |___________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:78:1
[INFO] [stdout]    |
[INFO] [stdout] 78 | / impl_save_state!(Dsp { voices, lmvol, rmvol, levol, revol, keyon, keyoff, flags, endx, efb, pmod,
[INFO] [stdout] 79 | |     noise, echo, srcdir, echo_buf, echo_delay } ignore {});
[INFO] [stdout]    | |___________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         try!(f.write_str(if self.negative() { "N" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         try!(f.write_str(if self.overflow() { "V" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         try!(f.write_str(if self.direct_page() { "D" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         try!(f.write_str("x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         try!(f.write_str(if self.half_carry() { "H" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(f.write_str(if self.interrupt_enable() { "I" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         try!(f.write_str(if self.zero() { "Z" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         try!(f.write_str(if self.carry() { "C" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/timer.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl_save_state!(Timer { div, val, enabled, stage1, stage2 } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/timer.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl_save_state!(Timer { div, val, enabled, stage1, stage2 } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/lib.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | / impl_save_state!(Spc700 { mem, ipl_rom_mapped, reg_dsp_addr, io_vals, timers, dsp, a, x, y, sp, pc,
[INFO] [stdout] 72 | |     psw } ignore { cy, trace });
[INFO] [stdout]    | |________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/lib.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | / impl_save_state!(Spc700 { mem, ipl_rom_mapped, reg_dsp_addr, io_vals, timers, dsp, a, x, y, sp, pc,
[INFO] [stdout] 72 | |     psw } ignore { cy, trace });
[INFO] [stdout]    | |________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:125:18
[INFO] [stdout]     |
[INFO] [stdout] 125 |             0xfa ... 0xfc =>
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/spc700/lib.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:129:18
[INFO] [stdout]     |
[INFO] [stdout] 129 |             0xf4 ... 0xf7 => self.io_vals[addr as usize - 0xf4],
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:146:20
[INFO] [stdout]     |
[INFO] [stdout] 146 |             0xffc0 ... 0xffff if self.ipl_rom_mapped => IPL_ROM[addr as usize - 0xffc0],
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:185:18
[INFO] [stdout]     |
[INFO] [stdout] 185 |             0xfd ... 0xff => panic!("APU attempted to write to read-only register ${:04X}", addr),
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |         try!(f.write_str(if self.negative() { "N" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         try!(f.write_str(if self.overflow() { "V" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |         try!(f.write_str(if self.small_acc() { "M" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         try!(f.write_str(if self.small_index() { "X" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         try!(f.write_str(if self.decimal() { "D" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 76 |         try!(f.write_str(if self.irq_disable() { "I" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         try!(f.write_str(if self.zero() { "Z" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |         try!(f.write_str(if self.carry() { "C" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/lib.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | /     impl_save_state_fns!(Cpu {
[INFO] [stdout] 70 | |         a, x, y, s, dbr, pbr, d, pc, p, emulation, wai, mem
[INFO] [stdout] 71 | |     } ignore { cy, trace });
[INFO] [stdout]    | |____________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/lib.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | /     impl_save_state_fns!(Cpu {
[INFO] [stdout] 70 | |         a, x, y, s, dbr, pbr, d, pc, p, emulation, wai, mem
[INFO] [stdout] 71 | |     } ignore { cy, trace });
[INFO] [stdout]    | |____________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling shared_library v0.1.6
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 once!(warn!("read from write-only control register"));
[INFO] [stdout]     |                 ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 once!(warn!("read from write-only control register"));
[INFO] [stdout]     |                 ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 | /                     once!({
[INFO] [stdout] 159 | |                         warn!("SPC700 wrote ${:02X} to testing register ($f0)", val);
[INFO] [stdout] 160 | |                         warn!("As a safety measure, only $0a is allowed. This write will be \
[INFO] [stdout] 161 | |                             ignored! (This warning will only be printed for the first illegal \
[INFO] [stdout] 162 | |                             write)");
[INFO] [stdout] 163 | |                     });
[INFO] [stdout]     | |_______________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 | /                     once!({
[INFO] [stdout] 159 | |                         warn!("SPC700 wrote ${:02X} to testing register ($f0)", val);
[INFO] [stdout] 160 | |                         warn!("As a safety measure, only $0a is allowed. This write will be \
[INFO] [stdout] 161 | |                             ignored! (This warning will only be printed for the first illegal \
[INFO] [stdout] 162 | |                             write)");
[INFO] [stdout] 163 | |                     });
[INFO] [stdout]     | |_______________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:652:13
[INFO] [stdout]     |
[INFO] [stdout] 652 |             once!(warn!("`tcall {}` while IPL ROM is mapped!", p));
[INFO] [stdout]     |             ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:652:13
[INFO] [stdout]     |
[INFO] [stdout] 652 |             once!(warn!("`tcall {}` while IPL ROM is mapped!", p));
[INFO] [stdout]     |             ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:171:29
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     0x08 => once!(warn!("ignoring write to envelope value")),
[INFO] [stdout]     |                             ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:171:29
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     0x08 => once!(warn!("ignoring write to envelope value")),
[INFO] [stdout]     |                             ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:172:29
[INFO] [stdout]     |
[INFO] [stdout] 172 |                     0x09 => once!(warn!("ignoring write to sample value")),
[INFO] [stdout]     |                             ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:172:29
[INFO] [stdout]     |
[INFO] [stdout] 172 |                     0x09 => once!(warn!("ignoring write to sample value")),
[INFO] [stdout]     |                             ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling memchr v1.0.1
[INFO] [stderr]    Compiling term_size v0.3.0
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling memmap v0.2.3
[INFO] [stderr]    Compiling num-iter v0.1.33
[INFO] [stderr]    Compiling textwrap v0.6.0
[INFO] [stderr]    Compiling osmesa-sys v0.1.2
[INFO] [stderr]    Compiling aho-corasick v0.6.3
[INFO] [stderr]    Compiling clap v2.25.0
[INFO] [stderr]    Compiling gl_generator v0.5.4
[INFO] [stderr]    Compiling wayland-client v0.5.12
[INFO] [stderr]    Compiling cpal v0.2.12
[INFO] [stderr]    Compiling phf_generator v0.7.21
[INFO] [stderr]    Compiling num-bigint v0.1.39
[INFO] [stderr]    Compiling tempfile v2.1.5
[INFO] [stderr]    Compiling backtrace-sys v0.1.11
[INFO] [stderr]    Compiling regex v0.2.2
[INFO] [stderr]    Compiling breeze_core v0.1.0 (/opt/rustwide/workdir/src/breeze_core)
[INFO] [stderr]    Compiling phf_codegen v0.7.21
[INFO] [stderr]    Compiling breeze_cpal v0.1.0 (/opt/rustwide/workdir/src/breeze_cpal)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/dma.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / impl_save_state!(DmaChannel { params, a_addr, a_addr_bank, b_addr, dma_size, hdma_indirect_bank,
[INFO] [stdout] 57 | |                               hdma_addr, hdma_flags, hdma_do_transfer } ignore {});
[INFO] [stdout]    | |___________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]     |
[INFO] [stdout] 1   | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/dma.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / impl_save_state!(DmaChannel { params, a_addr, a_addr_bank, b_addr, dma_size, hdma_indirect_bank,
[INFO] [stdout] 57 | |                               hdma_addr, hdma_flags, hdma_do_transfer } ignore {});
[INFO] [stdout]    | |___________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     writer: Box<WriteSeek>,
[INFO] [stdout]    |                 ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(writer: Box<WriteSeek>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                        ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |     reader: Box<BufRead>,
[INFO] [stdout]    |                 ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:45:24
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn new(reader: Box<BufRead>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |     writer: Box<WriteSeek>,
[INFO] [stdout]    |                 ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         try!(write!(writer, "SMV\x1A"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(writer.write_u32::<LittleEndian>(4));  // SMV Version
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(writer.write_u32::<LittleEndian>(0));  // uid (Unix timestamp in Snes9x)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(writer.write_u32::<LittleEndian>(0));  // rerecord count (no idea what this does)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         try!(writer.write_u32::<LittleEndian>(0xdeadbeef));    // Number of frames
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(writer.write_u8(0));  // controller mask (FIXME)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         try!(writer.write_u8(1));  // movie opts
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         try!(writer.write_u8(0));  // sync opts
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         try!(writer.write_u8(0));  // more (actual) sync opts
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(writer.write_u32::<LittleEndian>(0x40));  // offset to save state / cart. RAM image
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         try!(writer.write_u32::<LittleEndian>(0x40 + 0x20000));  // offset to controller data
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         try!(writer.write_u32::<LittleEndian>(0xdeadbeef));  // num. of input samples
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         try!(writer.write_u8(get_controller_type(&input.ports.0)));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         try!(writer.write_u8(get_controller_type(&input.ports.1)));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             try!(writer.write_i8(-1));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         try!(writer.write_all(&[0; 18]));       // 18 bytes reserved for future use
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(writer.write_all(&[0; 0x20000]));   // empty SRAM image
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:22:28
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn new(mut writer: Box<WriteSeek>, snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                            ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:93:17
[INFO] [stdout]    |
[INFO] [stdout] 93 |     reader: Box<BufRead>,
[INFO] [stdout]    |                 ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:97:24
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn new(reader: Box<BufRead>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:45:24
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn new(writer: Box<WriteSeek>, snes: &Snes) -> io::Result<Self> where Self: Sized;
[INFO] [stdout]    |                        ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:57:24
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(reader: Box<BufRead>, snes: &Snes) -> io::Result<Self> where Self: Sized;
[INFO] [stdout]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:73:45
[INFO] [stdout]    |
[INFO] [stdout] 73 |         RecordingFormat::Custom => Box::new(try!(custom::Recorder::new(writer, snes))),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:74:42
[INFO] [stdout]    |
[INFO] [stdout] 74 |         RecordingFormat::Smv => Box::new(try!(smv::Recorder::new(writer, snes))),
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:68:36
[INFO] [stdout]    |
[INFO] [stdout] 68 |                        writer: Box<WriteSeek>,
[INFO] [stdout]    |                                    ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:70:42
[INFO] [stdout]    |
[INFO] [stdout] 70 |                        -> io::Result<Box<Recorder>> {
[INFO] [stdout]    |                                          ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:84:45
[INFO] [stdout]    |
[INFO] [stdout] 84 |         RecordingFormat::Custom => Box::new(try!(custom::Replayer::new(reader, snes))),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:85:42
[INFO] [stdout]    |
[INFO] [stdout] 85 |         RecordingFormat::Smv => Box::new(try!(smv::Replayer::new(reader, snes))),
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:79:36
[INFO] [stdout]    |
[INFO] [stdout] 79 |                        reader: Box<BufRead>,
[INFO] [stdout]    |                                    ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:81:42
[INFO] [stdout]    |
[INFO] [stdout] 81 |                        -> io::Result<Box<Replayer>> {
[INFO] [stdout]    |                                          ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/ppu/rendering.rs:231:15
[INFO] [stdout]     |
[INFO] [stdout] 231 |             2 ... 5 => {
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]     |
[INFO] [stdout] 1   | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/breeze_core/ppu/sprites.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 |     sprite_scanline: [(Option<SpritePixel>); super::SCREEN_WIDTH as usize],
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:419:1
[INFO] [stdout]     |
[INFO] [stdout] 419 | / impl_save_state!(Ppu {
[INFO] [stdout] 420 | |     oam, cgram, vram, inidisp, obsel, oamaddl, oamaddh, oamaddr, oam_lsb, bgmode, mosaic, bg1sc,
[INFO] [stdout] 421 | |     bg2sc, bg3sc, bg4sc, bg12nba, bg34nba, bg1hofs, m7hofs, bg1vofs, m7vofs, bg2hofs, bg2vofs,
[INFO] [stdout] 422 | |     bg3hofs, bg3vofs, bg4hofs, bg4vofs, bg_old, m7_old, vmain, vmaddr, vram_prefetch, m7sel, m7a,
[INFO] [stdout] ...   |
[INFO] [stdout] 428 | |     framebuf, sprite_render_state, bg_cache
[INFO] [stdout] 429 | | });
[INFO] [stdout]     | |___^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:419:1
[INFO] [stdout]     |
[INFO] [stdout] 419 | / impl_save_state!(Ppu {
[INFO] [stdout] 420 | |     oam, cgram, vram, inidisp, obsel, oamaddl, oamaddh, oamaddr, oam_lsb, bgmode, mosaic, bg1sc,
[INFO] [stdout] 421 | |     bg2sc, bg3sc, bg4sc, bg12nba, bg34nba, bg1hofs, m7hofs, bg1vofs, m7vofs, bg2hofs, bg2vofs,
[INFO] [stdout] 422 | |     bg3hofs, bg3vofs, bg4hofs, bg4vofs, bg_old, m7_old, vmain, vmaddr, vram_prefetch, m7sel, m7a,
[INFO] [stdout] ...   |
[INFO] [stdout] 428 | |     framebuf, sprite_render_state, bg_cache
[INFO] [stdout] 429 | | });
[INFO] [stdout]     | |___^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:507:20
[INFO] [stdout]     |
[INFO] [stdout] 507 |             0x210f ... 0x2114 => self.bg_store(addr, value),
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:514:20
[INFO] [stdout]     |
[INFO] [stdout] 514 |             0x211b ... 0x2120 => self.m7_store(addr, value),
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/port.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 |         imp: Box<JoypadImpl>,
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/port.rs:35:32
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new_joypad(imp: Box<JoypadImpl>) -> Self {
[INFO] [stdout]    |                                ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:62:18
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Recorded(Box<Recorder>),
[INFO] [stdout]    |                  ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Replayed(Box<Replayer>),
[INFO] [stdout]    |                  ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl_save_state!(Input { auto_read_data, latch, latched_this_frame } ignore { ports, mode });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl_save_state!(Input { auto_read_data, latch, latched_this_frame } ignore { ports, mode });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:92:48
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn start_recording(&mut self, rec: Box<Recorder>) {
[INFO] [stdout]    |                                                ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/breeze_core/input/mod.rs:101:50
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn start_replay(&mut self, replayer: Box<Replayer>) {
[INFO] [stdout]     |                                                  ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/input/mod.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |             0x4218 ... 0x421f => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/breeze_core/rom.rs:95:22
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 0x20 ... 0x7E => {
[INFO] [stdout]    |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/rom.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | impl_save_state!(Rom { ram } ignore { header, rom });
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/rom.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | impl_save_state!(Rom { ram } ignore { header, rom });
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:251:20
[INFO] [stdout]     |
[INFO] [stdout] 251 |             0x0000 ... 0x7fff => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:255:26
[INFO] [stdout]     |
[INFO] [stdout] 255 |                     0x70 ... 0x7d => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:259:26
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     0xfe ... 0xff => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:271:20
[INFO] [stdout]     |
[INFO] [stdout] 271 |             0x8000 ... 0xffff => match bank {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:281:22
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 0x80 ... 0xfd | 0x00 ... 0x7d => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:281:38
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 0x80 ... 0xfd | 0x00 ... 0x7d => {
[INFO] [stdout]     |                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:295:18
[INFO] [stdout]     |
[INFO] [stdout] 295 |             0x00 ... 0x3f | 0x80 ... 0xbf if addr >= 0x8000 => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:295:34
[INFO] [stdout]     |
[INFO] [stdout] 295 |             0x00 ... 0x3f | 0x80 ... 0xbf if addr >= 0x8000 => {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:298:18
[INFO] [stdout]     |
[INFO] [stdout] 298 |             0x20 ... 0x3f | 0xa0 ... 0xbf if addr >= 0x6000 && addr <= 0x7fff => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:298:34
[INFO] [stdout]     |
[INFO] [stdout] 298 |             0x20 ... 0x3f | 0xa0 ... 0xbf if addr >= 0x6000 && addr <= 0x7fff => {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:302:18
[INFO] [stdout]     |
[INFO] [stdout] 302 |             0x40 ... 0x7d | 0xc0 ... 0xfd => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:302:34
[INFO] [stdout]     |
[INFO] [stdout] 302 |             0x40 ... 0x7d | 0xc0 ... 0xfd => {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:305:18
[INFO] [stdout]     |
[INFO] [stdout] 305 |             0x7e ... 0x7f => unreachable!(),    // WRAM banks
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:306:18
[INFO] [stdout]     |
[INFO] [stdout] 306 |             0xfe ... 0xff => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:26:70
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn create_save_state(&self, format: SaveStateFormat, w: &mut Write) -> io::Result<()> {
[INFO] [stdout]    |                                                                      ^^^^^ help: use `dyn`: `dyn Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:35:75
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn restore_save_state(&mut self, format: SaveStateFormat, r: &mut BufRead) -> io::Result<()> {
[INFO] [stdout]    |                                                                           ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/save.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         try!(write!(w, "ZSNES Save State File V0.6"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/save.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         try!(w.write_all(&[26]));   // ASCII SUBstitute (note that reading can not rely
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/save.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         try!(w.write_all(&[60]));   // version #/100 (= 0.6)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:43:34
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn save_zsnes(&self, w: &mut Write) -> io::Result<()> {
[INFO] [stdout]    |                                  ^^^^^ help: use `dyn`: `dyn Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:54:39
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn load_zsnes(&mut self, _r: &mut BufRead) -> io::Result<()> {
[INFO] [stdout]    |                                       ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout] 98  | / impl_save_state!(Peripherals {
[INFO] [stdout] 99  | |     apu, ppu, rom, wram, dma, hdmaen, nmien, wrio, wrmpya, wrmpyb, wrdiv, rddiv, rdmpy, htime,
[INFO] [stdout] 100 | |     vtime, memsel, nmi, irq, cy, input, wmaddl, wmaddm, wmaddh
[INFO] [stdout] 101 | | } ignore {});
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout] 98  | / impl_save_state!(Peripherals {
[INFO] [stdout] 99  | |     apu, ppu, rom, wram, dma, hdmaen, nmien, wrio, wrmpya, wrmpyb, wrdiv, rddiv, rdmpy, htime,
[INFO] [stdout] 100 | |     vtime, memsel, nmi, irq, cy, input, wmaddl, wmaddm, wmaddh
[INFO] [stdout] 101 | | } ignore {});
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:144:18
[INFO] [stdout]     |
[INFO] [stdout] 144 |             0x00 ... 0x3f => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:145:24
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 0x0000 ... 0x1fff | 0x6000 ... 0xffff => SLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:145:44
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 0x0000 ... 0x1fff | 0x6000 ... 0xffff => SLOW,
[INFO] [stdout]     |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:146:24
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 0x4000 ... 0x41ff => XSLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |             0x40 ... 0x7f => SLOW,
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:150:18
[INFO] [stdout]     |
[INFO] [stdout] 150 |             0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:151:24
[INFO] [stdout]     |
[INFO] [stdout] 151 |                 0x0000 ... 0x1fff | 0x6000 ... 0x7fff => SLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:151:44
[INFO] [stdout]     |
[INFO] [stdout] 151 |                 0x0000 ... 0x1fff | 0x6000 ... 0x7fff => SLOW,
[INFO] [stdout]     |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:152:24
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 0x4000 ... 0x41ff => XSLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 |                 0x8000 ... 0xffff => if self.memsel { FAST } else { SLOW },
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:156:18
[INFO] [stdout]     |
[INFO] [stdout] 156 |             0xc0 ... 0xff => if self.memsel { FAST } else { SLOW },
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:178:18
[INFO] [stdout]     |
[INFO] [stdout] 178 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:178:34
[INFO] [stdout]     |
[INFO] [stdout] 178 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:180:24
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 0x0000 ... 0x1fff => self.wram[addr as usize],
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:182:24
[INFO] [stdout]     |
[INFO] [stdout] 182 |                 0x2100 ... 0x2133 => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:186:24
[INFO] [stdout]     |
[INFO] [stdout] 186 |                 0x2134 ... 0x213f => self.ppu.load(addr),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:188:24
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 0x2140 ... 0x217f => self.apu.read_port((addr & 0b11) as u8),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:193:24
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 0x2181 ... 0x2183 => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:228:24
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 0x4218 ... 0x421f => self.input.load(addr),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |                 0x4300 ... 0x43ff => self.dma[(addr as usize & 0x00f0) >> 4].load(addr as u8 & 0xf),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:231:24
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 0x6000 ... 0xffff => self.rom.load(bank, addr),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:239:18
[INFO] [stdout]     |
[INFO] [stdout] 239 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.load(bank, addr),
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:239:34
[INFO] [stdout]     |
[INFO] [stdout] 239 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.load(bank, addr),
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:247:18
[INFO] [stdout]     |
[INFO] [stdout] 247 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:247:34
[INFO] [stdout]     |
[INFO] [stdout] 247 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling num-rational v0.1.38
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:248:24
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 0x0000 ... 0x1fff => self.wram[addr as usize] = value,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:250:24
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 0x2100 ... 0x2133 => self.ppu.store(addr, value),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:251:24
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:253:24
[INFO] [stdout]     |
[INFO] [stdout] 253 |                 0x2140 ... 0x217f => self.apu.store_port((addr & 0b11) as u8, value),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:261:24
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:312:24
[INFO] [stdout]     |
[INFO] [stdout] 312 |                 0x4300 ... 0x43ff => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:315:24
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 0x8000 ... 0xffff => self.rom.store(bank, addr, value),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:320:18
[INFO] [stdout]     |
[INFO] [stdout] 320 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.store(bank, addr, value),
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.store(bank, addr, value),
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:341:1
[INFO] [stdout]     |
[INFO] [stdout] 341 | / impl_save_state!(Snes { cpu, master_cy, apu_master_cy_debt, ppu_master_cy_debt }
[INFO] [stdout] 342 | |     ignore { trace_start });
[INFO] [stdout]     | |____________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:341:1
[INFO] [stdout]     |
[INFO] [stdout] 341 | / impl_save_state!(Snes { cpu, master_cy, apu_master_cy_debt, ppu_master_cy_debt }
[INFO] [stdout] 342 | |     ignore { trace_start });
[INFO] [stdout]     | |____________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:421:39
[INFO] [stdout]     |
[INFO] [stdout] 421 |                         for action in try!(render(&self.cpu.mem.ppu.framebuf)) {
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:414:24
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     (0 ... 224, 278) => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:568:23
[INFO] [stdout]     |
[INFO] [stdout] 568 |         for action in try!(actions) {
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:580:16
[INFO] [stdout]     |
[INFO] [stdout] 580 |         while !try!(self.render_frame()) {}
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:537:40
[INFO] [stdout]     |
[INFO] [stdout] 537 |                 if value & 0xf0 != 0 { once!(warn!("invalid value for $212b: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:537:40
[INFO] [stdout]     |
[INFO] [stdout] 537 |                 if value & 0xf0 != 0 { once!(warn!("invalid value for $212b: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:541:40
[INFO] [stdout]     |
[INFO] [stdout] 541 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212c: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:541:40
[INFO] [stdout]     |
[INFO] [stdout] 541 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212c: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:545:40
[INFO] [stdout]     |
[INFO] [stdout] 545 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212d: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:545:40
[INFO] [stdout]     |
[INFO] [stdout] 545 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212d: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:549:40
[INFO] [stdout]     |
[INFO] [stdout] 549 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212e: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:549:40
[INFO] [stdout]     |
[INFO] [stdout] 549 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212e: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:553:40
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212f: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:553:40
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212f: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:567:40
[INFO] [stdout]     |
[INFO] [stdout] 567 |                 if value & 0x08 != 0 { once!(warn!("pseudo-hires mode not yet implemented")); }
[INFO] [stdout]     |                                        ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:567:40
[INFO] [stdout]     |
[INFO] [stdout] 567 |                 if value & 0x08 != 0 { once!(warn!("pseudo-hires mode not yet implemented")); }
[INFO] [stdout]     |                                        ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:568:40
[INFO] [stdout]     |
[INFO] [stdout] 568 |                 if value & 0x04 != 0 { once!(warn!("overscan not yet implemented")); }
[INFO] [stdout]     |                                        --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:568:40
[INFO] [stdout]     |
[INFO] [stdout] 568 |                 if value & 0x04 != 0 { once!(warn!("overscan not yet implemented")); }
[INFO] [stdout]     |                                        --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:569:40
[INFO] [stdout]     |
[INFO] [stdout] 569 |                 if value & 0x03 != 0 { once!(warn!("interlace not yet implemented")); }
[INFO] [stdout]     |                                        ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:569:40
[INFO] [stdout]     |
[INFO] [stdout] 569 |                 if value & 0x03 != 0 { once!(warn!("interlace not yet implemented")); }
[INFO] [stdout]     |                                        ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 | /             once!(warn!("latch still active from older frame (might interfere with \
[INFO] [stdout] 125 | |                          recording); latch might be changed by emulator!"));
[INFO] [stdout]     | |____________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 | /             once!(warn!("latch still active from older frame (might interfere with \
[INFO] [stdout] 125 | |                          recording); latch might be changed by emulator!"));
[INFO] [stdout]     | |____________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:148:21
[INFO] [stdout]     |
[INFO] [stdout] 148 | /                     once!(warn!("reading data lines without prior latching (this can interfere \
[INFO] [stdout] 149 | |                                  with input recording)"));
[INFO] [stdout]     | |__________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:148:21
[INFO] [stdout]     |
[INFO] [stdout] 148 | /                     once!(warn!("reading data lines without prior latching (this can interfere \
[INFO] [stdout] 149 | |                                  with input recording)"));
[INFO] [stdout]     | |__________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:192:25
[INFO] [stdout]     |
[INFO] [stdout] 192 | /                         once!(warn!("already latched input in this frame! (this might interfere \
[INFO] [stdout] 193 | |                                      with recording)"));
[INFO] [stdout]     | |________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:192:25
[INFO] [stdout]     |
[INFO] [stdout] 192 | /                         once!(warn!("already latched input in this frame! (this might interfere \
[INFO] [stdout] 193 | |                                      with recording)"));
[INFO] [stdout]     | |________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     once!(warn!("read from write-only PPU register ${:04X}", addr));
[INFO] [stdout]     |                     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     once!(warn!("read from write-only PPU register ${:04X}", addr));
[INFO] [stdout]     |                     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     once!(warn!("open-bus load from WRAM register ${:02X}", addr));
[INFO] [stdout]     |                     --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     once!(warn!("open-bus load from WRAM register ${:02X}", addr));
[INFO] [stdout]     |                     --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:233:21
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     once!(warn!("invalid/unimplemented load from ${:02X}:{:04X}", bank, addr));
[INFO] [stdout]     |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:233:21
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     once!(warn!("invalid/unimplemented load from ${:02X}:{:04X}", bank, addr));
[INFO] [stdout]     |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:251:38
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stdout]     |                                      ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:251:38
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stdout]     |                                      ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:261:38
[INFO] [stdout]     |
[INFO] [stdout] 261 |                   0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 262 | |                     bank, addr)),
[INFO] [stdout]     | |________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:261:38
[INFO] [stdout]     |
[INFO] [stdout] 261 |                   0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 262 | |                     bank, addr)),
[INFO] [stdout]     | |________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:273:44
[INFO] [stdout]     |
[INFO] [stdout] 273 |                     if value & 0x4e != 0 { once!(warn!("Invalid value for NMIEN: ${:02X}", value)) }
[INFO] [stdout]     |                                            ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:273:44
[INFO] [stdout]     |
[INFO] [stdout] 273 |                     if value & 0x4e != 0 { once!(warn!("Invalid value for NMIEN: ${:02X}", value)) }
[INFO] [stdout]     |                                            ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling target_build_utils v0.3.1
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_cpal/lib.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let formats = try!(endpoint.get_supported_formats_list()).collect::<Vec<_>>();
[INFO] [stdout]    |                       ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_cpal/lib.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let voice = try!(Voice::new(&endpoint, &format));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/breeze_core/rom.rs:31:75
[INFO] [stdout]    |
[INFO] [stdout] 31 |         info!("ROM name: '{}'", str::from_utf8(&self.title).unwrap_or("").trim_right());
[INFO] [stdout]    |                                                                           ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/breeze_core/rom.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout] 109 |         debug!("loading '{}'", str::from_utf8(&title).unwrap().trim_right());
[INFO] [stdout]     |                                                                ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/breeze_core/rom.rs:246:59
[INFO] [stdout]     |
[INFO] [stdout] 246 |         str::from_utf8(&self.header.title).ok().map(|s| s.trim_right())
[INFO] [stdout]     |                                                           ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling num v0.1.39
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/rom.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             _ => unreachable!()
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]     |
[INFO] [stdout] 1   | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/snes.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |             _ => FAST,
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/snes.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             _ => unreachable!(),    // Rust should know this!
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/snes.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             _ => unreachable!(),    // Rust should know this!
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling sdl2 v0.24.0
[INFO] [stderr]    Compiling glutin v0.6.2
[INFO] [stderr]    Compiling glium v0.15.0
[INFO] [stdout] warning: 162 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling env_logger v0.4.3
[INFO] [stderr]    Compiling serde_json v0.9.10
[INFO] [stderr]    Compiling breeze_sdl v0.1.0 (/opt/rustwide/workdir/src/breeze_sdl)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:123:37
[INFO] [stdout]     |
[INFO] [stdout] 123 |     fn create() -> Result<Self, Box<Error>> {
[INFO] [stdout]     |                                     ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:126:25
[INFO] [stdout]     |
[INFO] [stdout] 126 |             let video = try!(sdl.video());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:127:26
[INFO] [stdout]     |
[INFO] [stdout] 127 |             let window = try!(video.window("breeze", SCREEN_WIDTH * 3, SCREEN_HEIGHT * 3)
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:130:28
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let renderer = try!(window.renderer()
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:134:27
[INFO] [stdout]     |
[INFO] [stdout] 134 |             let texture = try!(renderer.create_texture(
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling backtrace v0.2.3
[INFO] [stderr]    Compiling libloading v0.3.4
[INFO] [stderr]    Compiling dlib v0.3.1
[INFO] [stderr]    Compiling wayland-sys v0.5.11
[INFO] [stderr]    Compiling wayland-window v0.2.3
[INFO] [stderr]    Compiling wayland-kbd v0.3.6
[INFO] [stderr]    Compiling breeze_glium v0.1.0 (/opt/rustwide/workdir/src/breeze_glium)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:114:23
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let display = try!(WindowBuilder::new()
[INFO] [stdout]     |                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:119:24
[INFO] [stdout]     |
[INFO] [stdout] 119 |         let mut vbuf = try!(VertexBuffer::empty_dynamic(&display, 4));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:124:22
[INFO] [stdout]     |
[INFO] [stdout] 124 |             program: try!(
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:126:22
[INFO] [stdout]     |
[INFO] [stdout] 126 |             texture: try!(SrgbTexture2d::empty(&display, SCREEN_WIDTH, SCREEN_HEIGHT)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/breeze_glium/lib.rs:113:37
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn create() -> Result<Self, Box<Error>> {
[INFO] [stdout]     |                                     ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling breeze_backends v0.1.0 (/opt/rustwide/workdir/src/breeze_backends)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:31:73
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type RendererMap = BTreeMap<&'static str, Option<fn() -> Result<Box<Renderer>, Box<Error>>>>;
[INFO] [stdout]    |                                                                         ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_backends/lib.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:31:88
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type RendererMap = BTreeMap<&'static str, Option<fn() -> Result<Box<Renderer>, Box<Error>>>>;
[INFO] [stdout]    |                                                                                        ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:32:70
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub type AudioMap = BTreeMap<&'static str, Option<fn() -> Result<Box<AudioSink>, Box<Error>>>>;
[INFO] [stdout]    |                                                                      ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:32:86
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub type AudioMap = BTreeMap<&'static str, Option<fn() -> Result<Box<AudioSink>, Box<Error>>>>;
[INFO] [stdout]    |                                                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:36:56
[INFO] [stdout]    |
[INFO] [stdout] 36 |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout]    |                                                        ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:36:71
[INFO] [stdout]    |
[INFO] [stdout] 36 |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout]    |                                                                       ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:40:51
[INFO] [stdout]    |
[INFO] [stdout] 40 |         type MapEntry = Option<fn() -> Result<Box<Renderer>, Box<Error>>>;
[INFO] [stdout]    |                                                   ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:40:66
[INFO] [stdout]    |
[INFO] [stdout] 40 |         type MapEntry = Option<fn() -> Result<Box<Renderer>, Box<Error>>>;
[INFO] [stdout]    |                                                                  ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:71:57
[INFO] [stdout]    |
[INFO] [stdout] 71 |         fn make<A: AudioSink + 'static>() -> Result<Box<AudioSink>, Box<Error>> {
[INFO] [stdout]    |                                                         ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:71:73
[INFO] [stdout]    |
[INFO] [stdout] 71 |         fn make<A: AudioSink + 'static>() -> Result<Box<AudioSink>, Box<Error>> {
[INFO] [stdout]    |                                                                         ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:75:51
[INFO] [stdout]    |
[INFO] [stdout] 75 |         type MapEntry = Option<fn() -> Result<Box<AudioSink>, Box<Error>>>;
[INFO] [stdout]    |                                                   ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:75:67
[INFO] [stdout]    |
[INFO] [stdout] 75 |         type MapEntry = Option<fn() -> Result<Box<AudioSink>, Box<Error>>>;
[INFO] [stdout]    |                                                                   ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_backends/lib.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling breeze v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze/input.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn sdl_kbd_joypad() -> Option<Box<JoypadImpl>> {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze/main.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze/main.rs:96:20
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let mut file = try!(File::open(&filename));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze/main.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze/main.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     try!(file.read_to_end(&mut buf));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:100:15
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let rom = try!(Rom::from_bytes(&buf));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:104:24
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let mut renderer = try!(renderer_fn());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let audio = try!(audio_fn());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |         try!(emu.snes.render_frame(|_framebuf| Ok(vec![])));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:144:27
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let actions = try!(emu.renderer.render(&*framebuf));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         try!(emu.run());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze/main.rs:31:54
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn process_args(args: &ArgMatches) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 10 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2m 11s
[INFO] running `Command { std: "docker" "inspect" "6e67d54f8da292803300c3c2ae305f5c1b64d808d2f37b99330190e58ea9c832", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6e67d54f8da292803300c3c2ae305f5c1b64d808d2f37b99330190e58ea9c832", kill_on_drop: false }`
[INFO] [stdout] 6e67d54f8da292803300c3c2ae305f5c1b64d808d2f37b99330190e58ea9c832
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 82a6918b433321fae16c119a29fc1fb4751cf3a20e6cd7d750deadc37a69d7fd
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "82a6918b433321fae16c119a29fc1fb4751cf3a20e6cd7d750deadc37a69d7fd", kill_on_drop: false }`
[INFO] [stderr]    Compiling term v0.4.6
[INFO] [stderr]    Compiling rustasm6502 v0.1.2
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backend/lib.rs:23:43
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type BackendResult<T> = Result<T, Box<Error>>;
[INFO] [stdout]    |                                           ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_backend/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/libsavestate/lib.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         try!(read_exact(r, &mut val));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/libsavestate/lib.rs:5:9
[INFO] [stdout]    |
[INFO] [stdout] 5  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:108:21
[INFO] [stdout]     |
[INFO] [stdout] 108 |             None => try!(false.save_state(w)),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 try!(true.save_state(w));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:111:17
[INFO] [stdout]     |
[INFO] [stdout] 111 |                 try!(t.save_state(w));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |         try!(read_exact(r, &mut val));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:125:17
[INFO] [stdout]     |
[INFO] [stdout] 125 |                 try!(t.restore_state(r));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:141:21
[INFO] [stdout]     |
[INFO] [stdout] 141 |                       try!(t.save_state(w))
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 | / impl_fixed_size_array!(
[INFO] [stdout] 158 | |     0 1 2 3 4 5 6 7 8
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_fixed_size_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:149:21
[INFO] [stdout]     |
[INFO] [stdout] 149 |                       try!(t.restore_state(r));
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 | / impl_fixed_size_array!(
[INFO] [stdout] 158 | |     0 1 2 3 4 5 6 7 8
[INFO] [stdout] 159 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_fixed_size_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |         try!(self.len().save_state(w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:170:13
[INFO] [stdout]     |
[INFO] [stdout] 170 |             try!(item.save_state(w));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout] 177 |         try!(len.restore_state(r));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/libsavestate/lib.rs:184:13
[INFO] [stdout]     |
[INFO] [stdout] 184 |             try!(obj.restore_state(r));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/spc700/addressing.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         (hi << 8 | lo)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/spc700/lib.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl_save_state!(Voice { lvol, rvol, pitch, source, adsr1, adsr2, gain, env, out, fir } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/spc700/lib.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/spc700/lib.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:31:1
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl_save_state!(Voice { lvol, rvol, pitch, source, adsr1, adsr2, gain, env, out, fir } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:78:1
[INFO] [stdout]    |
[INFO] [stdout] 78 | / impl_save_state!(Dsp { voices, lmvol, rmvol, levol, revol, keyon, keyoff, flags, endx, efb, pmod,
[INFO] [stdout] 79 | |     noise, echo, srcdir, echo_buf, echo_delay } ignore {});
[INFO] [stdout]    | |___________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/dsp.rs:78:1
[INFO] [stdout]    |
[INFO] [stdout] 78 | / impl_save_state!(Dsp { voices, lmvol, rmvol, levol, revol, keyon, keyoff, flags, endx, efb, pmod,
[INFO] [stdout] 79 | |     noise, echo, srcdir, echo_buf, echo_delay } ignore {});
[INFO] [stdout]    | |___________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         try!(f.write_str(if self.negative() { "N" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |         try!(f.write_str(if self.overflow() { "V" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         try!(f.write_str(if self.direct_page() { "D" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         try!(f.write_str("x"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         try!(f.write_str(if self.half_carry() { "H" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         try!(f.write_str(if self.interrupt_enable() { "I" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         try!(f.write_str(if self.zero() { "Z" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/statusreg.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         try!(f.write_str(if self.carry() { "C" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/timer.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl_save_state!(Timer { div, val, enabled, stage1, stage2 } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/timer.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl_save_state!(Timer { div, val, enabled, stage1, stage2 } ignore {});
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/lib.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | / impl_save_state!(Spc700 { mem, ipl_rom_mapped, reg_dsp_addr, io_vals, timers, dsp, a, x, y, sp, pc,
[INFO] [stdout] 72 | |     psw } ignore { cy, trace });
[INFO] [stdout]    | |________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/spc700/lib.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | / impl_save_state!(Spc700 { mem, ipl_rom_mapped, reg_dsp_addr, io_vals, timers, dsp, a, x, y, sp, pc,
[INFO] [stdout] 72 | |     psw } ignore { cy, trace });
[INFO] [stdout]    | |________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:125:18
[INFO] [stdout]     |
[INFO] [stdout] 125 |             0xfa ... 0xfc =>
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/spc700/lib.rs:10:9
[INFO] [stdout]     |
[INFO] [stdout] 10  | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:129:18
[INFO] [stdout]     |
[INFO] [stdout] 129 |             0xf4 ... 0xf7 => self.io_vals[addr as usize - 0xf4],
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:146:20
[INFO] [stdout]     |
[INFO] [stdout] 146 |             0xffc0 ... 0xffff if self.ipl_rom_mapped => IPL_ROM[addr as usize - 0xffc0],
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/spc700/lib.rs:185:18
[INFO] [stdout]     |
[INFO] [stdout] 185 |             0xfd ... 0xff => panic!("APU attempted to write to read-only register ${:04X}", addr),
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 once!(warn!("read from write-only control register"));
[INFO] [stdout]     |                 ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 once!(warn!("read from write-only control register"));
[INFO] [stdout]     |                 ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 | /                     once!({
[INFO] [stdout] 159 | |                         warn!("SPC700 wrote ${:02X} to testing register ($f0)", val);
[INFO] [stdout] 160 | |                         warn!("As a safety measure, only $0a is allowed. This write will be \
[INFO] [stdout] 161 | |                             ignored! (This warning will only be printed for the first illegal \
[INFO] [stdout] 162 | |                             write)");
[INFO] [stdout] 163 | |                     });
[INFO] [stdout]     | |_______________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 | /                     once!({
[INFO] [stdout] 159 | |                         warn!("SPC700 wrote ${:02X} to testing register ($f0)", val);
[INFO] [stdout] 160 | |                         warn!("As a safety measure, only $0a is allowed. This write will be \
[INFO] [stdout] 161 | |                             ignored! (This warning will only be printed for the first illegal \
[INFO] [stdout] 162 | |                             write)");
[INFO] [stdout] 163 | |                     });
[INFO] [stdout]     | |_______________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:652:13
[INFO] [stdout]     |
[INFO] [stdout] 652 |             once!(warn!("`tcall {}` while IPL ROM is mapped!", p));
[INFO] [stdout]     |             ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/lib.rs:652:13
[INFO] [stdout]     |
[INFO] [stdout] 652 |             once!(warn!("`tcall {}` while IPL ROM is mapped!", p));
[INFO] [stdout]     |             ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:171:29
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     0x08 => once!(warn!("ignoring write to envelope value")),
[INFO] [stdout]     |                             ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:171:29
[INFO] [stdout]     |
[INFO] [stdout] 171 |                     0x08 => once!(warn!("ignoring write to envelope value")),
[INFO] [stdout]     |                             ------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:4:55
[INFO] [stdout]     |
[INFO] [stdout] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:172:29
[INFO] [stdout]     |
[INFO] [stdout] 172 |                     0x09 => once!(warn!("ignoring write to sample value")),
[INFO] [stdout]     |                             ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/spc700/once.rs:6:38
[INFO] [stdout]     |
[INFO] [stdout] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/spc700/dsp.rs:172:29
[INFO] [stdout]     |
[INFO] [stdout] 172 |                     0x09 => once!(warn!("ignoring write to sample value")),
[INFO] [stdout]     |                             ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |         try!(f.write_str(if self.negative() { "N" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         try!(f.write_str(if self.overflow() { "V" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |         try!(f.write_str(if self.small_acc() { "M" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         try!(f.write_str(if self.small_index() { "X" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         try!(f.write_str(if self.decimal() { "D" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 76 |         try!(f.write_str(if self.irq_disable() { "I" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         try!(f.write_str(if self.zero() { "Z" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/statusreg.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |         try!(f.write_str(if self.carry() { "C" } else { "-" }));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/lib.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | /     impl_save_state_fns!(Cpu {
[INFO] [stdout] 70 | |         a, x, y, s, dbr, pbr, d, pc, p, emulation, wai, mem
[INFO] [stdout] 71 | |     } ignore { cy, trace });
[INFO] [stdout]    | |____________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/wdc65816/lib.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | /     impl_save_state_fns!(Cpu {
[INFO] [stdout] 70 | |         a, x, y, s, dbr, pbr, d, pc, p, emulation, wai, mem
[INFO] [stdout] 71 | |     } ignore { cy, trace });
[INFO] [stdout]    | |____________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/dma.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / impl_save_state!(DmaChannel { params, a_addr, a_addr_bank, b_addr, dma_size, hdma_indirect_bank,
[INFO] [stdout] 57 | |                               hdma_addr, hdma_flags, hdma_do_transfer } ignore {});
[INFO] [stdout]    | |___________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]     |
[INFO] [stdout] 1   | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/dma.rs:56:1
[INFO] [stdout]    |
[INFO] [stdout] 56 | / impl_save_state!(DmaChannel { params, a_addr, a_addr_bank, b_addr, dma_size, hdma_indirect_bank,
[INFO] [stdout] 57 | |                               hdma_addr, hdma_flags, hdma_do_transfer } ignore {});
[INFO] [stdout]    | |___________________________________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stdout]     |
[INFO] [stdout] 246 |             );*
[INFO] [stdout]     |              ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |     writer: Box<WriteSeek>,
[INFO] [stdout]    |                 ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:29:24
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn new(writer: Box<WriteSeek>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                        ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |     reader: Box<BufRead>,
[INFO] [stdout]    |                 ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/custom.rs:45:24
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn new(reader: Box<BufRead>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:17:17
[INFO] [stdout]    |
[INFO] [stdout] 17 |     writer: Box<WriteSeek>,
[INFO] [stdout]    |                 ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 24 |         try!(write!(writer, "SMV\x1A"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         try!(writer.write_u32::<LittleEndian>(4));  // SMV Version
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         try!(writer.write_u32::<LittleEndian>(0));  // uid (Unix timestamp in Snes9x)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         try!(writer.write_u32::<LittleEndian>(0));  // rerecord count (no idea what this does)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         try!(writer.write_u32::<LittleEndian>(0xdeadbeef));    // Number of frames
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         try!(writer.write_u8(0));  // controller mask (FIXME)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |         try!(writer.write_u8(1));  // movie opts
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |         try!(writer.write_u8(0));  // sync opts
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |         try!(writer.write_u8(0));  // more (actual) sync opts
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(writer.write_u32::<LittleEndian>(0x40));  // offset to save state / cart. RAM image
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |         try!(writer.write_u32::<LittleEndian>(0x40 + 0x20000));  // offset to controller data
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         try!(writer.write_u32::<LittleEndian>(0xdeadbeef));  // num. of input samples
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |         try!(writer.write_u8(get_controller_type(&input.ports.0)));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |         try!(writer.write_u8(get_controller_type(&input.ports.1)));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |             try!(writer.write_i8(-1));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         try!(writer.write_all(&[0; 18]));       // 18 bytes reserved for future use
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(writer.write_all(&[0; 0x20000]));   // empty SRAM image
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:22:28
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn new(mut writer: Box<WriteSeek>, snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                            ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:93:17
[INFO] [stdout]    |
[INFO] [stdout] 93 |     reader: Box<BufRead>,
[INFO] [stdout]    |                 ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/smv.rs:97:24
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn new(reader: Box<BufRead>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stdout]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:45:24
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn new(writer: Box<WriteSeek>, snes: &Snes) -> io::Result<Self> where Self: Sized;
[INFO] [stdout]    |                        ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:57:24
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn new(reader: Box<BufRead>, snes: &Snes) -> io::Result<Self> where Self: Sized;
[INFO] [stdout]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:73:45
[INFO] [stdout]    |
[INFO] [stdout] 73 |         RecordingFormat::Custom => Box::new(try!(custom::Recorder::new(writer, snes))),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:74:42
[INFO] [stdout]    |
[INFO] [stdout] 74 |         RecordingFormat::Smv => Box::new(try!(smv::Recorder::new(writer, snes))),
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:68:36
[INFO] [stdout]    |
[INFO] [stdout] 68 |                        writer: Box<WriteSeek>,
[INFO] [stdout]    |                                    ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:70:42
[INFO] [stdout]    |
[INFO] [stdout] 70 |                        -> io::Result<Box<Recorder>> {
[INFO] [stdout]    |                                          ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:84:45
[INFO] [stdout]    |
[INFO] [stdout] 84 |         RecordingFormat::Custom => Box::new(try!(custom::Replayer::new(reader, snes))),
[INFO] [stdout]    |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:85:42
[INFO] [stdout]    |
[INFO] [stdout] 85 |         RecordingFormat::Smv => Box::new(try!(smv::Replayer::new(reader, snes))),
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:79:36
[INFO] [stdout]    |
[INFO] [stdout] 79 |                        reader: Box<BufRead>,
[INFO] [stdout]    |                                    ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/record/mod.rs:81:42
[INFO] [stdout]    |
[INFO] [stdout] 81 |                        -> io::Result<Box<Replayer>> {
[INFO] [stdout]    |                                          ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/ppu/rendering.rs:231:15
[INFO] [stdout]     |
[INFO] [stdout] 231 |             2 ... 5 => {
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]     |
[INFO] [stdout] 1   | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/breeze_core/ppu/sprites.rs:23:23
[INFO] [stdout]    |
[INFO] [stdout] 23 |     sprite_scanline: [(Option<SpritePixel>); super::SCREEN_WIDTH as usize],
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:419:1
[INFO] [stdout]     |
[INFO] [stdout] 419 | / impl_save_state!(Ppu {
[INFO] [stdout] 420 | |     oam, cgram, vram, inidisp, obsel, oamaddl, oamaddh, oamaddr, oam_lsb, bgmode, mosaic, bg1sc,
[INFO] [stdout] 421 | |     bg2sc, bg3sc, bg4sc, bg12nba, bg34nba, bg1hofs, m7hofs, bg1vofs, m7vofs, bg2hofs, bg2vofs,
[INFO] [stdout] 422 | |     bg3hofs, bg3vofs, bg4hofs, bg4vofs, bg_old, m7_old, vmain, vmaddr, vram_prefetch, m7sel, m7a,
[INFO] [stdout] ...   |
[INFO] [stdout] 428 | |     framebuf, sprite_render_state, bg_cache
[INFO] [stdout] 429 | | });
[INFO] [stdout]     | |___^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:419:1
[INFO] [stdout]     |
[INFO] [stdout] 419 | / impl_save_state!(Ppu {
[INFO] [stdout] 420 | |     oam, cgram, vram, inidisp, obsel, oamaddl, oamaddh, oamaddr, oam_lsb, bgmode, mosaic, bg1sc,
[INFO] [stdout] 421 | |     bg2sc, bg3sc, bg4sc, bg12nba, bg34nba, bg1hofs, m7hofs, bg1vofs, m7vofs, bg2hofs, bg2vofs,
[INFO] [stdout] 422 | |     bg3hofs, bg3vofs, bg4hofs, bg4vofs, bg_old, m7_old, vmain, vmaddr, vram_prefetch, m7sel, m7a,
[INFO] [stdout] ...   |
[INFO] [stdout] 428 | |     framebuf, sprite_render_state, bg_cache
[INFO] [stdout] 429 | | });
[INFO] [stdout]     | |___^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:507:20
[INFO] [stdout]     |
[INFO] [stdout] 507 |             0x210f ... 0x2114 => self.bg_store(addr, value),
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/ppu/mod.rs:514:20
[INFO] [stdout]     |
[INFO] [stdout] 514 |             0x211b ... 0x2120 => self.m7_store(addr, value),
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/port.rs:21:18
[INFO] [stdout]    |
[INFO] [stdout] 21 |         imp: Box<JoypadImpl>,
[INFO] [stdout]    |                  ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/port.rs:35:32
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn new_joypad(imp: Box<JoypadImpl>) -> Self {
[INFO] [stdout]    |                                ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:62:18
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Recorded(Box<Recorder>),
[INFO] [stdout]    |                  ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:63:18
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Replayed(Box<Replayer>),
[INFO] [stdout]    |                  ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl_save_state!(Input { auto_read_data, latch, latched_this_frame } ignore { ports, mode });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:85:1
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl_save_state!(Input { auto_read_data, latch, latched_this_frame } ignore { ports, mode });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/input/mod.rs:92:48
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn start_recording(&mut self, rec: Box<Recorder>) {
[INFO] [stdout]    |                                                ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/breeze_core/input/mod.rs:101:50
[INFO] [stdout]     |
[INFO] [stdout] 101 |     pub fn start_replay(&mut self, replayer: Box<Replayer>) {
[INFO] [stdout]     |                                                  ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/input/mod.rs:176:20
[INFO] [stdout]     |
[INFO] [stdout] 176 |             0x4218 ... 0x421f => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/breeze_core/rom.rs:95:22
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 0x20 ... 0x7E => {
[INFO] [stdout]    |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/rom.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | impl_save_state!(Rom { ram } ignore { header, rom });
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/rom.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | impl_save_state!(Rom { ram } ignore { header, rom });
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:251:20
[INFO] [stdout]     |
[INFO] [stdout] 251 |             0x0000 ... 0x7fff => {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:255:26
[INFO] [stdout]     |
[INFO] [stdout] 255 |                     0x70 ... 0x7d => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:259:26
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     0xfe ... 0xff => {
[INFO] [stdout]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:271:20
[INFO] [stdout]     |
[INFO] [stdout] 271 |             0x8000 ... 0xffff => match bank {
[INFO] [stdout]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:281:22
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 0x80 ... 0xfd | 0x00 ... 0x7d => {
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:281:38
[INFO] [stdout]     |
[INFO] [stdout] 281 |                 0x80 ... 0xfd | 0x00 ... 0x7d => {
[INFO] [stdout]     |                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:295:18
[INFO] [stdout]     |
[INFO] [stdout] 295 |             0x00 ... 0x3f | 0x80 ... 0xbf if addr >= 0x8000 => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:295:34
[INFO] [stdout]     |
[INFO] [stdout] 295 |             0x00 ... 0x3f | 0x80 ... 0xbf if addr >= 0x8000 => {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:298:18
[INFO] [stdout]     |
[INFO] [stdout] 298 |             0x20 ... 0x3f | 0xa0 ... 0xbf if addr >= 0x6000 && addr <= 0x7fff => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:298:34
[INFO] [stdout]     |
[INFO] [stdout] 298 |             0x20 ... 0x3f | 0xa0 ... 0xbf if addr >= 0x6000 && addr <= 0x7fff => {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:302:18
[INFO] [stdout]     |
[INFO] [stdout] 302 |             0x40 ... 0x7d | 0xc0 ... 0xfd => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:302:34
[INFO] [stdout]     |
[INFO] [stdout] 302 |             0x40 ... 0x7d | 0xc0 ... 0xfd => {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:305:18
[INFO] [stdout]     |
[INFO] [stdout] 305 |             0x7e ... 0x7f => unreachable!(),    // WRAM banks
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/rom.rs:306:18
[INFO] [stdout]     |
[INFO] [stdout] 306 |             0xfe ... 0xff => {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:26:70
[INFO] [stdout]    |
[INFO] [stdout] 26 |     pub fn create_save_state(&self, format: SaveStateFormat, w: &mut Write) -> io::Result<()> {
[INFO] [stdout]    |                                                                      ^^^^^ help: use `dyn`: `dyn Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:35:75
[INFO] [stdout]    |
[INFO] [stdout] 35 |     pub fn restore_save_state(&mut self, format: SaveStateFormat, r: &mut BufRead) -> io::Result<()> {
[INFO] [stdout]    |                                                                           ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/save.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         try!(write!(w, "ZSNES Save State File V0.6"));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/save.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |         try!(w.write_all(&[26]));   // ASCII SUBstitute (note that reading can not rely
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_core/save.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |         try!(w.write_all(&[60]));   // version #/100 (= 0.6)
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:43:34
[INFO] [stdout]    |
[INFO] [stdout] 43 |     fn save_zsnes(&self, w: &mut Write) -> io::Result<()> {
[INFO] [stdout]    |                                  ^^^^^ help: use `dyn`: `dyn Write`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_core/save.rs:54:39
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn load_zsnes(&mut self, _r: &mut BufRead) -> io::Result<()> {
[INFO] [stdout]    |                                       ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout] 98  | / impl_save_state!(Peripherals {
[INFO] [stdout] 99  | |     apu, ppu, rom, wram, dma, hdmaen, nmien, wrio, wrmpya, wrmpyb, wrdiv, rddiv, rdmpy, htime,
[INFO] [stdout] 100 | |     vtime, memsel, nmi, irq, cy, input, wmaddl, wmaddm, wmaddh
[INFO] [stdout] 101 | | } ignore {});
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout] 98  | / impl_save_state!(Peripherals {
[INFO] [stdout] 99  | |     apu, ppu, rom, wram, dma, hdmaen, nmien, wrio, wrmpya, wrmpyb, wrdiv, rddiv, rdmpy, htime,
[INFO] [stdout] 100 | |     vtime, memsel, nmi, irq, cy, input, wmaddl, wmaddm, wmaddh
[INFO] [stdout] 101 | | } ignore {});
[INFO] [stdout]     | |_____________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:144:18
[INFO] [stdout]     |
[INFO] [stdout] 144 |             0x00 ... 0x3f => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:145:24
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 0x0000 ... 0x1fff | 0x6000 ... 0xffff => SLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:145:44
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 0x0000 ... 0x1fff | 0x6000 ... 0xffff => SLOW,
[INFO] [stdout]     |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:146:24
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 0x4000 ... 0x41ff => XSLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |             0x40 ... 0x7f => SLOW,
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:150:18
[INFO] [stdout]     |
[INFO] [stdout] 150 |             0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:151:24
[INFO] [stdout]     |
[INFO] [stdout] 151 |                 0x0000 ... 0x1fff | 0x6000 ... 0x7fff => SLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:151:44
[INFO] [stdout]     |
[INFO] [stdout] 151 |                 0x0000 ... 0x1fff | 0x6000 ... 0x7fff => SLOW,
[INFO] [stdout]     |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:152:24
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 0x4000 ... 0x41ff => XSLOW,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:153:24
[INFO] [stdout]     |
[INFO] [stdout] 153 |                 0x8000 ... 0xffff => if self.memsel { FAST } else { SLOW },
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:156:18
[INFO] [stdout]     |
[INFO] [stdout] 156 |             0xc0 ... 0xff => if self.memsel { FAST } else { SLOW },
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:178:18
[INFO] [stdout]     |
[INFO] [stdout] 178 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:178:34
[INFO] [stdout]     |
[INFO] [stdout] 178 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:180:24
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 0x0000 ... 0x1fff => self.wram[addr as usize],
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:182:24
[INFO] [stdout]     |
[INFO] [stdout] 182 |                 0x2100 ... 0x2133 => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:186:24
[INFO] [stdout]     |
[INFO] [stdout] 186 |                 0x2134 ... 0x213f => self.ppu.load(addr),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:188:24
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 0x2140 ... 0x217f => self.apu.read_port((addr & 0b11) as u8),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:193:24
[INFO] [stdout]     |
[INFO] [stdout] 193 |                 0x2181 ... 0x2183 => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:228:24
[INFO] [stdout]     |
[INFO] [stdout] 228 |                 0x4218 ... 0x421f => self.input.load(addr),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |                 0x4300 ... 0x43ff => self.dma[(addr as usize & 0x00f0) >> 4].load(addr as u8 & 0xf),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:231:24
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 0x6000 ... 0xffff => self.rom.load(bank, addr),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:239:18
[INFO] [stdout]     |
[INFO] [stdout] 239 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.load(bank, addr),
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:239:34
[INFO] [stdout]     |
[INFO] [stdout] 239 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.load(bank, addr),
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:247:18
[INFO] [stdout]     |
[INFO] [stdout] 247 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:247:34
[INFO] [stdout]     |
[INFO] [stdout] 247 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:248:24
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 0x0000 ... 0x1fff => self.wram[addr as usize] = value,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:250:24
[INFO] [stdout]     |
[INFO] [stdout] 250 |                 0x2100 ... 0x2133 => self.ppu.store(addr, value),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:251:24
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:253:24
[INFO] [stdout]     |
[INFO] [stdout] 253 |                 0x2140 ... 0x217f => self.apu.store_port((addr & 0b11) as u8, value),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:261:24
[INFO] [stdout]     |
[INFO] [stdout] 261 |                 0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:312:24
[INFO] [stdout]     |
[INFO] [stdout] 312 |                 0x4300 ... 0x43ff => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:315:24
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 0x8000 ... 0xffff => self.rom.store(bank, addr, value),
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:320:18
[INFO] [stdout]     |
[INFO] [stdout] 320 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.store(bank, addr, value),
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.store(bank, addr, value),
[INFO] [stdout]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:341:1
[INFO] [stdout]     |
[INFO] [stdout] 341 | / impl_save_state!(Snes { cpu, master_cy, apu_master_cy_debt, ppu_master_cy_debt }
[INFO] [stdout] 342 | |     ignore { trace_start });
[INFO] [stdout]     | |____________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:341:1
[INFO] [stdout]     |
[INFO] [stdout] 341 | / impl_save_state!(Snes { cpu, master_cy, apu_master_cy_debt, ppu_master_cy_debt }
[INFO] [stdout] 342 | |     ignore { trace_start });
[INFO] [stdout]     | |____________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:421:39
[INFO] [stdout]     |
[INFO] [stdout] 421 |                         for action in try!(render(&self.cpu.mem.ppu.framebuf)) {
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/breeze_core/snes.rs:414:24
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     (0 ... 224, 278) => {
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:568:23
[INFO] [stdout]     |
[INFO] [stdout] 568 |         for action in try!(actions) {
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_core/snes.rs:580:16
[INFO] [stdout]     |
[INFO] [stdout] 580 |         while !try!(self.render_frame()) {}
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:537:40
[INFO] [stdout]     |
[INFO] [stdout] 537 |                 if value & 0xf0 != 0 { once!(warn!("invalid value for $212b: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:537:40
[INFO] [stdout]     |
[INFO] [stdout] 537 |                 if value & 0xf0 != 0 { once!(warn!("invalid value for $212b: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:541:40
[INFO] [stdout]     |
[INFO] [stdout] 541 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212c: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:541:40
[INFO] [stdout]     |
[INFO] [stdout] 541 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212c: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:545:40
[INFO] [stdout]     |
[INFO] [stdout] 545 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212d: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:545:40
[INFO] [stdout]     |
[INFO] [stdout] 545 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212d: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:549:40
[INFO] [stdout]     |
[INFO] [stdout] 549 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212e: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:549:40
[INFO] [stdout]     |
[INFO] [stdout] 549 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212e: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:553:40
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212f: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:553:40
[INFO] [stdout]     |
[INFO] [stdout] 553 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212f: ${:02X}", value)); }
[INFO] [stdout]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:567:40
[INFO] [stdout]     |
[INFO] [stdout] 567 |                 if value & 0x08 != 0 { once!(warn!("pseudo-hires mode not yet implemented")); }
[INFO] [stdout]     |                                        ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:567:40
[INFO] [stdout]     |
[INFO] [stdout] 567 |                 if value & 0x08 != 0 { once!(warn!("pseudo-hires mode not yet implemented")); }
[INFO] [stdout]     |                                        ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:568:40
[INFO] [stdout]     |
[INFO] [stdout] 568 |                 if value & 0x04 != 0 { once!(warn!("overscan not yet implemented")); }
[INFO] [stdout]     |                                        --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:568:40
[INFO] [stdout]     |
[INFO] [stdout] 568 |                 if value & 0x04 != 0 { once!(warn!("overscan not yet implemented")); }
[INFO] [stdout]     |                                        --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:569:40
[INFO] [stdout]     |
[INFO] [stdout] 569 |                 if value & 0x03 != 0 { once!(warn!("interlace not yet implemented")); }
[INFO] [stdout]     |                                        ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/ppu/mod.rs:569:40
[INFO] [stdout]     |
[INFO] [stdout] 569 |                 if value & 0x03 != 0 { once!(warn!("interlace not yet implemented")); }
[INFO] [stdout]     |                                        ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 | /             once!(warn!("latch still active from older frame (might interfere with \
[INFO] [stdout] 125 | |                          recording); latch might be changed by emulator!"));
[INFO] [stdout]     | |____________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 | /             once!(warn!("latch still active from older frame (might interfere with \
[INFO] [stdout] 125 | |                          recording); latch might be changed by emulator!"));
[INFO] [stdout]     | |____________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:148:21
[INFO] [stdout]     |
[INFO] [stdout] 148 | /                     once!(warn!("reading data lines without prior latching (this can interfere \
[INFO] [stdout] 149 | |                                  with input recording)"));
[INFO] [stdout]     | |__________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:148:21
[INFO] [stdout]     |
[INFO] [stdout] 148 | /                     once!(warn!("reading data lines without prior latching (this can interfere \
[INFO] [stdout] 149 | |                                  with input recording)"));
[INFO] [stdout]     | |__________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:192:25
[INFO] [stdout]     |
[INFO] [stdout] 192 | /                         once!(warn!("already latched input in this frame! (this might interfere \
[INFO] [stdout] 193 | |                                      with recording)"));
[INFO] [stdout]     | |________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/input/mod.rs:192:25
[INFO] [stdout]     |
[INFO] [stdout] 192 | /                         once!(warn!("already latched input in this frame! (this might interfere \
[INFO] [stdout] 193 | |                                      with recording)"));
[INFO] [stdout]     | |________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling png v0.9.0
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     once!(warn!("read from write-only PPU register ${:04X}", addr));
[INFO] [stdout]     |                     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     once!(warn!("read from write-only PPU register ${:04X}", addr));
[INFO] [stdout]     |                     ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     once!(warn!("open-bus load from WRAM register ${:02X}", addr));
[INFO] [stdout]     |                     --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:194:21
[INFO] [stdout]     |
[INFO] [stdout] 194 |                     once!(warn!("open-bus load from WRAM register ${:02X}", addr));
[INFO] [stdout]     |                     --------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:233:21
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     once!(warn!("invalid/unimplemented load from ${:02X}:{:04X}", bank, addr));
[INFO] [stdout]     |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:233:21
[INFO] [stdout]     |
[INFO] [stdout] 233 |                     once!(warn!("invalid/unimplemented load from ${:02X}:{:04X}", bank, addr));
[INFO] [stdout]     |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:251:38
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stdout]     |                                      ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:251:38
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stdout]     |                                      ------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:261:38
[INFO] [stdout]     |
[INFO] [stdout] 261 |                   0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 262 | |                     bank, addr)),
[INFO] [stdout]     | |________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:261:38
[INFO] [stdout]     |
[INFO] [stdout] 261 |                   0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 262 | |                     bank, addr)),
[INFO] [stdout]     | |________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stdout]     |
[INFO] [stdout] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:273:44
[INFO] [stdout]     |
[INFO] [stdout] 273 |                     if value & 0x4e != 0 { once!(warn!("Invalid value for NMIEN: ${:02X}", value)) }
[INFO] [stdout]     |                                            ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stdout]     |
[INFO] [stdout] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/breeze_core/snes.rs:273:44
[INFO] [stdout]     |
[INFO] [stdout] 273 |                     if value & 0x4e != 0 { once!(warn!("Invalid value for NMIEN: ${:02X}", value)) }
[INFO] [stdout]     |                                            ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/breeze_core/rom.rs:31:75
[INFO] [stdout]    |
[INFO] [stdout] 31 |         info!("ROM name: '{}'", str::from_utf8(&self.title).unwrap_or("").trim_right());
[INFO] [stdout]    |                                                                           ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/breeze_core/rom.rs:109:64
[INFO] [stdout]     |
[INFO] [stdout] 109 |         debug!("loading '{}'", str::from_utf8(&title).unwrap().trim_right());
[INFO] [stdout]     |                                                                ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/breeze_core/rom.rs:246:59
[INFO] [stdout]     |
[INFO] [stdout] 246 |         str::from_utf8(&self.header.title).ok().map(|s| s.trim_right())
[INFO] [stdout]     |                                                           ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/rom.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             _ => unreachable!()
[INFO] [stdout]     |             ^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/breeze_core/lib.rs:1:9
[INFO] [stdout]     |
[INFO] [stdout] 1   | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/snes.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |             _ => FAST,
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/snes.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             _ => unreachable!(),    // Rust should know this!
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/breeze_core/snes.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |             _ => unreachable!(),    // Rust should know this!
[INFO] [stdout]     |             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 162 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_cpal/lib.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let formats = try!(endpoint.get_supported_formats_list()).collect::<Vec<_>>();
[INFO] [stdout]    |                       ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze_cpal/lib.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let voice = try!(Voice::new(&endpoint, &format));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:123:37
[INFO] [stdout]     |
[INFO] [stdout] 123 |     fn create() -> Result<Self, Box<Error>> {
[INFO] [stdout]     |                                     ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:126:25
[INFO] [stdout]     |
[INFO] [stdout] 126 |             let video = try!(sdl.video());
[INFO] [stdout]     |                         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:127:26
[INFO] [stdout]     |
[INFO] [stdout] 127 |             let window = try!(video.window("breeze", SCREEN_WIDTH * 3, SCREEN_HEIGHT * 3)
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:130:28
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let renderer = try!(window.renderer()
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_sdl/lib.rs:134:27
[INFO] [stdout]     |
[INFO] [stdout] 134 |             let texture = try!(renderer.create_texture(
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:114:23
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let display = try!(WindowBuilder::new()
[INFO] [stdout]     |                       ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:119:24
[INFO] [stdout]     |
[INFO] [stdout] 119 |         let mut vbuf = try!(VertexBuffer::empty_dynamic(&display, 4));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:124:22
[INFO] [stdout]     |
[INFO] [stdout] 124 |             program: try!(
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze_glium/lib.rs:126:22
[INFO] [stdout]     |
[INFO] [stdout] 126 |             texture: try!(SrgbTexture2d::empty(&display, SCREEN_WIDTH, SCREEN_HEIGHT)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/breeze_glium/lib.rs:113:37
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn create() -> Result<Self, Box<Error>> {
[INFO] [stdout]     |                                     ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:31:73
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type RendererMap = BTreeMap<&'static str, Option<fn() -> Result<Box<Renderer>, Box<Error>>>>;
[INFO] [stdout]    |                                                                         ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_backends/lib.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:31:88
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type RendererMap = BTreeMap<&'static str, Option<fn() -> Result<Box<Renderer>, Box<Error>>>>;
[INFO] [stdout]    |                                                                                        ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:32:70
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub type AudioMap = BTreeMap<&'static str, Option<fn() -> Result<Box<AudioSink>, Box<Error>>>>;
[INFO] [stdout]    |                                                                      ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:32:86
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub type AudioMap = BTreeMap<&'static str, Option<fn() -> Result<Box<AudioSink>, Box<Error>>>>;
[INFO] [stdout]    |                                                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:36:56
[INFO] [stdout]    |
[INFO] [stdout] 36 |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout]    |                                                        ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:36:71
[INFO] [stdout]    |
[INFO] [stdout] 36 |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout]    |                                                                       ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:40:51
[INFO] [stdout]    |
[INFO] [stdout] 40 |         type MapEntry = Option<fn() -> Result<Box<Renderer>, Box<Error>>>;
[INFO] [stdout]    |                                                   ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:40:66
[INFO] [stdout]    |
[INFO] [stdout] 40 |         type MapEntry = Option<fn() -> Result<Box<Renderer>, Box<Error>>>;
[INFO] [stdout]    |                                                                  ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:71:57
[INFO] [stdout]    |
[INFO] [stdout] 71 |         fn make<A: AudioSink + 'static>() -> Result<Box<AudioSink>, Box<Error>> {
[INFO] [stdout]    |                                                         ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:71:73
[INFO] [stdout]    |
[INFO] [stdout] 71 |         fn make<A: AudioSink + 'static>() -> Result<Box<AudioSink>, Box<Error>> {
[INFO] [stdout]    |                                                                         ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:75:51
[INFO] [stdout]    |
[INFO] [stdout] 75 |         type MapEntry = Option<fn() -> Result<Box<AudioSink>, Box<Error>>>;
[INFO] [stdout]    |                                                   ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze_backends/lib.rs:75:67
[INFO] [stdout]    |
[INFO] [stdout] 75 |         type MapEntry = Option<fn() -> Result<Box<AudioSink>, Box<Error>>>;
[INFO] [stdout]    |                                                                   ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze_backends/lib.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / lazy_static! {
[INFO] [stdout] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stdout] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stdout] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stdout] ...  |
[INFO] [stdout] 94 | |     };
[INFO] [stdout] 95 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze/input.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn sdl_kbd_joypad() -> Option<Box<JoypadImpl>> {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze/main.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze/main.rs:96:20
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let mut file = try!(File::open(&filename));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze/main.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze/main.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     try!(file.read_to_end(&mut buf));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:100:15
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let rom = try!(Rom::from_bytes(&buf));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:104:24
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let mut renderer = try!(renderer_fn());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let audio = try!(audio_fn());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |         try!(emu.snes.render_frame(|_framebuf| Ok(vec![])));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:144:27
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let actions = try!(emu.renderer.render(&*framebuf));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         try!(emu.run());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze/main.rs:31:54
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn process_args(args: &ArgMatches) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 10 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling breeze v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze/input.rs:29:35
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn sdl_kbd_joypad() -> Option<Box<JoypadImpl>> {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze/main.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze/main.rs:96:20
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let mut file = try!(File::open(&filename));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/breeze/main.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout] 1  | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/breeze/main.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     try!(file.read_to_end(&mut buf));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:100:15
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let rom = try!(Rom::from_bytes(&buf));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:104:24
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let mut renderer = try!(renderer_fn());
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let audio = try!(audio_fn());
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 |         try!(emu.snes.render_frame(|_framebuf| Ok(vec![])));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:144:27
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let actions = try!(emu.renderer.render(&*framebuf));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/breeze/main.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         try!(emu.run());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/breeze/main.rs:31:54
[INFO] [stdout]    |
[INFO] [stdout] 31 | fn process_args(args: &ArgMatches) -> Result<(), Box<Error>> {
[INFO] [stdout]    |                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> rendertest/main.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |     EmuError(Box<Error>),
[INFO] [stdout]    |                  ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> rendertest/main.rs:75:15
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl From<Box<Error>> for TestFailure {
[INFO] [stdout]    |               ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> rendertest/main.rs:76:20
[INFO] [stdout]    |
[INFO] [stdout] 76 |     fn from(e: Box<Error>) -> Self {
[INFO] [stdout]    |                    ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> rendertest/main.rs:242:38
[INFO] [stdout]     |
[INFO] [stdout] 242 |     let mut emu = Emulator::new(rom, try!(DummyRenderer::create()), try!(DummySink::create()));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> rendertest/main.rs:242:69
[INFO] [stdout]     |
[INFO] [stdout] 242 |     let mut emu = Emulator::new(rom, try!(DummyRenderer::create()), try!(DummySink::create()));
[INFO] [stdout]     |                                                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> rendertest/main.rs:244:9
[INFO] [stdout]     |
[INFO] [stdout] 244 |         try!(emu.render_frame());
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stdout]   --> rendertest/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::ascii::AsciiExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stdout]   --> rendertest/main.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::ascii::AsciiExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 10 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 12.40s
[INFO] running `Command { std: "docker" "inspect" "82a6918b433321fae16c119a29fc1fb4751cf3a20e6cd7d750deadc37a69d7fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "82a6918b433321fae16c119a29fc1fb4751cf3a20e6cd7d750deadc37a69d7fd", kill_on_drop: false }`
[INFO] [stdout] 82a6918b433321fae16c119a29fc1fb4751cf3a20e6cd7d750deadc37a69d7fd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] eafedaff1cae3ea3be7fc6b4d0d221b7f8fc7968d9d964b4728b0bbc0059726b
[INFO] running `Command { std: "docker" "start" "-a" "eafedaff1cae3ea3be7fc6b4d0d221b7f8fc7968d9d964b4728b0bbc0059726b", kill_on_drop: false }`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backend/lib.rs:23:43
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub type BackendResult<T> = Result<T, Box<Error>>;
[INFO] [stderr]    |                                           ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze_backend/lib.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/libsavestate/lib.rs:92:9
[INFO] [stderr]    |
[INFO] [stderr] 92 |         try!(read_exact(r, &mut val));
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/libsavestate/lib.rs:5:9
[INFO] [stderr]    |
[INFO] [stderr] 5  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:108:21
[INFO] [stderr]     |
[INFO] [stderr] 108 |             None => try!(false.save_state(w)),
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:110:17
[INFO] [stderr]     |
[INFO] [stderr] 110 |                 try!(true.save_state(w));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:111:17
[INFO] [stderr]     |
[INFO] [stderr] 111 |                 try!(t.save_state(w));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:119:9
[INFO] [stderr]     |
[INFO] [stderr] 119 |         try!(read_exact(r, &mut val));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:125:17
[INFO] [stderr]     |
[INFO] [stderr] 125 |                 try!(t.restore_state(r));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:141:21
[INFO] [stderr]     |
[INFO] [stderr] 141 |                       try!(t.save_state(w))
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] ...
[INFO] [stderr] 157 | / impl_fixed_size_array!(
[INFO] [stderr] 158 | |     0 1 2 3 4 5 6 7 8
[INFO] [stderr] 159 | | );
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_fixed_size_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:149:21
[INFO] [stderr]     |
[INFO] [stderr] 149 |                       try!(t.restore_state(r));
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] ...
[INFO] [stderr] 157 | / impl_fixed_size_array!(
[INFO] [stderr] 158 | |     0 1 2 3 4 5 6 7 8
[INFO] [stderr] 159 | | );
[INFO] [stderr]     | |__- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_fixed_size_array` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:168:9
[INFO] [stderr]     |
[INFO] [stderr] 168 |         try!(self.len().save_state(w));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:170:13
[INFO] [stderr]     |
[INFO] [stderr] 170 |             try!(item.save_state(w));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:177:9
[INFO] [stderr]     |
[INFO] [stderr] 177 |         try!(len.restore_state(r));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/libsavestate/lib.rs:184:13
[INFO] [stderr]     |
[INFO] [stderr] 184 |             try!(obj.restore_state(r));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 12 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]   --> src/spc700/addressing.rs:93:9
[INFO] [stderr]    |
[INFO] [stderr] 93 |         (hi << 8 | lo)
[INFO] [stderr]    |         ^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/spc700/lib.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/dsp.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | impl_save_state!(Voice { lvol, rvol, pitch, source, adsr1, adsr2, gain, env, out, fir } ignore {});
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/spc700/lib.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stderr]     |
[INFO] [stderr] 235 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/spc700/lib.rs:10:9
[INFO] [stderr]     |
[INFO] [stderr] 10  | #![deny(warnings)]
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stderr]     |
[INFO] [stderr] 235 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/dsp.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | impl_save_state!(Voice { lvol, rvol, pitch, source, adsr1, adsr2, gain, env, out, fir } ignore {});
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stderr]     |
[INFO] [stderr] 246 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/dsp.rs:78:1
[INFO] [stderr]    |
[INFO] [stderr] 78 | / impl_save_state!(Dsp { voices, lmvol, rmvol, levol, revol, keyon, keyoff, flags, endx, efb, pmod,
[INFO] [stderr] 79 | |     noise, echo, srcdir, echo_buf, echo_delay } ignore {});
[INFO] [stderr]    | |___________________________________________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/dsp.rs:78:1
[INFO] [stderr]    |
[INFO] [stderr] 78 | / impl_save_state!(Dsp { voices, lmvol, rmvol, levol, revol, keyon, keyoff, flags, endx, efb, pmod,
[INFO] [stderr] 79 | |     noise, echo, srcdir, echo_buf, echo_delay } ignore {});
[INFO] [stderr]    | |___________________________________________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |         try!(f.write_str(if self.negative() { "N" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |         try!(f.write_str(if self.overflow() { "V" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:49:9
[INFO] [stderr]    |
[INFO] [stderr] 49 |         try!(f.write_str(if self.direct_page() { "D" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:50:9
[INFO] [stderr]    |
[INFO] [stderr] 50 |         try!(f.write_str("x"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:51:9
[INFO] [stderr]    |
[INFO] [stderr] 51 |         try!(f.write_str(if self.half_carry() { "H" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |         try!(f.write_str(if self.interrupt_enable() { "I" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |         try!(f.write_str(if self.zero() { "Z" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/statusreg.rs:54:9
[INFO] [stderr]    |
[INFO] [stderr] 54 |         try!(f.write_str(if self.carry() { "C" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/timer.rs:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | impl_save_state!(Timer { div, val, enabled, stage1, stage2 } ignore {});
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/timer.rs:18:1
[INFO] [stderr]    |
[INFO] [stderr] 18 | impl_save_state!(Timer { div, val, enabled, stage1, stage2 } ignore {});
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/lib.rs:71:1
[INFO] [stderr]    |
[INFO] [stderr] 71 | / impl_save_state!(Spc700 { mem, ipl_rom_mapped, reg_dsp_addr, io_vals, timers, dsp, a, x, y, sp, pc,
[INFO] [stderr] 72 | |     psw } ignore { cy, trace });
[INFO] [stderr]    | |________________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/spc700/lib.rs:71:1
[INFO] [stderr]    |
[INFO] [stderr] 71 | / impl_save_state!(Spc700 { mem, ipl_rom_mapped, reg_dsp_addr, io_vals, timers, dsp, a, x, y, sp, pc,
[INFO] [stderr] 72 | |     psw } ignore { cy, trace });
[INFO] [stderr]    | |________________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/spc700/lib.rs:125:18
[INFO] [stderr]     |
[INFO] [stderr] 125 |             0xfa ... 0xfc =>
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/spc700/lib.rs:10:9
[INFO] [stderr]     |
[INFO] [stderr] 10  | #![deny(warnings)]
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/spc700/lib.rs:129:18
[INFO] [stderr]     |
[INFO] [stderr] 129 |             0xf4 ... 0xf7 => self.io_vals[addr as usize - 0xf4],
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/spc700/lib.rs:146:20
[INFO] [stderr]     |
[INFO] [stderr] 146 |             0xffc0 ... 0xffff if self.ipl_rom_mapped => IPL_ROM[addr as usize - 0xffc0],
[INFO] [stderr]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/spc700/lib.rs:185:18
[INFO] [stderr]     |
[INFO] [stderr] 185 |             0xfd ... 0xff => panic!("APU attempted to write to read-only register ${:04X}", addr),
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:4:55
[INFO] [stderr]     |
[INFO] [stderr] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/lib.rs:119:17
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 once!(warn!("read from write-only control register"));
[INFO] [stderr]     |                 ------------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:6:38
[INFO] [stderr]     |
[INFO] [stderr] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/lib.rs:119:17
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 once!(warn!("read from write-only control register"));
[INFO] [stderr]     |                 ------------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:4:55
[INFO] [stderr]     |
[INFO] [stderr] 4   |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/lib.rs:158:21
[INFO] [stderr]     |
[INFO] [stderr] 158 | /                     once!({
[INFO] [stderr] 159 | |                         warn!("SPC700 wrote ${:02X} to testing register ($f0)", val);
[INFO] [stderr] 160 | |                         warn!("As a safety measure, only $0a is allowed. This write will be \
[INFO] [stderr] 161 | |                             ignored! (This warning will only be printed for the first illegal \
[INFO] [stderr] 162 | |                             write)");
[INFO] [stderr] 163 | |                     });
[INFO] [stderr]     | |_______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:6:38
[INFO] [stderr]     |
[INFO] [stderr] 6   |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/lib.rs:158:21
[INFO] [stderr]     |
[INFO] [stderr] 158 | /                     once!({
[INFO] [stderr] 159 | |                         warn!("SPC700 wrote ${:02X} to testing register ($f0)", val);
[INFO] [stderr] 160 | |                         warn!("As a safety measure, only $0a is allowed. This write will be \
[INFO] [stderr] 161 | |                             ignored! (This warning will only be printed for the first illegal \
[INFO] [stderr] 162 | |                             write)");
[INFO] [stderr] 163 | |                     });
[INFO] [stderr]     | |_______________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:4:55
[INFO] [stderr]     |
[INFO] [stderr] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/lib.rs:652:13
[INFO] [stderr]     |
[INFO] [stderr] 652 |             once!(warn!("`tcall {}` while IPL ROM is mapped!", p));
[INFO] [stderr]     |             ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:6:38
[INFO] [stderr]     |
[INFO] [stderr] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/lib.rs:652:13
[INFO] [stderr]     |
[INFO] [stderr] 652 |             once!(warn!("`tcall {}` while IPL ROM is mapped!", p));
[INFO] [stderr]     |             ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:4:55
[INFO] [stderr]     |
[INFO] [stderr] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/dsp.rs:171:29
[INFO] [stderr]     |
[INFO] [stderr] 171 |                     0x08 => once!(warn!("ignoring write to envelope value")),
[INFO] [stderr]     |                             ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:6:38
[INFO] [stderr]     |
[INFO] [stderr] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/dsp.rs:171:29
[INFO] [stderr]     |
[INFO] [stderr] 171 |                     0x08 => once!(warn!("ignoring write to envelope value")),
[INFO] [stderr]     |                             ------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:4:55
[INFO] [stderr]     |
[INFO] [stderr] 4   |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/dsp.rs:172:29
[INFO] [stderr]     |
[INFO] [stderr] 172 |                     0x09 => once!(warn!("ignoring write to sample value")),
[INFO] [stderr]     |                             ---------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/spc700/once.rs:6:38
[INFO] [stderr]     |
[INFO] [stderr] 6   |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/spc700/dsp.rs:172:29
[INFO] [stderr]     |
[INFO] [stderr] 172 |                     0x09 => once!(warn!("ignoring write to sample value")),
[INFO] [stderr]     |                             ---------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: 34 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 71 |         try!(f.write_str(if self.negative() { "N" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:72:9
[INFO] [stderr]    |
[INFO] [stderr] 72 |         try!(f.write_str(if self.overflow() { "V" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 73 |         try!(f.write_str(if self.small_acc() { "M" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:74:9
[INFO] [stderr]    |
[INFO] [stderr] 74 |         try!(f.write_str(if self.small_index() { "X" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:75:9
[INFO] [stderr]    |
[INFO] [stderr] 75 |         try!(f.write_str(if self.decimal() { "D" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:76:9
[INFO] [stderr]    |
[INFO] [stderr] 76 |         try!(f.write_str(if self.irq_disable() { "I" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:77:9
[INFO] [stderr]    |
[INFO] [stderr] 77 |         try!(f.write_str(if self.zero() { "Z" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/statusreg.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |         try!(f.write_str(if self.carry() { "C" } else { "-" }));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/lib.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 | /     impl_save_state_fns!(Cpu {
[INFO] [stderr] 70 | |         a, x, y, s, dbr, pbr, d, pc, p, emulation, wai, mem
[INFO] [stderr] 71 | |     } ignore { cy, trace });
[INFO] [stderr]    | |____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stderr]     |
[INFO] [stderr] 235 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stderr]     |
[INFO] [stderr] 235 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/wdc65816/lib.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 | /     impl_save_state_fns!(Cpu {
[INFO] [stderr] 70 | |         a, x, y, s, dbr, pbr, d, pc, p, emulation, wai, mem
[INFO] [stderr] 71 | |     } ignore { cy, trace });
[INFO] [stderr]    | |____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stderr]     |
[INFO] [stderr] 246 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr] 
[INFO] [stderr] warning: 13 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/dma.rs:56:1
[INFO] [stderr]    |
[INFO] [stderr] 56 | / impl_save_state!(DmaChannel { params, a_addr, a_addr_bank, b_addr, dma_size, hdma_indirect_bank,
[INFO] [stderr] 57 | |                               hdma_addr, hdma_flags, hdma_do_transfer } ignore {});
[INFO] [stderr]    | |___________________________________________________________________________________^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze_core/lib.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stderr]     |
[INFO] [stderr] 235 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/breeze_core/lib.rs:1:9
[INFO] [stderr]     |
[INFO] [stderr] 1   | #![deny(warnings)]
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:235:14
[INFO] [stderr]     |
[INFO] [stderr] 235 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/dma.rs:56:1
[INFO] [stderr]    |
[INFO] [stderr] 56 | / impl_save_state!(DmaChannel { params, a_addr, a_addr_bank, b_addr, dma_size, hdma_indirect_bank,
[INFO] [stderr] 57 | |                               hdma_addr, hdma_flags, hdma_do_transfer } ignore {});
[INFO] [stderr]    | |___________________________________________________________________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/libsavestate/lib.rs:246:14
[INFO] [stderr]     |
[INFO] [stderr] 246 |             );*
[INFO] [stderr]     |              ^ help: remove this semicolon
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/custom.rs:25:17
[INFO] [stderr]    |
[INFO] [stderr] 25 |     writer: Box<WriteSeek>,
[INFO] [stderr]    |                 ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze_core/lib.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/custom.rs:29:24
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn new(writer: Box<WriteSeek>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stderr]    |                        ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/custom.rs:41:17
[INFO] [stderr]    |
[INFO] [stderr] 41 |     reader: Box<BufRead>,
[INFO] [stderr]    |                 ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/custom.rs:45:24
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn new(reader: Box<BufRead>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stderr]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:17:17
[INFO] [stderr]    |
[INFO] [stderr] 17 |     writer: Box<WriteSeek>,
[INFO] [stderr]    |                 ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 24 |         try!(write!(writer, "SMV\x1A"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |         try!(writer.write_u32::<LittleEndian>(4));  // SMV Version
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 |         try!(writer.write_u32::<LittleEndian>(0));  // uid (Unix timestamp in Snes9x)
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 27 |         try!(writer.write_u32::<LittleEndian>(0));  // rerecord count (no idea what this does)
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:28:9
[INFO] [stderr]    |
[INFO] [stderr] 28 |         try!(writer.write_u32::<LittleEndian>(0xdeadbeef));    // Number of frames
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |         try!(writer.write_u8(0));  // controller mask (FIXME)
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:31:9
[INFO] [stderr]    |
[INFO] [stderr] 31 |         try!(writer.write_u8(1));  // movie opts
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |         try!(writer.write_u8(0));  // sync opts
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |         try!(writer.write_u8(0));  // more (actual) sync opts
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |         try!(writer.write_u32::<LittleEndian>(0x40));  // offset to save state / cart. RAM image
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:35:9
[INFO] [stderr]    |
[INFO] [stderr] 35 |         try!(writer.write_u32::<LittleEndian>(0x40 + 0x20000));  // offset to controller data
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:38:9
[INFO] [stderr]    |
[INFO] [stderr] 38 |         try!(writer.write_u32::<LittleEndian>(0xdeadbeef));  // num. of input samples
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:50:9
[INFO] [stderr]    |
[INFO] [stderr] 50 |         try!(writer.write_u8(get_controller_type(&input.ports.0)));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:51:9
[INFO] [stderr]    |
[INFO] [stderr] 51 |         try!(writer.write_u8(get_controller_type(&input.ports.1)));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:56:13
[INFO] [stderr]    |
[INFO] [stderr] 56 |             try!(writer.write_i8(-1));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 58 |         try!(writer.write_all(&[0; 18]));       // 18 bytes reserved for future use
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:63:9
[INFO] [stderr]    |
[INFO] [stderr] 63 |         try!(writer.write_all(&[0; 0x20000]));   // empty SRAM image
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:22:28
[INFO] [stderr]    |
[INFO] [stderr] 22 |     fn new(mut writer: Box<WriteSeek>, snes: &Snes) -> io::Result<Self> {
[INFO] [stderr]    |                            ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:93:17
[INFO] [stderr]    |
[INFO] [stderr] 93 |     reader: Box<BufRead>,
[INFO] [stderr]    |                 ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/smv.rs:97:24
[INFO] [stderr]    |
[INFO] [stderr] 97 |     fn new(reader: Box<BufRead>, _snes: &Snes) -> io::Result<Self> {
[INFO] [stderr]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:45:24
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn new(writer: Box<WriteSeek>, snes: &Snes) -> io::Result<Self> where Self: Sized;
[INFO] [stderr]    |                        ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:57:24
[INFO] [stderr]    |
[INFO] [stderr] 57 |     fn new(reader: Box<BufRead>, snes: &Snes) -> io::Result<Self> where Self: Sized;
[INFO] [stderr]    |                        ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:73:45
[INFO] [stderr]    |
[INFO] [stderr] 73 |         RecordingFormat::Custom => Box::new(try!(custom::Recorder::new(writer, snes))),
[INFO] [stderr]    |                                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:74:42
[INFO] [stderr]    |
[INFO] [stderr] 74 |         RecordingFormat::Smv => Box::new(try!(smv::Recorder::new(writer, snes))),
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:68:36
[INFO] [stderr]    |
[INFO] [stderr] 68 |                        writer: Box<WriteSeek>,
[INFO] [stderr]    |                                    ^^^^^^^^^ help: use `dyn`: `dyn WriteSeek`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:70:42
[INFO] [stderr]    |
[INFO] [stderr] 70 |                        -> io::Result<Box<Recorder>> {
[INFO] [stderr]    |                                          ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:84:45
[INFO] [stderr]    |
[INFO] [stderr] 84 |         RecordingFormat::Custom => Box::new(try!(custom::Replayer::new(reader, snes))),
[INFO] [stderr]    |                                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:85:42
[INFO] [stderr]    |
[INFO] [stderr] 85 |         RecordingFormat::Smv => Box::new(try!(smv::Replayer::new(reader, snes))),
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:79:36
[INFO] [stderr]    |
[INFO] [stderr] 79 |                        reader: Box<BufRead>,
[INFO] [stderr]    |                                    ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/record/mod.rs:81:42
[INFO] [stderr]    |
[INFO] [stderr] 81 |                        -> io::Result<Box<Replayer>> {
[INFO] [stderr]    |                                          ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/ppu/rendering.rs:231:15
[INFO] [stderr]     |
[INFO] [stderr] 231 |             2 ... 5 => {
[INFO] [stderr]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/breeze_core/lib.rs:1:9
[INFO] [stderr]     |
[INFO] [stderr] 1   | #![deny(warnings)]
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/breeze_core/ppu/sprites.rs:23:23
[INFO] [stderr]    |
[INFO] [stderr] 23 |     sprite_scanline: [(Option<SpritePixel>); super::SCREEN_WIDTH as usize],
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze_core/lib.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/ppu/mod.rs:419:1
[INFO] [stderr]     |
[INFO] [stderr] 419 | / impl_save_state!(Ppu {
[INFO] [stderr] 420 | |     oam, cgram, vram, inidisp, obsel, oamaddl, oamaddh, oamaddr, oam_lsb, bgmode, mosaic, bg1sc,
[INFO] [stderr] 421 | |     bg2sc, bg3sc, bg4sc, bg12nba, bg34nba, bg1hofs, m7hofs, bg1vofs, m7vofs, bg2hofs, bg2vofs,
[INFO] [stderr] 422 | |     bg3hofs, bg3vofs, bg4hofs, bg4vofs, bg_old, m7_old, vmain, vmaddr, vram_prefetch, m7sel, m7a,
[INFO] [stderr] ...   |
[INFO] [stderr] 428 | |     framebuf, sprite_render_state, bg_cache
[INFO] [stderr] 429 | | });
[INFO] [stderr]     | |___^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/ppu/mod.rs:419:1
[INFO] [stderr]     |
[INFO] [stderr] 419 | / impl_save_state!(Ppu {
[INFO] [stderr] 420 | |     oam, cgram, vram, inidisp, obsel, oamaddl, oamaddh, oamaddr, oam_lsb, bgmode, mosaic, bg1sc,
[INFO] [stderr] 421 | |     bg2sc, bg3sc, bg4sc, bg12nba, bg34nba, bg1hofs, m7hofs, bg1vofs, m7vofs, bg2hofs, bg2vofs,
[INFO] [stderr] 422 | |     bg3hofs, bg3vofs, bg4hofs, bg4vofs, bg_old, m7_old, vmain, vmaddr, vram_prefetch, m7sel, m7a,
[INFO] [stderr] ...   |
[INFO] [stderr] 428 | |     framebuf, sprite_render_state, bg_cache
[INFO] [stderr] 429 | | });
[INFO] [stderr]     | |___^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/ppu/mod.rs:507:20
[INFO] [stderr]     |
[INFO] [stderr] 507 |             0x210f ... 0x2114 => self.bg_store(addr, value),
[INFO] [stderr]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/ppu/mod.rs:514:20
[INFO] [stderr]     |
[INFO] [stderr] 514 |             0x211b ... 0x2120 => self.m7_store(addr, value),
[INFO] [stderr]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/input/port.rs:21:18
[INFO] [stderr]    |
[INFO] [stderr] 21 |         imp: Box<JoypadImpl>,
[INFO] [stderr]    |                  ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/input/port.rs:35:32
[INFO] [stderr]    |
[INFO] [stderr] 35 |     pub fn new_joypad(imp: Box<JoypadImpl>) -> Self {
[INFO] [stderr]    |                                ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/input/mod.rs:62:18
[INFO] [stderr]    |
[INFO] [stderr] 62 |     Recorded(Box<Recorder>),
[INFO] [stderr]    |                  ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/input/mod.rs:63:18
[INFO] [stderr]    |
[INFO] [stderr] 63 |     Replayed(Box<Replayer>),
[INFO] [stderr]    |                  ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/input/mod.rs:85:1
[INFO] [stderr]    |
[INFO] [stderr] 85 | impl_save_state!(Input { auto_read_data, latch, latched_this_frame } ignore { ports, mode });
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/input/mod.rs:85:1
[INFO] [stderr]    |
[INFO] [stderr] 85 | impl_save_state!(Input { auto_read_data, latch, latched_this_frame } ignore { ports, mode });
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/input/mod.rs:92:48
[INFO] [stderr]    |
[INFO] [stderr] 92 |     pub fn start_recording(&mut self, rec: Box<Recorder>) {
[INFO] [stderr]    |                                                ^^^^^^^^ help: use `dyn`: `dyn Recorder`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/breeze_core/input/mod.rs:101:50
[INFO] [stderr]     |
[INFO] [stderr] 101 |     pub fn start_replay(&mut self, replayer: Box<Replayer>) {
[INFO] [stderr]     |                                                  ^^^^^^^^ help: use `dyn`: `dyn Replayer`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/input/mod.rs:176:20
[INFO] [stderr]     |
[INFO] [stderr] 176 |             0x4218 ... 0x421f => {
[INFO] [stderr]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/breeze_core/rom.rs:95:22
[INFO] [stderr]    |
[INFO] [stderr] 95 |                 0x20 ... 0x7E => {
[INFO] [stderr]    |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/rom.rs:174:1
[INFO] [stderr]     |
[INFO] [stderr] 174 | impl_save_state!(Rom { ram } ignore { header, rom });
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/rom.rs:174:1
[INFO] [stderr]     |
[INFO] [stderr] 174 | impl_save_state!(Rom { ram } ignore { header, rom });
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:251:20
[INFO] [stderr]     |
[INFO] [stderr] 251 |             0x0000 ... 0x7fff => {
[INFO] [stderr]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:255:26
[INFO] [stderr]     |
[INFO] [stderr] 255 |                     0x70 ... 0x7d => {
[INFO] [stderr]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:259:26
[INFO] [stderr]     |
[INFO] [stderr] 259 |                     0xfe ... 0xff => {
[INFO] [stderr]     |                          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:271:20
[INFO] [stderr]     |
[INFO] [stderr] 271 |             0x8000 ... 0xffff => match bank {
[INFO] [stderr]     |                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:281:22
[INFO] [stderr]     |
[INFO] [stderr] 281 |                 0x80 ... 0xfd | 0x00 ... 0x7d => {
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:281:38
[INFO] [stderr]     |
[INFO] [stderr] 281 |                 0x80 ... 0xfd | 0x00 ... 0x7d => {
[INFO] [stderr]     |                                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:295:18
[INFO] [stderr]     |
[INFO] [stderr] 295 |             0x00 ... 0x3f | 0x80 ... 0xbf if addr >= 0x8000 => {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:295:34
[INFO] [stderr]     |
[INFO] [stderr] 295 |             0x00 ... 0x3f | 0x80 ... 0xbf if addr >= 0x8000 => {
[INFO] [stderr]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:298:18
[INFO] [stderr]     |
[INFO] [stderr] 298 |             0x20 ... 0x3f | 0xa0 ... 0xbf if addr >= 0x6000 && addr <= 0x7fff => {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:298:34
[INFO] [stderr]     |
[INFO] [stderr] 298 |             0x20 ... 0x3f | 0xa0 ... 0xbf if addr >= 0x6000 && addr <= 0x7fff => {
[INFO] [stderr]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:302:18
[INFO] [stderr]     |
[INFO] [stderr] 302 |             0x40 ... 0x7d | 0xc0 ... 0xfd => {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:302:34
[INFO] [stderr]     |
[INFO] [stderr] 302 |             0x40 ... 0x7d | 0xc0 ... 0xfd => {
[INFO] [stderr]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:305:18
[INFO] [stderr]     |
[INFO] [stderr] 305 |             0x7e ... 0x7f => unreachable!(),    // WRAM banks
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/rom.rs:306:18
[INFO] [stderr]     |
[INFO] [stderr] 306 |             0xfe ... 0xff => {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/save.rs:26:70
[INFO] [stderr]    |
[INFO] [stderr] 26 |     pub fn create_save_state(&self, format: SaveStateFormat, w: &mut Write) -> io::Result<()> {
[INFO] [stderr]    |                                                                      ^^^^^ help: use `dyn`: `dyn Write`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/save.rs:35:75
[INFO] [stderr]    |
[INFO] [stderr] 35 |     pub fn restore_save_state(&mut self, format: SaveStateFormat, r: &mut BufRead) -> io::Result<()> {
[INFO] [stderr]    |                                                                           ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/save.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |         try!(write!(w, "ZSNES Save State File V0.6"));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/save.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |         try!(w.write_all(&[26]));   // ASCII SUBstitute (note that reading can not rely
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_core/save.rs:49:9
[INFO] [stderr]    |
[INFO] [stderr] 49 |         try!(w.write_all(&[60]));   // version #/100 (= 0.6)
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/save.rs:43:34
[INFO] [stderr]    |
[INFO] [stderr] 43 |     fn save_zsnes(&self, w: &mut Write) -> io::Result<()> {
[INFO] [stderr]    |                                  ^^^^^ help: use `dyn`: `dyn Write`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_core/save.rs:54:39
[INFO] [stderr]    |
[INFO] [stderr] 54 |     fn load_zsnes(&mut self, _r: &mut BufRead) -> io::Result<()> {
[INFO] [stderr]    |                                       ^^^^^^^ help: use `dyn`: `dyn BufRead`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/snes.rs:98:1
[INFO] [stderr]     |
[INFO] [stderr] 98  | / impl_save_state!(Peripherals {
[INFO] [stderr] 99  | |     apu, ppu, rom, wram, dma, hdmaen, nmien, wrio, wrmpya, wrmpyb, wrdiv, rddiv, rdmpy, htime,
[INFO] [stderr] 100 | |     vtime, memsel, nmi, irq, cy, input, wmaddl, wmaddm, wmaddh
[INFO] [stderr] 101 | | } ignore {});
[INFO] [stderr]     | |_____________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/snes.rs:98:1
[INFO] [stderr]     |
[INFO] [stderr] 98  | / impl_save_state!(Peripherals {
[INFO] [stderr] 99  | |     apu, ppu, rom, wram, dma, hdmaen, nmien, wrio, wrmpya, wrmpyb, wrdiv, rddiv, rdmpy, htime,
[INFO] [stderr] 100 | |     vtime, memsel, nmi, irq, cy, input, wmaddl, wmaddm, wmaddh
[INFO] [stderr] 101 | | } ignore {});
[INFO] [stderr]     | |_____________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:144:18
[INFO] [stderr]     |
[INFO] [stderr] 144 |             0x00 ... 0x3f => match addr {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:145:24
[INFO] [stderr]     |
[INFO] [stderr] 145 |                 0x0000 ... 0x1fff | 0x6000 ... 0xffff => SLOW,
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:145:44
[INFO] [stderr]     |
[INFO] [stderr] 145 |                 0x0000 ... 0x1fff | 0x6000 ... 0xffff => SLOW,
[INFO] [stderr]     |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:146:24
[INFO] [stderr]     |
[INFO] [stderr] 146 |                 0x4000 ... 0x41ff => XSLOW,
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:149:18
[INFO] [stderr]     |
[INFO] [stderr] 149 |             0x40 ... 0x7f => SLOW,
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:150:18
[INFO] [stderr]     |
[INFO] [stderr] 150 |             0x80 ... 0xbf => match addr {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:151:24
[INFO] [stderr]     |
[INFO] [stderr] 151 |                 0x0000 ... 0x1fff | 0x6000 ... 0x7fff => SLOW,
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:151:44
[INFO] [stderr]     |
[INFO] [stderr] 151 |                 0x0000 ... 0x1fff | 0x6000 ... 0x7fff => SLOW,
[INFO] [stderr]     |                                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:152:24
[INFO] [stderr]     |
[INFO] [stderr] 152 |                 0x4000 ... 0x41ff => XSLOW,
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:153:24
[INFO] [stderr]     |
[INFO] [stderr] 153 |                 0x8000 ... 0xffff => if self.memsel { FAST } else { SLOW },
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:156:18
[INFO] [stderr]     |
[INFO] [stderr] 156 |             0xc0 ... 0xff => if self.memsel { FAST } else { SLOW },
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:178:18
[INFO] [stderr]     |
[INFO] [stderr] 178 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:178:34
[INFO] [stderr]     |
[INFO] [stderr] 178 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stderr]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:180:24
[INFO] [stderr]     |
[INFO] [stderr] 180 |                 0x0000 ... 0x1fff => self.wram[addr as usize],
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:182:24
[INFO] [stderr]     |
[INFO] [stderr] 182 |                 0x2100 ... 0x2133 => {
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:186:24
[INFO] [stderr]     |
[INFO] [stderr] 186 |                 0x2134 ... 0x213f => self.ppu.load(addr),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:188:24
[INFO] [stderr]     |
[INFO] [stderr] 188 |                 0x2140 ... 0x217f => self.apu.read_port((addr & 0b11) as u8),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:193:24
[INFO] [stderr]     |
[INFO] [stderr] 193 |                 0x2181 ... 0x2183 => {
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:228:24
[INFO] [stderr]     |
[INFO] [stderr] 228 |                 0x4218 ... 0x421f => self.input.load(addr),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:230:24
[INFO] [stderr]     |
[INFO] [stderr] 230 |                 0x4300 ... 0x43ff => self.dma[(addr as usize & 0x00f0) >> 4].load(addr as u8 & 0xf),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:231:24
[INFO] [stderr]     |
[INFO] [stderr] 231 |                 0x6000 ... 0xffff => self.rom.load(bank, addr),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:239:18
[INFO] [stderr]     |
[INFO] [stderr] 239 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.load(bank, addr),
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:239:34
[INFO] [stderr]     |
[INFO] [stderr] 239 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.load(bank, addr),
[INFO] [stderr]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:247:18
[INFO] [stderr]     |
[INFO] [stderr] 247 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:247:34
[INFO] [stderr]     |
[INFO] [stderr] 247 |             0x00 ... 0x3f | 0x80 ... 0xbf => match addr {
[INFO] [stderr]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:248:24
[INFO] [stderr]     |
[INFO] [stderr] 248 |                 0x0000 ... 0x1fff => self.wram[addr as usize] = value,
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:250:24
[INFO] [stderr]     |
[INFO] [stderr] 250 |                 0x2100 ... 0x2133 => self.ppu.store(addr, value),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:251:24
[INFO] [stderr]     |
[INFO] [stderr] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:253:24
[INFO] [stderr]     |
[INFO] [stderr] 253 |                 0x2140 ... 0x217f => self.apu.store_port((addr & 0b11) as u8, value),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:261:24
[INFO] [stderr]     |
[INFO] [stderr] 261 |                 0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:312:24
[INFO] [stderr]     |
[INFO] [stderr] 312 |                 0x4300 ... 0x43ff => {
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:315:24
[INFO] [stderr]     |
[INFO] [stderr] 315 |                 0x8000 ... 0xffff => self.rom.store(bank, addr, value),
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:320:18
[INFO] [stderr]     |
[INFO] [stderr] 320 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.store(bank, addr, value),
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:320:34
[INFO] [stderr]     |
[INFO] [stderr] 320 |             0x40 ... 0x7d | 0xc0 ... 0xff => self.rom.store(bank, addr, value),
[INFO] [stderr]     |                                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/snes.rs:341:1
[INFO] [stderr]     |
[INFO] [stderr] 341 | / impl_save_state!(Snes { cpu, master_cy, apu_master_cy_debt, ppu_master_cy_debt }
[INFO] [stderr] 342 | |     ignore { trace_start });
[INFO] [stderr]     | |____________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/snes.rs:341:1
[INFO] [stderr]     |
[INFO] [stderr] 341 | / impl_save_state!(Snes { cpu, master_cy, apu_master_cy_debt, ppu_master_cy_debt }
[INFO] [stderr] 342 | |     ignore { trace_start });
[INFO] [stderr]     | |____________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `impl_save_state_fns` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/snes.rs:421:39
[INFO] [stderr]     |
[INFO] [stderr] 421 |                         for action in try!(render(&self.cpu.mem.ppu.framebuf)) {
[INFO] [stderr]     |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/breeze_core/snes.rs:414:24
[INFO] [stderr]     |
[INFO] [stderr] 414 |                     (0 ... 224, 278) => {
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/snes.rs:568:23
[INFO] [stderr]     |
[INFO] [stderr] 568 |         for action in try!(actions) {
[INFO] [stderr]     |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_core/snes.rs:580:16
[INFO] [stderr]     |
[INFO] [stderr] 580 |         while !try!(self.render_frame()) {}
[INFO] [stderr]     |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:537:40
[INFO] [stderr]     |
[INFO] [stderr] 537 |                 if value & 0xf0 != 0 { once!(warn!("invalid value for $212b: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:537:40
[INFO] [stderr]     |
[INFO] [stderr] 537 |                 if value & 0xf0 != 0 { once!(warn!("invalid value for $212b: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:541:40
[INFO] [stderr]     |
[INFO] [stderr] 541 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212c: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:541:40
[INFO] [stderr]     |
[INFO] [stderr] 541 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212c: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:545:40
[INFO] [stderr]     |
[INFO] [stderr] 545 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212d: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:545:40
[INFO] [stderr]     |
[INFO] [stderr] 545 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212d: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:549:40
[INFO] [stderr]     |
[INFO] [stderr] 549 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212e: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:549:40
[INFO] [stderr]     |
[INFO] [stderr] 549 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212e: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:553:40
[INFO] [stderr]     |
[INFO] [stderr] 553 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212f: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:553:40
[INFO] [stderr]     |
[INFO] [stderr] 553 |                 if value & 0xe0 != 0 { once!(warn!("invalid value for $212f: ${:02X}", value)); }
[INFO] [stderr]     |                                        -------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:567:40
[INFO] [stderr]     |
[INFO] [stderr] 567 |                 if value & 0x08 != 0 { once!(warn!("pseudo-hires mode not yet implemented")); }
[INFO] [stderr]     |                                        ------------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:567:40
[INFO] [stderr]     |
[INFO] [stderr] 567 |                 if value & 0x08 != 0 { once!(warn!("pseudo-hires mode not yet implemented")); }
[INFO] [stderr]     |                                        ------------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:568:40
[INFO] [stderr]     |
[INFO] [stderr] 568 |                 if value & 0x04 != 0 { once!(warn!("overscan not yet implemented")); }
[INFO] [stderr]     |                                        --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:568:40
[INFO] [stderr]     |
[INFO] [stderr] 568 |                 if value & 0x04 != 0 { once!(warn!("overscan not yet implemented")); }
[INFO] [stderr]     |                                        --------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:569:40
[INFO] [stderr]     |
[INFO] [stderr] 569 |                 if value & 0x03 != 0 { once!(warn!("interlace not yet implemented")); }
[INFO] [stderr]     |                                        ---------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/ppu/mod.rs:569:40
[INFO] [stderr]     |
[INFO] [stderr] 569 |                 if value & 0x03 != 0 { once!(warn!("interlace not yet implemented")); }
[INFO] [stderr]     |                                        ---------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/input/mod.rs:124:13
[INFO] [stderr]     |
[INFO] [stderr] 124 | /             once!(warn!("latch still active from older frame (might interfere with \
[INFO] [stderr] 125 | |                          recording); latch might be changed by emulator!"));
[INFO] [stderr]     | |____________________________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/input/mod.rs:124:13
[INFO] [stderr]     |
[INFO] [stderr] 124 | /             once!(warn!("latch still active from older frame (might interfere with \
[INFO] [stderr] 125 | |                          recording); latch might be changed by emulator!"));
[INFO] [stderr]     | |____________________________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/input/mod.rs:148:21
[INFO] [stderr]     |
[INFO] [stderr] 148 | /                     once!(warn!("reading data lines without prior latching (this can interfere \
[INFO] [stderr] 149 | |                                  with input recording)"));
[INFO] [stderr]     | |__________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/input/mod.rs:148:21
[INFO] [stderr]     |
[INFO] [stderr] 148 | /                     once!(warn!("reading data lines without prior latching (this can interfere \
[INFO] [stderr] 149 | |                                  with input recording)"));
[INFO] [stderr]     | |__________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/input/mod.rs:192:25
[INFO] [stderr]     |
[INFO] [stderr] 192 | /                         once!(warn!("already latched input in this frame! (this might interfere \
[INFO] [stderr] 193 | |                                      with recording)"));
[INFO] [stderr]     | |________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/input/mod.rs:192:25
[INFO] [stderr]     |
[INFO] [stderr] 192 | /                         once!(warn!("already latched input in this frame! (this might interfere \
[INFO] [stderr] 193 | |                                      with recording)"));
[INFO] [stderr]     | |________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:183:21
[INFO] [stderr]     |
[INFO] [stderr] 183 |                     once!(warn!("read from write-only PPU register ${:04X}", addr));
[INFO] [stderr]     |                     ---------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:183:21
[INFO] [stderr]     |
[INFO] [stderr] 183 |                     once!(warn!("read from write-only PPU register ${:04X}", addr));
[INFO] [stderr]     |                     ---------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:194:21
[INFO] [stderr]     |
[INFO] [stderr] 194 |                     once!(warn!("open-bus load from WRAM register ${:02X}", addr));
[INFO] [stderr]     |                     --------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:194:21
[INFO] [stderr]     |
[INFO] [stderr] 194 |                     once!(warn!("open-bus load from WRAM register ${:02X}", addr));
[INFO] [stderr]     |                     --------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:233:21
[INFO] [stderr]     |
[INFO] [stderr] 233 |                     once!(warn!("invalid/unimplemented load from ${:02X}:{:04X}", bank, addr));
[INFO] [stderr]     |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:233:21
[INFO] [stderr]     |
[INFO] [stderr] 233 |                     once!(warn!("invalid/unimplemented load from ${:02X}:{:04X}", bank, addr));
[INFO] [stderr]     |                     --------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:251:38
[INFO] [stderr]     |
[INFO] [stderr] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stderr]     |                                      ------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:251:38
[INFO] [stderr]     |
[INFO] [stderr] 251 |                 0x2134 ... 0x213f => once!(warn!("store to read-only PPU register ${:04X}", addr)),
[INFO] [stderr]     |                                      ------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |           use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:261:38
[INFO] [stderr]     |
[INFO] [stderr] 261 |                   0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stderr]     |  ______________________________________-
[INFO] [stderr] 262 | |                     bank, addr)),
[INFO] [stderr]     | |________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |           static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:261:38
[INFO] [stderr]     |
[INFO] [stderr] 261 |                   0x2184 ... 0x21ff => once!(warn!("invalid store: ${:02X} to ${:02X}:{:04X}", value,
[INFO] [stderr]     |  ______________________________________-
[INFO] [stderr] 262 | |                     bank, addr)),
[INFO] [stderr]     | |________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:11:55
[INFO] [stderr]     |
[INFO] [stderr] 11  |         use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT};
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:273:44
[INFO] [stderr]     |
[INFO] [stderr] 273 |                     if value & 0x4e != 0 { once!(warn!("Invalid value for NMIEN: ${:02X}", value)) }
[INFO] [stderr]     |                                            ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_BOOL_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> src/breeze_core/log_util.rs:13:38
[INFO] [stderr]     |
[INFO] [stderr] 13  |         static REACHED: AtomicBool = ATOMIC_BOOL_INIT;
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated constant: `AtomicBool::new(false)`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/breeze_core/snes.rs:273:44
[INFO] [stderr]     |
[INFO] [stderr] 273 |                     if value & 0x4e != 0 { once!(warn!("Invalid value for NMIEN: ${:02X}", value)) }
[INFO] [stderr]     |                                            ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `once` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stderr]   --> src/breeze_core/rom.rs:31:75
[INFO] [stderr]    |
[INFO] [stderr] 31 |         info!("ROM name: '{}'", str::from_utf8(&self.title).unwrap_or("").trim_right());
[INFO] [stderr]    |                                                                           ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stderr]    --> src/breeze_core/rom.rs:109:64
[INFO] [stderr]     |
[INFO] [stderr] 109 |         debug!("loading '{}'", str::from_utf8(&title).unwrap().trim_right());
[INFO] [stderr]     |                                                                ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stderr]    --> src/breeze_core/rom.rs:246:59
[INFO] [stderr]     |
[INFO] [stderr] 246 |         str::from_utf8(&self.header.title).ok().map(|s| s.trim_right())
[INFO] [stderr]     |                                                           ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/breeze_core/rom.rs:288:13
[INFO] [stderr]     |
[INFO] [stderr] 288 |             _ => unreachable!()
[INFO] [stderr]     |             ^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/breeze_core/lib.rs:1:9
[INFO] [stderr]     |
[INFO] [stderr] 1   | #![deny(warnings)]
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/breeze_core/snes.rs:157:13
[INFO] [stderr]     |
[INFO] [stderr] 157 |             _ => FAST,
[INFO] [stderr]     |             ^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/breeze_core/snes.rs:240:13
[INFO] [stderr]     |
[INFO] [stderr] 240 |             _ => unreachable!(),    // Rust should know this!
[INFO] [stderr]     |             ^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/breeze_core/snes.rs:321:13
[INFO] [stderr]     |
[INFO] [stderr] 321 |             _ => unreachable!(),    // Rust should know this!
[INFO] [stderr]     |             ^
[INFO] [stderr] 
[INFO] [stderr] warning: 162 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_cpal/lib.rs:21:23
[INFO] [stderr]    |
[INFO] [stderr] 21 |         let formats = try!(endpoint.get_supported_formats_list()).collect::<Vec<_>>();
[INFO] [stderr]    |                       ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze_cpal/lib.rs:36:21
[INFO] [stderr]    |
[INFO] [stderr] 36 |         let voice = try!(Voice::new(&endpoint, &format));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 2 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/breeze_sdl/lib.rs:123:37
[INFO] [stderr]     |
[INFO] [stderr] 123 |     fn create() -> Result<Self, Box<Error>> {
[INFO] [stderr]     |                                     ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_sdl/lib.rs:126:25
[INFO] [stderr]     |
[INFO] [stderr] 126 |             let video = try!(sdl.video());
[INFO] [stderr]     |                         ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_sdl/lib.rs:127:26
[INFO] [stderr]     |
[INFO] [stderr] 127 |             let window = try!(video.window("breeze", SCREEN_WIDTH * 3, SCREEN_HEIGHT * 3)
[INFO] [stderr]     |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_sdl/lib.rs:130:28
[INFO] [stderr]     |
[INFO] [stderr] 130 |             let renderer = try!(window.renderer()
[INFO] [stderr]     |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_sdl/lib.rs:134:27
[INFO] [stderr]     |
[INFO] [stderr] 134 |             let texture = try!(renderer.create_texture(
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: 5 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_glium/lib.rs:114:23
[INFO] [stderr]     |
[INFO] [stderr] 114 |         let display = try!(WindowBuilder::new()
[INFO] [stderr]     |                       ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_glium/lib.rs:119:24
[INFO] [stderr]     |
[INFO] [stderr] 119 |         let mut vbuf = try!(VertexBuffer::empty_dynamic(&display, 4));
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_glium/lib.rs:124:22
[INFO] [stderr]     |
[INFO] [stderr] 124 |             program: try!(
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze_glium/lib.rs:126:22
[INFO] [stderr]     |
[INFO] [stderr] 126 |             texture: try!(SrgbTexture2d::empty(&display, SCREEN_WIDTH, SCREEN_HEIGHT)),
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/breeze_glium/lib.rs:113:37
[INFO] [stderr]     |
[INFO] [stderr] 113 |     fn create() -> Result<Self, Box<Error>> {
[INFO] [stderr]     |                                     ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: 5 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:31:73
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub type RendererMap = BTreeMap<&'static str, Option<fn() -> Result<Box<Renderer>, Box<Error>>>>;
[INFO] [stderr]    |                                                                         ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze_backends/lib.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr] 8  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:31:88
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub type RendererMap = BTreeMap<&'static str, Option<fn() -> Result<Box<Renderer>, Box<Error>>>>;
[INFO] [stderr]    |                                                                                        ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:32:70
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub type AudioMap = BTreeMap<&'static str, Option<fn() -> Result<Box<AudioSink>, Box<Error>>>>;
[INFO] [stderr]    |                                                                      ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:32:86
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub type AudioMap = BTreeMap<&'static str, Option<fn() -> Result<Box<AudioSink>, Box<Error>>>>;
[INFO] [stderr]    |                                                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:36:56
[INFO] [stderr]    |
[INFO] [stderr] 36 |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr]    |                                                        ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:36:71
[INFO] [stderr]    |
[INFO] [stderr] 36 |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr]    |                                                                       ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:40:51
[INFO] [stderr]    |
[INFO] [stderr] 40 |         type MapEntry = Option<fn() -> Result<Box<Renderer>, Box<Error>>>;
[INFO] [stderr]    |                                                   ^^^^^^^^ help: use `dyn`: `dyn Renderer`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:40:66
[INFO] [stderr]    |
[INFO] [stderr] 40 |         type MapEntry = Option<fn() -> Result<Box<Renderer>, Box<Error>>>;
[INFO] [stderr]    |                                                                  ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:71:57
[INFO] [stderr]    |
[INFO] [stderr] 71 |         fn make<A: AudioSink + 'static>() -> Result<Box<AudioSink>, Box<Error>> {
[INFO] [stderr]    |                                                         ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:71:73
[INFO] [stderr]    |
[INFO] [stderr] 71 |         fn make<A: AudioSink + 'static>() -> Result<Box<AudioSink>, Box<Error>> {
[INFO] [stderr]    |                                                                         ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:75:51
[INFO] [stderr]    |
[INFO] [stderr] 75 |         type MapEntry = Option<fn() -> Result<Box<AudioSink>, Box<Error>>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^ help: use `dyn`: `dyn AudioSink`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze_backends/lib.rs:75:67
[INFO] [stderr]    |
[INFO] [stderr] 75 |         type MapEntry = Option<fn() -> Result<Box<AudioSink>, Box<Error>>>;
[INFO] [stderr]    |                                                                   ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze_backends/lib.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr] 8  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> src/breeze_backends/lib.rs:34:1
[INFO] [stderr]    |
[INFO] [stderr] 34 | / lazy_static! {
[INFO] [stderr] 35 | |     pub static ref RENDERER_MAP: RendererMap = {
[INFO] [stderr] 36 | |         fn make<R: Renderer + 'static>() -> Result<Box<Renderer>, Box<Error>> {
[INFO] [stderr] 37 | |             R::create().map(|r| Box::new(r) as Box<_>)
[INFO] [stderr] ...  |
[INFO] [stderr] 94 | |     };
[INFO] [stderr] 95 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: 20 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze/input.rs:29:35
[INFO] [stderr]    |
[INFO] [stderr] 29 | fn sdl_kbd_joypad() -> Option<Box<JoypadImpl>> {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze/main.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze/main.rs:96:20
[INFO] [stderr]    |
[INFO] [stderr] 96 |     let mut file = try!(File::open(&filename));
[INFO] [stderr]    |                    ^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze/main.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze/main.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     try!(file.read_to_end(&mut buf));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:100:15
[INFO] [stderr]     |
[INFO] [stderr] 100 |     let rom = try!(Rom::from_bytes(&buf));
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:104:24
[INFO] [stderr]     |
[INFO] [stderr] 104 |     let mut renderer = try!(renderer_fn());
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:110:17
[INFO] [stderr]     |
[INFO] [stderr] 110 |     let audio = try!(audio_fn());
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:136:9
[INFO] [stderr]     |
[INFO] [stderr] 136 |         try!(emu.snes.render_frame(|_framebuf| Ok(vec![])));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:144:27
[INFO] [stderr]     |
[INFO] [stderr] 144 |             let actions = try!(emu.renderer.render(&*framebuf));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:151:9
[INFO] [stderr]     |
[INFO] [stderr] 151 |         try!(emu.run());
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze/main.rs:31:54
[INFO] [stderr]    |
[INFO] [stderr] 31 | fn process_args(args: &ArgMatches) -> Result<(), Box<Error>> {
[INFO] [stderr]    |                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: 10 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze/input.rs:29:35
[INFO] [stderr]    |
[INFO] [stderr] 29 | fn sdl_kbd_joypad() -> Option<Box<JoypadImpl>> {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn JoypadImpl`
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze/main.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze/main.rs:96:20
[INFO] [stderr]    |
[INFO] [stderr] 96 |     let mut file = try!(File::open(&filename));
[INFO] [stderr]    |                    ^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/breeze/main.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr] 1  | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/breeze/main.rs:98:5
[INFO] [stderr]    |
[INFO] [stderr] 98 |     try!(file.read_to_end(&mut buf));
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:100:15
[INFO] [stderr]     |
[INFO] [stderr] 100 |     let rom = try!(Rom::from_bytes(&buf));
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:104:24
[INFO] [stderr]     |
[INFO] [stderr] 104 |     let mut renderer = try!(renderer_fn());
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:110:17
[INFO] [stderr]     |
[INFO] [stderr] 110 |     let audio = try!(audio_fn());
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:136:9
[INFO] [stderr]     |
[INFO] [stderr] 136 |         try!(emu.snes.render_frame(|_framebuf| Ok(vec![])));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:144:27
[INFO] [stderr]     |
[INFO] [stderr] 144 |             let actions = try!(emu.renderer.render(&*framebuf));
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/breeze/main.rs:151:9
[INFO] [stderr]     |
[INFO] [stderr] 151 |         try!(emu.run());
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/breeze/main.rs:31:54
[INFO] [stderr]    |
[INFO] [stderr] 31 | fn process_args(args: &ArgMatches) -> Result<(), Box<Error>> {
[INFO] [stderr]    |                                                      ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: 10 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> rendertest/main.rs:71:18
[INFO] [stderr]    |
[INFO] [stderr] 71 |     EmuError(Box<Error>),
[INFO] [stderr]    |                  ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> rendertest/main.rs:75:15
[INFO] [stderr]    |
[INFO] [stderr] 75 | impl From<Box<Error>> for TestFailure {
[INFO] [stderr]    |               ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> rendertest/main.rs:76:20
[INFO] [stderr]    |
[INFO] [stderr] 76 |     fn from(e: Box<Error>) -> Self {
[INFO] [stderr]    |                    ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> rendertest/main.rs:242:38
[INFO] [stderr]     |
[INFO] [stderr] 242 |     let mut emu = Emulator::new(rom, try!(DummyRenderer::create()), try!(DummySink::create()));
[INFO] [stderr]     |                                      ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> rendertest/main.rs:242:69
[INFO] [stderr]     |
[INFO] [stderr] 242 |     let mut emu = Emulator::new(rom, try!(DummyRenderer::create()), try!(DummySink::create()));
[INFO] [stderr]     |                                                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> rendertest/main.rs:244:9
[INFO] [stderr]     |
[INFO] [stderr] 244 |         try!(emu.render_frame());
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated trait `std::ascii::AsciiExt`: use inherent methods instead
[INFO] [stderr]   --> rendertest/main.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use std::ascii::AsciiExt;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ascii::AsciiExt`
[INFO] [stderr]   --> rendertest/main.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | use std::ascii::AsciiExt;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 8 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.19s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/breeze-f3c1ccbc900df94a)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running rendertest/main.rs (/opt/rustwide/target/debug/deps/rendertest-93aceaa2bee48a96)
[INFO] [stdout] 
[INFO] [stdout] running 1 rendering test
[INFO] [stderr] thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', rendertest/main.rs:133:34
[INFO] [stderr] stack backtrace:
[INFO] [stderr]    0:     0x560e73a01820 - std::backtrace_rs::backtrace::libunwind::trace::h34055254b57d8e79
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5
[INFO] [stderr]    1:     0x560e73a01820 - std::backtrace_rs::backtrace::trace_unsynchronized::h8f1e3fbd9afff6ec
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stderr]    2:     0x560e73a01820 - std::sys_common::backtrace::_print_fmt::h3a99a796b770c360
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:67:5
[INFO] [stderr]    3:     0x560e73a01820 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h32d1f94a80615d18
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:46:22
[INFO] [stderr]    4:     0x560e73a1c0dc - core::fmt::write::h306731c068f7162c
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/fmt/mod.rs:1110:17
[INFO] [stderr]    5:     0x560e739ffaa5 - std::io::Write::write_fmt::hd2fa90334eee2a21
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/io/mod.rs:1588:15
[INFO] [stderr]    6:     0x560e73a0351b - std::sys_common::backtrace::_print::h5abaa2601a852287
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:49:5
[INFO] [stderr]    7:     0x560e73a0351b - std::sys_common::backtrace::print::h8d81445442bb638f
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:36:9
[INFO] [stderr]    8:     0x560e73a0351b - std::panicking::default_hook::{{closure}}::hcfe804496a9fa747
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:208:50
[INFO] [stderr]    9:     0x560e73a02ff1 - std::panicking::default_hook::hbea8e3ccf2ba8901
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:225:9
[INFO] [stderr]   10:     0x560e73a03be4 - std::panicking::rust_panic_with_hook::h7ee9e1a2d0f8975a
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:622:17
[INFO] [stderr]   11:     0x560e73a03697 - std::panicking::begin_panic_handler::{{closure}}::h8ab3b4491718b2c7
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:517:13
[INFO] [stderr]   12:     0x560e73a01d1c - std::sys_common::backtrace::__rust_end_short_backtrace::hd489062ffa586a9f
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:141:18
[INFO] [stderr]   13:     0x560e73a03629 - rust_begin_unwind
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:515:5
[INFO] [stderr]   14:     0x560e738b0561 - core::panicking::panic_fmt::hca6330e3e14086b4
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/panicking.rs:92:14
[INFO] [stderr]   15:     0x560e738b04ad - core::panicking::panic::h1a48d878ff3dcd40
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/panicking.rs:50:5
[INFO] [stderr]   16:     0x560e738bb6ff - core::option::Option<T>::unwrap::h5f7171acd10573c0
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/option.rs:388:21
[INFO] [stderr]   17:     0x560e738bb6ff - rendertest::print_success::hce870ef96b2b9a4e
[INFO] [stderr]                                at /opt/rustwide/workdir/rendertest/main.rs:133:20
[INFO] [stderr]   18:     0x560e738bc679 - rendertest::main::h7d283eee278df0c1
[INFO] [stderr]                                at /opt/rustwide/workdir/rendertest/main.rs:299:9
[INFO] [stderr]   19:     0x560e738bdc53 - core::ops::function::FnOnce::call_once::h51c4727a01dea98c
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/ops/function.rs:227:5
[INFO] [stderr]   20:     0x560e738bdc53 - std::sys_common::backtrace::__rust_begin_short_backtrace::h6301933377dc5e5b
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:125:18
[INFO] [stderr]   21:     0x560e738bdc69 - std::rt::lang_start::{{closure}}::hc7eef42f65b3e3db
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/rt.rs:49:18
[INFO] [stderr]   22:     0x560e73a040e9 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h2aabc384aab89b7b
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/ops/function.rs:259:13
[INFO] [stderr]   23:     0x560e73a040e9 - std::panicking::try::do_call::hc5fcacb7a85fc7b1
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:401:40
[INFO] [stderr]   24:     0x560e73a040e9 - std::panicking::try::hb5d9603af3abbe3a
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:365:19
[INFO] [stderr]   25:     0x560e73a040e9 - std::panic::catch_unwind::h98fe6ac3925e64b4
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panic.rs:434:14
[INFO] [stderr]   26:     0x560e73a040e9 - std::rt::lang_start_internal::h22ac7383c516f93e
[INFO] [stderr]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/rt.rs:34:21
[INFO] [stderr]   27:     0x560e738bd378 - main
[INFO] [stderr]   28:     0x7f39521c40b3 - __libc_start_main
[INFO] [stderr]   29:     0x560e738b0cde - _start
[INFO] [stderr]   30:                0x0 - <unknown>
[INFO] [stderr] error: test failed, to rerun pass '--test rendertest'
[INFO] [stdout] test dummy ... 
[INFO] running `Command { std: "docker" "inspect" "eafedaff1cae3ea3be7fc6b4d0d221b7f8fc7968d9d964b4728b0bbc0059726b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eafedaff1cae3ea3be7fc6b4d0d221b7f8fc7968d9d964b4728b0bbc0059726b", kill_on_drop: false }`
[INFO] [stdout] eafedaff1cae3ea3be7fc6b4d0d221b7f8fc7968d9d964b4728b0bbc0059726b
