[INFO] fetching crate eqlog 0.8.0... [INFO] linting eqlog-0.8.0 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate eqlog 0.8.0 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate eqlog 0.8.0 [INFO] finished tweaking crates.io crate eqlog 0.8.0 [INFO] tweaked toml for crates.io crate eqlog 0.8.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate eqlog 0.8.0 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate eqlog 0.8.0 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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded indoc v2.0.5 [INFO] [stderr] Downloaded autocfg v1.2.0 [INFO] [stderr] Downloaded eqlog-runtime v0.7.2 [INFO] [stderr] Downloaded tabled_derive v0.3.0 [INFO] [stderr] Downloaded lalrpop-util v0.20.2 [INFO] [stderr] Downloaded eqlog-runtime v0.6.0 [INFO] [stderr] Downloaded papergrid v0.4.0 [INFO] [stderr] Downloaded eqlog v0.7.2 [INFO] [stderr] Downloaded tabled v0.7.0 [INFO] [stderr] Downloaded eqlog-eqlog v0.7.2 [INFO] [stderr] Downloaded eqlog-eqlog v0.8.0 [INFO] [stderr] Downloaded lalrpop v0.20.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 87c2f4b9b21280006ec3a650bc12a2ac84450bcfe2912a160321951d77a44e8c [INFO] running `Command { std: "docker" "start" "-a" "87c2f4b9b21280006ec3a650bc12a2ac84450bcfe2912a160321951d77a44e8c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "87c2f4b9b21280006ec3a650bc12a2ac84450bcfe2912a160321951d77a44e8c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "87c2f4b9b21280006ec3a650bc12a2ac84450bcfe2912a160321951d77a44e8c", kill_on_drop: false }` [INFO] [stdout] 87c2f4b9b21280006ec3a650bc12a2ac84450bcfe2912a160321951d77a44e8c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 584c1e53ee863100b36ccbce65fdc8ca602295d3c161fce0f6482ff4e0b688f4 [INFO] running `Command { std: "docker" "start" "-a" "584c1e53ee863100b36ccbce65fdc8ca602295d3c161fce0f6482ff4e0b688f4", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling autocfg v1.2.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling memchr v2.7.2 [INFO] [stderr] Compiling parking_lot_core v0.9.9 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling regex-syntax v0.8.3 [INFO] [stderr] Compiling siphasher v0.3.11 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling phf_shared v0.10.0 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling term v0.7.0 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling log v0.4.21 [INFO] [stderr] Compiling either v1.10.0 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling ena v0.14.2 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Compiling petgraph v0.6.4 [INFO] [stderr] Compiling string_cache v0.8.7 [INFO] [stderr] Checking papergrid v0.4.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling ascii-canvas v3.0.0 [INFO] [stderr] Compiling unicode-xid v0.2.4 [INFO] [stderr] Compiling cpufeatures v0.2.12 [INFO] [stderr] Compiling regex-automata v0.4.6 [INFO] [stderr] Compiling pico-args v0.5.0 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling syn v2.0.58 [INFO] [stderr] Compiling base16ct v0.2.0 [INFO] [stderr] Compiling eqlog-eqlog v0.8.0 [INFO] [stderr] Checking clap_builder v4.5.2 [INFO] [stderr] Checking convert_case v0.6.0 [INFO] [stderr] Checking maplit v1.0.2 [INFO] [stderr] Checking by_address v1.2.1 [INFO] [stderr] Compiling indoc v2.0.5 [INFO] [stderr] Compiling tabled_derive v0.3.0 [INFO] [stderr] Checking tabled v0.7.0 [INFO] [stderr] Compiling regex v1.10.4 [INFO] [stderr] Compiling lalrpop-util v0.20.2 [INFO] [stderr] Checking eqlog-runtime v0.7.2 [INFO] [stderr] Compiling lalrpop v0.20.2 [INFO] [stderr] Compiling clap_derive v4.5.4 [INFO] [stderr] Checking clap v4.5.4 [INFO] [stderr] Compiling eqlog v0.8.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: empty line after outer attribute [INFO] [stdout] --> /opt/rustwide/target/debug/build/eqlog-9bd79a97bba2a486/out/grammar.rs:8998:1 [INFO] [stdout] | [INFO] [stdout] 8998 | / #[allow(clippy::type_complexity, dead_code)] [INFO] [stdout] 8999 | | [INFO] [stdout] | |_^ [INFO] [stdout] 9000 | pub trait __ToTriple<'input, > [INFO] [stdout] | --------------------- the attribute applies to this trait [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_outer_attr [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_outer_attr)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/build.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | source: source, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: empty line after outer attribute [INFO] [stdout] --> /opt/rustwide/target/debug/build/eqlog-9bd79a97bba2a486/out/grammar.rs:8998:1 [INFO] [stdout] | [INFO] [stdout] 8998 | / #[allow(clippy::type_complexity, dead_code)] [INFO] [stdout] 8999 | | [INFO] [stdout] | |_^ [INFO] [stdout] 9000 | pub trait __ToTriple<'input, > [INFO] [stdout] | --------------------- the attribute applies to this trait [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#empty_line_after_outer_attr [INFO] [stdout] = note: `#[warn(clippy::empty_line_after_outer_attr)]` on by default [INFO] [stdout] = help: if the empty line is unintentional, remove it [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> src/build.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | source: source, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `source` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FlatThenStmtType` is never constructed [INFO] [stdout] --> src/flat_eqlog/ast.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct FlatThenStmtType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of `contains_key` followed by `insert` on a `BTreeMap` [INFO] [stdout] --> src/eqlog_util.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | / if !names.contains_key(&el) { [INFO] [stdout] 350 | | advance_name(&mut current_name, &blocked_names); [INFO] [stdout] 351 | | names.insert(el, current_name.iter().copied().collect()); [INFO] [stdout] 352 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stdout] = note: `#[warn(clippy::map_entry)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 349 ~ names.entry(el).or_insert_with(|| { [INFO] [stdout] 350 + advance_name(&mut current_name, &blocked_names); [INFO] [stdout] 351 + current_name.iter().copied().collect() [INFO] [stdout] 352 + }); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FlatThenStmtType` is never constructed [INFO] [stdout] --> src/flat_eqlog/ast.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct FlatThenStmtType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/eqlog_util.rs:403:59 [INFO] [stdout] | [INFO] [stdout] 403 | let el_names = assign_el_names(*structure, eqlog, *identifiers); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `identifiers` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | .filter_map(move |loc| { [INFO] [stdout] | __________^ [INFO] [stdout] 25 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 26 | | Some(CompileError::MatchPatternIsVariable { location }) [INFO] [stdout] 27 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] = note: `#[warn(clippy::unnecessary_filter_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | .filter_map(move |loc| { [INFO] [stdout] | __________^ [INFO] [stdout] 37 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 38 | | Some(CompileError::MatchPatternIsWildcard { location }) [INFO] [stdout] 39 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:46:42 [INFO] [stdout] | [INFO] [stdout] 46 | eqlog.iter_pattern_ctor_arg_is_app().filter_map(move |loc| { [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 47 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 48 | | Some(CompileError::MatchPatternCtorArgIsApp { location }) [INFO] [stdout] 49 | | }) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:58:10 [INFO] [stdout] | [INFO] [stdout] 58 | .filter_map(move |loc| { [INFO] [stdout] | __________^ [INFO] [stdout] 59 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 60 | | Some(CompileError::MatchPatternArgVarIsNotFresh { location }) [INFO] [stdout] 61 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taken reference of right operand [INFO] [stdout] --> src/semantics/mod.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | if name == &name.to_case(Case::Snake) { [INFO] [stdout] | ^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | help: use the right value directly: `name.to_case(Case::Snake)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stdout] = note: `#[warn(clippy::op_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/semantics/mod.rs:253:17 [INFO] [stdout] | [INFO] [stdout] 253 | return Some(CompileError::UndeterminedTermType { location }); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 253 - return Some(CompileError::UndeterminedTermType { location }); [INFO] [stdout] 253 + Some(CompileError::UndeterminedTermType { location }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/semantics/mod.rs:265:29 [INFO] [stdout] | [INFO] [stdout] 265 | symbols.entry(name).or_insert(Vec::new()).push(loc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/semantics/mod.rs:304:14 [INFO] [stdout] | [INFO] [stdout] 304 | .or_insert(Vec::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of `contains_key` followed by `insert` on a `BTreeMap` [INFO] [stdout] --> src/eqlog_util.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | / if !names.contains_key(&el) { [INFO] [stdout] 350 | | advance_name(&mut current_name, &blocked_names); [INFO] [stdout] 351 | | names.insert(el, current_name.iter().copied().collect()); [INFO] [stdout] 352 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry [INFO] [stdout] = note: `#[warn(clippy::map_entry)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 349 ~ names.entry(el).or_insert_with(|| { [INFO] [stdout] 350 + advance_name(&mut current_name, &blocked_names); [INFO] [stdout] 351 + current_name.iter().copied().collect() [INFO] [stdout] 352 + }); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> src/eqlog_util.rs:403:59 [INFO] [stdout] | [INFO] [stdout] 403 | let el_names = assign_el_names(*structure, eqlog, *identifiers); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `identifiers` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 24 | .filter_map(move |loc| { [INFO] [stdout] | __________^ [INFO] [stdout] 25 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 26 | | Some(CompileError::MatchPatternIsVariable { location }) [INFO] [stdout] 27 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] = note: `#[warn(clippy::unnecessary_filter_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | .filter_map(move |loc| { [INFO] [stdout] | __________^ [INFO] [stdout] 37 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 38 | | Some(CompileError::MatchPatternIsWildcard { location }) [INFO] [stdout] 39 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:46:42 [INFO] [stdout] | [INFO] [stdout] 46 | eqlog.iter_pattern_ctor_arg_is_app().filter_map(move |loc| { [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 47 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 48 | | Some(CompileError::MatchPatternCtorArgIsApp { location }) [INFO] [stdout] 49 | | }) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.filter_map(..)` can be written more simply using `.map(..)` [INFO] [stdout] --> src/semantics/mod.rs:58:10 [INFO] [stdout] | [INFO] [stdout] 58 | .filter_map(move |loc| { [INFO] [stdout] | __________^ [INFO] [stdout] 59 | | let location = *locations.get(&loc).unwrap(); [INFO] [stdout] 60 | | Some(CompileError::MatchPatternArgVarIsNotFresh { location }) [INFO] [stdout] 61 | | }) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_filter_map [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taken reference of right operand [INFO] [stdout] --> src/semantics/mod.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | if name == &name.to_case(Case::Snake) { [INFO] [stdout] | ^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | help: use the right value directly: `name.to_case(Case::Snake)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref [INFO] [stdout] = note: `#[warn(clippy::op_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/semantics/mod.rs:253:17 [INFO] [stdout] | [INFO] [stdout] 253 | return Some(CompileError::UndeterminedTermType { location }); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 253 - return Some(CompileError::UndeterminedTermType { location }); [INFO] [stdout] 253 + Some(CompileError::UndeterminedTermType { location }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/semantics/mod.rs:265:29 [INFO] [stdout] | [INFO] [stdout] 265 | symbols.entry(name).or_insert(Vec::new()).push(loc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert` to construct default value [INFO] [stdout] --> src/semantics/mod.rs:304:14 [INFO] [stdout] | [INFO] [stdout] 304 | .or_insert(Vec::new()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/build.rs:45:6 [INFO] [stdout] | [INFO] [stdout] 45 | ) -> Result< [INFO] [stdout] | ______^ [INFO] [stdout] 46 | | ( [INFO] [stdout] 47 | | Eqlog, [INFO] [stdout] 48 | | BTreeMap, [INFO] [stdout] ... | [INFO] [stdout] 52 | | CompileError, [INFO] [stdout] 53 | | > { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.as_ref().map(|od| od.as_slice())` on an `Option` value [INFO] [stdout] --> src/build.rs:163:8 [INFO] [stdout] | [INFO] [stdout] 163 | if out_digest.as_ref().map(|od| od.as_slice()) == Some(src_digest.as_slice()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using as_deref: `out_digest.as_deref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_as_ref_deref [INFO] [stdout] = note: `#[warn(clippy::option_as_ref_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/build.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | fs::write(&out_file, &result)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `out_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/build.rs:279:32 [INFO] [stdout] | [INFO] [stdout] 279 | for in_file in eqlog_files(&in_dir)? { [INFO] [stdout] | ^^^^^^^ help: change this to: `in_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/build.rs:281:27 [INFO] [stdout] | [INFO] [stdout] 281 | .strip_prefix(&in_dir) [INFO] [stdout] | ^^^^^^^ help: change this to: `in_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: needless `fn main` in doctest [INFO] [stdout] --> src/build.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | /// fn main() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_doctest_main [INFO] [stdout] = note: `#[warn(clippy::needless_doctest_main)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:301:17 [INFO] [stdout] | [INFO] [stdout] 301 | write!(f, "invalid token\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] = note: `#[warn(clippy::write_with_newline)]` on by default [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 301 - write!(f, "invalid token\n")?; [INFO] [stdout] 301 + writeln!(f, "invalid token")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:308:17 [INFO] [stdout] | [INFO] [stdout] 308 | write!(f, "unexpected end of file\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 308 - write!(f, "unexpected end of file\n")?; [INFO] [stdout] 308 + writeln!(f, "unexpected end of file")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:315:17 [INFO] [stdout] | [INFO] [stdout] 315 | write!(f, "unrecognized token\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 315 - write!(f, "unrecognized token\n")?; [INFO] [stdout] 315 + writeln!(f, "unrecognized token")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:319:17 [INFO] [stdout] | [INFO] [stdout] 319 | write!(f, "unexpected token\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 319 - write!(f, "unexpected token\n")?; [INFO] [stdout] 319 + writeln!(f, "unexpected token")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:327:17 [INFO] [stdout] | [INFO] [stdout] 327 | write!(f, "{symbol_kind} \"{name}\" is not UpperCamelCase\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 327 - write!(f, "{symbol_kind} \"{name}\" is not UpperCamelCase\n")?; [INFO] [stdout] 327 + writeln!(f, "{symbol_kind} \"{name}\" is not UpperCamelCase")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:335:17 [INFO] [stdout] | [INFO] [stdout] 335 | write!(f, "{symbol_kind} \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 335 - write!(f, "{symbol_kind} \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] 335 + writeln!(f, "{symbol_kind} \"{name}\" is not lower_snake_case")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | write!(f, "variable \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 339 - write!(f, "variable \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] 339 + writeln!(f, "variable \"{name}\" is not lower_snake_case")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:343:17 [INFO] [stdout] | [INFO] [stdout] 343 | write!(f, "variable \"{name}\" occurs only once\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 343 - write!(f, "variable \"{name}\" occurs only once\n")?; [INFO] [stdout] 343 + writeln!(f, "variable \"{name}\" occurs only once")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:351:17 [INFO] [stdout] | [INFO] [stdout] 351 | / write!( [INFO] [stdout] 352 | | f, [INFO] [stdout] 353 | | "function takes {expected} arguments but {got} were supplied\n" [INFO] [stdout] 354 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 351 ~ writeln!( [INFO] [stdout] 352 | f, [INFO] [stdout] 353 ~ "function takes {expected} arguments but {got} were supplied" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:362:17 [INFO] [stdout] | [INFO] [stdout] 362 | / write!( [INFO] [stdout] 363 | | f, [INFO] [stdout] 364 | | "predicate takes {expected} arguments but {got} were supplied\n" [INFO] [stdout] 365 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 362 ~ writeln!( [INFO] [stdout] 363 | f, [INFO] [stdout] 364 ~ "predicate takes {expected} arguments but {got} were supplied" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:369:17 [INFO] [stdout] | [INFO] [stdout] 369 | write!(f, "undeclared symbol \"{name}\"\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 369 - write!(f, "undeclared symbol \"{name}\"\n")?; [INFO] [stdout] 369 + writeln!(f, "undeclared symbol \"{name}\"")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:379:17 [INFO] [stdout] | [INFO] [stdout] 379 | write!(f, "expected {expected}, found {found} \"{name}\"\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 379 - write!(f, "expected {expected}, found {found} \"{name}\"\n")?; [INFO] [stdout] 379 + writeln!(f, "expected {expected}, found {found} \"{name}\"")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:381:17 [INFO] [stdout] | [INFO] [stdout] 381 | write!(f, "\"{name}\" declared as {found} here:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 381 - write!(f, "\"{name}\" declared as {found} here:\n")?; [INFO] [stdout] 381 + writeln!(f, "\"{name}\" declared as {found} here:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:389:17 [INFO] [stdout] | [INFO] [stdout] 389 | write!(f, "symbol declared multiple times\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 389 - write!(f, "symbol declared multiple times\n")?; [INFO] [stdout] 389 + writeln!(f, "symbol declared multiple times")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:391:17 [INFO] [stdout] | [INFO] [stdout] 391 | write!(f, "Previously declared here:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 391 - write!(f, "Previously declared here:\n")?; [INFO] [stdout] 391 + writeln!(f, "Previously declared here:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:395:17 [INFO] [stdout] | [INFO] [stdout] 395 | write!(f, "sort of term undetermined\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 395 - write!(f, "sort of term undetermined\n")?; [INFO] [stdout] 395 + writeln!(f, "sort of term undetermined")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:399:17 [INFO] [stdout] | [INFO] [stdout] 399 | write!(f, "term has conflicting types\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 399 - write!(f, "term has conflicting types\n")?; [INFO] [stdout] 399 + writeln!(f, "term has conflicting types")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:403:17 [INFO] [stdout] | [INFO] [stdout] 403 | write!(f, "variable introduced in then statement\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 403 - write!(f, "variable introduced in then statement\n")?; [INFO] [stdout] 403 + writeln!(f, "variable introduced in then statement")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:407:17 [INFO] [stdout] | [INFO] [stdout] 407 | write!(f, "wildcards must not appear in then statements\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 407 - write!(f, "wildcards must not appear in then statements\n")?; [INFO] [stdout] 407 + writeln!(f, "wildcards must not appear in then statements")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:411:17 [INFO] [stdout] | [INFO] [stdout] 411 | write!(f, "term does not appear earlier in this rule\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 411 - write!(f, "term does not appear earlier in this rule\n")?; [INFO] [stdout] 411 + writeln!(f, "term does not appear earlier in this rule")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:415:17 [INFO] [stdout] | [INFO] [stdout] 415 | write!(f, "expected a variable\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 415 - write!(f, "expected a variable\n")?; [INFO] [stdout] 415 + writeln!(f, "expected a variable")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:419:17 [INFO] [stdout] | [INFO] [stdout] 419 | write!(f, "variable has already been introduced earlier\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 419 - write!(f, "variable has already been introduced earlier\n")?; [INFO] [stdout] 419 + writeln!(f, "variable has already been introduced earlier")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:427:17 [INFO] [stdout] | [INFO] [stdout] 427 | / write!( [INFO] [stdout] 428 | | f, [INFO] [stdout] 429 | | "term of enum type \"{enum_name}\" is not introduced with constructor \n" [INFO] [stdout] 430 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 427 ~ writeln!( [INFO] [stdout] 428 | f, [INFO] [stdout] 429 ~ "term of enum type \"{enum_name}\" is not introduced with constructor " [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:432:17 [INFO] [stdout] | [INFO] [stdout] 432 | write!(f, "Enum \"{enum_name}\" declared here:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 432 - write!(f, "Enum \"{enum_name}\" declared here:\n")?; [INFO] [stdout] 432 + writeln!(f, "Enum \"{enum_name}\" declared here:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:436:17 [INFO] [stdout] | [INFO] [stdout] 436 | write!(f, "Pattern is a variable\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 436 - write!(f, "Pattern is a variable\n")?; [INFO] [stdout] 436 + writeln!(f, "Pattern is a variable")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:438:17 [INFO] [stdout] | [INFO] [stdout] 438 | / write!( [INFO] [stdout] 439 | | f, [INFO] [stdout] 440 | | "Patterns must be given by constructors of an enum type\n" [INFO] [stdout] 441 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 438 ~ writeln!( [INFO] [stdout] 439 | f, [INFO] [stdout] 440 ~ "Patterns must be given by constructors of an enum type" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:444:17 [INFO] [stdout] | [INFO] [stdout] 444 | write!(f, "Pattern is a wildcard\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 444 - write!(f, "Pattern is a wildcard\n")?; [INFO] [stdout] 444 + writeln!(f, "Pattern is a wildcard")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:446:17 [INFO] [stdout] | [INFO] [stdout] 446 | / write!( [INFO] [stdout] 447 | | f, [INFO] [stdout] 448 | | "Patterns must be given by constructors of an enum type\n" [INFO] [stdout] 449 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 446 ~ writeln!( [INFO] [stdout] 447 | f, [INFO] [stdout] 448 ~ "Patterns must be given by constructors of an enum type" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:452:17 [INFO] [stdout] | [INFO] [stdout] 452 | write!(f, "Nested patterns are not supported yet\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 452 - write!(f, "Nested patterns are not supported yet\n")?; [INFO] [stdout] 452 + writeln!(f, "Nested patterns are not supported yet")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:454:17 [INFO] [stdout] | [INFO] [stdout] 454 | write!(f, "Only variables may occur as arguments\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 454 - write!(f, "Only variables may occur as arguments\n")?; [INFO] [stdout] 454 + writeln!(f, "Only variables may occur as arguments")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:457:17 [INFO] [stdout] | [INFO] [stdout] 457 | write!(f, "Variable in pattern has been used before\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 457 - write!(f, "Variable in pattern has been used before\n")?; [INFO] [stdout] 457 + writeln!(f, "Variable in pattern has been used before")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:459:17 [INFO] [stdout] | [INFO] [stdout] 459 | write!(f, "Variables in patterns must be fresh\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 459 - write!(f, "Variables in patterns must be fresh\n")?; [INFO] [stdout] 459 + writeln!(f, "Variables in patterns must be fresh")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:466:17 [INFO] [stdout] | [INFO] [stdout] 466 | write!(f, "Conflicting pattern types\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 466 - write!(f, "Conflicting pattern types\n")?; [INFO] [stdout] 466 + writeln!(f, "Conflicting pattern types")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:468:17 [INFO] [stdout] | [INFO] [stdout] 468 | write!(f, "Constructors belong to different enums:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 468 - write!(f, "Constructors belong to different enums:\n")?; [INFO] [stdout] 468 + writeln!(f, "Constructors belong to different enums:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:476:17 [INFO] [stdout] | [INFO] [stdout] 476 | write!(f, "Missing match case:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 476 - write!(f, "Missing match case:\n")?; [INFO] [stdout] 476 + writeln!(f, "Missing match case:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:478:17 [INFO] [stdout] | [INFO] [stdout] 478 | write!(f, "This constructor is not covered:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 478 - write!(f, "This constructor is not covered:\n")?; [INFO] [stdout] 478 + writeln!(f, "This constructor is not covered:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/flat_eqlog/index_selection.rs:67:45 [INFO] [stdout] | [INFO] [stdout] 67 | let mut specs: Vec = indices.into_iter().cloned().collect(); [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:100:44 [INFO] [stdout] | [INFO] [stdout] 100 | .filter(|var| !fixed_vars.contains(&var)) [INFO] [stdout] | ^^^^ help: change this to: `var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:113:18 [INFO] [stdout] | [INFO] [stdout] 113 | fn sort_if_block<'a>(if_stmts: &mut [FlatIfStmt], fixed_vars: &mut BTreeSet) { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] = note: `#[warn(clippy::extra_unused_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:134:22 [INFO] [stdout] | [INFO] [stdout] 134 | fn sort_if_stmts_rec<'a>(stmts: &mut [FlatStmt], fixed_vars: &mut BTreeSet) { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:140:35 [INFO] [stdout] | [INFO] [stdout] 140 | let is_if_group = if_stmt(&first_stmt).is_some(); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `first_stmt` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:172:22 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn sort_if_stmts<'a>(rule: &mut FlatRule) { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/flat_eqlog/var_info.rs:31:19 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn fixed_vars<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 32 | rule: &'a FlatRule, [INFO] [stdout] | ^^ [INFO] [stdout] 33 | ) -> BTreeMap, BTreeSet> { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 31 ~ pub fn fixed_vars( [INFO] [stdout] 32 ~ rule: &FlatRule, [INFO] [stdout] 33 ~ ) -> BTreeMap, BTreeSet> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> src/flat_eqlog/mod.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | if let None = eqlog.domain(func) { [INFO] [stdout] | -------^^^^--------------------- help: try: `if eqlog.domain(func).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeFrom` [INFO] [stdout] --> src/flatten.rs:22:33 [INFO] [stdout] | [INFO] [stdout] 22 | let mut unused_flat_terms = (0..).into_iter().map(FlatVar); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/flatten.rs:264:9 [INFO] [stdout] | [INFO] [stdout] 264 | / !iter_els(cod, eqlog) [INFO] [stdout] 265 | | .find(|el| !eqlog.el_in_img(morphism, *el)) [INFO] [stdout] 266 | | .is_some(), [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 264 ~ iter_els(cod, eqlog) [INFO] [stdout] 265 ~ .find(|el| !eqlog.el_in_img(morphism, *el)).is_none(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `slice` [INFO] [stdout] --> src/rust_gen.rs:18:39 [INFO] [stdout] | [INFO] [stdout] 18 | let mut iter = supposed_singleton.into_iter(); [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/rust_gen.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | format!("{}", identifiers.get(&ident).unwrap()).to_case(Snake) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `identifiers.get(&ident).unwrap().to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/rust_gen.rs:380:10 [INFO] [stdout] | [INFO] [stdout] 380 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/rust_gen.rs:669:10 [INFO] [stdout] | [INFO] [stdout] 669 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/rust_gen.rs:680:10 [INFO] [stdout] | [INFO] [stdout] 680 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:744:36 [INFO] [stdout] | [INFO] [stdout] 744 | write_table_weight(out, arity, &indices)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:745:36 [INFO] [stdout] | [INFO] [stdout] 745 | write_table_new_fn(out, arity, &indices)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:746:49 [INFO] [stdout] | [INFO] [stdout] 746 | write_table_insert_fn(out, relation, arity, &indices, index_selection)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:748:35 [INFO] [stdout] | [INFO] [stdout] 748 | write_table_drop_dirt_fn(out, &indices, index_selection)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:761:55 [INFO] [stdout] | [INFO] [stdout] 761 | write_table_drain_with_element(out, relation, &indices, index_selection, sort)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:1739:17 [INFO] [stdout] | [INFO] [stdout] 1739 | write!(f, "#[allow(unused_variables)]\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 1739 - write!(f, "#[allow(unused_variables)]\n")?; [INFO] [stdout] 1739 + writeln!(f, "#[allow(unused_variables)]")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:1756:17 [INFO] [stdout] | [INFO] [stdout] 1756 | write!(f, ") {{\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 1756 - write!(f, ") {{\n")?; [INFO] [stdout] 1756 + writeln!(f, ") {{")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/rust_gen.rs:1823:26 [INFO] [stdout] | [INFO] [stdout] 1823 | .map(|arg| display_var(arg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `display_var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/rust_gen.rs:1828:26 [INFO] [stdout] | [INFO] [stdout] 1828 | .map(|arg| display_var(arg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `display_var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `repeat().take()` can be written more concisely [INFO] [stdout] --> src/rust_gen.rs:1871:33 [INFO] [stdout] | [INFO] [stdout] 1871 | let out_arg_wildcards = repeat("_, ").take(func_args.len()).format(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("_, ", func_args.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n [INFO] [stdout] = note: `#[warn(clippy::manual_repeat_n)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2093:5 [INFO] [stdout] | [INFO] [stdout] 2093 | write!(out, "/// Creates an empty model.\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2093 - write!(out, "/// Creates an empty model.\n")?; [INFO] [stdout] 2093 + writeln!(out, "/// Creates an empty model.")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2094:5 [INFO] [stdout] | [INFO] [stdout] 2094 | write!(out, "#[allow(dead_code)]\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2094 - write!(out, "#[allow(dead_code)]\n")?; [INFO] [stdout] 2094 + writeln!(out, "#[allow(dead_code)]")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2095:5 [INFO] [stdout] | [INFO] [stdout] 2095 | write!(out, "pub fn new() -> Self {{\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2095 - write!(out, "pub fn new() -> Self {{\n")?; [INFO] [stdout] 2095 + writeln!(out, "pub fn new() -> Self {{")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2096:5 [INFO] [stdout] | [INFO] [stdout] 2096 | write!(out, "Self {{\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2096 - write!(out, "Self {{\n")?; [INFO] [stdout] 2096 + writeln!(out, "Self {{")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2099:9 [INFO] [stdout] | [INFO] [stdout] 2099 | write!(out, "{sort_snake}_equalities: Unification::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2099 - write!(out, "{sort_snake}_equalities: Unification::new(),\n")?; [INFO] [stdout] 2099 + writeln!(out, "{sort_snake}_equalities: Unification::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2100:9 [INFO] [stdout] | [INFO] [stdout] 2100 | write!(out, "{sort_snake}_weights: Vec::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2100 - write!(out, "{sort_snake}_weights: Vec::new(),\n")?; [INFO] [stdout] 2100 + writeln!(out, "{sort_snake}_weights: Vec::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2101:9 [INFO] [stdout] | [INFO] [stdout] 2101 | write!(out, "{sort_snake}_new: BTreeSet::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2101 - write!(out, "{sort_snake}_new: BTreeSet::new(),\n")?; [INFO] [stdout] 2101 + writeln!(out, "{sort_snake}_new: BTreeSet::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2102:9 [INFO] [stdout] | [INFO] [stdout] 2102 | write!(out, "{sort_snake}_old: BTreeSet::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2102 - write!(out, "{sort_snake}_old: BTreeSet::new(),\n")?; [INFO] [stdout] 2102 + writeln!(out, "{sort_snake}_old: BTreeSet::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2103:9 [INFO] [stdout] | [INFO] [stdout] 2103 | write!(out, "{sort_snake}_uprooted: Vec::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2103 - write!(out, "{sort_snake}_uprooted: Vec::new(),\n")?; [INFO] [stdout] 2103 + writeln!(out, "{sort_snake}_uprooted: Vec::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2110:5 [INFO] [stdout] | [INFO] [stdout] 2110 | write!(out, "empty_join_is_dirty: true,\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2110 - write!(out, "empty_join_is_dirty: true,\n")?; [INFO] [stdout] 2110 + writeln!(out, "empty_join_is_dirty: true,")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2111:5 [INFO] [stdout] | [INFO] [stdout] 2111 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2111 - write!(out, "}}\n")?; [INFO] [stdout] 2111 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2112:5 [INFO] [stdout] | [INFO] [stdout] 2112 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2112 - write!(out, "}}\n")?; [INFO] [stdout] 2112 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2180:5 [INFO] [stdout] | [INFO] [stdout] 2180 | write!(out, "/// A model of the `{name}` theory.\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2180 - write!(out, "/// A model of the `{name}` theory.\n")?; [INFO] [stdout] 2180 + writeln!(out, "/// A model of the `{name}` theory.")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2181:5 [INFO] [stdout] | [INFO] [stdout] 2181 | write!(out, "#[derive(Debug, Clone)]\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2181 - write!(out, "#[derive(Debug, Clone)]\n")?; [INFO] [stdout] 2181 + writeln!(out, "#[derive(Debug, Clone)]")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2182:5 [INFO] [stdout] | [INFO] [stdout] 2182 | write!(out, "pub struct {} {{\n", name)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2182 - write!(out, "pub struct {} {{\n", name)?; [INFO] [stdout] 2182 + writeln!(out, "pub struct {} {{", name)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2186:9 [INFO] [stdout] | [INFO] [stdout] 2186 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2186 - write!(out, "\n")?; [INFO] [stdout] 2186 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2195:5 [INFO] [stdout] | [INFO] [stdout] 2195 | write!(out, "empty_join_is_dirty: bool,\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2195 - write!(out, "empty_join_is_dirty: bool,\n")?; [INFO] [stdout] 2195 + writeln!(out, "empty_join_is_dirty: bool,")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2196:5 [INFO] [stdout] | [INFO] [stdout] 2196 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2196 - write!(out, "}}\n")?; [INFO] [stdout] 2196 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2209:5 [INFO] [stdout] | [INFO] [stdout] 2209 | write!(out, "impl {} {{\n", name)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2209 - write!(out, "impl {} {{\n", name)?; [INFO] [stdout] 2209 + writeln!(out, "impl {} {{", name)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2212:5 [INFO] [stdout] | [INFO] [stdout] 2212 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2212 - write!(out, "\n")?; [INFO] [stdout] 2212 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2221:9 [INFO] [stdout] | [INFO] [stdout] 2221 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2221 - write!(out, "\n")?; [INFO] [stdout] 2221 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2251:9 [INFO] [stdout] | [INFO] [stdout] 2251 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2251 - write!(out, "\n")?; [INFO] [stdout] 2251 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/rust_gen.rs:2262:12 [INFO] [stdout] | [INFO] [stdout] 2262 | if arity.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!arity.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:2265:40 [INFO] [stdout] | [INFO] [stdout] 2265 | write_pub_insert_relation(out, &pred, &arity, false)?; [INFO] [stdout] | ^^^^^ help: change this to: `pred` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2266:9 [INFO] [stdout] | [INFO] [stdout] 2266 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2266 - write!(out, "\n")?; [INFO] [stdout] 2266 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2271:5 [INFO] [stdout] | [INFO] [stdout] 2271 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2271 - write!(out, "\n")?; [INFO] [stdout] 2271 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2285:5 [INFO] [stdout] | [INFO] [stdout] 2285 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2285 - write!(out, "}}\n")?; [INFO] [stdout] 2285 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2338:5 [INFO] [stdout] | [INFO] [stdout] 2338 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2338 - write!(out, "\n")?; [INFO] [stdout] 2338 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2345:5 [INFO] [stdout] | [INFO] [stdout] 2345 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2345 - write!(out, "\n")?; [INFO] [stdout] 2345 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:2356:54 [INFO] [stdout] | [INFO] [stdout] 2356 | write_table_impl(out, rel, &arity, &indices, &index_selection)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `index_selection` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2364:5 [INFO] [stdout] | [INFO] [stdout] 2364 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2364 - write!(out, "\n")?; [INFO] [stdout] 2364 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2370:5 [INFO] [stdout] | [INFO] [stdout] 2370 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2370 - write!(out, "\n")?; [INFO] [stdout] 2370 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | write!(f, "{source_path}:{first_num}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 80 - write!(f, "{source_path}:{first_num}\n")?; [INFO] [stdout] 80 + writeln!(f, "{source_path}:{first_num}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | write!(f, " | \n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 83 - write!(f, " | \n")?; [INFO] [stdout] 83 + writeln!(f, " | ")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | write!(f, "{}\n", &source[line_begin..line_end])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 90 - write!(f, "{}\n", &source[line_begin..line_end])?; [INFO] [stdout] 90 + writeln!(f, "{}", &source[line_begin..line_end])?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:102:17 [INFO] [stdout] | [INFO] [stdout] 102 | write!(f, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 102 - write!(f, "\n")?; [INFO] [stdout] 102 + writeln!(f)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | write!(f, " | \n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 107 - write!(f, " | \n")?; [INFO] [stdout] 107 + writeln!(f, " | ")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/build.rs:45:6 [INFO] [stdout] | [INFO] [stdout] 45 | ) -> Result< [INFO] [stdout] | ______^ [INFO] [stdout] 46 | | ( [INFO] [stdout] 47 | | Eqlog, [INFO] [stdout] 48 | | BTreeMap, [INFO] [stdout] ... | [INFO] [stdout] 52 | | CompileError, [INFO] [stdout] 53 | | > { [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.as_ref().map(|od| od.as_slice())` on an `Option` value [INFO] [stdout] --> src/build.rs:163:8 [INFO] [stdout] | [INFO] [stdout] 163 | if out_digest.as_ref().map(|od| od.as_slice()) == Some(src_digest.as_slice()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using as_deref: `out_digest.as_deref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_as_ref_deref [INFO] [stdout] = note: `#[warn(clippy::option_as_ref_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/build.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | fs::write(&out_file, &result)?; [INFO] [stdout] | ^^^^^^^^^ help: change this to: `out_file` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/build.rs:279:32 [INFO] [stdout] | [INFO] [stdout] 279 | for in_file in eqlog_files(&in_dir)? { [INFO] [stdout] | ^^^^^^^ help: change this to: `in_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/build.rs:281:27 [INFO] [stdout] | [INFO] [stdout] 281 | .strip_prefix(&in_dir) [INFO] [stdout] | ^^^^^^^ help: change this to: `in_dir` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: needless `fn main` in doctest [INFO] [stdout] --> src/build.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | /// fn main() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_doctest_main [INFO] [stdout] = note: `#[warn(clippy::needless_doctest_main)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:301:17 [INFO] [stdout] | [INFO] [stdout] 301 | write!(f, "invalid token\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] = note: `#[warn(clippy::write_with_newline)]` on by default [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 301 - write!(f, "invalid token\n")?; [INFO] [stdout] 301 + writeln!(f, "invalid token")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:308:17 [INFO] [stdout] | [INFO] [stdout] 308 | write!(f, "unexpected end of file\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 308 - write!(f, "unexpected end of file\n")?; [INFO] [stdout] 308 + writeln!(f, "unexpected end of file")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:315:17 [INFO] [stdout] | [INFO] [stdout] 315 | write!(f, "unrecognized token\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 315 - write!(f, "unrecognized token\n")?; [INFO] [stdout] 315 + writeln!(f, "unrecognized token")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:319:17 [INFO] [stdout] | [INFO] [stdout] 319 | write!(f, "unexpected token\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 319 - write!(f, "unexpected token\n")?; [INFO] [stdout] 319 + writeln!(f, "unexpected token")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:327:17 [INFO] [stdout] | [INFO] [stdout] 327 | write!(f, "{symbol_kind} \"{name}\" is not UpperCamelCase\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 327 - write!(f, "{symbol_kind} \"{name}\" is not UpperCamelCase\n")?; [INFO] [stdout] 327 + writeln!(f, "{symbol_kind} \"{name}\" is not UpperCamelCase")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:335:17 [INFO] [stdout] | [INFO] [stdout] 335 | write!(f, "{symbol_kind} \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 335 - write!(f, "{symbol_kind} \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] 335 + writeln!(f, "{symbol_kind} \"{name}\" is not lower_snake_case")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:339:17 [INFO] [stdout] | [INFO] [stdout] 339 | write!(f, "variable \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 339 - write!(f, "variable \"{name}\" is not lower_snake_case\n")?; [INFO] [stdout] 339 + writeln!(f, "variable \"{name}\" is not lower_snake_case")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:343:17 [INFO] [stdout] | [INFO] [stdout] 343 | write!(f, "variable \"{name}\" occurs only once\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 343 - write!(f, "variable \"{name}\" occurs only once\n")?; [INFO] [stdout] 343 + writeln!(f, "variable \"{name}\" occurs only once")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:351:17 [INFO] [stdout] | [INFO] [stdout] 351 | / write!( [INFO] [stdout] 352 | | f, [INFO] [stdout] 353 | | "function takes {expected} arguments but {got} were supplied\n" [INFO] [stdout] 354 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 351 ~ writeln!( [INFO] [stdout] 352 | f, [INFO] [stdout] 353 ~ "function takes {expected} arguments but {got} were supplied" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:362:17 [INFO] [stdout] | [INFO] [stdout] 362 | / write!( [INFO] [stdout] 363 | | f, [INFO] [stdout] 364 | | "predicate takes {expected} arguments but {got} were supplied\n" [INFO] [stdout] 365 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 362 ~ writeln!( [INFO] [stdout] 363 | f, [INFO] [stdout] 364 ~ "predicate takes {expected} arguments but {got} were supplied" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:369:17 [INFO] [stdout] | [INFO] [stdout] 369 | write!(f, "undeclared symbol \"{name}\"\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 369 - write!(f, "undeclared symbol \"{name}\"\n")?; [INFO] [stdout] 369 + writeln!(f, "undeclared symbol \"{name}\"")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:379:17 [INFO] [stdout] | [INFO] [stdout] 379 | write!(f, "expected {expected}, found {found} \"{name}\"\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 379 - write!(f, "expected {expected}, found {found} \"{name}\"\n")?; [INFO] [stdout] 379 + writeln!(f, "expected {expected}, found {found} \"{name}\"")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:381:17 [INFO] [stdout] | [INFO] [stdout] 381 | write!(f, "\"{name}\" declared as {found} here:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 381 - write!(f, "\"{name}\" declared as {found} here:\n")?; [INFO] [stdout] 381 + writeln!(f, "\"{name}\" declared as {found} here:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:389:17 [INFO] [stdout] | [INFO] [stdout] 389 | write!(f, "symbol declared multiple times\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 389 - write!(f, "symbol declared multiple times\n")?; [INFO] [stdout] 389 + writeln!(f, "symbol declared multiple times")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:391:17 [INFO] [stdout] | [INFO] [stdout] 391 | write!(f, "Previously declared here:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 391 - write!(f, "Previously declared here:\n")?; [INFO] [stdout] 391 + writeln!(f, "Previously declared here:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:395:17 [INFO] [stdout] | [INFO] [stdout] 395 | write!(f, "sort of term undetermined\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 395 - write!(f, "sort of term undetermined\n")?; [INFO] [stdout] 395 + writeln!(f, "sort of term undetermined")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:399:17 [INFO] [stdout] | [INFO] [stdout] 399 | write!(f, "term has conflicting types\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 399 - write!(f, "term has conflicting types\n")?; [INFO] [stdout] 399 + writeln!(f, "term has conflicting types")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:403:17 [INFO] [stdout] | [INFO] [stdout] 403 | write!(f, "variable introduced in then statement\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 403 - write!(f, "variable introduced in then statement\n")?; [INFO] [stdout] 403 + writeln!(f, "variable introduced in then statement")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:407:17 [INFO] [stdout] | [INFO] [stdout] 407 | write!(f, "wildcards must not appear in then statements\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 407 - write!(f, "wildcards must not appear in then statements\n")?; [INFO] [stdout] 407 + writeln!(f, "wildcards must not appear in then statements")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:411:17 [INFO] [stdout] | [INFO] [stdout] 411 | write!(f, "term does not appear earlier in this rule\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 411 - write!(f, "term does not appear earlier in this rule\n")?; [INFO] [stdout] 411 + writeln!(f, "term does not appear earlier in this rule")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:415:17 [INFO] [stdout] | [INFO] [stdout] 415 | write!(f, "expected a variable\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 415 - write!(f, "expected a variable\n")?; [INFO] [stdout] 415 + writeln!(f, "expected a variable")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:419:17 [INFO] [stdout] | [INFO] [stdout] 419 | write!(f, "variable has already been introduced earlier\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 419 - write!(f, "variable has already been introduced earlier\n")?; [INFO] [stdout] 419 + writeln!(f, "variable has already been introduced earlier")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:427:17 [INFO] [stdout] | [INFO] [stdout] 427 | / write!( [INFO] [stdout] 428 | | f, [INFO] [stdout] 429 | | "term of enum type \"{enum_name}\" is not introduced with constructor \n" [INFO] [stdout] 430 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 427 ~ writeln!( [INFO] [stdout] 428 | f, [INFO] [stdout] 429 ~ "term of enum type \"{enum_name}\" is not introduced with constructor " [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:432:17 [INFO] [stdout] | [INFO] [stdout] 432 | write!(f, "Enum \"{enum_name}\" declared here:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 432 - write!(f, "Enum \"{enum_name}\" declared here:\n")?; [INFO] [stdout] 432 + writeln!(f, "Enum \"{enum_name}\" declared here:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:436:17 [INFO] [stdout] | [INFO] [stdout] 436 | write!(f, "Pattern is a variable\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 436 - write!(f, "Pattern is a variable\n")?; [INFO] [stdout] 436 + writeln!(f, "Pattern is a variable")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:438:17 [INFO] [stdout] | [INFO] [stdout] 438 | / write!( [INFO] [stdout] 439 | | f, [INFO] [stdout] 440 | | "Patterns must be given by constructors of an enum type\n" [INFO] [stdout] 441 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 438 ~ writeln!( [INFO] [stdout] 439 | f, [INFO] [stdout] 440 ~ "Patterns must be given by constructors of an enum type" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:444:17 [INFO] [stdout] | [INFO] [stdout] 444 | write!(f, "Pattern is a wildcard\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 444 - write!(f, "Pattern is a wildcard\n")?; [INFO] [stdout] 444 + writeln!(f, "Pattern is a wildcard")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:446:17 [INFO] [stdout] | [INFO] [stdout] 446 | / write!( [INFO] [stdout] 447 | | f, [INFO] [stdout] 448 | | "Patterns must be given by constructors of an enum type\n" [INFO] [stdout] 449 | | )?; [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 446 ~ writeln!( [INFO] [stdout] 447 | f, [INFO] [stdout] 448 ~ "Patterns must be given by constructors of an enum type" [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:452:17 [INFO] [stdout] | [INFO] [stdout] 452 | write!(f, "Nested patterns are not supported yet\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 452 - write!(f, "Nested patterns are not supported yet\n")?; [INFO] [stdout] 452 + writeln!(f, "Nested patterns are not supported yet")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:454:17 [INFO] [stdout] | [INFO] [stdout] 454 | write!(f, "Only variables may occur as arguments\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 454 - write!(f, "Only variables may occur as arguments\n")?; [INFO] [stdout] 454 + writeln!(f, "Only variables may occur as arguments")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:457:17 [INFO] [stdout] | [INFO] [stdout] 457 | write!(f, "Variable in pattern has been used before\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 457 - write!(f, "Variable in pattern has been used before\n")?; [INFO] [stdout] 457 + writeln!(f, "Variable in pattern has been used before")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:459:17 [INFO] [stdout] | [INFO] [stdout] 459 | write!(f, "Variables in patterns must be fresh\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 459 - write!(f, "Variables in patterns must be fresh\n")?; [INFO] [stdout] 459 + writeln!(f, "Variables in patterns must be fresh")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:466:17 [INFO] [stdout] | [INFO] [stdout] 466 | write!(f, "Conflicting pattern types\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 466 - write!(f, "Conflicting pattern types\n")?; [INFO] [stdout] 466 + writeln!(f, "Conflicting pattern types")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:468:17 [INFO] [stdout] | [INFO] [stdout] 468 | write!(f, "Constructors belong to different enums:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 468 - write!(f, "Constructors belong to different enums:\n")?; [INFO] [stdout] 468 + writeln!(f, "Constructors belong to different enums:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:476:17 [INFO] [stdout] | [INFO] [stdout] 476 | write!(f, "Missing match case:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 476 - write!(f, "Missing match case:\n")?; [INFO] [stdout] 476 + writeln!(f, "Missing match case:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/error.rs:478:17 [INFO] [stdout] | [INFO] [stdout] 478 | write!(f, "This constructor is not covered:\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 478 - write!(f, "This constructor is not covered:\n")?; [INFO] [stdout] 478 + writeln!(f, "This constructor is not covered:")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/flat_eqlog/index_selection.rs:67:45 [INFO] [stdout] | [INFO] [stdout] 67 | let mut specs: Vec = indices.into_iter().cloned().collect(); [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] = note: `#[warn(clippy::into_iter_on_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:100:44 [INFO] [stdout] | [INFO] [stdout] 100 | .filter(|var| !fixed_vars.contains(&var)) [INFO] [stdout] | ^^^^ help: change this to: `var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:113:18 [INFO] [stdout] | [INFO] [stdout] 113 | fn sort_if_block<'a>(if_stmts: &mut [FlatIfStmt], fixed_vars: &mut BTreeSet) { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] = note: `#[warn(clippy::extra_unused_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:134:22 [INFO] [stdout] | [INFO] [stdout] 134 | fn sort_if_stmts_rec<'a>(stmts: &mut [FlatStmt], fixed_vars: &mut BTreeSet) { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:140:35 [INFO] [stdout] | [INFO] [stdout] 140 | let is_if_group = if_stmt(&first_stmt).is_some(); [INFO] [stdout] | ^^^^^^^^^^^ help: change this to: `first_stmt` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this lifetime isn't used in the function definition [INFO] [stdout] --> src/flat_eqlog/sort_if_stmts.rs:172:22 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn sort_if_stmts<'a>(rule: &mut FlatRule) { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/flat_eqlog/var_info.rs:31:19 [INFO] [stdout] | [INFO] [stdout] 31 | pub fn fixed_vars<'a>( [INFO] [stdout] | ^^ [INFO] [stdout] 32 | rule: &'a FlatRule, [INFO] [stdout] | ^^ [INFO] [stdout] 33 | ) -> BTreeMap, BTreeSet> { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 31 ~ pub fn fixed_vars( [INFO] [stdout] 32 ~ rule: &FlatRule, [INFO] [stdout] 33 ~ ) -> BTreeMap, BTreeSet> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> src/flat_eqlog/mod.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | if let None = eqlog.domain(func) { [INFO] [stdout] | -------^^^^--------------------- help: try: `if eqlog.domain(func).is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless conversion to the same type: `std::ops::RangeFrom` [INFO] [stdout] --> src/flatten.rs:22:33 [INFO] [stdout] | [INFO] [stdout] 22 | let mut unused_flat_terms = (0..).into_iter().map(FlatVar); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: consider removing `.into_iter()`: `(0..)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/flatten.rs:264:9 [INFO] [stdout] | [INFO] [stdout] 264 | / !iter_els(cod, eqlog) [INFO] [stdout] 265 | | .find(|el| !eqlog.el_in_img(morphism, *el)) [INFO] [stdout] 266 | | .is_some(), [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 264 ~ iter_els(cod, eqlog) [INFO] [stdout] 265 ~ .find(|el| !eqlog.el_in_img(morphism, *el)).is_none(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `slice` [INFO] [stdout] --> src/rust_gen.rs:18:39 [INFO] [stdout] | [INFO] [stdout] 18 | let mut iter = supposed_singleton.into_iter(); [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> src/rust_gen.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | format!("{}", identifiers.get(&ident).unwrap()).to_case(Snake) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `identifiers.get(&ident).unwrap().to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/rust_gen.rs:380:10 [INFO] [stdout] | [INFO] [stdout] 380 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/rust_gen.rs:669:10 [INFO] [stdout] | [INFO] [stdout] 669 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `BTreeSet` [INFO] [stdout] --> src/rust_gen.rs:680:10 [INFO] [stdout] | [INFO] [stdout] 680 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:744:36 [INFO] [stdout] | [INFO] [stdout] 744 | write_table_weight(out, arity, &indices)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:745:36 [INFO] [stdout] | [INFO] [stdout] 745 | write_table_new_fn(out, arity, &indices)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:746:49 [INFO] [stdout] | [INFO] [stdout] 746 | write_table_insert_fn(out, relation, arity, &indices, index_selection)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:748:35 [INFO] [stdout] | [INFO] [stdout] 748 | write_table_drop_dirt_fn(out, &indices, index_selection)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:761:55 [INFO] [stdout] | [INFO] [stdout] 761 | write_table_drain_with_element(out, relation, &indices, index_selection, sort)?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `indices` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:1739:17 [INFO] [stdout] | [INFO] [stdout] 1739 | write!(f, "#[allow(unused_variables)]\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 1739 - write!(f, "#[allow(unused_variables)]\n")?; [INFO] [stdout] 1739 + writeln!(f, "#[allow(unused_variables)]")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:1756:17 [INFO] [stdout] | [INFO] [stdout] 1756 | write!(f, ") {{\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 1756 - write!(f, ") {{\n")?; [INFO] [stdout] 1756 + writeln!(f, ") {{")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/rust_gen.rs:1823:26 [INFO] [stdout] | [INFO] [stdout] 1823 | .map(|arg| display_var(arg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `display_var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/rust_gen.rs:1828:26 [INFO] [stdout] | [INFO] [stdout] 1828 | .map(|arg| display_var(arg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `display_var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `repeat().take()` can be written more concisely [INFO] [stdout] --> src/rust_gen.rs:1871:33 [INFO] [stdout] | [INFO] [stdout] 1871 | let out_arg_wildcards = repeat("_, ").take(func_args.len()).format(""); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("_, ", func_args.len())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n [INFO] [stdout] = note: `#[warn(clippy::manual_repeat_n)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2093:5 [INFO] [stdout] | [INFO] [stdout] 2093 | write!(out, "/// Creates an empty model.\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2093 - write!(out, "/// Creates an empty model.\n")?; [INFO] [stdout] 2093 + writeln!(out, "/// Creates an empty model.")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2094:5 [INFO] [stdout] | [INFO] [stdout] 2094 | write!(out, "#[allow(dead_code)]\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2094 - write!(out, "#[allow(dead_code)]\n")?; [INFO] [stdout] 2094 + writeln!(out, "#[allow(dead_code)]")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2095:5 [INFO] [stdout] | [INFO] [stdout] 2095 | write!(out, "pub fn new() -> Self {{\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2095 - write!(out, "pub fn new() -> Self {{\n")?; [INFO] [stdout] 2095 + writeln!(out, "pub fn new() -> Self {{")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2096:5 [INFO] [stdout] | [INFO] [stdout] 2096 | write!(out, "Self {{\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2096 - write!(out, "Self {{\n")?; [INFO] [stdout] 2096 + writeln!(out, "Self {{")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2099:9 [INFO] [stdout] | [INFO] [stdout] 2099 | write!(out, "{sort_snake}_equalities: Unification::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2099 - write!(out, "{sort_snake}_equalities: Unification::new(),\n")?; [INFO] [stdout] 2099 + writeln!(out, "{sort_snake}_equalities: Unification::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2100:9 [INFO] [stdout] | [INFO] [stdout] 2100 | write!(out, "{sort_snake}_weights: Vec::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2100 - write!(out, "{sort_snake}_weights: Vec::new(),\n")?; [INFO] [stdout] 2100 + writeln!(out, "{sort_snake}_weights: Vec::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2101:9 [INFO] [stdout] | [INFO] [stdout] 2101 | write!(out, "{sort_snake}_new: BTreeSet::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2101 - write!(out, "{sort_snake}_new: BTreeSet::new(),\n")?; [INFO] [stdout] 2101 + writeln!(out, "{sort_snake}_new: BTreeSet::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2102:9 [INFO] [stdout] | [INFO] [stdout] 2102 | write!(out, "{sort_snake}_old: BTreeSet::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2102 - write!(out, "{sort_snake}_old: BTreeSet::new(),\n")?; [INFO] [stdout] 2102 + writeln!(out, "{sort_snake}_old: BTreeSet::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2103:9 [INFO] [stdout] | [INFO] [stdout] 2103 | write!(out, "{sort_snake}_uprooted: Vec::new(),\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2103 - write!(out, "{sort_snake}_uprooted: Vec::new(),\n")?; [INFO] [stdout] 2103 + writeln!(out, "{sort_snake}_uprooted: Vec::new(),")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2110:5 [INFO] [stdout] | [INFO] [stdout] 2110 | write!(out, "empty_join_is_dirty: true,\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2110 - write!(out, "empty_join_is_dirty: true,\n")?; [INFO] [stdout] 2110 + writeln!(out, "empty_join_is_dirty: true,")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2111:5 [INFO] [stdout] | [INFO] [stdout] 2111 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2111 - write!(out, "}}\n")?; [INFO] [stdout] 2111 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2112:5 [INFO] [stdout] | [INFO] [stdout] 2112 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2112 - write!(out, "}}\n")?; [INFO] [stdout] 2112 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2180:5 [INFO] [stdout] | [INFO] [stdout] 2180 | write!(out, "/// A model of the `{name}` theory.\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2180 - write!(out, "/// A model of the `{name}` theory.\n")?; [INFO] [stdout] 2180 + writeln!(out, "/// A model of the `{name}` theory.")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2181:5 [INFO] [stdout] | [INFO] [stdout] 2181 | write!(out, "#[derive(Debug, Clone)]\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2181 - write!(out, "#[derive(Debug, Clone)]\n")?; [INFO] [stdout] 2181 + writeln!(out, "#[derive(Debug, Clone)]")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2182:5 [INFO] [stdout] | [INFO] [stdout] 2182 | write!(out, "pub struct {} {{\n", name)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2182 - write!(out, "pub struct {} {{\n", name)?; [INFO] [stdout] 2182 + writeln!(out, "pub struct {} {{", name)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2186:9 [INFO] [stdout] | [INFO] [stdout] 2186 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2186 - write!(out, "\n")?; [INFO] [stdout] 2186 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2195:5 [INFO] [stdout] | [INFO] [stdout] 2195 | write!(out, "empty_join_is_dirty: bool,\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2195 - write!(out, "empty_join_is_dirty: bool,\n")?; [INFO] [stdout] 2195 + writeln!(out, "empty_join_is_dirty: bool,")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2196:5 [INFO] [stdout] | [INFO] [stdout] 2196 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2196 - write!(out, "}}\n")?; [INFO] [stdout] 2196 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2209:5 [INFO] [stdout] | [INFO] [stdout] 2209 | write!(out, "impl {} {{\n", name)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2209 - write!(out, "impl {} {{\n", name)?; [INFO] [stdout] 2209 + writeln!(out, "impl {} {{", name)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2212:5 [INFO] [stdout] | [INFO] [stdout] 2212 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2212 - write!(out, "\n")?; [INFO] [stdout] 2212 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2221:9 [INFO] [stdout] | [INFO] [stdout] 2221 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2221 - write!(out, "\n")?; [INFO] [stdout] 2221 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2251:9 [INFO] [stdout] | [INFO] [stdout] 2251 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2251 - write!(out, "\n")?; [INFO] [stdout] 2251 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> src/rust_gen.rs:2262:12 [INFO] [stdout] | [INFO] [stdout] 2262 | if arity.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!arity.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:2265:40 [INFO] [stdout] | [INFO] [stdout] 2265 | write_pub_insert_relation(out, &pred, &arity, false)?; [INFO] [stdout] | ^^^^^ help: change this to: `pred` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2266:9 [INFO] [stdout] | [INFO] [stdout] 2266 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2266 - write!(out, "\n")?; [INFO] [stdout] 2266 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2271:5 [INFO] [stdout] | [INFO] [stdout] 2271 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2271 - write!(out, "\n")?; [INFO] [stdout] 2271 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2285:5 [INFO] [stdout] | [INFO] [stdout] 2285 | write!(out, "}}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2285 - write!(out, "}}\n")?; [INFO] [stdout] 2285 + writeln!(out, "}}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2338:5 [INFO] [stdout] | [INFO] [stdout] 2338 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2338 - write!(out, "\n")?; [INFO] [stdout] 2338 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2345:5 [INFO] [stdout] | [INFO] [stdout] 2345 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2345 - write!(out, "\n")?; [INFO] [stdout] 2345 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/rust_gen.rs:2356:54 [INFO] [stdout] | [INFO] [stdout] 2356 | write_table_impl(out, rel, &arity, &indices, &index_selection)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `index_selection` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2364:5 [INFO] [stdout] | [INFO] [stdout] 2364 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2364 - write!(out, "\n")?; [INFO] [stdout] 2364 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/rust_gen.rs:2370:5 [INFO] [stdout] | [INFO] [stdout] 2370 | write!(out, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 2370 - write!(out, "\n")?; [INFO] [stdout] 2370 + writeln!(out)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | write!(f, "{source_path}:{first_num}\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 80 - write!(f, "{source_path}:{first_num}\n")?; [INFO] [stdout] 80 + writeln!(f, "{source_path}:{first_num}")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | write!(f, " | \n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 83 - write!(f, " | \n")?; [INFO] [stdout] 83 + writeln!(f, " | ")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | write!(f, "{}\n", &source[line_begin..line_end])?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 90 - write!(f, "{}\n", &source[line_begin..line_end])?; [INFO] [stdout] 90 + writeln!(f, "{}", &source[line_begin..line_end])?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:102:17 [INFO] [stdout] | [INFO] [stdout] 102 | write!(f, "\n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 102 - write!(f, "\n")?; [INFO] [stdout] 102 + writeln!(f)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `write!()` with a format string that ends in a single newline [INFO] [stdout] --> src/source_display.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | write!(f, " | \n")?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stdout] help: use `writeln!` instead [INFO] [stdout] | [INFO] [stdout] 107 - write!(f, " | \n")?; [INFO] [stdout] 107 + writeln!(f, " | ")?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 02s [INFO] running `Command { std: "docker" "inspect" "584c1e53ee863100b36ccbce65fdc8ca602295d3c161fce0f6482ff4e0b688f4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "584c1e53ee863100b36ccbce65fdc8ca602295d3c161fce0f6482ff4e0b688f4", kill_on_drop: false }` [INFO] [stdout] 584c1e53ee863100b36ccbce65fdc8ca602295d3c161fce0f6482ff4e0b688f4