[INFO] cloning repository https://github.com/MaybeS/cs420
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MaybeS/cs420" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMaybeS%2Fcs420", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMaybeS%2Fcs420'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e8a69a32768cfcb3ef42fd837803173c759d40af
[INFO] testing MaybeS/cs420 against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMaybeS%2Fcs420" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc1/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/MaybeS/cs420
[INFO] finished tweaking git repo https://github.com/MaybeS/cs420
[INFO] tweaked toml for git repo https://github.com/MaybeS/cs420 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/MaybeS/cs420 on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/MaybeS/cs420 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" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wait-timeout v0.2.0
[INFO] [stderr]   Downloaded tempfile v3.1.0
[INFO] [stderr]   Downloaded remove_dir_all v0.5.2
[INFO] [stderr]   Downloaded cfg-if v0.1.10
[INFO] [stderr]   Downloaded peg-runtime v0.6.2
[INFO] [stderr]   Downloaded unicode-xid v0.2.0
[INFO] [stderr]   Downloaded ordered-float v1.0.2
[INFO] [stderr]   Downloaded either v1.5.3
[INFO] [stderr]   Downloaded hexf v0.1.0
[INFO] [stderr]   Downloaded proc-macro-hack v0.3.3
[INFO] [stderr]   Downloaded proc-macro-hack-impl v0.3.3
[INFO] [stderr]   Downloaded hexf-parse v0.1.0
[INFO] [stderr]   Downloaded atty v0.2.14
[INFO] [stderr]   Downloaded quote v0.3.15
[INFO] [stderr]   Downloaded hexf-impl v0.1.0
[INFO] [stderr]   Downloaded hermit-abi v0.1.12
[INFO] [stderr]   Downloaded unicode-xid v0.0.4
[INFO] [stderr]   Downloaded strsim v0.8.0
[INFO] [stderr]   Downloaded autocfg v1.0.0
[INFO] [stderr]   Downloaded failure_derive v0.1.7
[INFO] [stderr]   Downloaded vec_map v0.8.1
[INFO] [stderr]   Downloaded redox_syscall v0.1.56
[INFO] [stderr]   Downloaded peg v0.6.2
[INFO] [stderr]   Downloaded synstructure v0.12.3
[INFO] [stderr]   Downloaded textwrap v0.11.0
[INFO] [stderr]   Downloaded getrandom v0.1.14
[INFO] [stderr]   Downloaded quote v1.0.3
[INFO] [stderr]   Downloaded synom v0.11.3
[INFO] [stderr]   Downloaded rustc-demangle v0.1.16
[INFO] [stderr]   Downloaded unicode-width v0.1.7
[INFO] [stderr]   Downloaded bitflags v1.2.1
[INFO] [stderr]   Downloaded ansi_term v0.11.0
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.6
[INFO] [stderr]   Downloaded peg-macros v0.6.2
[INFO] [stderr]   Downloaded failure v0.1.7
[INFO] [stderr]   Downloaded proc-macro2 v1.0.10
[INFO] [stderr]   Downloaded syn v0.11.11
[INFO] [stderr]   Downloaded yaml-rust v0.3.5
[INFO] [stderr]   Downloaded num-traits v0.2.11
[INFO] [stderr]   Downloaded lang-c v0.8.1
[INFO] [stderr]   Downloaded backtrace v0.3.46
[INFO] [stderr]   Downloaded itertools v0.9.0
[INFO] [stderr]   Downloaded cc v1.0.52
[INFO] [stderr]   Downloaded syn v1.0.18
[INFO] [stderr]   Downloaded clap v2.33.0
[INFO] [stderr]   Downloaded libc v0.2.69
[INFO] [stderr]   Downloaded backtrace-sys v0.1.36
[INFO] [stderr]   Downloaded winapi v0.3.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58
[INFO] running `Command { std: "docker" "start" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58", 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" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.69
[INFO] [stderr]    Compiling proc-macro2 v1.0.10
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling cc v1.0.52
[INFO] [stderr]    Compiling syn v1.0.18
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]    Compiling failure_derive v0.1.7
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]    Compiling ppv-lite86 v0.2.6
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]    Compiling proc-macro-hack-impl v0.3.3
[INFO] [stderr]    Compiling hexf-parse v0.1.0
[INFO] [stderr]    Compiling unicode-width v0.1.7
[INFO] [stderr]    Compiling rustc-demangle v0.1.16
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]    Compiling peg-runtime v0.6.2
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling proc-macro-hack v0.3.3
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling quote v1.0.3
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling yaml-rust v0.3.5
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling backtrace-sys v0.1.36
[INFO] [stderr]    Compiling peg-macros v0.6.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stderr]    Compiling hexf-impl v0.1.0
[INFO] [stderr]    Compiling vec_map v0.8.1
[INFO] [stderr]    Compiling remove_dir_all v0.5.2
[INFO] [stderr]    Compiling hexf v0.1.0
[INFO] [stderr]    Compiling ordered-float v1.0.2
[INFO] [stderr]    Compiling itertools v0.9.0
[INFO] [stderr]    Compiling clap v2.33.0
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling lang-c v0.8.1
[INFO] [stderr]    Compiling backtrace v0.3.46
[INFO] [stderr]    Compiling tempfile v3.1.0
[INFO] [stderr]    Compiling peg v0.6.2
[INFO] [stderr]    Compiling synstructure v0.12.3
[INFO] [stderr]    Compiling failure v0.1.7
[INFO] [stderr]    Compiling kecc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: struct `TODO` is never constructed
[INFO] [stdout]  --> src/asm/mod.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct TODO {}
[INFO] [stdout]   |            ^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/c/parse.rs:185:41
[INFO] [stdout]     |
[INFO] [stdout] 185 |             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 185 -             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stdout] 185 +             Self::Constant(_) => std::panic::panic_any(AlignmentSpecifier::Constant),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.deref()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/ir/mod.rs:237:79
[INFO] [stdout]     |
[INFO] [stdout] 237 |                   .expect("Load instruction must have pointer value as operand")
[INFO] [stdout]     |  _______________________________________________________________________________^
[INFO] [stdout] 238 | |                 .deref()
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `dtype::Dtype` does not implement `Deref`, so calling `deref` on `&dtype::Dtype` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 237 -                 .expect("Load instruction must have pointer value as operand")
[INFO] [stdout] 238 -                 .deref()
[INFO] [stdout] 237 +                 .expect("Load instruction must have pointer value as operand")
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `dtype::Dtype`, implement `Clone` for it
[INFO] [stdout]    --> src/ir/dtype.rs:38:1
[INFO] [stdout]     |
[INFO] [stdout]  38 + #[derive(Clone)]
[INFO] [stdout]  39 | pub enum Dtype {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains braces
[INFO] [stdout]    --> src/ir/mod.rs:728:35
[INFO] [stdout]     |
[INFO] [stdout] 728 |                  must be `Constant{{Int, Float}}`"
[INFO] [stdout]     |                                   ^^          ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string, but will be in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 727 |                 "{}", "constant value generated by `Constant::from_ast_expression` \
[INFO] [stdout]     |                 +++++
[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/ir/dtype.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stdout]    |                            ^---
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Fail` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_DtypeError`
[INFO] [stdout] 16 | pub enum DtypeError {
[INFO] [stdout]    |          ---------- `DtypeError` 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)]` implied by `#[warn(warnings)]`
[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/ir/dtype.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Fail)]
[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_DtypeError`
[INFO] [stdout] 16 | pub enum DtypeError {
[INFO] [stdout]    |          ---------- `DtypeError` 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/ir/interp.rs:304:28
[INFO] [stdout]     |
[INFO] [stdout] 304 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stdout]     |                            ^---
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            `Fail` is not local
[INFO] [stdout]     |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_InterpreterError`
[INFO] [stdout] 305 | pub enum InterpreterError {
[INFO] [stdout]     |          ---------------- `InterpreterError` 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/ir/interp.rs:304:28
[INFO] [stdout]     |
[INFO] [stdout] 304 | #[derive(Debug, PartialEq, Fail)]
[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_InterpreterError`
[INFO] [stdout] 305 | pub enum InterpreterError {
[INFO] [stdout]     |          ---------------- `InterpreterError` 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: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]     --> src/ir/interp.rs:1166:65
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State, InterpreterError> {
[INFO] [stdout]      |                 -- the lifetime is named here                   ^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]      = note: `#[warn(mismatched_lifetime_syntaxes)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: consistently use `'i`
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State<'i>, InterpreterError> {
[INFO] [stdout]      |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/ir/interp.rs:784:28
[INFO] [stdout]     |
[INFO] [stdout] 784 |                       panic!(format!(
[INFO] [stdout]     |  ____________________________^
[INFO] [stdout] 785 | |                         "calculate_typecast: not support case \
[INFO] [stdout] 786 | |                          typecast int to pointer when `value` is {}",
[INFO] [stdout] 787 | |                         value
[INFO] [stdout] 788 | |                     ))
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 784 ~                     panic!(
[INFO] [stdout] 785 |                         "calculate_typecast: not support case \
[INFO] [stdout] 786 |                          typecast int to pointer when `value` is {}",
[INFO] [stdout] 787 |                         value
[INFO] [stdout] 788 ~                     )
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> bin/fuzz.rs:15:17
[INFO] [stdout]     |
[INFO] [stdout]  15 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stdout]    --> bin/fuzz.rs:15:17
[INFO] [stdout]     |
[INFO] [stdout]  15 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     &(&(*VALUE))[..]
[INFO] [stdout]     |                      ++        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> bin/kecc.rs:23:17
[INFO] [stdout]     |
[INFO] [stdout]  23 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stdout]    --> bin/kecc.rs:23:17
[INFO] [stdout]     |
[INFO] [stdout]  23 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     &(&(*VALUE))[..]
[INFO] [stdout]     |                      ++        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 30.26s
[INFO] running `Command { std: "docker" "inspect" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] warning: struct `TODO` is never constructed
[INFO] [stdout]  --> src/asm/mod.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct TODO {}
[INFO] [stdout]   |            ^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/c/parse.rs:185:41
[INFO] [stdout]     |
[INFO] [stdout] 185 |             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 185 -             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stdout] 185 +             Self::Constant(_) => std::panic::panic_any(AlignmentSpecifier::Constant),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.deref()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/ir/mod.rs:237:79
[INFO] [stdout]     |
[INFO] [stdout] 237 |                   .expect("Load instruction must have pointer value as operand")
[INFO] [stdout]     |  _______________________________________________________________________________^
[INFO] [stdout] 238 | |                 .deref()
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `dtype::Dtype` does not implement `Deref`, so calling `deref` on `&dtype::Dtype` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 237 -                 .expect("Load instruction must have pointer value as operand")
[INFO] [stdout] 238 -                 .deref()
[INFO] [stdout] 237 +                 .expect("Load instruction must have pointer value as operand")
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `dtype::Dtype`, implement `Clone` for it
[INFO] [stdout]    --> src/ir/dtype.rs:38:1
[INFO] [stdout]     |
[INFO] [stdout]  38 + #[derive(Clone)]
[INFO] [stdout]  39 | pub enum Dtype {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains braces
[INFO] [stdout]    --> src/ir/mod.rs:728:35
[INFO] [stdout]     |
[INFO] [stdout] 728 |                  must be `Constant{{Int, Float}}`"
[INFO] [stdout]     |                                   ^^          ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string, but will be in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 727 |                 "{}", "constant value generated by `Constant::from_ast_expression` \
[INFO] [stdout]     |                 +++++
[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/ir/dtype.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stdout]    |                            ^---
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Fail` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_DtypeError`
[INFO] [stdout] 16 | pub enum DtypeError {
[INFO] [stdout]    |          ---------- `DtypeError` 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)]` implied by `#[warn(warnings)]`
[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/ir/dtype.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Fail)]
[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_DtypeError`
[INFO] [stdout] 16 | pub enum DtypeError {
[INFO] [stdout]    |          ---------- `DtypeError` 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/ir/interp.rs:304:28
[INFO] [stdout]     |
[INFO] [stdout] 304 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stdout]     |                            ^---
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            `Fail` is not local
[INFO] [stdout]     |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_InterpreterError`
[INFO] [stdout] 305 | pub enum InterpreterError {
[INFO] [stdout]     |          ---------------- `InterpreterError` 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]    Compiling kecc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/ir/interp.rs:304:28
[INFO] [stdout]     |
[INFO] [stdout] 304 | #[derive(Debug, PartialEq, Fail)]
[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_InterpreterError`
[INFO] [stdout] 305 | pub enum InterpreterError {
[INFO] [stdout]     |          ---------------- `InterpreterError` 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: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]     --> src/ir/interp.rs:1166:65
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State, InterpreterError> {
[INFO] [stdout]      |                 -- the lifetime is named here                   ^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]      = note: `#[warn(mismatched_lifetime_syntaxes)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: consistently use `'i`
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State<'i>, InterpreterError> {
[INFO] [stdout]      |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/ir/interp.rs:784:28
[INFO] [stdout]     |
[INFO] [stdout] 784 |                       panic!(format!(
[INFO] [stdout]     |  ____________________________^
[INFO] [stdout] 785 | |                         "calculate_typecast: not support case \
[INFO] [stdout] 786 | |                          typecast int to pointer when `value` is {}",
[INFO] [stdout] 787 | |                         value
[INFO] [stdout] 788 | |                     ))
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 784 ~                     panic!(
[INFO] [stdout] 785 |                         "calculate_typecast: not support case \
[INFO] [stdout] 786 |                          typecast int to pointer when `value` is {}",
[INFO] [stdout] 787 |                         value
[INFO] [stdout] 788 ~                     )
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> bin/kecc.rs:23:17
[INFO] [stdout]     |
[INFO] [stdout]  23 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stdout]    --> bin/kecc.rs:23:17
[INFO] [stdout]     |
[INFO] [stdout]  23 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     &(&(*VALUE))[..]
[INFO] [stdout]     |                      ++        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> bin/fuzz.rs:15:17
[INFO] [stdout]     |
[INFO] [stdout]  15 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stdout]    --> bin/fuzz.rs:15:17
[INFO] [stdout]     |
[INFO] [stdout]  15 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     &(&(*VALUE))[..]
[INFO] [stdout]     |                      ++        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> bin/fuzz.rs:15:17
[INFO] [stdout]     |
[INFO] [stdout]  15 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stdout]    --> bin/fuzz.rs:15:17
[INFO] [stdout]     |
[INFO] [stdout]  15 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     &(&(*VALUE))[..]
[INFO] [stdout]     |                      ++        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> bin/kecc.rs:23:17
[INFO] [stdout]     |
[INFO] [stdout]  23 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stdout]    --> bin/kecc.rs:23:17
[INFO] [stdout]     |
[INFO] [stdout]  23 |         .author(crate_authors!(", "))
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stdout]     |
[INFO] [stdout] 479 |                     &(&(*VALUE))[..]
[INFO] [stdout]     |                      ++        +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TODO` is never constructed
[INFO] [stdout]  --> src/asm/mod.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct TODO {}
[INFO] [stdout]   |            ^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/c/parse.rs:185:41
[INFO] [stdout]     |
[INFO] [stdout] 185 |             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 185 -             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stdout] 185 +             Self::Constant(_) => std::panic::panic_any(AlignmentSpecifier::Constant),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.deref()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/ir/mod.rs:237:79
[INFO] [stdout]     |
[INFO] [stdout] 237 |                   .expect("Load instruction must have pointer value as operand")
[INFO] [stdout]     |  _______________________________________________________________________________^
[INFO] [stdout] 238 | |                 .deref()
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `dtype::Dtype` does not implement `Deref`, so calling `deref` on `&dtype::Dtype` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 237 -                 .expect("Load instruction must have pointer value as operand")
[INFO] [stdout] 238 -                 .deref()
[INFO] [stdout] 237 +                 .expect("Load instruction must have pointer value as operand")
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `dtype::Dtype`, implement `Clone` for it
[INFO] [stdout]    --> src/ir/dtype.rs:38:1
[INFO] [stdout]     |
[INFO] [stdout]  38 + #[derive(Clone)]
[INFO] [stdout]  39 | pub enum Dtype {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains braces
[INFO] [stdout]    --> src/ir/mod.rs:728:35
[INFO] [stdout]     |
[INFO] [stdout] 728 |                  must be `Constant{{Int, Float}}`"
[INFO] [stdout]     |                                   ^^          ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string, but will be in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 727 |                 "{}", "constant value generated by `Constant::from_ast_expression` \
[INFO] [stdout]     |                 +++++
[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/ir/dtype.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stdout]    |                            ^---
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Fail` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_DtypeError`
[INFO] [stdout] 16 | pub enum DtypeError {
[INFO] [stdout]    |          ---------- `DtypeError` 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)]` implied by `#[warn(warnings)]`
[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/ir/dtype.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Fail)]
[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_DtypeError`
[INFO] [stdout] 16 | pub enum DtypeError {
[INFO] [stdout]    |          ---------- `DtypeError` 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/ir/interp.rs:304:28
[INFO] [stdout]     |
[INFO] [stdout] 304 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stdout]     |                            ^---
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            `Fail` is not local
[INFO] [stdout]     |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_InterpreterError`
[INFO] [stdout] 305 | pub enum InterpreterError {
[INFO] [stdout]     |          ---------------- `InterpreterError` 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/ir/interp.rs:304:28
[INFO] [stdout]     |
[INFO] [stdout] 304 | #[derive(Debug, PartialEq, Fail)]
[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_InterpreterError`
[INFO] [stdout] 305 | pub enum InterpreterError {
[INFO] [stdout]     |          ---------------- `InterpreterError` 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: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]     --> src/ir/interp.rs:1166:65
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State, InterpreterError> {
[INFO] [stdout]      |                 -- the lifetime is named here                   ^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]      = note: `#[warn(mismatched_lifetime_syntaxes)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: consistently use `'i`
[INFO] [stdout]      |
[INFO] [stdout] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State<'i>, InterpreterError> {
[INFO] [stdout]      |                                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/ir/interp.rs:784:28
[INFO] [stdout]     |
[INFO] [stdout] 784 |                       panic!(format!(
[INFO] [stdout]     |  ____________________________^
[INFO] [stdout] 785 | |                         "calculate_typecast: not support case \
[INFO] [stdout] 786 | |                          typecast int to pointer when `value` is {}",
[INFO] [stdout] 787 | |                         value
[INFO] [stdout] 788 | |                     ))
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 784 ~                     panic!(
[INFO] [stdout] 785 |                         "calculate_typecast: not support case \
[INFO] [stdout] 786 |                          typecast int to pointer when `value` is {}",
[INFO] [stdout] 787 |                         value
[INFO] [stdout] 788 ~                     )
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.21s
[INFO] running `Command { std: "docker" "inspect" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: struct `TODO` is never constructed
[INFO] [stderr]  --> src/asm/mod.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub struct TODO {}
[INFO] [stderr]   |            ^^^^
[INFO] [stderr]   |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]  --> src/lib.rs:1:9
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![deny(warnings)]
[INFO] [stderr]   |         ^^^^^^^^
[INFO] [stderr]   = note: `#[warn(dead_code)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/c/parse.rs:185:41
[INFO] [stderr]     |
[INFO] [stderr] 185 |             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` implied by `#[warn(warnings)]`
[INFO] [stderr] help: use std::panic::panic_any instead
[INFO] [stderr]     |
[INFO] [stderr] 185 -             Self::Constant(_) => panic!(AlignmentSpecifier::Constant),
[INFO] [stderr] 185 +             Self::Constant(_) => std::panic::panic_any(AlignmentSpecifier::Constant),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.deref()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/ir/mod.rs:237:79
[INFO] [stderr]     |
[INFO] [stderr] 237 |                   .expect("Load instruction must have pointer value as operand")
[INFO] [stderr]     |  _______________________________________________________________________________^
[INFO] [stderr] 238 | |                 .deref()
[INFO] [stderr]     | |________________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `dtype::Dtype` does not implement `Deref`, so calling `deref` on `&dtype::Dtype` copies the reference, which does not do anything and can be removed
[INFO] [stderr]     = note: `#[warn(noop_method_call)]` implied by `#[warn(warnings)]`
[INFO] [stderr] help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr] 237 -                 .expect("Load instruction must have pointer value as operand")
[INFO] [stderr] 238 -                 .deref()
[INFO] [stderr] 237 +                 .expect("Load instruction must have pointer value as operand")
[INFO] [stderr]     |
[INFO] [stderr] help: if you meant to clone `dtype::Dtype`, implement `Clone` for it
[INFO] [stderr]    --> src/ir/dtype.rs:38:1
[INFO] [stderr]     |
[INFO] [stderr]  38 + #[derive(Clone)]
[INFO] [stderr]  39 | pub enum Dtype {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message contains braces
[INFO] [stderr]    --> src/ir/mod.rs:728:35
[INFO] [stderr]     |
[INFO] [stderr] 728 |                  must be `Constant{{Int, Float}}`"
[INFO] [stderr]     |                                   ^^          ^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this message is not used as a format string, but will be in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to use the message literally
[INFO] [stderr]     |
[INFO] [stderr] 727 |                 "{}", "constant value generated by `Constant::from_ast_expression` \
[INFO] [stderr]     |                 +++++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/ir/dtype.rs:15:28
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stderr]    |                            ^---
[INFO] [stderr]    |                            |
[INFO] [stderr]    |                            `Fail` is not local
[INFO] [stderr]    |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_DtypeError`
[INFO] [stderr] 16 | pub enum DtypeError {
[INFO] [stderr]    |          ---------- `DtypeError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: `#[warn(non_local_definitions)]` implied by `#[warn(warnings)]`
[INFO] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/ir/dtype.rs:15:28
[INFO] [stderr]    |
[INFO] [stderr] 15 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stderr]    |                            ^---
[INFO] [stderr]    |                            |
[INFO] [stderr]    |                            `Display` is not local
[INFO] [stderr]    |                            move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_DtypeError`
[INFO] [stderr] 16 | pub enum DtypeError {
[INFO] [stderr]    |          ---------- `DtypeError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/ir/interp.rs:304:28
[INFO] [stderr]     |
[INFO] [stderr] 304 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stderr]     |                            ^---
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            `Fail` is not local
[INFO] [stderr]     |                            move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_InterpreterError`
[INFO] [stderr] 305 | pub enum InterpreterError {
[INFO] [stderr]     |          ---------------- `InterpreterError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/ir/interp.rs:304:28
[INFO] [stderr]     |
[INFO] [stderr] 304 | #[derive(Debug, PartialEq, Fail)]
[INFO] [stderr]     |                            ^---
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            `Display` is not local
[INFO] [stderr]     |                            move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_InterpreterError`
[INFO] [stderr] 305 | pub enum InterpreterError {
[INFO] [stderr]     |          ---------------- `InterpreterError` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = 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] [stderr]     = 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] [stderr]     = 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] [stderr]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]     --> src/ir/interp.rs:1166:65
[INFO] [stderr]      |
[INFO] [stderr] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State, InterpreterError> {
[INFO] [stderr]      |                 -- the lifetime is named here                   ^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]      = note: `#[warn(mismatched_lifetime_syntaxes)]` implied by `#[warn(warnings)]`
[INFO] [stderr] help: consistently use `'i`
[INFO] [stderr]      |
[INFO] [stderr] 1166 |     fn new(ir: &'i TranslationUnit, args: Vec<Value>) -> Result<State<'i>, InterpreterError> {
[INFO] [stderr]      |                                                                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/ir/interp.rs:784:28
[INFO] [stderr]     |
[INFO] [stderr] 784 |                       panic!(format!(
[INFO] [stderr]     |  ____________________________^
[INFO] [stderr] 785 | |                         "calculate_typecast: not support case \
[INFO] [stderr] 786 | |                          typecast int to pointer when `value` is {}",
[INFO] [stderr] 787 | |                         value
[INFO] [stderr] 788 | |                     ))
[INFO] [stderr]     | |_____________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 784 ~                     panic!(
[INFO] [stderr] 785 |                         "calculate_typecast: not support case \
[INFO] [stderr] 786 |                          typecast int to pointer when `value` is {}",
[INFO] [stderr] 787 |                         value
[INFO] [stderr] 788 ~                     )
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `kecc` (lib) generated 10 warnings (run `cargo fix --lib -p kecc` to apply 5 suggestions)
[INFO] [stderr] warning: `kecc` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stderr]    --> bin/kecc.rs:23:17
[INFO] [stderr]     |
[INFO] [stderr]  23 |         .author(crate_authors!(", "))
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stderr]     |
[INFO] [stderr]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stderr] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stderr]    --> bin/kecc.rs:23:17
[INFO] [stderr]     |
[INFO] [stderr]  23 |         .author(crate_authors!(", "))
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stderr]     |
[INFO] [stderr] 479 |                     &(&(*VALUE))[..]
[INFO] [stderr]     |                      ++        +
[INFO] [stderr] 
[INFO] [stderr] warning: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stderr]    --> bin/fuzz.rs:15:17
[INFO] [stderr]     |
[INFO] [stderr]  15 |         .author(crate_authors!(", "))
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^ this raw pointer has type `*const String`
[INFO] [stderr]     |
[INFO] [stderr]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stderr] note: autoref is being applied to this expression, resulting in: `&String`
[INFO] [stderr]    --> bin/fuzz.rs:15:17
[INFO] [stderr]     |
[INFO] [stderr]  15 |         .author(crate_authors!(", "))
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(dangerous_implicit_autorefs)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `crate_authors` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stderr]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.33.0/src/macros.rs:479:22
[INFO] [stderr]     |
[INFO] [stderr] 479 |                     &(&(*VALUE))[..]
[INFO] [stderr]     |                      ++        +
[INFO] [stderr] 
[INFO] [stderr] warning: `kecc` (bin "kecc") generated 1 warning
[INFO] [stderr] warning: `kecc` (bin "kecc" test) generated 1 warning (1 duplicate)
[INFO] [stderr] warning: `kecc` (bin "fuzz") generated 1 warning
[INFO] [stderr] warning: `kecc` (bin "fuzz" test) generated 1 warning (1 duplicate)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kecc-6d7378d9b302de33)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests bin/fuzz.rs (/opt/rustwide/target/debug/deps/fuzz-3b9ee02101420f44)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests bin/kecc.rs (/opt/rustwide/target/debug/deps/kecc-c9c6956372d7e84e)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/test_examples.rs (/opt/rustwide/target/debug/deps/test_examples-576df8d976299dd0)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test test_examples_gvn ... FAILED
[INFO] [stdout] test test_examples_asmgen_large ... FAILED
[INFO] [stdout] test test_examples_deadcode ... FAILED
[INFO] [stdout] test test_examples_mem2reg ... FAILED
[INFO] [stdout] test test_examples_irparse ... FAILED
[INFO] [stdout] test test_examples_asmgen_small ... FAILED
[INFO] [stdout] test test_examples_simplify_cfg ... FAILED
[INFO] [stderr] error: test failed, to rerun pass `--test test_examples`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/deps/test_examples-576df8d976299dd0` (exit status: 102)
[INFO] [stderr] note: test exited abnormally; to see the full output pass --no-capture to the harness.
[INFO] running `Command { std: "docker" "inspect" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58", kill_on_drop: false }`
[INFO] [stdout] cf36676ceda54fb13b02cc37b4b5a4beca6ada42dea753ecd7c27bc21cfc5d58
