[INFO] cloning repository https://github.com/ef3d0c3e/auto-registry
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ef3d0c3e/auto-registry" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fef3d0c3e%2Fauto-registry", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fef3d0c3e%2Fauto-registry'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 11e6eafaa8e9a9bd91ecf8a366c5dd48f151efdd
[INFO] checking ef3d0c3e/auto-registry against e3d12f3322cb00126b2208c6b9df3ac4467951f5 for pr-159706
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fef3d0c3e%2Fauto-registry" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ef3d0c3e/auto-registry
[INFO] finished tweaking git repo https://github.com/ef3d0c3e/auto-registry
[INFO] tweaked toml for git repo https://github.com/ef3d0c3e/auto-registry written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ef3d0c3e/auto-registry on toolchain e3d12f3322cb00126b2208c6b9df3ac4467951f5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ef3d0c3e/auto-registry already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122
[INFO] running `Command { std: "docker" "start" "b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122" "/opt/rustwide/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122" "/opt/rustwide/cargo-home/bin/cargo" "+e3d12f3322cb00126b2208c6b9df3ac4467951f5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]     Checking auto-registry v0.0.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: feature `proc_macro_span` is declared but not used
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(proc_macro_span)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `proc_macro_span` is declared but not used
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(proc_macro_span)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `proc_macro_span` is declared but not used
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(proc_macro_span)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:38:18
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let listeners = get_listeners!();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `get_listeners! {  }`
[INFO] [stdout]    = note: to `collect_listeners!
[INFO] [stdout]            (crate :: KeyboardListener :: default(); crate :: MouseListener :: default();)`
[INFO] [stdout]    = note: expanding `collect_listeners! { crate :: KeyboardListener :: default(); crate :: MouseListener :: default(); }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                vec!
[INFO] [stdout]                [Box :: new(crate :: KeyboardListener :: default()) as Box < dyn crate ::
[INFO] [stdout]                Listener + Send + Sync > , Box :: new(crate :: MouseListener :: default())
[INFO] [stdout]                as Box < dyn crate :: Listener + Send + Sync > ,]
[INFO] [stdout]            }`
[INFO] [stdout]    = note: expanding `vec! { Box :: new(crate :: KeyboardListener :: default()) as Box < dyn crate ::
[INFO] [stdout]            Listener + Send + Sync > , Box :: new(crate :: MouseListener :: default()) as
[INFO] [stdout]            Box < dyn crate :: Listener + Send + Sync > , }`
[INFO] [stdout]    = note: to `$crate :: boxed ::
[INFO] [stdout]            box_assume_init_into_vec_unsafe($crate :: intrinsics ::
[INFO] [stdout]            write_box_via_move($crate :: boxed :: Box :: new_uninit(),
[INFO] [stdout]            [Box :: new(crate :: KeyboardListener :: default()) as Box < dyn crate ::
[INFO] [stdout]            Listener + Send + Sync >,
[INFO] [stdout]            Box :: new(crate :: MouseListener :: default()) as Box < dyn crate :: Listener
[INFO] [stdout]            + Send + Sync >]))`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:40:2
[INFO] [stdout]    |
[INFO] [stdout] 40 |     assert_eq!(listeners.len(), 2);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `assert_eq! { listeners.len(), 2 }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                match (& listeners.len(), & 2)
[INFO] [stdout]                {
[INFO] [stdout]                    (left_val, right_val) =>
[INFO] [stdout]                    {
[INFO] [stdout]                        if ! (* left_val == * right_val)
[INFO] [stdout]                        {
[INFO] [stdout]                            let kind = $crate :: panicking :: AssertKind :: Eq; $crate ::
[INFO] [stdout]                            panicking ::
[INFO] [stdout]                            assert_failed(kind, & * left_val, & * right_val, $crate ::
[INFO] [stdout]                            option :: Option :: None);
[INFO] [stdout]                        }
[INFO] [stdout]                    }
[INFO] [stdout]                }
[INFO] [stdout]            }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:41:2
[INFO] [stdout]    |
[INFO] [stdout] 41 |     assert_eq!(listeners[0].name(), "Keyboard");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `assert_eq! { listeners[0].name(), "Keyboard" }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                match (& listeners[0].name(), & "Keyboard")
[INFO] [stdout]                {
[INFO] [stdout]                    (left_val, right_val) =>
[INFO] [stdout]                    {
[INFO] [stdout]                        if ! (* left_val == * right_val)
[INFO] [stdout]                        {
[INFO] [stdout]                            let kind = $crate :: panicking :: AssertKind :: Eq; $crate ::
[INFO] [stdout]                            panicking ::
[INFO] [stdout]                            assert_failed(kind, & * left_val, & * right_val, $crate ::
[INFO] [stdout]                            option :: Option :: None);
[INFO] [stdout]                        }
[INFO] [stdout]                    }
[INFO] [stdout]                }
[INFO] [stdout]            }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:42:2
[INFO] [stdout]    |
[INFO] [stdout] 42 |     assert_eq!(listeners[1].name(), "Mouse");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `assert_eq! { listeners[1].name(), "Mouse" }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                match (& listeners[1].name(), & "Mouse")
[INFO] [stdout]                {
[INFO] [stdout]                    (left_val, right_val) =>
[INFO] [stdout]                    {
[INFO] [stdout]                        if ! (* left_val == * right_val)
[INFO] [stdout]                        {
[INFO] [stdout]                            let kind = $crate :: panicking :: AssertKind :: Eq; $crate ::
[INFO] [stdout]                            panicking ::
[INFO] [stdout]                            assert_failed(kind, & * left_val, & * right_val, $crate ::
[INFO] [stdout]                            option :: Option :: None);
[INFO] [stdout]                        }
[INFO] [stdout]                    }
[INFO] [stdout]                }
[INFO] [stdout]            }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:60:2
[INFO] [stdout]    |
[INFO] [stdout] 60 |     register_all_listeners!();
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `register_all_listeners! {  }`
[INFO] [stdout]    = note: to `register_listener! (crate :: KeyboardListener); register_listener!
[INFO] [stdout]            (crate :: MouseListener);`
[INFO] [stdout]    = note: expanding `register_listener! { crate :: KeyboardListener }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                let mut listeners = LISTENERS.lock();
[INFO] [stdout]                listeners.unwrap().push(Box ::
[INFO] [stdout]                new(< crate :: KeyboardListener > :: default()) as Box < dyn Listener +
[INFO] [stdout]                Send + Sync >);
[INFO] [stdout]            }`
[INFO] [stdout]    = note: expanding `register_listener! { crate :: MouseListener }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                let mut listeners = LISTENERS.lock();
[INFO] [stdout]                listeners.unwrap().push(Box ::
[INFO] [stdout]                new(< crate :: MouseListener > :: default()) as Box < dyn Listener + Send
[INFO] [stdout]                + Sync >);
[INFO] [stdout]            }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:61:2
[INFO] [stdout]    |
[INFO] [stdout] 61 |     assert_eq!(LISTENERS.lock().unwrap().len(), 2);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `assert_eq! { LISTENERS.lock().unwrap().len(), 2 }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                match (& LISTENERS.lock().unwrap().len(), & 2)
[INFO] [stdout]                {
[INFO] [stdout]                    (left_val, right_val) =>
[INFO] [stdout]                    {
[INFO] [stdout]                        if ! (* left_val == * right_val)
[INFO] [stdout]                        {
[INFO] [stdout]                            let kind = $crate :: panicking :: AssertKind :: Eq; $crate ::
[INFO] [stdout]                            panicking ::
[INFO] [stdout]                            assert_failed(kind, & * left_val, & * right_val, $crate ::
[INFO] [stdout]                            option :: Option :: None);
[INFO] [stdout]                        }
[INFO] [stdout]                    }
[INFO] [stdout]                }
[INFO] [stdout]            }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:62:2
[INFO] [stdout]    |
[INFO] [stdout] 62 |     assert_eq!(LISTENERS.lock().unwrap()[0].name(), "Keyboard");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `assert_eq! { LISTENERS.lock().unwrap()[0].name(), "Keyboard" }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                match (& LISTENERS.lock().unwrap()[0].name(), & "Keyboard")
[INFO] [stdout]                {
[INFO] [stdout]                    (left_val, right_val) =>
[INFO] [stdout]                    {
[INFO] [stdout]                        if ! (* left_val == * right_val)
[INFO] [stdout]                        {
[INFO] [stdout]                            let kind = $crate :: panicking :: AssertKind :: Eq; $crate ::
[INFO] [stdout]                            panicking ::
[INFO] [stdout]                            assert_failed(kind, & * left_val, & * right_val, $crate ::
[INFO] [stdout]                            option :: Option :: None);
[INFO] [stdout]                        }
[INFO] [stdout]                    }
[INFO] [stdout]                }
[INFO] [stdout]            }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] note: trace_macro
[INFO] [stdout]   --> tests/tests.rs:63:2
[INFO] [stdout]    |
[INFO] [stdout] 63 |     assert_eq!(LISTENERS.lock().unwrap()[1].name(), "Mouse");
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expanding `assert_eq! { LISTENERS.lock().unwrap()[1].name(), "Mouse" }`
[INFO] [stdout]    = note: to `{
[INFO] [stdout]                match (& LISTENERS.lock().unwrap()[1].name(), & "Mouse")
[INFO] [stdout]                {
[INFO] [stdout]                    (left_val, right_val) =>
[INFO] [stdout]                    {
[INFO] [stdout]                        if ! (* left_val == * right_val)
[INFO] [stdout]                        {
[INFO] [stdout]                            let kind = $crate :: panicking :: AssertKind :: Eq; $crate ::
[INFO] [stdout]                            panicking ::
[INFO] [stdout]                            assert_failed(kind, & * left_val, & * right_val, $crate ::
[INFO] [stdout]                            option :: Option :: None);
[INFO] [stdout]                        }
[INFO] [stdout]                    }
[INFO] [stdout]                }
[INFO] [stdout]            }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> tests/tests.rs:37:6
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let x = KeyboardListener{};
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.49s
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/tests.rs:49:7
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let mut listeners = LISTENERS.lock();
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 60 |     register_all_listeners!();
[INFO] [stdout]    |     ------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `register_listener` which comes from the expansion of the macro `register_all_listeners` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/tests.rs:49:7
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let mut listeners = LISTENERS.lock();
[INFO] [stdout]    |             ----^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 60 |     register_all_listeners!();
[INFO] [stdout]    |     ------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `register_listener` which comes from the expansion of the macro `register_all_listeners` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122", kill_on_drop: false }`
[INFO] [stdout] b4f05a5acf5c20c152175353c8742373fc6b9464ec8854ece848fe96ba546122
