[INFO] fetching crate ioc 0.6.2...
[INFO] testing ioc-0.6.2 against 1.54.0 for beta-1.55-1
[INFO] extracting crate ioc 0.6.2 into /workspace/builds/worker-116/source
[INFO] validating manifest of crates.io crate ioc 0.6.2 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 crates.io crate ioc 0.6.2
[INFO] finished tweaking crates.io crate ioc 0.6.2
[INFO] tweaked toml for crates.io crate ioc 0.6.2 written to /workspace/builds/worker-116/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/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] 11876511a35c37d4b054a58c6e9a09dd1df1d2485e4eb53470145bef5d1e9fa4
[INFO] running `Command { std: "docker" "start" "-a" "11876511a35c37d4b054a58c6e9a09dd1df1d2485e4eb53470145bef5d1e9fa4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "11876511a35c37d4b054a58c6e9a09dd1df1d2485e4eb53470145bef5d1e9fa4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "11876511a35c37d4b054a58c6e9a09dd1df1d2485e4eb53470145bef5d1e9fa4", kill_on_drop: false }`
[INFO] [stdout] 11876511a35c37d4b054a58c6e9a09dd1df1d2485e4eb53470145bef5d1e9fa4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/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] a682d370c2dda9e8b62b242ecb2a075c38b64bf1f2128d4e499c953fc4184418
[INFO] running `Command { std: "docker" "start" "-a" "a682d370c2dda9e8b62b242ecb2a075c38b64bf1f2128d4e499c953fc4184418", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling downcast v0.6.0
[INFO] [stderr]    Compiling ioc v0.6.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use] 
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:30:45
[INFO] [stdout]    |
[INFO] [stdout] 30 |     CreationError{ key: &'a Key, error: Box<StdError> }
[INFO] [stdout]    |                                             ^^^^^^^^ help: use `dyn`: `dyn StdError`
[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/methods.rs:72:23
[INFO] [stdout]     |
[INFO] [stdout] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:77:23
[INFO] [stdout]     |
[INFO] [stdout] 77  |                       $(try!{ioc.try_read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:72:23
[INFO] [stdout]     |
[INFO] [stdout] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:135:23
[INFO] [stdout]     |
[INFO] [stdout] 135 |                       $(try!{ioc.write::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 | / multi_write!{
[INFO] [stdout] 148 | |     {A} 
[INFO] [stdout] 149 | |     {A B} 
[INFO] [stdout] 150 | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 164 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_write` (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/methods.rs:140:23
[INFO] [stdout]     |
[INFO] [stdout] 140 |                       $(try!{ioc.try_write::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 | / multi_write!{
[INFO] [stdout] 148 | |     {A} 
[INFO] [stdout] 149 | |     {A B} 
[INFO] [stdout] 150 | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 164 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_write` (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/methods.rs:221:23
[INFO] [stdout]     |
[INFO] [stdout] 221 |                       $(try!{e![$params::resolve_unprotected(ioc)]},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 | / multi_methods!{
[INFO] [stdout] 235 | |     {0,A} 
[INFO] [stdout] 236 | |     {0,A 1,B} 
[INFO] [stdout] 237 | |     {0,A 1,B 2,C}
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stdout] 251 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_methods` (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/methods.rs:226:23
[INFO] [stdout]     |
[INFO] [stdout] 226 |                       $(try!{e![$params::try_resolve_unprotected(ioc)]},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 | / multi_methods!{
[INFO] [stdout] 235 | |     {0,A} 
[INFO] [stdout] 236 | |     {0,A 1,B} 
[INFO] [stdout] 237 | |     {0,A 1,B 2,C}
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stdout] 251 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_methods` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryLockError`
[INFO] [stdout]  --> src/container.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::{TryLockError, Mutex, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/container.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let base = try!{self.read_service_base(key)};
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:107:20
[INFO] [stdout]     |
[INFO] [stdout] 107 |         let base = try!{self.write_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:160:20
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let base = try!{self.try_read_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:177:20
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let base = try!{self.try_write_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/errors.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let desc = self.description();
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/container.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type ReadGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type ReadGuard<'a, T, Base> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                              --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/container.rs:19:34
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type WriteGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type WriteGuard<'a, T, Base> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                               --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2.26s
[INFO] running `Command { std: "docker" "inspect" "a682d370c2dda9e8b62b242ecb2a075c38b64bf1f2128d4e499c953fc4184418", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a682d370c2dda9e8b62b242ecb2a075c38b64bf1f2128d4e499c953fc4184418", kill_on_drop: false }`
[INFO] [stdout] a682d370c2dda9e8b62b242ecb2a075c38b64bf1f2128d4e499c953fc4184418
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/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] f0b475b347b96d809f05b009c1316d4df918a069a860139264122194ef6f49d9
[INFO] running `Command { std: "docker" "start" "-a" "f0b475b347b96d809f05b009c1316d4df918a069a860139264122194ef6f49d9", kill_on_drop: false }`
[INFO] [stderr]    Compiling ioc v0.6.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use] 
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:30:45
[INFO] [stdout]    |
[INFO] [stdout] 30 |     CreationError{ key: &'a Key, error: Box<StdError> }
[INFO] [stdout]    |                                             ^^^^^^^^ help: use `dyn`: `dyn StdError`
[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/methods.rs:72:23
[INFO] [stdout]     |
[INFO] [stdout] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:77:23
[INFO] [stdout]     |
[INFO] [stdout] 77  |                       $(try!{ioc.try_read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:72:23
[INFO] [stdout]     |
[INFO] [stdout] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:135:23
[INFO] [stdout]     |
[INFO] [stdout] 135 |                       $(try!{ioc.write::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 | / multi_write!{
[INFO] [stdout] 148 | |     {A} 
[INFO] [stdout] 149 | |     {A B} 
[INFO] [stdout] 150 | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 164 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_write` (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/methods.rs:140:23
[INFO] [stdout]     |
[INFO] [stdout] 140 |                       $(try!{ioc.try_write::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 | / multi_write!{
[INFO] [stdout] 148 | |     {A} 
[INFO] [stdout] 149 | |     {A B} 
[INFO] [stdout] 150 | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 164 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_write` (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/methods.rs:221:23
[INFO] [stdout]     |
[INFO] [stdout] 221 |                       $(try!{e![$params::resolve_unprotected(ioc)]},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 | / multi_methods!{
[INFO] [stdout] 235 | |     {0,A} 
[INFO] [stdout] 236 | |     {0,A 1,B} 
[INFO] [stdout] 237 | |     {0,A 1,B 2,C}
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stdout] 251 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_methods` (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/methods.rs:226:23
[INFO] [stdout]     |
[INFO] [stdout] 226 |                       $(try!{e![$params::try_resolve_unprotected(ioc)]},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 | / multi_methods!{
[INFO] [stdout] 235 | |     {0,A} 
[INFO] [stdout] 236 | |     {0,A 1,B} 
[INFO] [stdout] 237 | |     {0,A 1,B 2,C}
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stdout] 251 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_methods` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryLockError`
[INFO] [stdout]  --> src/container.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::{TryLockError, Mutex, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/container.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let base = try!{self.read_service_base(key)};
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:107:20
[INFO] [stdout]     |
[INFO] [stdout] 107 |         let base = try!{self.write_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:160:20
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let base = try!{self.try_read_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:177:20
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let base = try!{self.try_write_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/errors.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let desc = self.description();
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/container.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type ReadGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type ReadGuard<'a, T, Base> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                              --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/container.rs:19:34
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type WriteGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type WriteGuard<'a, T, Base> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                               --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use] 
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/errors.rs:30:45
[INFO] [stdout]    |
[INFO] [stdout] 30 |     CreationError{ key: &'a Key, error: Box<StdError> }
[INFO] [stdout]    |                                             ^^^^^^^^ help: use `dyn`: `dyn StdError`
[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/methods.rs:72:23
[INFO] [stdout]     |
[INFO] [stdout] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:77:23
[INFO] [stdout]     |
[INFO] [stdout] 77  |                       $(try!{ioc.try_read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:72:23
[INFO] [stdout]     |
[INFO] [stdout] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  | / multi_read!{
[INFO] [stdout] 85  | |     {A} 
[INFO] [stdout] 86  | |     {A B} 
[INFO] [stdout] 87  | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 101 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_read` (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/methods.rs:135:23
[INFO] [stdout]     |
[INFO] [stdout] 135 |                       $(try!{ioc.write::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 | / multi_write!{
[INFO] [stdout] 148 | |     {A} 
[INFO] [stdout] 149 | |     {A B} 
[INFO] [stdout] 150 | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 164 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_write` (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/methods.rs:140:23
[INFO] [stdout]     |
[INFO] [stdout] 140 |                       $(try!{ioc.try_write::<$params>()},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 | / multi_write!{
[INFO] [stdout] 148 | |     {A} 
[INFO] [stdout] 149 | |     {A B} 
[INFO] [stdout] 150 | |     {A B C}
[INFO] [stdout] ...   |
[INFO] [stdout] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stdout] 164 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_write` (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/methods.rs:221:23
[INFO] [stdout]     |
[INFO] [stdout] 221 |                       $(try!{e![$params::resolve_unprotected(ioc)]},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 | / multi_methods!{
[INFO] [stdout] 235 | |     {0,A} 
[INFO] [stdout] 236 | |     {0,A 1,B} 
[INFO] [stdout] 237 | |     {0,A 1,B 2,C}
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stdout] 251 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_methods` (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/methods.rs:226:23
[INFO] [stdout]     |
[INFO] [stdout] 226 |                       $(try!{e![$params::try_resolve_unprotected(ioc)]},)+
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 | / multi_methods!{
[INFO] [stdout] 235 | |     {0,A} 
[INFO] [stdout] 236 | |     {0,A 1,B} 
[INFO] [stdout] 237 | |     {0,A 1,B 2,C}
[INFO] [stdout] ...   |
[INFO] [stdout] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stdout] 251 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `multi_methods` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryLockError`
[INFO] [stdout]  --> src/container.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::sync::{TryLockError, Mutex, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/container.rs:90:20
[INFO] [stdout]    |
[INFO] [stdout] 90 |         let base = try!{self.read_service_base(key)};
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:107:20
[INFO] [stdout]     |
[INFO] [stdout] 107 |         let base = try!{self.write_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:160:20
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let base = try!{self.try_read_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/container.rs:177:20
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let base = try!{self.try_write_service_base(key)};
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/errors.rs:37:25
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let desc = self.description();
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/container.rs:18:33
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type ReadGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                                 ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type ReadGuard<'a, T, Base> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                              --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/container.rs:19:34
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type WriteGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub type WriteGuard<'a, T, Base> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stdout]    |                               --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.01s
[INFO] running `Command { std: "docker" "inspect" "f0b475b347b96d809f05b009c1316d4df918a069a860139264122194ef6f49d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f0b475b347b96d809f05b009c1316d4df918a069a860139264122194ef6f49d9", kill_on_drop: false }`
[INFO] [stdout] f0b475b347b96d809f05b009c1316d4df918a069a860139264122194ef6f49d9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-116/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] [stdout] cb3aacfa0a774dc80f5026cc9a4751b5c71bb2e97c45a7f2831f70b80400a4bb
[INFO] running `Command { std: "docker" "start" "-a" "cb3aacfa0a774dc80f5026cc9a4751b5c71bb2e97c45a7f2831f70b80400a4bb", kill_on_drop: false }`
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use] 
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/errors.rs:30:45
[INFO] [stderr]    |
[INFO] [stderr] 30 |     CreationError{ key: &'a Key, error: Box<StdError> }
[INFO] [stderr]    |                                             ^^^^^^^^ help: use `dyn`: `dyn StdError`
[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/methods.rs:72:23
[INFO] [stderr]     |
[INFO] [stderr] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  | / multi_read!{
[INFO] [stderr] 85  | |     {A} 
[INFO] [stderr] 86  | |     {A B} 
[INFO] [stderr] 87  | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 101 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `multi_read` (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/methods.rs:77:23
[INFO] [stderr]     |
[INFO] [stderr] 77  |                       $(try!{ioc.try_read::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  | / multi_read!{
[INFO] [stderr] 85  | |     {A} 
[INFO] [stderr] 86  | |     {A B} 
[INFO] [stderr] 87  | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 101 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_read` (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/methods.rs:72:23
[INFO] [stderr]     |
[INFO] [stderr] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  | / multi_read!{
[INFO] [stderr] 85  | |     {A} 
[INFO] [stderr] 86  | |     {A B} 
[INFO] [stderr] 87  | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 101 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_read` (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/methods.rs:135:23
[INFO] [stderr]     |
[INFO] [stderr] 135 |                       $(try!{ioc.write::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 147 | / multi_write!{
[INFO] [stderr] 148 | |     {A} 
[INFO] [stderr] 149 | |     {A B} 
[INFO] [stderr] 150 | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 164 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_write` (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/methods.rs:140:23
[INFO] [stderr]     |
[INFO] [stderr] 140 |                       $(try!{ioc.try_write::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 147 | / multi_write!{
[INFO] [stderr] 148 | |     {A} 
[INFO] [stderr] 149 | |     {A B} 
[INFO] [stderr] 150 | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 164 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_write` (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/methods.rs:221:23
[INFO] [stderr]     |
[INFO] [stderr] 221 |                       $(try!{e![$params::resolve_unprotected(ioc)]},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 234 | / multi_methods!{
[INFO] [stderr] 235 | |     {0,A} 
[INFO] [stderr] 236 | |     {0,A 1,B} 
[INFO] [stderr] 237 | |     {0,A 1,B 2,C}
[INFO] [stderr] ...   |
[INFO] [stderr] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stderr] 251 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_methods` (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/methods.rs:226:23
[INFO] [stderr]     |
[INFO] [stderr] 226 |                       $(try!{e![$params::try_resolve_unprotected(ioc)]},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 234 | / multi_methods!{
[INFO] [stderr] 235 | |     {0,A} 
[INFO] [stderr] 236 | |     {0,A 1,B} 
[INFO] [stderr] 237 | |     {0,A 1,B 2,C}
[INFO] [stderr] ...   |
[INFO] [stderr] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stderr] 251 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_methods` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TryLockError`
[INFO] [stderr]  --> src/container.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::sync::{TryLockError, Mutex, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stderr]   |                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/container.rs:90:20
[INFO] [stderr]    |
[INFO] [stderr] 90 |         let base = try!{self.read_service_base(key)};
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/container.rs:107:20
[INFO] [stderr]     |
[INFO] [stderr] 107 |         let base = try!{self.write_service_base(key)};
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/container.rs:160:20
[INFO] [stderr]     |
[INFO] [stderr] 160 |         let base = try!{self.try_read_service_base(key)};
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/container.rs:177:20
[INFO] [stderr]     |
[INFO] [stderr] 177 |         let base = try!{self.try_write_service_base(key)};
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/errors.rs:37:25
[INFO] [stderr]    |
[INFO] [stderr] 37 |         let desc = self.description();
[INFO] [stderr]    |                         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stderr]   --> src/container.rs:18:33
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type ReadGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                                 ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stderr] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type ReadGuard<'a, T, Base> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                              --
[INFO] [stderr] 
[INFO] [stderr] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stderr]   --> src/container.rs:19:34
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub type WriteGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                                  ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub type WriteGuard<'a, T, Base> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                               --
[INFO] [stderr] 
[INFO] [stderr] warning: 17 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: unused `#[macro_use]` import
[INFO] [stderr]  --> src/lib.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #[macro_use] 
[INFO] [stderr]   | ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/errors.rs:30:45
[INFO] [stderr]    |
[INFO] [stderr] 30 |     CreationError{ key: &'a Key, error: Box<StdError> }
[INFO] [stderr]    |                                             ^^^^^^^^ help: use `dyn`: `dyn StdError`
[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/methods.rs:72:23
[INFO] [stderr]     |
[INFO] [stderr] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  | / multi_read!{
[INFO] [stderr] 85  | |     {A} 
[INFO] [stderr] 86  | |     {A B} 
[INFO] [stderr] 87  | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 101 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `multi_read` (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/methods.rs:77:23
[INFO] [stderr]     |
[INFO] [stderr] 77  |                       $(try!{ioc.try_read::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  | / multi_read!{
[INFO] [stderr] 85  | |     {A} 
[INFO] [stderr] 86  | |     {A B} 
[INFO] [stderr] 87  | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 101 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_read` (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/methods.rs:72:23
[INFO] [stderr]     |
[INFO] [stderr] 72  |                       $(try!{ioc.read::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 84  | / multi_read!{
[INFO] [stderr] 85  | |     {A} 
[INFO] [stderr] 86  | |     {A B} 
[INFO] [stderr] 87  | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 100 | |     //{A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 101 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_read` (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/methods.rs:135:23
[INFO] [stderr]     |
[INFO] [stderr] 135 |                       $(try!{ioc.write::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 147 | / multi_write!{
[INFO] [stderr] 148 | |     {A} 
[INFO] [stderr] 149 | |     {A B} 
[INFO] [stderr] 150 | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 164 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_write` (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/methods.rs:140:23
[INFO] [stderr]     |
[INFO] [stderr] 140 |                       $(try!{ioc.try_write::<$params>()},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 147 | / multi_write!{
[INFO] [stderr] 148 | |     {A} 
[INFO] [stderr] 149 | |     {A B} 
[INFO] [stderr] 150 | |     {A B C}
[INFO] [stderr] ...   |
[INFO] [stderr] 163 | |     {A B C D E F G H J K L M N O P Q}
[INFO] [stderr] 164 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_write` (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/methods.rs:221:23
[INFO] [stderr]     |
[INFO] [stderr] 221 |                       $(try!{e![$params::resolve_unprotected(ioc)]},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 234 | / multi_methods!{
[INFO] [stderr] 235 | |     {0,A} 
[INFO] [stderr] 236 | |     {0,A 1,B} 
[INFO] [stderr] 237 | |     {0,A 1,B 2,C}
[INFO] [stderr] ...   |
[INFO] [stderr] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stderr] 251 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_methods` (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/methods.rs:226:23
[INFO] [stderr]     |
[INFO] [stderr] 226 |                       $(try!{e![$params::try_resolve_unprotected(ioc)]},)+
[INFO] [stderr]     |                         ^^^
[INFO] [stderr] ...
[INFO] [stderr] 234 | / multi_methods!{
[INFO] [stderr] 235 | |     {0,A} 
[INFO] [stderr] 236 | |     {0,A 1,B} 
[INFO] [stderr] 237 | |     {0,A 1,B 2,C}
[INFO] [stderr] ...   |
[INFO] [stderr] 250 | |     {0,A 1,B 2,C 3,D 4,E 5,F 6,G 7,H 8,J 9,K 10,L 11,M 12,N 13,O 14,P 15,Q}
[INFO] [stderr] 251 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `multi_methods` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TryLockError`
[INFO] [stderr]  --> src/container.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::sync::{TryLockError, Mutex, RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stderr]   |                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/container.rs:90:20
[INFO] [stderr]    |
[INFO] [stderr] 90 |         let base = try!{self.read_service_base(key)};
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/container.rs:107:20
[INFO] [stderr]     |
[INFO] [stderr] 107 |         let base = try!{self.write_service_base(key)};
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/container.rs:160:20
[INFO] [stderr]     |
[INFO] [stderr] 160 |         let base = try!{self.try_read_service_base(key)};
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/container.rs:177:20
[INFO] [stderr]     |
[INFO] [stderr] 177 |         let base = try!{self.try_write_service_base(key)};
[INFO] [stderr]     |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/errors.rs:37:25
[INFO] [stderr]    |
[INFO] [stderr] 37 |         let desc = self.description();
[INFO] [stderr]    |                         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stderr]   --> src/container.rs:18:33
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type ReadGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                                 ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stderr] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub type ReadGuard<'a, T, Base> = downcast::Guard<T, RwLockReadGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                              --
[INFO] [stderr] 
[INFO] [stderr] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stderr]   --> src/container.rs:19:34
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub type WriteGuard<'a, T, Base: ?Sized> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                                  ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub type WriteGuard<'a, T, Base> = downcast::Guard<T, RwLockWriteGuard<'a, Box<Base>>>;
[INFO] [stderr]    |                               --
[INFO] [stderr] 
[INFO] [stderr] warning: 17 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/ioc-6fae2c0616e740c1)
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests ioc
[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] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/errors.rs - errors::or_err (line 93) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/errors.rs - errors::or_err (line 93) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Svc`
[INFO] [stdout]  --> src/errors.rs:99:32
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let foo = try!{ioc::or_err(Svc::key(), lock.read())}.do_something();
[INFO] [stdout]   |                                ^^^ use of undeclared type `Svc`
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `RwLock` in this scope
[INFO] [stdout]  --> src/errors.rs:94:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn foo<'a>(bar: &'a RwLock<Svc>) -> Result<Foo, ioc::Error<'a, Key>> {
[INFO] [stdout]   |                     ^^^^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::RwLock;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Svc` in this scope
[INFO] [stdout]  --> src/errors.rs:94:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn foo<'a>(bar: &'a RwLock<Svc>) -> Result<Foo, ioc::Error<'a, Key>> {
[INFO] [stdout]   |          -                 ^^^ not found in this scope
[INFO] [stdout]   |          |
[INFO] [stdout]   |          help: you might be missing a type parameter: `, Svc`
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Foo` in this scope
[INFO] [stdout]  --> src/errors.rs:94:44
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn foo<'a>(bar: &'a RwLock<Svc>) -> Result<Foo, ioc::Error<'a, Key>> {
[INFO] [stdout]   |          -                                 ^^^ not found in this scope
[INFO] [stdout]   |          |
[INFO] [stdout]   |          help: you might be missing a type parameter: `, Foo`
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Key` in this scope
[INFO] [stdout]  --> src/errors.rs:94:64
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn foo<'a>(bar: &'a RwLock<Svc>) -> Result<Foo, ioc::Error<'a, Key>> {
[INFO] [stdout]   |                                                                ^^^ not found in this scope
[INFO] [stdout]   |
[INFO] [stdout] help: consider importing this trait
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ioc::Key;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `lock` in this scope
[INFO] [stdout]  --> src/errors.rs:96:20
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let foo = try!{lock.read()}.do_something();
[INFO] [stdout]   |                    ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `lock` in this scope
[INFO] [stdout]  --> src/errors.rs:99:44
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let foo = try!{ioc::or_err(Svc::key(), lock.read())}.do_something();
[INFO] [stdout]   |                                            ^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]  --> src/errors.rs:96:15
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let foo = try!{lock.read()}.do_something();
[INFO] [stdout]   |               ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]  --> src/errors.rs:99:15
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let foo = try!{ioc::or_err(Svc::key(), lock.read())}.do_something();
[INFO] [stdout]   |               ^^^
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/errors.rs - errors::or_err (line 93)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass '--doc'
[INFO] running `Command { std: "docker" "inspect" "cb3aacfa0a774dc80f5026cc9a4751b5c71bb2e97c45a7f2831f70b80400a4bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb3aacfa0a774dc80f5026cc9a4751b5c71bb2e97c45a7f2831f70b80400a4bb", kill_on_drop: false }`
[INFO] [stdout] cb3aacfa0a774dc80f5026cc9a4751b5c71bb2e97c45a7f2831f70b80400a4bb
