[INFO] cloning repository https://github.com/remexre/evaltrees
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/remexre/evaltrees" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fremexre%2Fevaltrees", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fremexre%2Fevaltrees'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f96c7e6b05fa9531a9860a5b8185848660c454c9
[INFO] checking remexre/evaltrees against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fremexre%2Fevaltrees" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/remexre/evaltrees
[INFO] finished tweaking git repo https://github.com/remexre/evaltrees
[INFO] tweaked toml for git repo https://github.com/remexre/evaltrees written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/remexre/evaltrees on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/remexre/evaltrees 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | homepage = "https://github.com/remexre/evaltrees"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 | repository = "https://github.com/remexre/evaltrees"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `evaltrees` (manifest) generated 1 warning
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded structopt-derive v0.4.14
[INFO] [stderr]   Downloaded symbol v0.1.7
[INFO] [stderr]   Downloaded structopt v0.3.21
[INFO] [stderr]   Downloaded atty v0.2.11
[INFO] [stderr]   Downloaded termion v1.5.6
[INFO] [stderr]   Downloaded redox_termios v0.1.2
[INFO] [stderr]   Downloaded dirs v2.0.2
[INFO] [stderr]   Downloaded os_type v2.2.0
[INFO] [stderr]   Downloaded smallstr v0.2.0
[INFO] [stderr]   Downloaded human-panic v1.0.3
[INFO] [stderr]   Downloaded ctor v0.1.18
[INFO] [stderr]   Downloaded lalrpop-util v0.19.4
[INFO] [stderr]   Downloaded pico-args v0.3.4
[INFO] [stderr]   Downloaded redox_syscall v0.2.4
[INFO] [stderr]   Downloaded synstructure v0.12.4
[INFO] [stderr]   Downloaded display_attr v0.1.1
[INFO] [stderr]   Downloaded string_cache v0.8.1
[INFO] [stderr]   Downloaded stderrlog v0.5.1
[INFO] [stderr]   Downloaded ena v0.14.0
[INFO] [stderr]   Downloaded ascii-canvas v2.0.0
[INFO] [stderr]   Downloaded terminfo v0.7.3
[INFO] [stderr]   Downloaded pretty_assertions v0.6.1
[INFO] [stderr]   Downloaded mortal v0.2.2
[INFO] [stderr]   Downloaded wasi v0.10.1+wasi-snapshot-preview1
[INFO] [stderr]   Downloaded linefeed v0.6.0
[INFO] [stderr]   Downloaded regex-syntax v0.6.22
[INFO] [stderr]   Downloaded syn v0.14.9
[INFO] [stderr]   Downloaded nom v5.1.2
[INFO] [stderr]   Downloaded lalrpop v0.19.4
[INFO] [stderr]   Downloaded regex v1.4.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79
[INFO] running `Command { std: "docker" "start" "e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79", 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" "e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79", 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" "e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | homepage = "https://github.com/remexre/evaltrees"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 | repository = "https://github.com/remexre/evaltrees"
[INFO] [stderr]    |              --------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `evaltrees` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.82
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling version_check v0.9.2
[INFO] [stderr]    Compiling siphasher v0.3.3
[INFO] [stderr]    Compiling syn v1.0.60
[INFO] [stderr]    Compiling ppv-lite86 v0.2.10
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling indexmap v1.6.1
[INFO] [stderr]    Compiling miniz_oxide v0.4.3
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]    Compiling hashbrown v0.9.1
[INFO] [stderr]    Compiling byteorder v1.4.2
[INFO] [stderr]    Compiling regex-syntax v0.6.22
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking gimli v0.23.0
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling phf_shared v0.8.0
[INFO] [stderr]    Compiling fixedbitset v0.2.0
[INFO] [stderr]     Checking adler v0.2.3
[INFO] [stderr]    Compiling bit-set v0.5.2
[INFO] [stderr]    Compiling ena v0.14.0
[INFO] [stderr]    Compiling string_cache v0.8.1
[INFO] [stderr]    Compiling nom v5.1.2
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]    Compiling aho-corasick v0.7.15
[INFO] [stderr]     Checking rustc-demangle v0.1.18
[INFO] [stderr]    Compiling diff v0.1.12
[INFO] [stderr]    Compiling pico-args v0.3.4
[INFO] [stderr]     Checking object v0.23.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling getrandom v0.2.2
[INFO] [stderr]    Compiling petgraph v0.5.1
[INFO] [stderr]    Compiling serde v1.0.123
[INFO] [stderr]    Compiling nix v0.17.0
[INFO] [stderr]     Checking tinyvec v1.1.1
[INFO] [stderr]     Checking phf v0.8.0
[INFO] [stderr]    Compiling syn v0.14.9
[INFO] [stderr]     Checking spin v0.4.10
[INFO] [stderr]    Compiling unicode-segmentation v1.7.1
[INFO] [stderr]    Compiling serde_derive v1.0.123
[INFO] [stderr]     Checking linked-hash-map v0.5.4
[INFO] [stderr]     Checking smallstr v0.2.0
[INFO] [stderr]     Checking linked_hash_set v0.1.4
[INFO] [stderr]     Checking unicode-normalization v0.1.16
[INFO] [stderr]     Checking symbol v0.1.7
[INFO] [stderr]    Compiling heck v0.3.2
[INFO] [stderr]     Checking regex v1.4.3
[INFO] [stderr]    Compiling dirs v1.0.5
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]     Checking dirs-sys v0.3.5
[INFO] [stderr]    Compiling term v0.5.2
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]     Checking dirs v2.0.2
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]    Compiling rand_pcg v0.2.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling ascii-canvas v2.0.0
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]     Checking addr2line v0.14.1
[INFO] [stderr]     Checking uuid v0.8.2
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking pretty_assertions v0.6.1
[INFO] [stderr]     Checking lalrpop-util v0.19.4
[INFO] [stderr]     Checking os_type v2.2.0
[INFO] [stderr]     Checking stderrlog v0.5.1
[INFO] [stderr]    Compiling phf_generator v0.8.0
[INFO] [stderr]    Compiling phf_codegen v0.8.0
[INFO] [stderr]    Compiling terminfo v0.7.3
[INFO] [stderr]     Checking backtrace v0.3.56
[INFO] [stderr]    Compiling lalrpop v0.19.4
[INFO] [stderr]    Compiling display_attr v0.1.1
[INFO] [stderr]     Checking toml v0.5.8
[INFO] [stderr]    Compiling synstructure v0.12.4
[INFO] [stderr]    Compiling structopt-derive v0.4.14
[INFO] [stderr]     Checking mortal v0.2.2
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking linefeed v0.6.0
[INFO] [stderr]     Checking structopt v0.3.21
[INFO] [stderr]     Checking human-panic v1.0.3
[INFO] [stderr]    Compiling evaltrees v0.2.0-pre (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/cst/parser/mod.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[cfg_attr(feature = "cargo-clippy", allow(clippy))]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/cst/parser/mod.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[cfg_attr(feature = "cargo-clippy", allow(clippy))]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/eval/lazy/apply.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     bail!("No matching clauses for call to {}", func)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `bail`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/eval/name/apply.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     bail!("No matching clauses for call to {}", func)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `bail`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/eval/lazy/apply.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     bail!("No matching clauses for call to {}", func)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `bail`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/eval/name/apply.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     bail!("No matching clauses for call to {}", func)
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]    = note: to ignore the value produced by the macro, add a semicolon after the invocation of `bail`
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/ast/convert.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ASTConversionError`
[INFO] [stdout] 13 | pub enum ASTConversionError {
[INFO] [stdout]    |          ------------------ `ASTConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/ast/convert.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ASTConversionError`
[INFO] [stdout] 13 | pub enum ASTConversionError {
[INFO] [stdout]    |          ------------------ `ASTConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/repl.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Clone, Debug, PartialEq)]
[INFO] [stdout]    |                        --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Evaluator(fn(Vec<Decl<()>>) -> Box<dyn Evaluator>),
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/typeck/mod.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_TypeError`
[INFO] [stdout] 27 | pub enum TypeError {
[INFO] [stdout]    |          --------- `TypeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/typeck/mod.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_TypeError`
[INFO] [stdout] 27 | pub enum TypeError {
[INFO] [stdout]    |          --------- `TypeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking evaltrees-cli v0.1.0 (/opt/rustwide/workdir/evaltrees-cli)
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> evaltrees-cli/src/options.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 |               Some(e) => bail!(
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 43 | |                 "Unknown evaluator `{}' (valid evaluators are `lazy', `name', and `value')",
[INFO] [stdout] 44 | |                 e
[INFO] [stdout] 45 | |             ),
[INFO] [stdout]    | |_____________^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> evaltrees-cli/src/options.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 |               Some(e) => bail!(
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 43 | |                 "Unknown evaluator `{}' (valid evaluators are `lazy', `name', and `value')",
[INFO] [stdout] 44 | |                 e
[INFO] [stdout] 45 | |             ),
[INFO] [stdout]    | |_____________^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/ast/convert.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_ASTConversionError`
[INFO] [stdout] 13 | pub enum ASTConversionError {
[INFO] [stdout]    |          ------------------ `ASTConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/ast/convert.rs:12:24
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_ASTConversionError`
[INFO] [stdout] 13 | pub enum ASTConversionError {
[INFO] [stdout]    |          ------------------ `ASTConversionError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/repl.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Clone, Debug, PartialEq)]
[INFO] [stdout]    |                        --------- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 14 |     Evaluator(fn(Vec<Decl<()>>) -> Box<dyn Evaluator>),
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/typeck/mod.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_TypeError`
[INFO] [stdout] 27 | pub enum TypeError {
[INFO] [stdout]    |          --------- `TypeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/typeck/mod.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_TypeError`
[INFO] [stdout] 27 | pub enum TypeError {
[INFO] [stdout]    |          --------- `TypeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `human-panic`
[INFO] [stderr]   --> evaltrees-cli/Cargo.toml:12:1
[INFO] [stderr]    |
[INFO] [stderr] 12 | human-panic = "1.0.0"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `human-panic`
[INFO] [stderr] warning: `evaltrees-cli` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.55s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: evaltrees v0.2.0-pre (/opt/rustwide/workdir), evaltrees-cli v0.1.0 (/opt/rustwide/workdir/evaltrees-cli), lalrpop v0.19.4, nom v5.1.2, syn v0.14.9, terminfo v0.7.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] running `Command { std: "docker" "inspect" "e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79", kill_on_drop: false }`
[INFO] [stdout] e02c259487abaf773d3e7af938a8efe35671d09dee632a61fdd74170bcd48f79
