[INFO] cloning repository https://github.com/benruijl/reform
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/benruijl/reform" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenruijl%2Freform", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenruijl%2Freform'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d4a73fa0ad7fdbbf61883691a14919740dd15c53
[INFO] checking benruijl/reform against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbenruijl%2Freform" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/benruijl/reform
[INFO] finished tweaking git repo https://github.com/benruijl/reform
[INFO] tweaked toml for git repo https://github.com/benruijl/reform written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/benruijl/reform on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/benruijl/reform 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "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] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pest_generator v2.1.0
[INFO] [stderr]   Downloaded fastdivide v0.2.0
[INFO] [stderr]   Downloaded sha-1 v0.7.0
[INFO] [stderr]   Downloaded arrayref v0.3.5
[INFO] [stderr]   Downloaded wincolor v1.0.1
[INFO] [stderr]   Downloaded strsim v0.7.0
[INFO] [stderr]   Downloaded pest v2.1.0
[INFO] [stderr]   Downloaded error-chain v0.5.0
[INFO] [stderr]   Downloaded pest_meta v2.1.0
[INFO] [stderr]   Downloaded textwrap v0.10.0
[INFO] [stderr]   Downloaded backtrace v0.2.3
[INFO] [stderr]   Downloaded dbghelp-sys v0.2.0
[INFO] [stderr]   Downloaded ucd-trie v0.1.1
[INFO] [stderr]   Downloaded aho-corasick v0.6.10
[INFO] [stderr]   Downloaded python3-sys v0.2.1
[INFO] [stderr]   Downloaded termcolor v1.0.4
[INFO] [stderr]   Downloaded cpython v0.2.1
[INFO] [stderr]   Downloaded cpuprofiler v0.0.3
[INFO] [stderr]   Downloaded rug v1.3.0
[INFO] [stderr]   Downloaded clap v2.32.0
[INFO] [stderr]   Downloaded regex v1.1.2
[INFO] [stderr]   Downloaded regex-syntax v0.6.5
[INFO] [stderr]   Downloaded gmp-mpfr-sys v1.1.12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2819fb23d80f46c9954c16d439457557ad8e8061b26ae4619c74444c9b9ad6fc
[INFO] running `Command { std: "docker" "start" "-a" "2819fb23d80f46c9954c16d439457557ad8e8061b26ae4619c74444c9b9ad6fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2819fb23d80f46c9954c16d439457557ad8e8061b26ae4619c74444c9b9ad6fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2819fb23d80f46c9954c16d439457557ad8e8061b26ae4619c74444c9b9ad6fc", kill_on_drop: false }`
[INFO] [stdout] 2819fb23d80f46c9954c16d439457557ad8e8061b26ae4619c74444c9b9ad6fc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ea9e870d3d0a752e65f208adec44d6f0eb74cc829f30daca4889501e5f3c9ab2
[INFO] running `Command { std: "docker" "start" "-a" "ea9e870d3d0a752e65f208adec44d6f0eb74cc829f30daca4889501e5f3c9ab2", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Checking cfg-if v0.1.7
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]    Compiling ucd-trie v0.1.1
[INFO] [stderr]    Compiling syn v0.15.29
[INFO] [stderr]    Compiling libc v0.2.50
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking crossbeam-utils v0.5.0
[INFO] [stderr]    Compiling num-complex v0.2.1
[INFO] [stderr]    Compiling maplit v1.0.1
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]    Compiling regex v1.1.2
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]     Checking regex-syntax v0.6.5
[INFO] [stderr]     Checking aho-corasick v0.6.10
[INFO] [stderr]     Checking atty v0.2.11
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking either v1.5.1
[INFO] [stderr]     Checking owning_ref v0.4.0
[INFO] [stderr]     Checking quick-error v1.2.2
[INFO] [stderr]    Compiling pest v2.1.0
[INFO] [stderr]     Checking crossbeam-utils v0.6.5
[INFO] [stderr]     Checking rand v0.5.6
[INFO] [stderr]     Checking crossbeam-epoch v0.5.2
[INFO] [stderr]    Compiling rug v1.3.0
[INFO] [stderr]     Checking itertools v0.7.11
[INFO] [stderr]     Checking log v0.4.6
[INFO] [stderr]     Checking textwrap v0.10.0
[INFO] [stderr]     Checking termcolor v1.0.4
[INFO] [stderr]     Checking crossbeam-epoch v0.6.1
[INFO] [stderr]     Checking humantime v1.2.0
[INFO] [stderr]     Checking strsim v0.7.0
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]    Compiling dirs v1.0.5
[INFO] [stderr]     Checking hashbrown v0.1.8
[INFO] [stderr]     Checking fastdivide v0.2.0
[INFO] [stderr]     Checking crossbeam-deque v0.5.2
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]    Compiling gmp-mpfr-sys v1.1.12
[INFO] [stderr]     Checking clap v2.32.0
[INFO] [stderr]    Compiling pest_meta v2.1.0
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]     Checking ndarray v0.12.1
[INFO] [stderr]     Checking crossbeam-channel v0.2.6
[INFO] [stderr]     Checking crossbeam v0.4.1
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]    Compiling pest_generator v2.1.0
[INFO] [stderr]    Compiling pest_derive v2.1.0
[INFO] [stderr]     Checking reform v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary braces around function argument
[INFO] [stdout]    --> src/module.rs:234:74
[INFO] [stdout]     |
[INFO] [stdout] 234 |                         MatchOpt::Single(x) => StatementResult::Executed({ x.clone() }), // FIXME: it is not always executed!
[INFO] [stdout]     |                                                                          ^^         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 234 -                         MatchOpt::Single(x) => StatementResult::Executed({ x.clone() }), // FIXME: it is not always executed!
[INFO] [stdout] 234 +                         MatchOpt::Single(x) => StatementResult::Executed(x.clone() ), // FIXME: it is not always executed!
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around function argument
[INFO] [stdout]    --> src/module.rs:235:79
[INFO] [stdout]     |
[INFO] [stdout] 235 |                         MatchOpt::SingleOwned(x) => StatementResult::Executed({ x }),
[INFO] [stdout]     |                                                                               ^^ ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 235 -                         MatchOpt::SingleOwned(x) => StatementResult::Executed({ x }),
[INFO] [stdout] 235 +                         MatchOpt::SingleOwned(x) => StatementResult::Executed(x ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around function argument
[INFO] [stdout]    --> src/module.rs:234:74
[INFO] [stdout]     |
[INFO] [stdout] 234 |                         MatchOpt::Single(x) => StatementResult::Executed({ x.clone() }), // FIXME: it is not always executed!
[INFO] [stdout]     |                                                                          ^^         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 234 -                         MatchOpt::Single(x) => StatementResult::Executed({ x.clone() }), // FIXME: it is not always executed!
[INFO] [stdout] 234 +                         MatchOpt::Single(x) => StatementResult::Executed(x.clone() ), // FIXME: it is not always executed!
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around function argument
[INFO] [stdout]    --> src/module.rs:235:79
[INFO] [stdout]     |
[INFO] [stdout] 235 |                         MatchOpt::SingleOwned(x) => StatementResult::Executed({ x }),
[INFO] [stdout]     |                                                                               ^^ ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 235 -                         MatchOpt::SingleOwned(x) => StatementResult::Executed({ x }),
[INFO] [stdout] 235 +                         MatchOpt::SingleOwned(x) => StatementResult::Executed(x ),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/parser/mod.rs:776:16
[INFO] [stdout]     |
[INFO] [stdout] 776 |     type Err = (String);
[INFO] [stdout]     |                ^      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 776 -     type Err = (String);
[INFO] [stdout] 776 +     type Err = String ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/parser/mod.rs:785:16
[INFO] [stdout]     |
[INFO] [stdout] 785 |     type Err = (String);
[INFO] [stdout]     |                ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 785 -     type Err = (String);
[INFO] [stdout] 785 +     type Err = String ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/parser/mod.rs:776:16
[INFO] [stdout]     |
[INFO] [stdout] 776 |     type Err = (String);
[INFO] [stdout]     |                ^      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 776 -     type Err = (String);
[INFO] [stdout] 776 +     type Err = String ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/parser/mod.rs:785:16
[INFO] [stdout]     |
[INFO] [stdout] 785 |     type Err = (String);
[INFO] [stdout]     |                ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 785 -     type Err = (String);
[INFO] [stdout] 785 +     type Err = String ;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/poly/ring.rs:17:26
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn from_finite_field(&FiniteField) -> Self;
[INFO] [stdout]    |                          ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &FiniteField`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/poly/ring.rs:17:26
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn from_finite_field(&FiniteField) -> Self;
[INFO] [stdout]    |                          ^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &FiniteField`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/serialize.rs:89:50
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn serialize_list(args: &[Element], buffer: &mut Write) -> usize {
[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] 89 | fn serialize_list(args: &[Element], buffer: &mut dyn Write) -> usize {
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/serialize.rs:98:34
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn deserialize_list(buffer: &mut Read) -> Vec<Element> {
[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] 98 | fn deserialize_list(buffer: &mut dyn Read) -> Vec<Element> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:107:48
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn serialize_integer(i: &Integer, buffer: &mut Write) -> usize {
[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] 107 | fn serialize_integer(i: &Integer, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:130:37
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn deserialize_integer(buffer: &mut Read) -> Result<Integer, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn deserialize_integer(buffer: &mut dyn Read) -> Result<Integer, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/serialize.rs:89:50
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn serialize_list(args: &[Element], buffer: &mut Write) -> usize {
[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] 89 | fn serialize_list(args: &[Element], buffer: &mut dyn Write) -> usize {
[INFO] [stdout]    |                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/serialize.rs:98:34
[INFO] [stdout]    |
[INFO] [stdout] 98 | fn deserialize_list(buffer: &mut Read) -> Vec<Element> {
[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] 98 | fn deserialize_list(buffer: &mut dyn Read) -> Vec<Element> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:107:48
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn serialize_integer(i: &Integer, buffer: &mut Write) -> usize {
[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] 107 | fn serialize_integer(i: &Integer, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:130:37
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn deserialize_integer(buffer: &mut Read) -> Result<Integer, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn deserialize_integer(buffer: &mut dyn Read) -> Result<Integer, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/poly/polynomial.rs:440:42
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 440 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/poly/polynomial.rs:452:37
[INFO] [stdout]     |
[INFO] [stdout] 452 |     pub fn deserialize(buffer: &mut Read) -> Result<Polynomial, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 452 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<Polynomial, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/serialize.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn read(buffer: &mut Read) -> Result<SerializedTerm, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn read(buffer: &mut dyn Read) -> Result<SerializedTerm, Error> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:162:42
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 162 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/poly/polynomial.rs:440:42
[INFO] [stdout]     |
[INFO] [stdout] 440 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 440 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/poly/polynomial.rs:452:37
[INFO] [stdout]     |
[INFO] [stdout] 452 |     pub fn deserialize(buffer: &mut Read) -> Result<Polynomial, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 452 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<Polynomial, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:187:37
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub fn deserialize(buffer: &mut Read) -> Result<Number, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<Number, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:213:42
[INFO] [stdout]     |
[INFO] [stdout] 213 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 213 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:232:37
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn deserialize(buffer: &mut Read) -> Result<MultivariatePolynomial<Number, u32>, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<MultivariatePolynomial<Number, u32>, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:259:42
[INFO] [stdout]     |
[INFO] [stdout] 259 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 259 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:300:37
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn deserialize(buffer: &mut Read) -> Result<Element, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<Element, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/serialize.rs:79:30
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn read(buffer: &mut Read) -> Result<SerializedTerm, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub fn read(buffer: &mut dyn Read) -> Result<SerializedTerm, Error> {
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:162:42
[INFO] [stdout]     |
[INFO] [stdout] 162 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 162 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:187:37
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub fn deserialize(buffer: &mut Read) -> Result<Number, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 187 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<Number, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:213:42
[INFO] [stdout]     |
[INFO] [stdout] 213 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 213 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:232:37
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn deserialize(buffer: &mut Read) -> Result<MultivariatePolynomial<Number, u32>, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 232 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<MultivariatePolynomial<Number, u32>, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:259:42
[INFO] [stdout]     |
[INFO] [stdout] 259 |     pub fn serialize(&self, buffer: &mut Write) -> usize {
[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] 259 |     pub fn serialize(&self, buffer: &mut dyn Write) -> usize {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/serialize.rs:300:37
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn deserialize(buffer: &mut Read) -> Result<Element, 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] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn deserialize(buffer: &mut dyn Read) -> Result<Element, Error> {
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:40:31
[INFO] [stdout]    |
[INFO] [stdout] 40 |             num = sign_or_num.into_span().as_str().to_string();
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 |         num = eee.into_span().as_str().to_string();
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:52:25
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let den = x.into_span().as_str().to_string();
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:64:35
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |                         .into_span()
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:94:18
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let name = n.into_span().as_str().to_string();
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:104:35
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:120:22
[INFO] [stdout]     |
[INFO] [stdout] 120 |                     .into_span()
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:135:45
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let ordering = match ee.next().unwrap().into_span().as_str() {
[INFO] [stdout]     |                                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:155:28
[INFO] [stdout]     |
[INFO] [stdout] 155 |             let mut ee = p.into_span().as_str().to_string();
[INFO] [stdout]     |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:160:43
[INFO] [stdout]     |
[INFO] [stdout] 160 |             let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:172:80
[INFO] [stdout]     |
[INFO] [stdout] 172 | ...                   match range_constraint.next().unwrap().into_span().as_str()
[INFO] [stdout]     |                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:302:40
[INFO] [stdout]     |
[INFO] [stdout] 302 |             let id = r.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:308:40
[INFO] [stdout]     |
[INFO] [stdout] 308 |             let id = r.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:312:29
[INFO] [stdout]     |
[INFO] [stdout] 312 |                 args.push(a.into_span().as_str().to_string());
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:338:25
[INFO] [stdout]     |
[INFO] [stdout] 338 |                 match a.into_span().as_str().to_lowercase().as_str() {
[INFO] [stdout]     |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |             let id = r.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:418:27
[INFO] [stdout]     |
[INFO] [stdout] 418 |                         x.into_span().as_str().to_string(),
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:468:18
[INFO] [stdout]     |
[INFO] [stdout] 468 |                 .into_span()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:476:18
[INFO] [stdout]     |
[INFO] [stdout] 476 |                 .into_span()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:484:18
[INFO] [stdout]     |
[INFO] [stdout] 484 |                 .into_span()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:495:56
[INFO] [stdout]     |
[INFO] [stdout] 495 |                         ds.push(PrintObject::Special(d.into_span().as_str().to_string()))
[INFO] [stdout]     |                                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:497:48
[INFO] [stdout]     |
[INFO] [stdout] 497 |                     Rule::print_opt => match d.into_span().as_str().to_lowercase().as_str() {
[INFO] [stdout]     |                                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:516:40
[INFO] [stdout]     |
[INFO] [stdout] 516 | ...                   dd.into_span()
[INFO] [stdout]     |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:524:40
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   dd.into_span().as_str().to_string(),
[INFO] [stdout]     |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:530:48
[INFO] [stdout]     |
[INFO] [stdout] 530 |                     Rule::print_opt => match d.into_span().as_str().to_lowercase().as_str() {
[INFO] [stdout]     |                                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:543:35
[INFO] [stdout]     |
[INFO] [stdout] 543 |                 r.next().unwrap().into_span().as_str().to_string()
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:551:43
[INFO] [stdout]     |
[INFO] [stdout] 551 |                     active_exprs.push(exp.into_span().as_str().to_string());
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:558:44
[INFO] [stdout]     |
[INFO] [stdout] 558 |                     exclude_exprs.push(exp.into_span().as_str().to_string());
[INFO] [stdout]     |                                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:645:22
[INFO] [stdout]     |
[INFO] [stdout] 645 |                     .into_span()
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:672:35
[INFO] [stdout]     |
[INFO] [stdout] 672 |     let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:40:31
[INFO] [stdout]    |
[INFO] [stdout] 40 |             num = sign_or_num.into_span().as_str().to_string();
[INFO] [stdout]    |                               ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 |         num = eee.into_span().as_str().to_string();
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:52:25
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let den = x.into_span().as_str().to_string();
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:64:35
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]    |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |                         .into_span()
[INFO] [stdout]    |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]   --> src/parser/mod.rs:94:18
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let name = n.into_span().as_str().to_string();
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:104:35
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:120:22
[INFO] [stdout]     |
[INFO] [stdout] 120 |                     .into_span()
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:135:45
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let ordering = match ee.next().unwrap().into_span().as_str() {
[INFO] [stdout]     |                                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:155:28
[INFO] [stdout]     |
[INFO] [stdout] 155 |             let mut ee = p.into_span().as_str().to_string();
[INFO] [stdout]     |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:160:43
[INFO] [stdout]     |
[INFO] [stdout] 160 |             let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:172:80
[INFO] [stdout]     |
[INFO] [stdout] 172 | ...                   match range_constraint.next().unwrap().into_span().as_str()
[INFO] [stdout]     |                                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:302:40
[INFO] [stdout]     |
[INFO] [stdout] 302 |             let id = r.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:308:40
[INFO] [stdout]     |
[INFO] [stdout] 308 |             let id = r.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:312:29
[INFO] [stdout]     |
[INFO] [stdout] 312 |                 args.push(a.into_span().as_str().to_string());
[INFO] [stdout]     |                             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:338:25
[INFO] [stdout]     |
[INFO] [stdout] 338 |                 match a.into_span().as_str().to_lowercase().as_str() {
[INFO] [stdout]     |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:352:40
[INFO] [stdout]     |
[INFO] [stdout] 352 |             let id = r.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:418:27
[INFO] [stdout]     |
[INFO] [stdout] 418 |                         x.into_span().as_str().to_string(),
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:468:18
[INFO] [stdout]     |
[INFO] [stdout] 468 |                 .into_span()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:476:18
[INFO] [stdout]     |
[INFO] [stdout] 476 |                 .into_span()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:484:18
[INFO] [stdout]     |
[INFO] [stdout] 484 |                 .into_span()
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:495:56
[INFO] [stdout]     |
[INFO] [stdout] 495 |                         ds.push(PrintObject::Special(d.into_span().as_str().to_string()))
[INFO] [stdout]     |                                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:497:48
[INFO] [stdout]     |
[INFO] [stdout] 497 |                     Rule::print_opt => match d.into_span().as_str().to_lowercase().as_str() {
[INFO] [stdout]     |                                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:516:40
[INFO] [stdout]     |
[INFO] [stdout] 516 | ...                   dd.into_span()
[INFO] [stdout]     |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:524:40
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   dd.into_span().as_str().to_string(),
[INFO] [stdout]     |                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:530:48
[INFO] [stdout]     |
[INFO] [stdout] 530 |                     Rule::print_opt => match d.into_span().as_str().to_lowercase().as_str() {
[INFO] [stdout]     |                                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:543:35
[INFO] [stdout]     |
[INFO] [stdout] 543 |                 r.next().unwrap().into_span().as_str().to_string()
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:551:43
[INFO] [stdout]     |
[INFO] [stdout] 551 |                     active_exprs.push(exp.into_span().as_str().to_string());
[INFO] [stdout]     |                                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:558:44
[INFO] [stdout]     |
[INFO] [stdout] 558 |                     exclude_exprs.push(exp.into_span().as_str().to_string());
[INFO] [stdout]     |                                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:645:22
[INFO] [stdout]     |
[INFO] [stdout] 645 |                     .into_span()
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `pest::iterators::Pair::<'i, R>::into_span`: Please use `as_span` instead
[INFO] [stdout]    --> src/parser/mod.rs:672:35
[INFO] [stdout]     |
[INFO] [stdout] 672 |     let name = ee.next().unwrap().into_span().as_str().to_string();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/structure.rs:279:31
[INFO] [stdout]     |
[INFO] [stdout] 279 |                 Entry::Vacant(mut a) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/structure.rs:279:31
[INFO] [stdout]     |
[INFO] [stdout] 279 |                 Entry::Vacant(mut a) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module.rs:333:25
[INFO] [stdout]     |
[INFO] [stdout] 333 |                     let mut i = mem::replace(input, Element::default());
[INFO] [stdout]     |                         ----^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module.rs:671:21
[INFO] [stdout]     |
[INFO] [stdout] 671 |                 let mut dp = local_var_info
[INFO] [stdout]     |                     ----^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module.rs:860:25
[INFO] [stdout]     |
[INFO] [stdout] 860 |                     let mut dollar = mem::replace(
[INFO] [stdout]     |                         ----^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1342:21
[INFO] [stdout]      |
[INFO] [stdout] 1342 |                 let mut output_mutarc = Arc::new(Mutex::new(output));
[INFO] [stdout]      |                     ----^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1524:52
[INFO] [stdout]      |
[INFO] [stdout] 1524 |                 Statement::NewFunction(name, args, mut e) => {
[INFO] [stdout]      |                                                    ----^
[INFO] [stdout]      |                                                    |
[INFO] [stdout]      |                                                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1540:29
[INFO] [stdout]      |
[INFO] [stdout] 1540 |                         let mut dp = self
[INFO] [stdout]      |                             ----^^
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1566:33
[INFO] [stdout]      |
[INFO] [stdout] 1566 | ...                   let mut dollar = mem::replace(
[INFO] [stdout]      |                           ----^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/normalize.rs:178:29
[INFO] [stdout]     |
[INFO] [stdout] 178 |                         let mut ar = Polynomial::from(&a[0]);
[INFO] [stdout]     |                             ----^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/normalize.rs:179:29
[INFO] [stdout]     |
[INFO] [stdout] 179 |                         let mut br = Polynomial::from(&a[1]);
[INFO] [stdout]     |                             ----^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module.rs:333:25
[INFO] [stdout]     |
[INFO] [stdout] 333 |                     let mut i = mem::replace(input, Element::default());
[INFO] [stdout]     |                         ----^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module.rs:671:21
[INFO] [stdout]     |
[INFO] [stdout] 671 |                 let mut dp = local_var_info
[INFO] [stdout]     |                     ----^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/module.rs:860:25
[INFO] [stdout]     |
[INFO] [stdout] 860 |                     let mut dollar = mem::replace(
[INFO] [stdout]     |                         ----^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1342:21
[INFO] [stdout]      |
[INFO] [stdout] 1342 |                 let mut output_mutarc = Arc::new(Mutex::new(output));
[INFO] [stdout]      |                     ----^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1524:52
[INFO] [stdout]      |
[INFO] [stdout] 1524 |                 Statement::NewFunction(name, args, mut e) => {
[INFO] [stdout]      |                                                    ----^
[INFO] [stdout]      |                                                    |
[INFO] [stdout]      |                                                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1540:29
[INFO] [stdout]      |
[INFO] [stdout] 1540 |                         let mut dp = self
[INFO] [stdout]      |                             ----^^
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/module.rs:1566:33
[INFO] [stdout]      |
[INFO] [stdout] 1566 | ...                   let mut dollar = mem::replace(
[INFO] [stdout]      |                           ----^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/normalize.rs:178:29
[INFO] [stdout]     |
[INFO] [stdout] 178 |                         let mut ar = Polynomial::from(&a[0]);
[INFO] [stdout]     |                             ----^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/normalize.rs:179:29
[INFO] [stdout]     |
[INFO] [stdout] 179 |                         let mut br = Polynomial::from(&a[1]);
[INFO] [stdout]     |                             ----^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:155:17
[INFO] [stdout]     |
[INFO] [stdout] 155 |             let mut ee = p.into_span().as_str().to_string();
[INFO] [stdout]     |                 ----^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:410:17
[INFO] [stdout]     |
[INFO] [stdout] 410 |             let mut d = parse_dollar(r.next().unwrap());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:434:17
[INFO] [stdout]     |
[INFO] [stdout] 434 |             let mut d = parse_dollar(r.next().unwrap());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:448:17
[INFO] [stdout]     |
[INFO] [stdout] 448 |             let mut m = parse_expr(r.next().unwrap());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/poly/polynomial.rs:46:35
[INFO] [stdout]    |
[INFO] [stdout] 46 |                     Entry::Vacant(mut v) => {
[INFO] [stdout]    |                                   ----^
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/poly/polynomial.rs:66:47
[INFO] [stdout]    |
[INFO] [stdout] 66 | ...                   Entry::Vacant(mut v) => {
[INFO] [stdout]    |                                     ----^
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/polynomial.rs:127:21
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 let mut exp = vec![e as u32];
[INFO] [stdout]     |                     ----^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/polynomial.rs:152:21
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 let mut poly = MultivariatePolynomial::from_monomial(c, exp);
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/polynomial.rs:212:31
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 Entry::Vacant(mut v) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/raw/gcd.rs:726:31
[INFO] [stdout]     |
[INFO] [stdout] 726 |                 Entry::Vacant(mut e) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:155:17
[INFO] [stdout]     |
[INFO] [stdout] 155 |             let mut ee = p.into_span().as_str().to_string();
[INFO] [stdout]     |                 ----^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:410:17
[INFO] [stdout]     |
[INFO] [stdout] 410 |             let mut d = parse_dollar(r.next().unwrap());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:434:17
[INFO] [stdout]     |
[INFO] [stdout] 434 |             let mut d = parse_dollar(r.next().unwrap());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/parser/mod.rs:448:17
[INFO] [stdout]     |
[INFO] [stdout] 448 |             let mut m = parse_expr(r.next().unwrap());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/poly/polynomial.rs:46:35
[INFO] [stdout]    |
[INFO] [stdout] 46 |                     Entry::Vacant(mut v) => {
[INFO] [stdout]    |                                   ----^
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/poly/polynomial.rs:66:47
[INFO] [stdout]    |
[INFO] [stdout] 66 | ...                   Entry::Vacant(mut v) => {
[INFO] [stdout]    |                                     ----^
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/polynomial.rs:127:21
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 let mut exp = vec![e as u32];
[INFO] [stdout]     |                     ----^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/polynomial.rs:152:21
[INFO] [stdout]     |
[INFO] [stdout] 152 |                 let mut poly = MultivariatePolynomial::from_monomial(c, exp);
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1352:25
[INFO] [stdout]      |
[INFO] [stdout] 1352 |                     let mut vvars = vars
[INFO] [stdout]      |                         ----^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/polynomial.rs:212:31
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 Entry::Vacant(mut v) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1665:25
[INFO] [stdout]      |
[INFO] [stdout] 1665 |                     let mut gmc = &mut gm.coefficients[t];
[INFO] [stdout]      |                         ----^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1666:25
[INFO] [stdout]      |
[INFO] [stdout] 1666 |                     let mut coeff = if *gmc < Number::SmallInt(0) {
[INFO] [stdout]      |                         ----^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/raw/multivar.rs:930:17
[INFO] [stdout]     |
[INFO] [stdout] 930 |             let mut c = self.coefficients[t].clone() * v.clone().pow(self.exponents(t)[n].as_());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/raw/multivar.rs:973:31
[INFO] [stdout]     |
[INFO] [stdout] 973 |                 Entry::Vacant(mut e) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/raw/gcd.rs:726:31
[INFO] [stdout]     |
[INFO] [stdout] 726 |                 Entry::Vacant(mut e) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1352:25
[INFO] [stdout]      |
[INFO] [stdout] 1352 |                     let mut vvars = vars
[INFO] [stdout]      |                         ----^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1665:25
[INFO] [stdout]      |
[INFO] [stdout] 1665 |                     let mut gmc = &mut gm.coefficients[t];
[INFO] [stdout]      |                         ----^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1666:25
[INFO] [stdout]      |
[INFO] [stdout] 1666 |                     let mut coeff = if *gmc < Number::SmallInt(0) {
[INFO] [stdout]      |                         ----^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ground_level` is never read
[INFO] [stdout]   --> src/expand.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ExpandIterator<'a> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 11 |     subiter: ExpandSubIterator<'a>,
[INFO] [stdout] 12 |     ground_level: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExpandIterator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]    --> src/streaming.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub struct InputExpressionWriter<'a> {
[INFO] [stdout]     |            --------------------- field in this struct
[INFO] [stdout] 128 |     input: &'a mut InputExpression,
[INFO] [stdout] 129 |     file: Option<BufWriter<File>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `InputExpressionWriter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/number.rs:190:36
[INFO] [stdout]     |
[INFO] [stdout] 190 |             (x, y) => unreachable!(format!("Cannot compute gcd of {:?} and {:?}", x, y)),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `unreachable!()` 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 `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 190 -             (x, y) => unreachable!(format!("Cannot compute gcd of {:?} and {:?}", x, y)),
[INFO] [stdout] 190 +             (x, y) => unreachable!("Cannot compute gcd of {:?} and {:?}", x, y),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/number.rs:474:36
[INFO] [stdout]     |
[INFO] [stdout] 474 |             (x, y) => unreachable!(format!("Cannot compute remainder {:?} rem {:?}", x, y)),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `unreachable!()` 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 `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 474 -             (x, y) => unreachable!(format!("Cannot compute remainder {:?} rem {:?}", x, y)),
[INFO] [stdout] 474 +             (x, y) => unreachable!("Cannot compute remainder {:?} rem {:?}", x, y),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Replaced` should have an upper case name
[INFO] [stdout]    --> src/structure.rs:514:15
[INFO] [stdout]     |
[INFO] [stdout] 514 |         const Replaced = 1; // variable substituted
[INFO] [stdout]     |               ^^^^^^^^ help: convert the identifier to upper case: `REPLACED`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Partially_Updated` should have an upper case name
[INFO] [stdout]    --> src/structure.rs:515:15
[INFO] [stdout]     |
[INFO] [stdout] 515 |         const Partially_Updated = 2; // dollar variable index was updated
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `PARTIALLY_UPDATED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `NotReplaced` should have an upper case name
[INFO] [stdout]    --> src/structure.rs:516:15
[INFO] [stdout]     |
[INFO] [stdout] 516 |         const NotReplaced = 4; // variable could not be substituted
[INFO] [stdout]     |               ^^^^^^^^^^^ help: convert the identifier to upper case: `NOT_REPLACED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/id.rs:316:29
[INFO] [stdout]     |
[INFO] [stdout] 316 | ...                   mem::replace(self, ElementIterSingle::None(n + 1 == m.len()));
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[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] 316 |                             let _ = mem::replace(self, ElementIterSingle::None(n + 1 == m.len()));
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1586:28
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                       panic!(format!(
[INFO] [stdout]      |  ____________________________^
[INFO] [stdout] 1587 | |                         "Ran out of primes for gcd images.\ngcd({},{})\nAttempt: {}\n vars: {:?}, bounds: {:?}; {:?}",
[INFO] [stdout] 1588 | |                         a, b, gm, vars, bounds, tight_bounds
[INFO] [stdout] 1589 | |                     ));
[INFO] [stdout]      | |_____________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[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] help: remove the `format!(..)` macro call
[INFO] [stdout]      |
[INFO] [stdout] 1586 ~                     panic!(
[INFO] [stdout] 1587 |                         "Ran out of primes for gcd images.\ngcd({},{})\nAttempt: {}\n vars: {:?}, bounds: {:?}; {:?}",
[INFO] [stdout] 1588 |                         a, b, gm, vars, bounds, tight_bounds
[INFO] [stdout] 1589 ~                     );
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/poly/raw/multivar.rs:121:29
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn to_monomial_view(&self, i: usize) -> MultivariateMonomialView<R, E> {
[INFO] [stdout]     |                             ^^^^^               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided 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] 121 |     pub fn to_monomial_view(&self, i: usize) -> MultivariateMonomialView<'_, R, E> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/streaming.rs:89:23
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn new(input: &InputExpression) -> InputExpressionIterator {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       the lifetime is elided 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] 89 |     pub fn new(input: &InputExpression) -> InputExpressionIterator<'_> {
[INFO] [stdout]    |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/streaming.rs:133:52
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn new(source: &'a mut InputExpression) -> InputExpressionWriter {
[INFO] [stdout]     |                         --                         ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn new(source: &'a mut InputExpression) -> InputExpressionWriter<'a> {
[INFO] [stdout]     |                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/raw/multivar.rs:930:17
[INFO] [stdout]     |
[INFO] [stdout] 930 |             let mut c = self.coefficients[t].clone() * v.clone().pow(self.exponents(t)[n].as_());
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/poly/raw/multivar.rs:973:31
[INFO] [stdout]     |
[INFO] [stdout] 973 |                 Entry::Vacant(mut e) => {
[INFO] [stdout]     |                               ----^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ground_level` is never read
[INFO] [stdout]   --> src/expand.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ExpandIterator<'a> {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 11 |     subiter: ExpandSubIterator<'a>,
[INFO] [stdout] 12 |     ground_level: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExpandIterator` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file` is never read
[INFO] [stdout]    --> src/streaming.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub struct InputExpressionWriter<'a> {
[INFO] [stdout]     |            --------------------- field in this struct
[INFO] [stdout] 128 |     input: &'a mut InputExpression,
[INFO] [stdout] 129 |     file: Option<BufWriter<File>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `InputExpressionWriter` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/number.rs:190:36
[INFO] [stdout]     |
[INFO] [stdout] 190 |             (x, y) => unreachable!(format!("Cannot compute gcd of {:?} and {:?}", x, y)),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `unreachable!()` 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 `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 190 -             (x, y) => unreachable!(format!("Cannot compute gcd of {:?} and {:?}", x, y)),
[INFO] [stdout] 190 +             (x, y) => unreachable!("Cannot compute gcd of {:?} and {:?}", x, y),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/number.rs:474:36
[INFO] [stdout]     |
[INFO] [stdout] 474 |             (x, y) => unreachable!(format!("Cannot compute remainder {:?} rem {:?}", x, y)),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `unreachable!()` 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 `unreachable!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 474 -             (x, y) => unreachable!(format!("Cannot compute remainder {:?} rem {:?}", x, y)),
[INFO] [stdout] 474 +             (x, y) => unreachable!("Cannot compute remainder {:?} rem {:?}", x, y),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Replaced` should have an upper case name
[INFO] [stdout]    --> src/structure.rs:514:15
[INFO] [stdout]     |
[INFO] [stdout] 514 |         const Replaced = 1; // variable substituted
[INFO] [stdout]     |               ^^^^^^^^ help: convert the identifier to upper case: `REPLACED`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Partially_Updated` should have an upper case name
[INFO] [stdout]    --> src/structure.rs:515:15
[INFO] [stdout]     |
[INFO] [stdout] 515 |         const Partially_Updated = 2; // dollar variable index was updated
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `PARTIALLY_UPDATED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `NotReplaced` should have an upper case name
[INFO] [stdout]    --> src/structure.rs:516:15
[INFO] [stdout]     |
[INFO] [stdout] 516 |         const NotReplaced = 4; // variable could not be substituted
[INFO] [stdout]     |               ^^^^^^^^^^^ help: convert the identifier to upper case: `NOT_REPLACED`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/id.rs:316:29
[INFO] [stdout]     |
[INFO] [stdout] 316 | ...                   mem::replace(self, ElementIterSingle::None(n + 1 == m.len()));
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[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] 316 |                             let _ = mem::replace(self, ElementIterSingle::None(n + 1 == m.len()));
[INFO] [stdout]     |                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]     --> src/poly/raw/gcd.rs:1586:28
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                       panic!(format!(
[INFO] [stdout]      |  ____________________________^
[INFO] [stdout] 1587 | |                         "Ran out of primes for gcd images.\ngcd({},{})\nAttempt: {}\n vars: {:?}, bounds: {:?}; {:?}",
[INFO] [stdout] 1588 | |                         a, b, gm, vars, bounds, tight_bounds
[INFO] [stdout] 1589 | |                     ));
[INFO] [stdout]      | |_____________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[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] help: remove the `format!(..)` macro call
[INFO] [stdout]      |
[INFO] [stdout] 1586 ~                     panic!(
[INFO] [stdout] 1587 |                         "Ran out of primes for gcd images.\ngcd({},{})\nAttempt: {}\n vars: {:?}, bounds: {:?}; {:?}",
[INFO] [stdout] 1588 |                         a, b, gm, vars, bounds, tight_bounds
[INFO] [stdout] 1589 ~                     );
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/poly/raw/multivar.rs:121:29
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn to_monomial_view(&self, i: usize) -> MultivariateMonomialView<R, E> {
[INFO] [stdout]     |                             ^^^^^               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             the lifetime is elided 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] 121 |     pub fn to_monomial_view(&self, i: usize) -> MultivariateMonomialView<'_, R, E> {
[INFO] [stdout]     |                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/streaming.rs:89:23
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub fn new(input: &InputExpression) -> InputExpressionIterator {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       the lifetime is elided 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] 89 |     pub fn new(input: &InputExpression) -> InputExpressionIterator<'_> {
[INFO] [stdout]    |                                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/streaming.rs:133:52
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn new(source: &'a mut InputExpression) -> InputExpressionWriter {
[INFO] [stdout]     |                         --                         ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 133 |     pub fn new(source: &'a mut InputExpression) -> InputExpressionWriter<'a> {
[INFO] [stdout]     |                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:16:29
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn main() -> Result<(), Box<std::error::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] 16 | fn main() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/main.rs:16:29
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn main() -> Result<(), Box<std::error::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] 16 | fn main() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]    |                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 18s
[INFO] running `Command { std: "docker" "inspect" "ea9e870d3d0a752e65f208adec44d6f0eb74cc829f30daca4889501e5f3c9ab2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ea9e870d3d0a752e65f208adec44d6f0eb74cc829f30daca4889501e5f3c9ab2", kill_on_drop: false }`
[INFO] [stdout] ea9e870d3d0a752e65f208adec44d6f0eb74cc829f30daca4889501e5f3c9ab2
