[INFO] cloning repository https://github.com/HMPerson1/plotany
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/HMPerson1/plotany" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHMPerson1%2Fplotany", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHMPerson1%2Fplotany'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0652f1623725b5273dbf158333068cb7f2fc3c59
[INFO] testing HMPerson1/plotany against try#9f93af291970322f4f1c6315ccde4d7078201159 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHMPerson1%2Fplotany" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/HMPerson1/plotany
[INFO] finished tweaking git repo https://github.com/HMPerson1/plotany
[INFO] tweaked toml for git repo https://github.com/HMPerson1/plotany written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/HMPerson1/plotany on toolchain 9f93af291970322f4f1c6315ccde4d7078201159
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/HMPerson1/plotany 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" "+9f93af291970322f4f1c6315ccde4d7078201159" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1de14a2f88992cc87ef33d421ddc8a0851fbd5d5f3ff65242e4ac32b0d380d47
[INFO] running `Command { std: "docker" "start" "-a" "1de14a2f88992cc87ef33d421ddc8a0851fbd5d5f3ff65242e4ac32b0d380d47", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1de14a2f88992cc87ef33d421ddc8a0851fbd5d5f3ff65242e4ac32b0d380d47", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1de14a2f88992cc87ef33d421ddc8a0851fbd5d5f3ff65242e4ac32b0d380d47", kill_on_drop: false }`
[INFO] [stdout] 1de14a2f88992cc87ef33d421ddc8a0851fbd5d5f3ff65242e4ac32b0d380d47
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b854376158aee6dcd4598a22a0de198eb3f3be7274cffd08b887c703a354f750
[INFO] running `Command { std: "docker" "start" "-a" "b854376158aee6dcd4598a22a0de198eb3f3be7274cffd08b887c703a354f750", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.32
[INFO] [stderr]    Compiling syn v1.0.81
[INFO] [stderr]    Compiling smallvec v1.7.0
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling unicode-segmentation v1.8.0
[INFO] [stderr]    Compiling anyhow v1.0.44
[INFO] [stderr]    Compiling either v1.6.1
[INFO] [stderr]    Compiling pkg-config v0.3.22
[INFO] [stderr]    Compiling strum v0.21.0
[INFO] [stderr]    Compiling version-compare v0.0.11
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling libc v0.2.105
[INFO] [stderr]    Compiling version_check v0.9.3
[INFO] [stderr]    Compiling futures-core v0.3.17
[INFO] [stderr]    Compiling futures-task v0.3.17
[INFO] [stderr]    Compiling cfg-expr v0.8.1
[INFO] [stderr]    Compiling itertools v0.10.1
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling slab v0.4.5
[INFO] [stderr]    Compiling futures-channel v0.3.17
[INFO] [stderr]    Compiling pin-project-lite v0.2.7
[INFO] [stderr]    Compiling once_cell v1.8.0
[INFO] [stderr]    Compiling ucd-trie v0.1.3
[INFO] [stderr]    Compiling futures-util v0.3.17
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling parking_lot_core v0.8.5
[INFO] [stderr]    Compiling indexmap v1.7.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling instant v0.1.12
[INFO] [stderr]    Compiling pest v2.1.3
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling lock_api v0.4.5
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling siphasher v0.3.7
[INFO] [stderr]    Compiling gio v0.14.8
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling regex-syntax v0.6.25
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.4
[INFO] [stderr]    Compiling futures-io v0.3.17
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]    Compiling dirs-sys-next v0.1.2
[INFO] [stderr]    Compiling fixedbitset v0.2.0
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling phf_shared v0.8.0
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling term v0.7.0
[INFO] [stderr]    Compiling semver-parser v0.10.2
[INFO] [stderr]    Compiling bit-set v0.5.2
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling ena v0.14.0
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling string_cache v0.8.2
[INFO] [stderr]    Compiling diff v0.1.12
[INFO] [stderr]    Compiling pico-args v0.4.2
[INFO] [stderr]    Compiling petgraph v0.5.1
[INFO] [stderr]    Compiling ascii-canvas v3.0.0
[INFO] [stderr]    Compiling gtk v0.14.3
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling futures-executor v0.3.17
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling matrixmultiply v0.3.1
[INFO] [stderr]    Compiling semver v0.11.0
[INFO] [stderr]    Compiling rustc_version v0.3.3
[INFO] [stderr]    Compiling num-complex v0.4.0
[INFO] [stderr]    Compiling regex v1.5.4
[INFO] [stderr]    Compiling field-offset v0.3.4
[INFO] [stderr]    Compiling ndarray v0.15.3
[INFO] [stderr]    Compiling lalrpop-util v0.19.6
[INFO] [stderr]    Compiling lalrpop v0.19.6
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]    Compiling thiserror-impl v1.0.30
[INFO] [stderr]    Compiling strum_macros v0.21.1
[INFO] [stderr]    Compiling thiserror v1.0.30
[INFO] [stderr]    Compiling proc-macro-crate v1.1.0
[INFO] [stderr]    Compiling system-deps v3.2.0
[INFO] [stderr]    Compiling glib-macros v0.14.1
[INFO] [stderr]    Compiling gtk3-macros v0.14.0
[INFO] [stderr]    Compiling glib-sys v0.14.0
[INFO] [stderr]    Compiling gobject-sys v0.14.0
[INFO] [stderr]    Compiling gio-sys v0.14.0
[INFO] [stderr]    Compiling gdk-pixbuf-sys v0.14.0
[INFO] [stderr]    Compiling cairo-sys-rs v0.14.9
[INFO] [stderr]    Compiling pango-sys v0.14.0
[INFO] [stderr]    Compiling gdk-sys v0.14.0
[INFO] [stderr]    Compiling atk-sys v0.14.0
[INFO] [stderr]    Compiling gtk-sys v0.14.0
[INFO] [stderr]    Compiling glib v0.14.8
[INFO] [stderr]    Compiling plotany v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling cairo-rs v0.14.9
[INFO] [stderr]    Compiling pango v0.14.8
[INFO] [stderr]    Compiling atk v0.14.0
[INFO] [stderr]    Compiling gdk-pixbuf v0.14.0
[INFO] [stderr]    Compiling gdk v0.14.3
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/main.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", warn(clippy,clippy_pedantic))]
[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/main.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![cfg_attr(feature = "cargo-clippy", allow(missing_docs_in_private_items))]
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[cfg_attr(feature = "cargo-clippy", allow(clippy,clippy_pedantic))]
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::__parse__Expr::ExprParser`
[INFO] [stdout]     --> /opt/rustwide/target/debug/build/plotany-c9b15df58d71559a/out/expr_parser.rs:2711:9
[INFO] [stdout]      |
[INFO] [stdout] 2711 | pub use self::__parse__Expr::ExprParser;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:45:30
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn main0() -> Result<(), Box<Error>> {
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn main0() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/expr.rs:258:51
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn bind2(self, v1: &str, v2: &str) -> Box<FnMut(f64, f64) -> f64> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn bind2(self, v1: &str, v2: &str) -> Box<dyn FnMut(f64, f64) -> f64> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:72:35
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let eq: Rc<RefCell<Option<Box<FnMut(f64, f64) -> f64>>>> = Default::default();
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let eq: Rc<RefCell<Option<Box<dyn FnMut(f64, f64) -> f64>>>> = Default::default();
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry_stack`
[INFO] [stdout]   --> src/main.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |               let $n : $t = $b.object(stringify!($n))
[INFO] [stdout]    |                   ^^
[INFO] [stdout] ...
[INFO] [stdout] 53 | /     get_objects_from_builder!(builder,
[INFO] [stdout] 54 | |                               window: gtk::Window,
[INFO] [stdout] 55 | |                               drawing: gtk::DrawingArea,
[INFO] [stdout] 56 | |                               entry_stack: gtk::Stack,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |                               info_label: gtk::Label,
[INFO] [stdout] 65 | |                               info_bar_revealer: gtk::Revealer);
[INFO] [stdout]    | |_______________________________________________________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `entry_stack` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/main.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |               let $n : $t = $b.object(stringify!($n))
[INFO] [stdout]    |                   ^^
[INFO] [stdout] ...
[INFO] [stdout] 53 | /     get_objects_from_builder!(builder,
[INFO] [stdout] 54 | |                               window: gtk::Window,
[INFO] [stdout] 55 | |                               drawing: gtk::DrawingArea,
[INFO] [stdout] 56 | |                               entry_stack: gtk::Stack,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |                               info_label: gtk::Label,
[INFO] [stdout] 65 | |                               info_bar_revealer: gtk::Revealer);
[INFO] [stdout]    | |_______________________________________________________________- in this macro invocation
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `get_objects_from_builder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EvalError` is never used
[INFO] [stdout]    --> src/expr.rs:106:10
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum EvalError<'a> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eval_diff` is never used
[INFO] [stdout]    --> src/expr.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | impl Equation {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eval` is never used
[INFO] [stdout]    --> src/expr.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Expr {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eval` is never used
[INFO] [stdout]    --> src/expr.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl BaseExpr<String> {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_var` and `eval` are never used
[INFO] [stdout]    --> src/expr.rs:252:12
[INFO] [stdout]     |
[INFO] [stdout] 248 | impl CompiledExpr {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn set_var(&mut self, name: &str, value: f64) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub fn eval(&self) -> f64 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]     --> /opt/rustwide/target/debug/build/plotany-c9b15df58d71559a/out/expr_parser.rs:1825:16
[INFO] [stdout]      |
[INFO] [stdout] 1824 |     impl ExprParser {
[INFO] [stdout]      |     --------------- associated function in this implementation
[INFO] [stdout] 1825 |         pub fn new() -> ExprParser {
[INFO] [stdout]      |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/expr.rs:116:38
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |                                      ^^^^^ the lifetime is elided 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)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stdout]     |                                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/expr.rs:126:33
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |                                 ^^^^^ the lifetime is elided 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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stdout]     |                                                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/expr.rs:233:33
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |                                 ^^^^^ the lifetime is elided 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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stdout]     |                                                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     ctx.paint();
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let _ = ctx.paint();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     ctx.save();
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let _ = ctx.save();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     ctx.stroke();
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let _ = ctx.stroke();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     ctx.restore();
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let _ = ctx.restore();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/marching_squares.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 110 |     ctx.save();
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let _ = ctx.save();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/marching_squares.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 114 |     ctx.stroke();
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 114 |     let _ = ctx.stroke();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/marching_squares.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     ctx.restore();
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let _ = ctx.restore();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 33s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: lalrpop v0.19.6
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "b854376158aee6dcd4598a22a0de198eb3f3be7274cffd08b887c703a354f750", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b854376158aee6dcd4598a22a0de198eb3f3be7274cffd08b887c703a354f750", kill_on_drop: false }`
[INFO] [stdout] b854376158aee6dcd4598a22a0de198eb3f3be7274cffd08b887c703a354f750
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 043a5857f9eac40a8ae53e8cdf4e7de0332f80a12f693c031ce58877d7bf2d53
[INFO] running `Command { std: "docker" "start" "-a" "043a5857f9eac40a8ae53e8cdf4e7de0332f80a12f693c031ce58877d7bf2d53", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling plotany v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/main.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![cfg_attr(feature = "cargo-clippy", warn(clippy,clippy_pedantic))]
[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/main.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![cfg_attr(feature = "cargo-clippy", allow(missing_docs_in_private_items))]
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/main.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[cfg_attr(feature = "cargo-clippy", allow(clippy,clippy_pedantic))]
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self::__parse__Expr::ExprParser`
[INFO] [stdout]     --> /opt/rustwide/target/debug/build/plotany-c9b15df58d71559a/out/expr_parser.rs:2711:9
[INFO] [stdout]      |
[INFO] [stdout] 2711 | pub use self::__parse__Expr::ExprParser;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:45:30
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn main0() -> Result<(), Box<Error>> {
[INFO] [stdout]    |                              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn main0() -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/expr.rs:258:51
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn bind2(self, v1: &str, v2: &str) -> Box<FnMut(f64, f64) -> f64> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn bind2(self, v1: &str, v2: &str) -> Box<dyn FnMut(f64, f64) -> f64> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:72:35
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let eq: Rc<RefCell<Option<Box<FnMut(f64, f64) -> f64>>>> = Default::default();
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     let eq: Rc<RefCell<Option<Box<dyn FnMut(f64, f64) -> f64>>>> = Default::default();
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entry_stack`
[INFO] [stdout]   --> src/main.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |               let $n : $t = $b.object(stringify!($n))
[INFO] [stdout]    |                   ^^
[INFO] [stdout] ...
[INFO] [stdout] 53 | /     get_objects_from_builder!(builder,
[INFO] [stdout] 54 | |                               window: gtk::Window,
[INFO] [stdout] 55 | |                               drawing: gtk::DrawingArea,
[INFO] [stdout] 56 | |                               entry_stack: gtk::Stack,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |                               info_label: gtk::Label,
[INFO] [stdout] 65 | |                               info_bar_revealer: gtk::Revealer);
[INFO] [stdout]    | |_______________________________________________________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] help: `entry_stack` is captured in macro and introduced a unused variable
[INFO] [stdout]   --> src/main.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |               let $n : $t = $b.object(stringify!($n))
[INFO] [stdout]    |                   ^^
[INFO] [stdout] ...
[INFO] [stdout] 53 | /     get_objects_from_builder!(builder,
[INFO] [stdout] 54 | |                               window: gtk::Window,
[INFO] [stdout] 55 | |                               drawing: gtk::DrawingArea,
[INFO] [stdout] 56 | |                               entry_stack: gtk::Stack,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |                               info_label: gtk::Label,
[INFO] [stdout] 65 | |                               info_bar_revealer: gtk::Revealer);
[INFO] [stdout]    | |_______________________________________________________________- in this macro invocation
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `get_objects_from_builder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EvalError` is never used
[INFO] [stdout]    --> src/expr.rs:106:10
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub enum EvalError<'a> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eval_diff` is never used
[INFO] [stdout]    --> src/expr.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout] 110 | impl Equation {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eval` is never used
[INFO] [stdout]    --> src/expr.rs:126:12
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Expr {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eval` is never used
[INFO] [stdout]    --> src/expr.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl BaseExpr<String> {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_var` and `eval` are never used
[INFO] [stdout]    --> src/expr.rs:252:12
[INFO] [stdout]     |
[INFO] [stdout] 248 | impl CompiledExpr {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn set_var(&mut self, name: &str, value: f64) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     pub fn eval(&self) -> f64 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]     --> /opt/rustwide/target/debug/build/plotany-c9b15df58d71559a/out/expr_parser.rs:1825:16
[INFO] [stdout]      |
[INFO] [stdout] 1824 |     impl ExprParser {
[INFO] [stdout]      |     --------------- associated function in this implementation
[INFO] [stdout] 1825 |         pub fn new() -> ExprParser {
[INFO] [stdout]      |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/expr.rs:116:38
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |                                      ^^^^^ the lifetime is elided 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)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stdout]     |                                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/expr.rs:126:33
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |                                 ^^^^^ the lifetime is elided 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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stdout]     |                                                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/expr.rs:233:33
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stdout]     |                                 ^^^^^ the lifetime is elided 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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stdout]     |                                                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     ctx.paint();
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let _ = ctx.paint();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     ctx.save();
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let _ = ctx.save();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     ctx.stroke();
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let _ = ctx.stroke();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/marching_squares.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     ctx.restore();
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let _ = ctx.restore();
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/marching_squares.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 110 |     ctx.save();
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let _ = ctx.save();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/marching_squares.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 114 |     ctx.stroke();
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 114 |     let _ = ctx.stroke();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/marching_squares.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     ctx.restore();
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let _ = ctx.restore();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.00s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: lalrpop v0.19.6
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "043a5857f9eac40a8ae53e8cdf4e7de0332f80a12f693c031ce58877d7bf2d53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "043a5857f9eac40a8ae53e8cdf4e7de0332f80a12f693c031ce58877d7bf2d53", kill_on_drop: false }`
[INFO] [stdout] 043a5857f9eac40a8ae53e8cdf4e7de0332f80a12f693c031ce58877d7bf2d53
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+9f93af291970322f4f1c6315ccde4d7078201159" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a46c12e92063c27812fec00ca94856b89571789c0417dacbd6f83a0e72661f8f
[INFO] running `Command { std: "docker" "start" "-a" "a46c12e92063c27812fec00ca94856b89571789c0417dacbd6f83a0e72661f8f", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]  --> src/main.rs:1:13
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![cfg_attr(feature = "cargo-clippy", warn(clippy,clippy_pedantic))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]  --> src/main.rs:2:13
[INFO] [stderr]   |
[INFO] [stderr] 2 | #![cfg_attr(feature = "cargo-clippy", allow(missing_docs_in_private_items))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stderr]   --> src/main.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | #[cfg_attr(feature = "cargo-clippy", allow(clippy,clippy_pedantic))]
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `cargo-clippy` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self::__parse__Expr::ExprParser`
[INFO] [stderr]     --> /opt/rustwide/target/debug/build/plotany-c9b15df58d71559a/out/expr_parser.rs:2711:9
[INFO] [stderr]      |
[INFO] [stderr] 2711 | pub use self::__parse__Expr::ExprParser;
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:45:30
[INFO] [stderr]    |
[INFO] [stderr] 45 | fn main0() -> Result<(), Box<Error>> {
[INFO] [stderr]    |                              ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 45 | fn main0() -> Result<(), Box<dyn Error>> {
[INFO] [stderr]    |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/expr.rs:258:51
[INFO] [stderr]     |
[INFO] [stderr] 258 |     pub fn bind2(self, v1: &str, v2: &str) -> Box<FnMut(f64, f64) -> f64> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 258 |     pub fn bind2(self, v1: &str, v2: &str) -> Box<dyn FnMut(f64, f64) -> f64> {
[INFO] [stderr]     |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/main.rs:72:35
[INFO] [stderr]    |
[INFO] [stderr] 72 |     let eq: Rc<RefCell<Option<Box<FnMut(f64, f64) -> f64>>>> = Default::default();
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 72 |     let eq: Rc<RefCell<Option<Box<dyn FnMut(f64, f64) -> f64>>>> = Default::default();
[INFO] [stderr]    |                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `entry_stack`
[INFO] [stderr]   --> src/main.rs:32:17
[INFO] [stderr]    |
[INFO] [stderr] 32 |               let $n : $t = $b.object(stringify!($n))
[INFO] [stderr]    |                   ^^
[INFO] [stderr] ...
[INFO] [stderr] 53 | /     get_objects_from_builder!(builder,
[INFO] [stderr] 54 | |                               window: gtk::Window,
[INFO] [stderr] 55 | |                               drawing: gtk::DrawingArea,
[INFO] [stderr] 56 | |                               entry_stack: gtk::Stack,
[INFO] [stderr] ...  |
[INFO] [stderr] 64 | |                               info_label: gtk::Label,
[INFO] [stderr] 65 | |                               info_bar_revealer: gtk::Revealer);
[INFO] [stderr]    | |_______________________________________________________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr] help: `entry_stack` is captured in macro and introduced a unused variable
[INFO] [stderr]   --> src/main.rs:32:17
[INFO] [stderr]    |
[INFO] [stderr] 32 |               let $n : $t = $b.object(stringify!($n))
[INFO] [stderr]    |                   ^^
[INFO] [stderr] ...
[INFO] [stderr] 53 | /     get_objects_from_builder!(builder,
[INFO] [stderr] 54 | |                               window: gtk::Window,
[INFO] [stderr] 55 | |                               drawing: gtk::DrawingArea,
[INFO] [stderr] 56 | |                               entry_stack: gtk::Stack,
[INFO] [stderr] ...  |
[INFO] [stderr] 64 | |                               info_label: gtk::Label,
[INFO] [stderr] 65 | |                               info_bar_revealer: gtk::Revealer);
[INFO] [stderr]    | |_______________________________________________________________- in this macro invocation
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr]    = note: this warning originates in the macro `get_objects_from_builder` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: enum `EvalError` is never used
[INFO] [stderr]    --> src/expr.rs:106:10
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub enum EvalError<'a> {
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `eval_diff` is never used
[INFO] [stderr]    --> src/expr.rs:116:12
[INFO] [stderr]     |
[INFO] [stderr] 110 | impl Equation {
[INFO] [stderr]     | ------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `eval` is never used
[INFO] [stderr]    --> src/expr.rs:126:12
[INFO] [stderr]     |
[INFO] [stderr] 125 | impl Expr {
[INFO] [stderr]     | --------- method in this implementation
[INFO] [stderr] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `eval` is never used
[INFO] [stderr]    --> src/expr.rs:233:12
[INFO] [stderr]     |
[INFO] [stderr] 232 | impl BaseExpr<String> {
[INFO] [stderr]     | --------------------- method in this implementation
[INFO] [stderr] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `set_var` and `eval` are never used
[INFO] [stderr]    --> src/expr.rs:252:12
[INFO] [stderr]     |
[INFO] [stderr] 248 | impl CompiledExpr {
[INFO] [stderr]     | ----------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 252 |     pub fn set_var(&mut self, name: &str, value: f64) {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 255 |     pub fn eval(&self) -> f64 {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]     --> /opt/rustwide/target/debug/build/plotany-c9b15df58d71559a/out/expr_parser.rs:1825:16
[INFO] [stderr]      |
[INFO] [stderr] 1824 |     impl ExprParser {
[INFO] [stderr]      |     --------------- associated function in this implementation
[INFO] [stderr] 1825 |         pub fn new() -> ExprParser {
[INFO] [stderr]      |                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/expr.rs:116:38
[INFO] [stderr]     |
[INFO] [stderr] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stderr]     |                                      ^^^^^ the lifetime is elided 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)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 116 |     pub fn eval_diff<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stderr]     |                                                                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/expr.rs:126:33
[INFO] [stderr]     |
[INFO] [stderr] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stderr]     |                                 ^^^^^ the lifetime is elided 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] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 126 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stderr]     |                                                                                             ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/expr.rs:233:33
[INFO] [stderr]     |
[INFO] [stderr] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError> {
[INFO] [stderr]     |                                 ^^^^^ the lifetime is elided 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] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 233 |     pub fn eval<S: BuildHasher>(&self, env: &HashMap<&str, f64, S>) -> Result<f64, EvalError<'_>> {
[INFO] [stderr]     |                                                                                             ++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/marching_squares.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     ctx.paint();
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 36 |     let _ = ctx.paint();
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/marching_squares.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 |     ctx.save();
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 43 |     let _ = ctx.save();
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/marching_squares.rs:47:5
[INFO] [stderr]    |
[INFO] [stderr] 47 |     ctx.stroke();
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 47 |     let _ = ctx.stroke();
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/marching_squares.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 48 |     ctx.restore();
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let _ = ctx.restore();
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/marching_squares.rs:110:5
[INFO] [stderr]     |
[INFO] [stderr] 110 |     ctx.save();
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 110 |     let _ = ctx.save();
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/marching_squares.rs:114:5
[INFO] [stderr]     |
[INFO] [stderr] 114 |     ctx.stroke();
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 114 |     let _ = ctx.stroke();
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/marching_squares.rs:115:5
[INFO] [stderr]     |
[INFO] [stderr] 115 |     ctx.restore();
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 115 |     let _ = ctx.restore();
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `plotany` (bin "plotany" test) generated 24 warnings (run `cargo fix --bin "plotany" -p plotany --tests` to apply 7 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: lalrpop v0.19.6
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/plotany-aac2ec691be4aa52)
[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] running `Command { std: "docker" "inspect" "a46c12e92063c27812fec00ca94856b89571789c0417dacbd6f83a0e72661f8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a46c12e92063c27812fec00ca94856b89571789c0417dacbd6f83a0e72661f8f", kill_on_drop: false }`
[INFO] [stdout] a46c12e92063c27812fec00ca94856b89571789c0417dacbd6f83a0e72661f8f
