[INFO] crate moore-vhdl 0.1.0 is already in cache [INFO] extracting crate moore-vhdl 0.1.0 into work/ex/clippy-test-run/sources/stable/reg/moore-vhdl/0.1.0 [INFO] extracting crate moore-vhdl 0.1.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/moore-vhdl/0.1.0 [INFO] validating manifest of moore-vhdl-0.1.0 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of moore-vhdl-0.1.0 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing moore-vhdl-0.1.0 [INFO] finished frobbing moore-vhdl-0.1.0 [INFO] frobbed toml for moore-vhdl-0.1.0 written to work/ex/clippy-test-run/sources/stable/reg/moore-vhdl/0.1.0/Cargo.toml [INFO] started frobbing moore-vhdl-0.1.0 [INFO] finished frobbing moore-vhdl-0.1.0 [INFO] frobbed toml for moore-vhdl-0.1.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/moore-vhdl/0.1.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting moore-vhdl-0.1.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/moore-vhdl/0.1.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 68ee74a3542b10c8e2b2203fe503086dafeed9eea3eac4308cad05abeb2b7e6d [INFO] running `"docker" "start" "-a" "68ee74a3542b10c8e2b2203fe503086dafeed9eea3eac4308cad05abeb2b7e6d"` [INFO] [stderr] Checking bincode v0.6.1 [INFO] [stderr] Checking moore-common v0.1.0 [INFO] [stderr] Checking llhd v0.1.0 [INFO] [stderr] Checking moore-vhdl-syntax v0.1.0 [INFO] [stderr] Checking moore-vhdl v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> symtbl.rs:81:4 [INFO] [stderr] | [INFO] [stderr] 81 | node_id: node_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `node_id` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:850:4 [INFO] [stderr] | [INFO] [stderr] 850 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:851:4 [INFO] [stderr] | [INFO] [stderr] 851 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:852:4 [INFO] [stderr] | [INFO] [stderr] 852 | generics: generics, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `generics` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:853:4 [INFO] [stderr] | [INFO] [stderr] 853 | generic_map: generic_map, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `generic_map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:855:4 [INFO] [stderr] | [INFO] [stderr] 855 | return_type: return_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `return_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/scope.rs:275:4 [INFO] [stderr] | [INFO] [stderr] 275 | parent: parent, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `parent` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/scope.rs:276:4 [INFO] [stderr] | [INFO] [stderr] 276 | defs: defs, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `defs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/scope.rs:277:4 [INFO] [stderr] | [INFO] [stderr] 277 | explicit_defs: explicit_defs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `explicit_defs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/mod.rs:152:4 [INFO] [stderr] | [INFO] [stderr] 152 | arenas: arenas, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `arenas` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:116:4 [INFO] [stderr] | [INFO] [stderr] 116 | dir: dir, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:117:4 [INFO] [stderr] | [INFO] [stderr] 117 | left_bound: left_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `left_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:118:4 [INFO] [stderr] | [INFO] [stderr] 118 | right_bound: right_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `right_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:161:4 [INFO] [stderr] | [INFO] [stderr] 161 | decl: decl, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `decl` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:190:4 [INFO] [stderr] | [INFO] [stderr] 190 | indices: indices, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `indices` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:191:4 [INFO] [stderr] | [INFO] [stderr] 191 | element: element, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `element` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:247:4 [INFO] [stderr] | [INFO] [stderr] 247 | fields: fields, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:248:4 [INFO] [stderr] | [INFO] [stderr] 248 | lookup: lookup, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `lookup` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> ty.rs:259:3 [INFO] [stderr] | [INFO] [stderr] 259 | write!(f, "\n")?; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_with_newline)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> ty.rs:262:4 [INFO] [stderr] | [INFO] [stderr] 262 | write!(f, " {}: {};\n", name, indented)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:94:4 [INFO] [stderr] | [INFO] [stderr] 94 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:95:4 [INFO] [stderr] | [INFO] [stderr] 95 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:130:4 [INFO] [stderr] | [INFO] [stderr] 130 | decl: decl, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `decl` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:131:4 [INFO] [stderr] | [INFO] [stderr] 131 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:149:4 [INFO] [stderr] | [INFO] [stderr] 149 | dir: dir, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:150:4 [INFO] [stderr] | [INFO] [stderr] 150 | left_bound: left_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `left_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:151:4 [INFO] [stderr] | [INFO] [stderr] 151 | right_bound: right_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `right_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> codegen.rs:340:4 [INFO] [stderr] | [INFO] [stderr] 340 | body: body, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> codegen.rs:341:4 [INFO] [stderr] | [INFO] [stderr] 341 | block: block, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `block` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> defs.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> typeck.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> make_ctx.rs:55:4 [INFO] [stderr] | [INFO] [stderr] 55 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> make_ctx.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> make_ctx.rs:57:4 [INFO] [stderr] | [INFO] [stderr] 57 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> lazy.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | sb: sb, [INFO] [stderr] | ^^^^^^ help: replace it with: `sb` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> add_ctx.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> add_ctx.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | scope: scope, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> add_ctx.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | scope: scope, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:105:13 [INFO] [stderr] | [INFO] [stderr] 105 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:106:13 [INFO] [stderr] | [INFO] [stderr] 106 | scope: scope, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:577:13 [INFO] [stderr] | [INFO] [stderr] 577 | data: data [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:761:13 [INFO] [stderr] | [INFO] [stderr] 761 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:832:13 [INFO] [stderr] | [INFO] [stderr] 832 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1185:13 [INFO] [stderr] | [INFO] [stderr] 1185 | positional: positional, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `positional` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1186:13 [INFO] [stderr] | [INFO] [stderr] 1186 | named: named, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `named` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1187:13 [INFO] [stderr] | [INFO] [stderr] 1187 | others: others, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `others` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1206:25 [INFO] [stderr] | [INFO] [stderr] 1206 | actual: actual, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `actual` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1228:25 [INFO] [stderr] | [INFO] [stderr] 1228 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1230:25 [INFO] [stderr] | [INFO] [stderr] 1230 | actual: actual, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `actual` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | sens: sens, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sens` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:105:21 [INFO] [stderr] | [INFO] [stderr] 105 | cond: cond, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `cond` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:106:21 [INFO] [stderr] | [INFO] [stderr] 106 | timeout: timeout, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `timeout` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:140:21 [INFO] [stderr] | [INFO] [stderr] 140 | cond: cond, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `cond` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:141:21 [INFO] [stderr] | [INFO] [stderr] 141 | report: report, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `report` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:142:21 [INFO] [stderr] | [INFO] [stderr] 142 | severity: severity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `severity` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:175:21 [INFO] [stderr] | [INFO] [stderr] 175 | report: report, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `report` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:176:21 [INFO] [stderr] | [INFO] [stderr] 176 | severity: severity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `severity` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:286:25 [INFO] [stderr] | [INFO] [stderr] 286 | matching: matching, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `matching` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:298:21 [INFO] [stderr] | [INFO] [stderr] 298 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:336:21 [INFO] [stderr] | [INFO] [stderr] 336 | branches: branches, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `branches` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:337:21 [INFO] [stderr] | [INFO] [stderr] 337 | otherwise: otherwise, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `otherwise` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:383:21 [INFO] [stderr] | [INFO] [stderr] 383 | matching: matching, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `matching` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:384:21 [INFO] [stderr] | [INFO] [stderr] 384 | switch: switch, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `switch` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:385:21 [INFO] [stderr] | [INFO] [stderr] 385 | cases: cases, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:427:21 [INFO] [stderr] | [INFO] [stderr] 427 | scheme: scheme, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `scheme` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:428:21 [INFO] [stderr] | [INFO] [stderr] 428 | stmts: stmts, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `stmts` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:473:21 [INFO] [stderr] | [INFO] [stderr] 473 | mode: mode, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mode` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:474:21 [INFO] [stderr] | [INFO] [stderr] 474 | target: target, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `target` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:475:21 [INFO] [stderr] | [INFO] [stderr] 475 | cond: cond, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `cond` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:504:21 [INFO] [stderr] | [INFO] [stderr] 504 | expr: expr, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `expr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:39:25 [INFO] [stderr] | [INFO] [stderr] 39 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:40:25 [INFO] [stderr] | [INFO] [stderr] 40 | init: init, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `init` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:88:25 [INFO] [stderr] | [INFO] [stderr] 88 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:89:25 [INFO] [stderr] | [INFO] [stderr] 89 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:90:25 [INFO] [stderr] | [INFO] [stderr] 90 | init: init, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `init` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:125:25 [INFO] [stderr] | [INFO] [stderr] 125 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:126:25 [INFO] [stderr] | [INFO] [stderr] 126 | init: init, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `init` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:174:25 [INFO] [stderr] | [INFO] [stderr] 174 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:175:25 [INFO] [stderr] | [INFO] [stderr] 175 | filename: filename, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `filename` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:176:25 [INFO] [stderr] | [INFO] [stderr] 176 | mode: mode, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mode` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> symtbl.rs:81:4 [INFO] [stderr] | [INFO] [stderr] 81 | node_id: node_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `node_id` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:850:4 [INFO] [stderr] | [INFO] [stderr] 850 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:851:4 [INFO] [stderr] | [INFO] [stderr] 851 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:852:4 [INFO] [stderr] | [INFO] [stderr] 852 | generics: generics, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `generics` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:853:4 [INFO] [stderr] | [INFO] [stderr] 853 | generic_map: generic_map, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `generic_map` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/lower_hir.rs:855:4 [INFO] [stderr] | [INFO] [stderr] 855 | return_type: return_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `return_type` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/scope.rs:275:4 [INFO] [stderr] | [INFO] [stderr] 275 | parent: parent, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `parent` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/scope.rs:276:4 [INFO] [stderr] | [INFO] [stderr] 276 | defs: defs, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `defs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/scope.rs:277:4 [INFO] [stderr] | [INFO] [stderr] 277 | explicit_defs: explicit_defs, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `explicit_defs` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> score/mod.rs:152:4 [INFO] [stderr] | [INFO] [stderr] 152 | arenas: arenas, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `arenas` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:116:4 [INFO] [stderr] | [INFO] [stderr] 116 | dir: dir, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:117:4 [INFO] [stderr] | [INFO] [stderr] 117 | left_bound: left_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `left_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:118:4 [INFO] [stderr] | [INFO] [stderr] 118 | right_bound: right_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `right_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:161:4 [INFO] [stderr] | [INFO] [stderr] 161 | decl: decl, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `decl` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:190:4 [INFO] [stderr] | [INFO] [stderr] 190 | indices: indices, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `indices` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:191:4 [INFO] [stderr] | [INFO] [stderr] 191 | element: element, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `element` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:247:4 [INFO] [stderr] | [INFO] [stderr] 247 | fields: fields, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> ty.rs:248:4 [INFO] [stderr] | [INFO] [stderr] 248 | lookup: lookup, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `lookup` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> ty.rs:259:3 [INFO] [stderr] | [INFO] [stderr] 259 | write!(f, "\n")?; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::write_with_newline)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: using `write!()` with a format string that ends in a single newline, consider using `writeln!()` instead [INFO] [stderr] --> ty.rs:262:4 [INFO] [stderr] | [INFO] [stderr] 262 | write!(f, " {}: {};\n", name, indented)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#write_with_newline [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:94:4 [INFO] [stderr] | [INFO] [stderr] 94 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:95:4 [INFO] [stderr] | [INFO] [stderr] 95 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:130:4 [INFO] [stderr] | [INFO] [stderr] 130 | decl: decl, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `decl` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:131:4 [INFO] [stderr] | [INFO] [stderr] 131 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:149:4 [INFO] [stderr] | [INFO] [stderr] 149 | dir: dir, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `dir` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:150:4 [INFO] [stderr] | [INFO] [stderr] 150 | left_bound: left_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `left_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> konst.rs:151:4 [INFO] [stderr] | [INFO] [stderr] 151 | right_bound: right_bound, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `right_bound` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> codegen.rs:340:4 [INFO] [stderr] | [INFO] [stderr] 340 | body: body, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> codegen.rs:341:4 [INFO] [stderr] | [INFO] [stderr] 341 | block: block, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `block` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> defs.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> typeck.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> make_ctx.rs:55:4 [INFO] [stderr] | [INFO] [stderr] 55 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> make_ctx.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> make_ctx.rs:57:4 [INFO] [stderr] | [INFO] [stderr] 57 | id: id, [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> lazy.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | sb: sb, [INFO] [stderr] | ^^^^^^ help: replace it with: `sb` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> add_ctx.rs:35:13 [INFO] [stderr] | [INFO] [stderr] 35 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> add_ctx.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | scope: scope, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> add_ctx.rs:43:13 [INFO] [stderr] | [INFO] [stderr] 43 | scope: scope, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:105:13 [INFO] [stderr] | [INFO] [stderr] 105 | ctx: ctx, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:106:13 [INFO] [stderr] | [INFO] [stderr] 106 | scope: scope, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `scope` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:577:13 [INFO] [stderr] | [INFO] [stderr] 577 | data: data [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:761:13 [INFO] [stderr] | [INFO] [stderr] 761 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:832:13 [INFO] [stderr] | [INFO] [stderr] 832 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1185:13 [INFO] [stderr] | [INFO] [stderr] 1185 | positional: positional, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `positional` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1186:13 [INFO] [stderr] | [INFO] [stderr] 1186 | named: named, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `named` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1187:13 [INFO] [stderr] | [INFO] [stderr] 1187 | others: others, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `others` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1206:25 [INFO] [stderr] | [INFO] [stderr] 1206 | actual: actual, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `actual` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1228:25 [INFO] [stderr] | [INFO] [stderr] 1228 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> term.rs:1230:25 [INFO] [stderr] | [INFO] [stderr] 1230 | actual: actual, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `actual` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:104:21 [INFO] [stderr] | [INFO] [stderr] 104 | sens: sens, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `sens` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:105:21 [INFO] [stderr] | [INFO] [stderr] 105 | cond: cond, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `cond` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:106:21 [INFO] [stderr] | [INFO] [stderr] 106 | timeout: timeout, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `timeout` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:140:21 [INFO] [stderr] | [INFO] [stderr] 140 | cond: cond, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `cond` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:141:21 [INFO] [stderr] | [INFO] [stderr] 141 | report: report, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `report` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:142:21 [INFO] [stderr] | [INFO] [stderr] 142 | severity: severity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `severity` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:175:21 [INFO] [stderr] | [INFO] [stderr] 175 | report: report, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `report` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:176:21 [INFO] [stderr] | [INFO] [stderr] 176 | severity: severity, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `severity` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:286:25 [INFO] [stderr] | [INFO] [stderr] 286 | matching: matching, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `matching` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:298:21 [INFO] [stderr] | [INFO] [stderr] 298 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:336:21 [INFO] [stderr] | [INFO] [stderr] 336 | branches: branches, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `branches` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:337:21 [INFO] [stderr] | [INFO] [stderr] 337 | otherwise: otherwise, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `otherwise` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:383:21 [INFO] [stderr] | [INFO] [stderr] 383 | matching: matching, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `matching` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:384:21 [INFO] [stderr] | [INFO] [stderr] 384 | switch: switch, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `switch` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:385:21 [INFO] [stderr] | [INFO] [stderr] 385 | cases: cases, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:427:21 [INFO] [stderr] | [INFO] [stderr] 427 | scheme: scheme, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `scheme` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:428:21 [INFO] [stderr] | [INFO] [stderr] 428 | stmts: stmts, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `stmts` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:473:21 [INFO] [stderr] | [INFO] [stderr] 473 | mode: mode, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mode` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:474:21 [INFO] [stderr] | [INFO] [stderr] 474 | target: target, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `target` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:475:21 [INFO] [stderr] | [INFO] [stderr] 475 | cond: cond, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `cond` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/seq_stmt.rs:504:21 [INFO] [stderr] | [INFO] [stderr] 504 | expr: expr, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `expr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:39:25 [INFO] [stderr] | [INFO] [stderr] 39 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:40:25 [INFO] [stderr] | [INFO] [stderr] 40 | init: init, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `init` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:88:25 [INFO] [stderr] | [INFO] [stderr] 88 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:89:25 [INFO] [stderr] | [INFO] [stderr] 89 | kind: kind, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:90:25 [INFO] [stderr] | [INFO] [stderr] 90 | init: init, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `init` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:125:25 [INFO] [stderr] | [INFO] [stderr] 125 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:126:25 [INFO] [stderr] | [INFO] [stderr] 126 | init: init, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `init` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:174:25 [INFO] [stderr] | [INFO] [stderr] 174 | ty: ty, [INFO] [stderr] | ^^^^^^ help: replace it with: `ty` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:175:25 [INFO] [stderr] | [INFO] [stderr] 175 | filename: filename, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `filename` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> nodes/obj_decl.rs:176:25 [INFO] [stderr] | [INFO] [stderr] 176 | mode: mode, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `mode` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> score/lower_hir.rs:1460:14 [INFO] [stderr] | [INFO] [stderr] 1460 | } else { [INFO] [stderr] | ________________________________^ [INFO] [stderr] 1461 | | if self.sess.opts.trace_scoreboard { [INFO] [stderr] 1462 | | println!("[SB][VHDL][OVLD] discarding {:?} because mismatching type {:?}", def.value, defty); [INFO] [stderr] 1463 | | } [INFO] [stderr] 1464 | | } [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1460 | } else if self.sess.opts.trace_scoreboard { [INFO] [stderr] 1461 | println!("[SB][VHDL][OVLD] discarding {:?} because mismatching type {:?}", def.value, defty); [INFO] [stderr] 1462 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> score/lower_hir.rs:1460:14 [INFO] [stderr] | [INFO] [stderr] 1460 | } else { [INFO] [stderr] | ________________________________^ [INFO] [stderr] 1461 | | if self.sess.opts.trace_scoreboard { [INFO] [stderr] 1462 | | println!("[SB][VHDL][OVLD] discarding {:?} because mismatching type {:?}", def.value, defty); [INFO] [stderr] 1463 | | } [INFO] [stderr] 1464 | | } [INFO] [stderr] | |_________________________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1460 | } else if self.sess.opts.trace_scoreboard { [INFO] [stderr] 1461 | println!("[SB][VHDL][OVLD] discarding {:?} because mismatching type {:?}", def.value, defty); [INFO] [stderr] 1462 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> score/mod.rs:1748:4 [INFO] [stderr] | [INFO] [stderr] 1748 | defs [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> score/mod.rs:1742:15 [INFO] [stderr] | [INFO] [stderr] 1742 | let defs = HashMap::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> ty.rs:297:10 [INFO] [stderr] | [INFO] [stderr] 297 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 298 | | if let Some(con) = self.3 { [INFO] [stderr] 299 | | write!(f, "{}", con)?; [INFO] [stderr] 300 | | } [INFO] [stderr] 301 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 297 | } else if let Some(con) = self.3 { [INFO] [stderr] 298 | write!(f, "{}", con)?; [INFO] [stderr] 299 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> score/mod.rs:1748:4 [INFO] [stderr] | [INFO] [stderr] 1748 | defs [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> score/mod.rs:1742:15 [INFO] [stderr] | [INFO] [stderr] 1742 | let defs = HashMap::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 230 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:276:5 [INFO] [stderr] | [INFO] [stderr] 276 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:329:5 [INFO] [stderr] | [INFO] [stderr] 329 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:393:5 [INFO] [stderr] | [INFO] [stderr] 393 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:421:7 [INFO] [stderr] | [INFO] [stderr] 421 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> term.rs:591:17 [INFO] [stderr] | [INFO] [stderr] 591 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> term.rs:732:17 [INFO] [stderr] | [INFO] [stderr] 732 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> ty.rs:297:10 [INFO] [stderr] | [INFO] [stderr] 297 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 298 | | if let Some(con) = self.3 { [INFO] [stderr] 299 | | write!(f, "{}", con)?; [INFO] [stderr] 300 | | } [INFO] [stderr] 301 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 297 | } else if let Some(con) = self.3 { [INFO] [stderr] 298 | write!(f, "{}", con)?; [INFO] [stderr] 299 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> nodes/seq_stmt.rs:610:16 [INFO] [stderr] | [INFO] [stderr] 610 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 611 | | if ast.len() != 1 { [INFO] [stderr] 612 | | self.emit( [INFO] [stderr] 613 | | DiagBuilder2::error(format!("more than one waveform or expression")) [INFO] [stderr] ... | [INFO] [stderr] 620 | | } [INFO] [stderr] 621 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 610 | } else if ast.len() != 1 { [INFO] [stderr] 611 | self.emit( [INFO] [stderr] 612 | DiagBuilder2::error(format!("more than one waveform or expression")) [INFO] [stderr] 613 | .span(ast[0].0.span) [INFO] [stderr] 614 | .add_note("An unconditional assignment must have exactly one waveform or expression.") [INFO] [stderr] 615 | ); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:230:5 [INFO] [stderr] | [INFO] [stderr] 230 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:276:5 [INFO] [stderr] | [INFO] [stderr] 276 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:329:5 [INFO] [stderr] | [INFO] [stderr] 329 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:393:5 [INFO] [stderr] | [INFO] [stderr] 393 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> typeck.rs:421:7 [INFO] [stderr] | [INFO] [stderr] 421 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> term.rs:591:17 [INFO] [stderr] | [INFO] [stderr] 591 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> term.rs:732:17 [INFO] [stderr] | [INFO] [stderr] 732 | return Err(()); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> nodes/seq_stmt.rs:610:16 [INFO] [stderr] | [INFO] [stderr] 610 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 611 | | if ast.len() != 1 { [INFO] [stderr] 612 | | self.emit( [INFO] [stderr] 613 | | DiagBuilder2::error(format!("more than one waveform or expression")) [INFO] [stderr] ... | [INFO] [stderr] 620 | | } [INFO] [stderr] 621 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 610 | } else if ast.len() != 1 { [INFO] [stderr] 611 | self.emit( [INFO] [stderr] 612 | DiagBuilder2::error(format!("more than one waveform or expression")) [INFO] [stderr] 613 | .span(ast[0].0.span) [INFO] [stderr] 614 | .add_note("An unconditional assignment must have exactly one waveform or expression.") [INFO] [stderr] 615 | ); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'hir::ExprData::OverloadedName::0' [INFO] [stderr] --> hir.rs:436:17 [INFO] [stderr] | [INFO] [stderr] 436 | OverloadedName(Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'hir::ExprData::OverloadedName::0' [INFO] [stderr] --> hir.rs:436:17 [INFO] [stderr] | [INFO] [stderr] 436 | OverloadedName(Vec>), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `others` [INFO] [stderr] --> nodes/expr.rs:336:17 [INFO] [stderr] | [INFO] [stderr] 336 | if let Some(others) = hir.others { [INFO] [stderr] | ^^^^^^ help: consider using `_others` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> nodes/expr.rs:263:5 [INFO] [stderr] | [INFO] [stderr] 263 | id: AggregateRef, [INFO] [stderr] | ^^ help: consider using `_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ty` [INFO] [stderr] --> nodes/expr.rs:443:17 [INFO] [stderr] | [INFO] [stderr] 443 | let ty = tyc.lazy_typeval(others.value)?; [INFO] [stderr] | ^^ help: consider using `_ty` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> nodes/expr.rs:387:5 [INFO] [stderr] | [INFO] [stderr] 387 | id: AggregateRef, [INFO] [stderr] | ^^ help: consider using `_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `range` [INFO] [stderr] --> nodes/expr.rs:498:71 [INFO] [stderr] | [INFO] [stderr] 498 | hir::ArrayChoice::DiscreteRange(hir::DiscreteRange::Range(ref range)) => { [INFO] [stderr] | ^^^^^ help: consider using `_range` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `others` [INFO] [stderr] --> nodes/expr.rs:336:17 [INFO] [stderr] | [INFO] [stderr] 336 | if let Some(others) = hir.others { [INFO] [stderr] | ^^^^^^ help: consider using `_others` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> nodes/expr.rs:263:5 [INFO] [stderr] | [INFO] [stderr] 263 | id: AggregateRef, [INFO] [stderr] | ^^ help: consider using `_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ty` [INFO] [stderr] --> nodes/expr.rs:443:17 [INFO] [stderr] | [INFO] [stderr] 443 | let ty = tyc.lazy_typeval(others.value)?; [INFO] [stderr] | ^^ help: consider using `_ty` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> nodes/expr.rs:387:5 [INFO] [stderr] | [INFO] [stderr] 387 | id: AggregateRef, [INFO] [stderr] | ^^ help: consider using `_id` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `range` [INFO] [stderr] --> nodes/expr.rs:498:71 [INFO] [stderr] | [INFO] [stderr] 498 | hir::ArrayChoice::DiscreteRange(hir::DiscreteRange::Range(ref range)) => { [INFO] [stderr] | ^^^^^ help: consider using `_range` instead [INFO] [stderr] [INFO] [stderr] error: mutable borrow from immutable input(s) [INFO] [stderr] --> arenas.rs:10:34 [INFO] [stderr] | [INFO] [stderr] 10 | fn alloc(&self, value: T) -> &mut T; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::mut_from_ref)] on by default [INFO] [stderr] note: immutable borrow here [INFO] [stderr] --> arenas.rs:10:14 [INFO] [stderr] | [INFO] [stderr] 10 | fn alloc(&self, value: T) -> &mut T; [INFO] [stderr] | ^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mut_from_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `symtbl::SymTbl` [INFO] [stderr] --> symtbl.rs:23:2 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new() -> SymTbl { [INFO] [stderr] | _____^ [INFO] [stderr] 24 | | SymTbl { [INFO] [stderr] 25 | | next_id: 1, [INFO] [stderr] 26 | | root_scope: Scope::new(Default::default()), [INFO] [stderr] ... | [INFO] [stderr] 29 | | } [INFO] [stderr] 30 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 21 | impl Default for symtbl::SymTbl { [INFO] [stderr] 22 | fn default() -> Self { [INFO] [stderr] 23 | Self::new() [INFO] [stderr] 24 | } [INFO] [stderr] 25 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `or_insert` followed by a function call [INFO] [stderr] --> symtbl.rs:47:35 [INFO] [stderr] | [INFO] [stderr] 47 | let id = *self.libs.entry(name).or_insert(NodeId::new(self.next_id)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `or_insert_with(|| NodeId::new(self.next_id))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> symtbl.rs:93:38 [INFO] [stderr] | [INFO] [stderr] 93 | self.defs.entry(k).or_insert_with(|| Vec::new()).extend(v); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> symtbl.rs:106:46 [INFO] [stderr] | [INFO] [stderr] 106 | self.defs.entry(name.value).or_insert_with(|| Vec::new()).push((name.span, def)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> symtbl.rs:155:17 [INFO] [stderr] | [INFO] [stderr] 155 | pub fn node_id(&self) -> NodeId { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/lower_hir.rs:1598:25 [INFO] [stderr] | [INFO] [stderr] 1598 | self.set_ast(lb, (scope_id.into(), lb_expr.as_ref())); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider removing `.into()`: `scope_id` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/lower_hir.rs:1599:25 [INFO] [stderr] | [INFO] [stderr] 1599 | self.set_ast(rb, (scope_id.into(), rb_expr.as_ref())); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider removing `.into()`: `scope_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> score/lower_hir.rs:1672:13 [INFO] [stderr] | [INFO] [stderr] 1672 | assert!(indices.value.len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!indices.value.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> score/lower_hir.rs:1723:19 [INFO] [stderr] | [INFO] [stderr] 1723 | let entity_id = *self.archs(lib_id)?.by_arch.get(&id).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&self.archs(lib_id)?.by_arch[&id]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> score/scope.rs:77:48 [INFO] [stderr] | [INFO] [stderr] 77 | defs.entry(name.value.into()).or_insert_with(|| Vec::new()).push(Spanned::new(def, name.span)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> score/scope.rs:110:3 [INFO] [stderr] | [INFO] [stderr] 110 | match *item { [INFO] [stderr] | _________^ [INFO] [stderr] 111 | | ast::CtxItem::LibClause(Spanned{ value: ref names, .. }) => { [INFO] [stderr] 112 | | for ident in names { [INFO] [stderr] 113 | | if let Some(&lib_id) = self.sb.lib_names.borrow().get(&ident.name) { [INFO] [stderr] ... | [INFO] [stderr] 135 | | _ => () [INFO] [stderr] 136 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 110 | if let ast::CtxItem::LibClause(Spanned{ value: ref names, .. }) = *item { [INFO] [stderr] 111 | for ident in names { [INFO] [stderr] 112 | if let Some(&lib_id) = self.sb.lib_names.borrow().get(&ident.name) { [INFO] [stderr] 113 | let defs = defs.entry(ident.name.into()).or_insert_with(||vec![]); [INFO] [stderr] 114 | if !defs.is_empty() { [INFO] [stderr] 115 | self.emit( [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> score/scope.rs:232:4 [INFO] [stderr] | [INFO] [stderr] 232 | if let &ast::CtxItem::UseClause(Spanned{value: ref names, ..}) = item { [INFO] [stderr] | _____________^ [INFO] [stderr] 233 | | for name in names { [INFO] [stderr] 234 | | // TODO: This creates an infinite loop, since the name lookup requires the context items to be ready. [INFO] [stderr] 235 | | let (res_name, mut out_defs, valid_span, mut tail) = self.resolve_compound_name(name, id.into(), true)?; [INFO] [stderr] ... | [INFO] [stderr] 271 | | } [INFO] [stderr] 272 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 232 | if let ast::CtxItem::UseClause(Spanned{value: ref names, ..}) = *item { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> score/scope.rs:257:53 [INFO] [stderr] | [INFO] [stderr] 257 | explicit_defs.entry(res_name).or_insert_with(|| Vec::new()).extend(out_defs); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> score/scope.rs:263:9 [INFO] [stderr] | [INFO] [stderr] 263 | if tail.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!tail.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/scope.rs:264:30 [INFO] [stderr] | [INFO] [stderr] 264 | let span = Span::union(valid_span.end().into(), name.span.end()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `valid_span.end()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> score/mod.rs:190:3 [INFO] [stderr] | [INFO] [stderr] 190 | self.sb.span_table.borrow().get(&id.into()).map(|v| *v) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.sb.span_table.borrow().get(&id.into()).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/mod.rs:423:57 [INFO] [stderr] | [INFO] [stderr] 423 | if let Some(node) = self.sb.scope_table.borrow().get(&id.into()).cloned() { [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> score/mod.rs:460:3 [INFO] [stderr] | [INFO] [stderr] 460 | self.sb.tyctx_table.borrow().get(&id.into()).map(|&t| t) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.sb.tyctx_table.borrow().get(&id.into()).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> score/mod.rs:494:3 [INFO] [stderr] | [INFO] [stderr] 494 | match id { [INFO] [stderr] | _________^ [INFO] [stderr] 495 | | Some(id) => self.set_type_context(id, tyctx), [INFO] [stderr] 496 | | None => (), [INFO] [stderr] 497 | | } [INFO] [stderr] | |_________^ help: try this: `if let Some(id) = id { self.set_type_context(id, tyctx) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/mod.rs:546:31 [INFO] [stderr] | [INFO] [stderr] 546 | self.set_ast(subid, (id, ctx_id.into(), decl)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider removing `.into()`: `ctx_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> score/mod.rs:673:111 [INFO] [stderr] | [INFO] [stderr] 673 | pub fn resolve_compound_name<'a>(&self, name: &'a ast::CompoundName, scope_id: ScopeRef, only_defs: bool) -> Result<(ResolvableName, Vec>, Span, &'a [ast::NamePart])> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::type_complexity)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/mod.rs:762:38 [INFO] [stderr] | [INFO] [stderr] 762 | let defs = self.defs(ScopeRef::Lib(id.into()))?; [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `score::Arenas` [INFO] [stderr] --> score/mod.rs:973:2 [INFO] [stderr] | [INFO] [stderr] 973 | pub fn new() -> Arenas { [INFO] [stderr] | _____^ [INFO] [stderr] 974 | | Arenas { [INFO] [stderr] 975 | | hir: hir::Arenas::new(), [INFO] [stderr] 976 | | defs: Arena::new(), [INFO] [stderr] ... | [INFO] [stderr] 981 | | } [INFO] [stderr] 982 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 971 | impl Default for score::Arenas { [INFO] [stderr] 972 | fn default() -> Self { [INFO] [stderr] 973 | Self::new() [INFO] [stderr] 974 | } [INFO] [stderr] 975 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `score::ArchTable` [INFO] [stderr] --> score/mod.rs:1002:2 [INFO] [stderr] | [INFO] [stderr] 1002 | pub fn new() -> ArchTable { [INFO] [stderr] | _____^ [INFO] [stderr] 1003 | | ArchTable { [INFO] [stderr] 1004 | | by_arch: HashMap::new(), [INFO] [stderr] 1005 | | by_entity: HashMap::new(), [INFO] [stderr] 1006 | | } [INFO] [stderr] 1007 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 989 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `score::EntityArchTable` [INFO] [stderr] --> score/mod.rs:1011:2 [INFO] [stderr] | [INFO] [stderr] 1011 | pub fn new() -> EntityArchTable { [INFO] [stderr] | _____^ [INFO] [stderr] 1012 | | EntityArchTable { [INFO] [stderr] 1013 | | ordered: Vec::new(), [INFO] [stderr] 1014 | | by_name: HashMap::new(), [INFO] [stderr] 1015 | | } [INFO] [stderr] 1016 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 996 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> score/mod.rs:1048:18 [INFO] [stderr] | [INFO] [stderr] 1048 | pub fn is_ident(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> score/mod.rs:1056:16 [INFO] [stderr] | [INFO] [stderr] 1056 | pub fn is_bit(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> score/mod.rs:1064:21 [INFO] [stderr] | [INFO] [stderr] 1064 | pub fn is_operator(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] error: mutable borrow from immutable input(s) [INFO] [stderr] --> arenas.rs:10:34 [INFO] [stderr] | [INFO] [stderr] 10 | fn alloc(&self, value: T) -> &mut T; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::mut_from_ref)] on by default [INFO] [stderr] note: immutable borrow here [INFO] [stderr] --> arenas.rs:10:14 [INFO] [stderr] | [INFO] [stderr] 10 | fn alloc(&self, value: T) -> &mut T; [INFO] [stderr] | ^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mut_from_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `symtbl::SymTbl` [INFO] [stderr] --> symtbl.rs:23:2 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn new() -> SymTbl { [INFO] [stderr] | _____^ [INFO] [stderr] 24 | | SymTbl { [INFO] [stderr] 25 | | next_id: 1, [INFO] [stderr] 26 | | root_scope: Scope::new(Default::default()), [INFO] [stderr] ... | [INFO] [stderr] 29 | | } [INFO] [stderr] 30 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 21 | impl Default for symtbl::SymTbl { [INFO] [stderr] 22 | fn default() -> Self { [INFO] [stderr] 23 | Self::new() [INFO] [stderr] 24 | } [INFO] [stderr] 25 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `or_insert` followed by a function call [INFO] [stderr] --> symtbl.rs:47:35 [INFO] [stderr] | [INFO] [stderr] 47 | let id = *self.libs.entry(name).or_insert(NodeId::new(self.next_id)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `or_insert_with(|| NodeId::new(self.next_id))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> symtbl.rs:93:38 [INFO] [stderr] | [INFO] [stderr] 93 | self.defs.entry(k).or_insert_with(|| Vec::new()).extend(v); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> symtbl.rs:106:46 [INFO] [stderr] | [INFO] [stderr] 106 | self.defs.entry(name.value).or_insert_with(|| Vec::new()).push((name.span, def)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> symtbl.rs:155:17 [INFO] [stderr] | [INFO] [stderr] 155 | pub fn node_id(&self) -> NodeId { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/lower_hir.rs:1598:25 [INFO] [stderr] | [INFO] [stderr] 1598 | self.set_ast(lb, (scope_id.into(), lb_expr.as_ref())); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider removing `.into()`: `scope_id` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_conversion)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/lower_hir.rs:1599:25 [INFO] [stderr] | [INFO] [stderr] 1599 | self.set_ast(rb, (scope_id.into(), rb_expr.as_ref())); [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: consider removing `.into()`: `scope_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> score/lower_hir.rs:1672:13 [INFO] [stderr] | [INFO] [stderr] 1672 | assert!(indices.value.len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!indices.value.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: called `.get().unwrap()` on a HashMap. Using `[]` is more clear and more concise [INFO] [stderr] --> score/lower_hir.rs:1723:19 [INFO] [stderr] | [INFO] [stderr] 1723 | let entity_id = *self.archs(lib_id)?.by_arch.get(&id).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `&self.archs(lib_id)?.by_arch[&id]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::get_unwrap)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_unwrap [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> score/scope.rs:77:48 [INFO] [stderr] | [INFO] [stderr] 77 | defs.entry(name.value.into()).or_insert_with(|| Vec::new()).push(Spanned::new(def, name.span)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> score/scope.rs:110:3 [INFO] [stderr] | [INFO] [stderr] 110 | match *item { [INFO] [stderr] | _________^ [INFO] [stderr] 111 | | ast::CtxItem::LibClause(Spanned{ value: ref names, .. }) => { [INFO] [stderr] 112 | | for ident in names { [INFO] [stderr] 113 | | if let Some(&lib_id) = self.sb.lib_names.borrow().get(&ident.name) { [INFO] [stderr] ... | [INFO] [stderr] 135 | | _ => () [INFO] [stderr] 136 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 110 | if let ast::CtxItem::LibClause(Spanned{ value: ref names, .. }) = *item { [INFO] [stderr] 111 | for ident in names { [INFO] [stderr] 112 | if let Some(&lib_id) = self.sb.lib_names.borrow().get(&ident.name) { [INFO] [stderr] 113 | let defs = defs.entry(ident.name.into()).or_insert_with(||vec![]); [INFO] [stderr] 114 | if !defs.is_empty() { [INFO] [stderr] 115 | self.emit( [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> score/scope.rs:232:4 [INFO] [stderr] | [INFO] [stderr] 232 | if let &ast::CtxItem::UseClause(Spanned{value: ref names, ..}) = item { [INFO] [stderr] | _____________^ [INFO] [stderr] 233 | | for name in names { [INFO] [stderr] 234 | | // TODO: This creates an infinite loop, since the name lookup requires the context items to be ready. [INFO] [stderr] 235 | | let (res_name, mut out_defs, valid_span, mut tail) = self.resolve_compound_name(name, id.into(), true)?; [INFO] [stderr] ... | [INFO] [stderr] 271 | | } [INFO] [stderr] 272 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 232 | if let ast::CtxItem::UseClause(Spanned{value: ref names, ..}) = *item { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> score/scope.rs:257:53 [INFO] [stderr] | [INFO] [stderr] 257 | explicit_defs.entry(res_name).or_insert_with(|| Vec::new()).extend(out_defs); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> score/scope.rs:263:9 [INFO] [stderr] | [INFO] [stderr] 263 | if tail.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!tail.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/scope.rs:264:30 [INFO] [stderr] | [INFO] [stderr] 264 | let span = Span::union(valid_span.end().into(), name.span.end()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `valid_span.end()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> score/mod.rs:190:3 [INFO] [stderr] | [INFO] [stderr] 190 | self.sb.span_table.borrow().get(&id.into()).map(|v| *v) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.sb.span_table.borrow().get(&id.into()).cloned()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::map_clone)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/mod.rs:423:57 [INFO] [stderr] | [INFO] [stderr] 423 | if let Some(node) = self.sb.scope_table.borrow().get(&id.into()).cloned() { [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: You are using an explicit closure for cloning elements [INFO] [stderr] --> score/mod.rs:460:3 [INFO] [stderr] | [INFO] [stderr] 460 | self.sb.tyctx_table.borrow().get(&id.into()).map(|&t| t) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: Consider calling the dedicated `cloned` method: `self.sb.tyctx_table.borrow().get(&id.into()).cloned()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> score/mod.rs:494:3 [INFO] [stderr] | [INFO] [stderr] 494 | match id { [INFO] [stderr] | _________^ [INFO] [stderr] 495 | | Some(id) => self.set_type_context(id, tyctx), [INFO] [stderr] 496 | | None => (), [INFO] [stderr] 497 | | } [INFO] [stderr] | |_________^ help: try this: `if let Some(id) = id { self.set_type_context(id, tyctx) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/mod.rs:546:31 [INFO] [stderr] | [INFO] [stderr] 546 | self.set_ast(subid, (id, ctx_id.into(), decl)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider removing `.into()`: `ctx_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> score/mod.rs:673:111 [INFO] [stderr] | [INFO] [stderr] 673 | pub fn resolve_compound_name<'a>(&self, name: &'a ast::CompoundName, scope_id: ScopeRef, only_defs: bool) -> Result<(ResolvableName, Vec>, Span, &'a [ast::NamePart])> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::type_complexity)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> score/mod.rs:762:38 [INFO] [stderr] | [INFO] [stderr] 762 | let defs = self.defs(ScopeRef::Lib(id.into()))?; [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `score::Arenas` [INFO] [stderr] --> score/mod.rs:973:2 [INFO] [stderr] | [INFO] [stderr] 973 | pub fn new() -> Arenas { [INFO] [stderr] | _____^ [INFO] [stderr] 974 | | Arenas { [INFO] [stderr] 975 | | hir: hir::Arenas::new(), [INFO] [stderr] 976 | | defs: Arena::new(), [INFO] [stderr] ... | [INFO] [stderr] 981 | | } [INFO] [stderr] 982 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 971 | impl Default for score::Arenas { [INFO] [stderr] 972 | fn default() -> Self { [INFO] [stderr] 973 | Self::new() [INFO] [stderr] 974 | } [INFO] [stderr] 975 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `score::ArchTable` [INFO] [stderr] --> score/mod.rs:1002:2 [INFO] [stderr] | [INFO] [stderr] 1002 | pub fn new() -> ArchTable { [INFO] [stderr] | _____^ [INFO] [stderr] 1003 | | ArchTable { [INFO] [stderr] 1004 | | by_arch: HashMap::new(), [INFO] [stderr] 1005 | | by_entity: HashMap::new(), [INFO] [stderr] 1006 | | } [INFO] [stderr] 1007 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 989 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `score::EntityArchTable` [INFO] [stderr] --> score/mod.rs:1011:2 [INFO] [stderr] | [INFO] [stderr] 1011 | pub fn new() -> EntityArchTable { [INFO] [stderr] | _____^ [INFO] [stderr] 1012 | | EntityArchTable { [INFO] [stderr] 1013 | | ordered: Vec::new(), [INFO] [stderr] 1014 | | by_name: HashMap::new(), [INFO] [stderr] 1015 | | } [INFO] [stderr] 1016 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 996 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> score/mod.rs:1048:18 [INFO] [stderr] | [INFO] [stderr] 1048 | pub fn is_ident(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> score/mod.rs:1056:16 [INFO] [stderr] | [INFO] [stderr] 1056 | pub fn is_bit(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> score/mod.rs:1064:21 [INFO] [stderr] | [INFO] [stderr] 1064 | pub fn is_operator(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `hir::Lib` [INFO] [stderr] --> hir.rs:75:2 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn new() -> Lib { [INFO] [stderr] | _____^ [INFO] [stderr] 76 | | Lib { [INFO] [stderr] 77 | | entities: Vec::new(), [INFO] [stderr] 78 | | cfgs: Vec::new(), [INFO] [stderr] ... | [INFO] [stderr] 84 | | } [INFO] [stderr] 85 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 64 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: item `ty::IntTy` has a public `len` method but no corresponding `is_empty` method [INFO] [stderr] --> ty.rs:112:1 [INFO] [stderr] | [INFO] [stderr] 112 | / impl IntTy { [INFO] [stderr] 113 | | /// Create a new integer type. [INFO] [stderr] 114 | | pub fn new(dir: Dir, left_bound: BigInt, right_bound: BigInt) -> IntTy { [INFO] [stderr] 115 | | IntTy { [INFO] [stderr] ... | [INFO] [stderr] 139 | | } [INFO] [stderr] 140 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_without_is_empty)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> ty.rs:188:11 [INFO] [stderr] | [INFO] [stderr] 188 | assert!(indices.len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!indices.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> ty.rs:285:23 [INFO] [stderr] | [INFO] [stderr] 285 | while let Some(x) = iter.next() { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for x in iter { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> konst.rs:19:2 [INFO] [stderr] | [INFO] [stderr] 19 | IntRange(ConstIntRange), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] | [INFO] [stderr] 19 | IntRange(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> defs.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | #[deny(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![deny(missing_docs)]` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::useless_attribute)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> defs.rs:67:22 [INFO] [stderr] | [INFO] [stderr] 67 | .or_insert_with(|| Vec::new()) [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> defs.rs:114:3 [INFO] [stderr] | [INFO] [stderr] 114 | match ast.data { [INFO] [stderr] | _________^ [INFO] [stderr] 115 | | Some(Spanned{ value: ast::EnumType(ref paren_elems), .. }) => { [INFO] [stderr] 116 | | for (i, lit) in paren_elems.value.iter().enumerate() { [INFO] [stderr] 117 | | match lit.expr.data { [INFO] [stderr] ... | [INFO] [stderr] 129 | | _ => () [INFO] [stderr] 130 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 114 | if let Some(Spanned{ value: ast::EnumType(ref paren_elems), .. }) = ast.data { [INFO] [stderr] 115 | for (i, lit) in paren_elems.value.iter().enumerate() { [INFO] [stderr] 116 | match lit.expr.data { [INFO] [stderr] 117 | ast::NameExpr(ref name) => self.declare( [INFO] [stderr] 118 | match self.ctx.resolvable_from_primary_name(&name.primary) { [INFO] [stderr] 119 | Ok(n) => n, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> defs.rs:117:6 [INFO] [stderr] | [INFO] [stderr] 117 | match lit.expr.data { [INFO] [stderr] | _____________________^ [INFO] [stderr] 118 | | ast::NameExpr(ref name) => self.declare( [INFO] [stderr] 119 | | match self.ctx.resolvable_from_primary_name(&name.primary) { [INFO] [stderr] 120 | | Ok(n) => n, [INFO] [stderr] ... | [INFO] [stderr] 125 | | _ => () [INFO] [stderr] 126 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 117 | if let ast::NameExpr(ref name) = lit.expr.data { self.declare( [INFO] [stderr] 118 | match self.ctx.resolvable_from_primary_name(&name.primary) { [INFO] [stderr] 119 | Ok(n) => n, [INFO] [stderr] 120 | Err(()) => continue [INFO] [stderr] 121 | }, [INFO] [stderr] 122 | Def::Enum(EnumRef(id, i)) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> defs.rs:259:48 [INFO] [stderr] | [INFO] [stderr] 259 | self.declare(hir.name.map_into(), Def::Const(id.into())) [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> defs.rs:277:46 [INFO] [stderr] | [INFO] [stderr] 277 | self.declare(hir.name.map_into(), Def::Var(id.into())) [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> defs.rs:286:47 [INFO] [stderr] | [INFO] [stderr] 286 | self.declare(hir.name.map_into(), Def::File(id.into())) [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> typeck.rs:108:4 [INFO] [stderr] | [INFO] [stderr] 108 | match (result, self.ctx.span(id)) { [INFO] [stderr] | _____________^ [INFO] [stderr] 109 | | (Ok(ty), Some(span)) => { [INFO] [stderr] 110 | | self.emit( [INFO] [stderr] 111 | | DiagBuilder2::note(format!("type of `{}` is {}", span.extract(), ty)) [INFO] [stderr] ... | [INFO] [stderr] 115 | | _ => () [INFO] [stderr] 116 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 108 | if let (Ok(ty), Some(span)) = (result, self.ctx.span(id)) { [INFO] [stderr] 109 | self.emit( [INFO] [stderr] 110 | DiagBuilder2::note(format!("type of `{}` is {}", span.extract(), ty)) [INFO] [stderr] 111 | .span(span) [INFO] [stderr] 112 | ); [INFO] [stderr] 113 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> typeck.rs:124:46 [INFO] [stderr] | [INFO] [stderr] 124 | pub fn typeck_delay_mechanism(&self, _node: &'ctx hir::DelayMechanism) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider passing by value instead: `hir::DelayMechanism` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> typeck.rs:129:38 [INFO] [stderr] | [INFO] [stderr] 129 | pub fn typeck_waveform(&self, node: &'ctx hir::Waveform, exp: &'ctx Ty) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 508 | / impl_typeck_err!(self, id: LibRef => { [INFO] [stderr] 509 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 510 | | self.typeck_slice(&hir.pkg_decls); [INFO] [stderr] 511 | | self.typeck_slice(&hir.pkg_insts); [INFO] [stderr] ... | [INFO] [stderr] 517 | | Ok(()) [INFO] [stderr] 518 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::forget_copy)] on by default [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 508 | / impl_typeck_err!(self, id: LibRef => { [INFO] [stderr] 509 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 510 | | self.typeck_slice(&hir.pkg_decls); [INFO] [stderr] 511 | | self.typeck_slice(&hir.pkg_insts); [INFO] [stderr] ... | [INFO] [stderr] 517 | | Ok(()) [INFO] [stderr] 518 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 520 | / impl_typeck_err!(self, id: PkgDeclRef => { [INFO] [stderr] 521 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 522 | | self.typeck_slice(&hir.generics); [INFO] [stderr] 523 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 524 | | Ok(()) [INFO] [stderr] 525 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 520 | / impl_typeck_err!(self, id: PkgDeclRef => { [INFO] [stderr] 521 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 522 | | self.typeck_slice(&hir.generics); [INFO] [stderr] 523 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 524 | | Ok(()) [INFO] [stderr] 525 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 527 | / impl_typeck_err!(self, id: PkgBodyRef => { [INFO] [stderr] 528 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 529 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 530 | | Ok(()) [INFO] [stderr] 531 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 527 | / impl_typeck_err!(self, id: PkgBodyRef => { [INFO] [stderr] 528 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 529 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 530 | | Ok(()) [INFO] [stderr] 531 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 533 | / impl_typeck_err!(self, id: PkgInstRef => { [INFO] [stderr] 534 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 535 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 536 | | Ok(()) [INFO] [stderr] 537 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 533 | / impl_typeck_err!(self, id: PkgInstRef => { [INFO] [stderr] 534 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 535 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 536 | | Ok(()) [INFO] [stderr] 537 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 547 | / impl_typeck_err!(self, id: EntityRef => { [INFO] [stderr] 548 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 549 | | for &generic in &hir.generics { [INFO] [stderr] 550 | | self.typeck(generic); [INFO] [stderr] ... | [INFO] [stderr] 555 | | Ok(()) [INFO] [stderr] 556 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 547 | / impl_typeck_err!(self, id: EntityRef => { [INFO] [stderr] 548 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 549 | | for &generic in &hir.generics { [INFO] [stderr] 550 | | self.typeck(generic); [INFO] [stderr] ... | [INFO] [stderr] 555 | | Ok(()) [INFO] [stderr] 556 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 558 | / impl_typeck_err!(self, id: ArchRef => { [INFO] [stderr] 559 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 560 | | self.typeck(hir.entity); [INFO] [stderr] 561 | | for &decl in &hir.decls { [INFO] [stderr] ... | [INFO] [stderr] 567 | | Ok(()) [INFO] [stderr] 568 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 558 | / impl_typeck_err!(self, id: ArchRef => { [INFO] [stderr] 559 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 560 | | self.typeck(hir.entity); [INFO] [stderr] 561 | | for &decl in &hir.decls { [INFO] [stderr] ... | [INFO] [stderr] 567 | | Ok(()) [INFO] [stderr] 568 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 759 | / impl_typeck_err!(self, id: SubprogDeclRef => { [INFO] [stderr] 760 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 761 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 762 | | Ok(()) [INFO] [stderr] 763 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 759 | / impl_typeck_err!(self, id: SubprogDeclRef => { [INFO] [stderr] 760 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 761 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 762 | | Ok(()) [INFO] [stderr] 763 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 765 | / impl_typeck_err!(self, id: SubprogBodyRef => { [INFO] [stderr] 766 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 767 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 768 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 769 | | self.typeck_slice(&hir.stmts); [INFO] [stderr] 770 | | Ok(()) [INFO] [stderr] 771 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 765 | / impl_typeck_err!(self, id: SubprogBodyRef => { [INFO] [stderr] 766 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 767 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 768 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 769 | | self.typeck_slice(&hir.stmts); [INFO] [stderr] 770 | | Ok(()) [INFO] [stderr] 771 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 773 | / impl_typeck_err!(self, id: SubprogInstRef => { [INFO] [stderr] 774 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 775 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 776 | | Ok(()) [INFO] [stderr] 777 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 773 | / impl_typeck_err!(self, id: SubprogInstRef => { [INFO] [stderr] 774 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 775 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 776 | | Ok(()) [INFO] [stderr] 777 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 779 | / impl_typeck_err!(self, id: ConstDeclRef => { [INFO] [stderr] 780 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 781 | | Ok(()) [INFO] [stderr] 782 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 779 | / impl_typeck_err!(self, id: ConstDeclRef => { [INFO] [stderr] 780 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 781 | | Ok(()) [INFO] [stderr] 782 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 784 | / impl_typeck_err!(self, id: SignalDeclRef => { [INFO] [stderr] 785 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 786 | | Ok(()) [INFO] [stderr] 787 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 784 | / impl_typeck_err!(self, id: SignalDeclRef => { [INFO] [stderr] 785 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 786 | | Ok(()) [INFO] [stderr] 787 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 789 | / impl_typeck_err!(self, id: VarDeclRef => { [INFO] [stderr] 790 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 791 | | Ok(()) [INFO] [stderr] 792 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 789 | / impl_typeck_err!(self, id: VarDeclRef => { [INFO] [stderr] 790 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 791 | | Ok(()) [INFO] [stderr] 792 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 794 | / impl_typeck_err!(self, id: FileDeclRef => { [INFO] [stderr] 795 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 796 | | Ok(()) [INFO] [stderr] 797 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 794 | / impl_typeck_err!(self, id: FileDeclRef => { [INFO] [stderr] 795 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 796 | | Ok(()) [INFO] [stderr] 797 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 835 | / impl_typeck_err!(self, id: ProcessStmtRef => { [INFO] [stderr] 836 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 837 | | for &decl in &hir.decls { [INFO] [stderr] 838 | | self.typeck(decl); [INFO] [stderr] ... | [INFO] [stderr] 843 | | Ok(()) [INFO] [stderr] 844 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 835 | / impl_typeck_err!(self, id: ProcessStmtRef => { [INFO] [stderr] 836 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 837 | | for &decl in &hir.decls { [INFO] [stderr] 838 | | self.typeck(decl); [INFO] [stderr] ... | [INFO] [stderr] 843 | | Ok(()) [INFO] [stderr] 844 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 874 | / impl_typeck_err!(self, id: SigAssignStmtRef => { [INFO] [stderr] 875 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 876 | | let lhs_ty = match hir.target { [INFO] [stderr] 877 | | hir::SigAssignTarget::Name(sig) => self.ctx.ty(sig)?, [INFO] [stderr] ... | [INFO] [stderr] 910 | | Ok(()) [INFO] [stderr] 911 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 874 | / impl_typeck_err!(self, id: SigAssignStmtRef => { [INFO] [stderr] 875 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 876 | | let lhs_ty = match hir.target { [INFO] [stderr] 877 | | hir::SigAssignTarget::Name(sig) => self.ctx.ty(sig)?, [INFO] [stderr] ... | [INFO] [stderr] 910 | | Ok(()) [INFO] [stderr] 911 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> typeck.rs:1103:5 [INFO] [stderr] | [INFO] [stderr] 1103 | if let &Ty::Int(_) = self.deref_named_type(ty)? { [INFO] [stderr] | _________________^ [INFO] [stderr] 1104 | | return Ok(ty); [INFO] [stderr] 1105 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 1103 | if let Ty::Int(_) = *(self.deref_named_type(ty)?) { [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> make_ctx.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | #[deny(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![deny(missing_docs)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> make_ctx.rs:40:4 [INFO] [stderr] | [INFO] [stderr] 40 | let mut shortened = false; [INFO] [stderr] | _____________^ [INFO] [stderr] 41 | | if sp.end - sp.begin > 32 { [INFO] [stderr] 42 | | sp.end = sp.begin + 32; [INFO] [stderr] 43 | | shortened = true; [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____________^ help: it is more idiomatic to write: `let shortened = if sp.end - sp.begin > 32 { ..; true } else { false };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `lazy::LazyPhase` [INFO] [stderr] --> lazy.rs:68:2 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn new() -> LazyPhase { [INFO] [stderr] | _____^ [INFO] [stderr] 69 | | LazyPhase { [INFO] [stderr] 70 | | table: RefCell::new(Default::default()), [INFO] [stderr] 71 | | } [INFO] [stderr] 72 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 62 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> term.rs:701:9 [INFO] [stderr] | [INFO] [stderr] 701 | / match term.value { [INFO] [stderr] 702 | | Term::Range(..) => return Ok(self.term_to_range(term)?.map(|r| hir::Constraint::Range(r))), [INFO] [stderr] 703 | | _ => () [INFO] [stderr] 704 | | }; [INFO] [stderr] | |_________^ help: try this: `if let Term::Range(..) = term.value { return Ok(self.term_to_range(term)?.map(|r| hir::Constraint::Range(r))) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> term.rs:702:72 [INFO] [stderr] | [INFO] [stderr] 702 | Term::Range(..) => return Ok(self.term_to_range(term)?.map(|r| hir::Constraint::Range(r))), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `hir::Constraint::Range` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> term.rs:746:37 [INFO] [stderr] | [INFO] [stderr] 746 | DiagBuilder2::error(format!("array constraint cannot be empty")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"array constraint cannot be empty".to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> term.rs:763:28 [INFO] [stderr] | [INFO] [stderr] 763 | elem: elem.map(|e| Box::new(e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove closure as shown: `Box::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> term.rs:775:37 [INFO] [stderr] | [INFO] [stderr] 775 | DiagBuilder2::error(format!("record constraint cannot be empty")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"record constraint cannot be empty".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> nodes/expr.rs:215:17 [INFO] [stderr] | [INFO] [stderr] 215 | / if let &Ty::Int(_) = tyc.ctx.deref_named_type(ty)? { [INFO] [stderr] 216 | | return Ok(ty); [INFO] [stderr] 217 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 215 | if let Ty::Int(_) = *(tyc.ctx.deref_named_type(ty)?) { [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> nodes/seq_stmt.rs:241:41 [INFO] [stderr] | [INFO] [stderr] 241 | DiagBuilder2::error(format!("invalid variable assignment")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"invalid variable assignment".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the Vec [INFO] [stderr] --> nodes/seq_stmt.rs:256:39 [INFO] [stderr] | [INFO] [stderr] 256 | let conds = conds.into_iter() [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the Vec [INFO] [stderr] --> nodes/seq_stmt.rs:276:39 [INFO] [stderr] | [INFO] [stderr] 276 | let exprs = exprs.into_iter() [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> nodes/seq_stmt.rs:418:45 [INFO] [stderr] | [INFO] [stderr] 418 | Ok(hir::LoopScheme::For(name.into(), ctx.add_discrete_range(range)?)), [INFO] [stderr] | ^^^^^^^^^^^ help: consider removing `.into()`: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> nodes/seq_stmt.rs:592:18 [INFO] [stderr] | [INFO] [stderr] 592 | .into_iter() [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> nodes/seq_stmt.rs:613:41 [INFO] [stderr] | [INFO] [stderr] 613 | DiagBuilder2::error(format!("more than one waveform or expression")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"more than one waveform or expression".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> nodes/seq_stmt.rs:652:55 [INFO] [stderr] | [INFO] [stderr] 652 | fn unpack_sel_waves_as_exprs(&self, ast: I) -> Result>)>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] error: aborting due to 18 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `moore-vhdl`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `hir::Lib` [INFO] [stderr] --> hir.rs:75:2 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn new() -> Lib { [INFO] [stderr] | _____^ [INFO] [stderr] 76 | | Lib { [INFO] [stderr] 77 | | entities: Vec::new(), [INFO] [stderr] 78 | | cfgs: Vec::new(), [INFO] [stderr] ... | [INFO] [stderr] 84 | | } [INFO] [stderr] 85 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 64 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: item `ty::IntTy` has a public `len` method but no corresponding `is_empty` method [INFO] [stderr] --> ty.rs:112:1 [INFO] [stderr] | [INFO] [stderr] 112 | / impl IntTy { [INFO] [stderr] 113 | | /// Create a new integer type. [INFO] [stderr] 114 | | pub fn new(dir: Dir, left_bound: BigInt, right_bound: BigInt) -> IntTy { [INFO] [stderr] 115 | | IntTy { [INFO] [stderr] ... | [INFO] [stderr] 139 | | } [INFO] [stderr] 140 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_without_is_empty)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_without_is_empty [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> ty.rs:188:11 [INFO] [stderr] | [INFO] [stderr] 188 | assert!(indices.len() > 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!indices.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `for` loop [INFO] [stderr] --> ty.rs:285:23 [INFO] [stderr] | [INFO] [stderr] 285 | while let Some(x) = iter.next() { [INFO] [stderr] | ^^^^^^^^^^^ help: try: `for x in iter { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_on_iterator)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_on_iterator [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> konst.rs:19:2 [INFO] [stderr] | [INFO] [stderr] 19 | IntRange(ConstIntRange), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] | [INFO] [stderr] 19 | IntRange(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> defs.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | #[deny(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![deny(missing_docs)]` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::useless_attribute)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> defs.rs:67:22 [INFO] [stderr] | [INFO] [stderr] 67 | .or_insert_with(|| Vec::new()) [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove closure as shown: `Vec::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> defs.rs:114:3 [INFO] [stderr] | [INFO] [stderr] 114 | match ast.data { [INFO] [stderr] | _________^ [INFO] [stderr] 115 | | Some(Spanned{ value: ast::EnumType(ref paren_elems), .. }) => { [INFO] [stderr] 116 | | for (i, lit) in paren_elems.value.iter().enumerate() { [INFO] [stderr] 117 | | match lit.expr.data { [INFO] [stderr] ... | [INFO] [stderr] 129 | | _ => () [INFO] [stderr] 130 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 114 | if let Some(Spanned{ value: ast::EnumType(ref paren_elems), .. }) = ast.data { [INFO] [stderr] 115 | for (i, lit) in paren_elems.value.iter().enumerate() { [INFO] [stderr] 116 | match lit.expr.data { [INFO] [stderr] 117 | ast::NameExpr(ref name) => self.declare( [INFO] [stderr] 118 | match self.ctx.resolvable_from_primary_name(&name.primary) { [INFO] [stderr] 119 | Ok(n) => n, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> defs.rs:117:6 [INFO] [stderr] | [INFO] [stderr] 117 | match lit.expr.data { [INFO] [stderr] | _____________________^ [INFO] [stderr] 118 | | ast::NameExpr(ref name) => self.declare( [INFO] [stderr] 119 | | match self.ctx.resolvable_from_primary_name(&name.primary) { [INFO] [stderr] 120 | | Ok(n) => n, [INFO] [stderr] ... | [INFO] [stderr] 125 | | _ => () [INFO] [stderr] 126 | | } [INFO] [stderr] | |_____________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 117 | if let ast::NameExpr(ref name) = lit.expr.data { self.declare( [INFO] [stderr] 118 | match self.ctx.resolvable_from_primary_name(&name.primary) { [INFO] [stderr] 119 | Ok(n) => n, [INFO] [stderr] 120 | Err(()) => continue [INFO] [stderr] 121 | }, [INFO] [stderr] 122 | Def::Enum(EnumRef(id, i)) [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> defs.rs:259:48 [INFO] [stderr] | [INFO] [stderr] 259 | self.declare(hir.name.map_into(), Def::Const(id.into())) [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> defs.rs:277:46 [INFO] [stderr] | [INFO] [stderr] 277 | self.declare(hir.name.map_into(), Def::Var(id.into())) [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> defs.rs:286:47 [INFO] [stderr] | [INFO] [stderr] 286 | self.declare(hir.name.map_into(), Def::File(id.into())) [INFO] [stderr] | ^^^^^^^^^ help: consider removing `.into()`: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> typeck.rs:108:4 [INFO] [stderr] | [INFO] [stderr] 108 | match (result, self.ctx.span(id)) { [INFO] [stderr] | _____________^ [INFO] [stderr] 109 | | (Ok(ty), Some(span)) => { [INFO] [stderr] 110 | | self.emit( [INFO] [stderr] 111 | | DiagBuilder2::note(format!("type of `{}` is {}", span.extract(), ty)) [INFO] [stderr] ... | [INFO] [stderr] 115 | | _ => () [INFO] [stderr] 116 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 108 | if let (Ok(ty), Some(span)) = (result, self.ctx.span(id)) { [INFO] [stderr] 109 | self.emit( [INFO] [stderr] 110 | DiagBuilder2::note(format!("type of `{}` is {}", span.extract(), ty)) [INFO] [stderr] 111 | .span(span) [INFO] [stderr] 112 | ); [INFO] [stderr] 113 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> typeck.rs:124:46 [INFO] [stderr] | [INFO] [stderr] 124 | pub fn typeck_delay_mechanism(&self, _node: &'ctx hir::DelayMechanism) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider passing by value instead: `hir::DelayMechanism` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> typeck.rs:129:38 [INFO] [stderr] | [INFO] [stderr] 129 | pub fn typeck_waveform(&self, node: &'ctx hir::Waveform, exp: &'ctx Ty) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 508 | / impl_typeck_err!(self, id: LibRef => { [INFO] [stderr] 509 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 510 | | self.typeck_slice(&hir.pkg_decls); [INFO] [stderr] 511 | | self.typeck_slice(&hir.pkg_insts); [INFO] [stderr] ... | [INFO] [stderr] 517 | | Ok(()) [INFO] [stderr] 518 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::forget_copy)] on by default [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 508 | / impl_typeck_err!(self, id: LibRef => { [INFO] [stderr] 509 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 510 | | self.typeck_slice(&hir.pkg_decls); [INFO] [stderr] 511 | | self.typeck_slice(&hir.pkg_insts); [INFO] [stderr] ... | [INFO] [stderr] 517 | | Ok(()) [INFO] [stderr] 518 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 520 | / impl_typeck_err!(self, id: PkgDeclRef => { [INFO] [stderr] 521 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 522 | | self.typeck_slice(&hir.generics); [INFO] [stderr] 523 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 524 | | Ok(()) [INFO] [stderr] 525 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 520 | / impl_typeck_err!(self, id: PkgDeclRef => { [INFO] [stderr] 521 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 522 | | self.typeck_slice(&hir.generics); [INFO] [stderr] 523 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 524 | | Ok(()) [INFO] [stderr] 525 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 527 | / impl_typeck_err!(self, id: PkgBodyRef => { [INFO] [stderr] 528 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 529 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 530 | | Ok(()) [INFO] [stderr] 531 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 527 | / impl_typeck_err!(self, id: PkgBodyRef => { [INFO] [stderr] 528 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 529 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 530 | | Ok(()) [INFO] [stderr] 531 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 533 | / impl_typeck_err!(self, id: PkgInstRef => { [INFO] [stderr] 534 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 535 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 536 | | Ok(()) [INFO] [stderr] 537 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 533 | / impl_typeck_err!(self, id: PkgInstRef => { [INFO] [stderr] 534 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 535 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 536 | | Ok(()) [INFO] [stderr] 537 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 547 | / impl_typeck_err!(self, id: EntityRef => { [INFO] [stderr] 548 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 549 | | for &generic in &hir.generics { [INFO] [stderr] 550 | | self.typeck(generic); [INFO] [stderr] ... | [INFO] [stderr] 555 | | Ok(()) [INFO] [stderr] 556 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 547 | / impl_typeck_err!(self, id: EntityRef => { [INFO] [stderr] 548 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 549 | | for &generic in &hir.generics { [INFO] [stderr] 550 | | self.typeck(generic); [INFO] [stderr] ... | [INFO] [stderr] 555 | | Ok(()) [INFO] [stderr] 556 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 558 | / impl_typeck_err!(self, id: ArchRef => { [INFO] [stderr] 559 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 560 | | self.typeck(hir.entity); [INFO] [stderr] 561 | | for &decl in &hir.decls { [INFO] [stderr] ... | [INFO] [stderr] 567 | | Ok(()) [INFO] [stderr] 568 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 558 | / impl_typeck_err!(self, id: ArchRef => { [INFO] [stderr] 559 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 560 | | self.typeck(hir.entity); [INFO] [stderr] 561 | | for &decl in &hir.decls { [INFO] [stderr] ... | [INFO] [stderr] 567 | | Ok(()) [INFO] [stderr] 568 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 759 | / impl_typeck_err!(self, id: SubprogDeclRef => { [INFO] [stderr] 760 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 761 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 762 | | Ok(()) [INFO] [stderr] 763 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 759 | / impl_typeck_err!(self, id: SubprogDeclRef => { [INFO] [stderr] 760 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 761 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 762 | | Ok(()) [INFO] [stderr] 763 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 765 | / impl_typeck_err!(self, id: SubprogBodyRef => { [INFO] [stderr] 766 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 767 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 768 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 769 | | self.typeck_slice(&hir.stmts); [INFO] [stderr] 770 | | Ok(()) [INFO] [stderr] 771 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 765 | / impl_typeck_err!(self, id: SubprogBodyRef => { [INFO] [stderr] 766 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 767 | | self.typeck_subprog_spec(&hir.spec); [INFO] [stderr] 768 | | self.typeck_slice(&hir.decls); [INFO] [stderr] 769 | | self.typeck_slice(&hir.stmts); [INFO] [stderr] 770 | | Ok(()) [INFO] [stderr] 771 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 773 | / impl_typeck_err!(self, id: SubprogInstRef => { [INFO] [stderr] 774 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 775 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 776 | | Ok(()) [INFO] [stderr] 777 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 773 | / impl_typeck_err!(self, id: SubprogInstRef => { [INFO] [stderr] 774 | | let _hir = self.ctx.hir(id)?; [INFO] [stderr] 775 | | // self.typeck_slice(&hir.generic_map); [INFO] [stderr] 776 | | Ok(()) [INFO] [stderr] 777 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 779 | / impl_typeck_err!(self, id: ConstDeclRef => { [INFO] [stderr] 780 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 781 | | Ok(()) [INFO] [stderr] 782 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 779 | / impl_typeck_err!(self, id: ConstDeclRef => { [INFO] [stderr] 780 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 781 | | Ok(()) [INFO] [stderr] 782 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 784 | / impl_typeck_err!(self, id: SignalDeclRef => { [INFO] [stderr] 785 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 786 | | Ok(()) [INFO] [stderr] 787 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 784 | / impl_typeck_err!(self, id: SignalDeclRef => { [INFO] [stderr] 785 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 786 | | Ok(()) [INFO] [stderr] 787 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 789 | / impl_typeck_err!(self, id: VarDeclRef => { [INFO] [stderr] 790 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 791 | | Ok(()) [INFO] [stderr] 792 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 789 | / impl_typeck_err!(self, id: VarDeclRef => { [INFO] [stderr] 790 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 791 | | Ok(()) [INFO] [stderr] 792 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 794 | / impl_typeck_err!(self, id: FileDeclRef => { [INFO] [stderr] 795 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 796 | | Ok(()) [INFO] [stderr] 797 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 794 | / impl_typeck_err!(self, id: FileDeclRef => { [INFO] [stderr] 795 | | self.ctx.lazy_typeval(id)?; [INFO] [stderr] 796 | | Ok(()) [INFO] [stderr] 797 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 835 | / impl_typeck_err!(self, id: ProcessStmtRef => { [INFO] [stderr] 836 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 837 | | for &decl in &hir.decls { [INFO] [stderr] 838 | | self.typeck(decl); [INFO] [stderr] ... | [INFO] [stderr] 843 | | Ok(()) [INFO] [stderr] 844 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 835 | / impl_typeck_err!(self, id: ProcessStmtRef => { [INFO] [stderr] 836 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 837 | | for &decl in &hir.decls { [INFO] [stderr] 838 | | self.typeck(decl); [INFO] [stderr] ... | [INFO] [stderr] 843 | | Ok(()) [INFO] [stderr] 844 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::forget` with a value that implements Copy. Forgetting a copy leaves the original intact. [INFO] [stderr] --> typeck.rs:450:5 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 874 | / impl_typeck_err!(self, id: SigAssignStmtRef => { [INFO] [stderr] 875 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 876 | | let lhs_ty = match hir.target { [INFO] [stderr] 877 | | hir::SigAssignTarget::Name(sig) => self.ctx.ty(sig)?, [INFO] [stderr] ... | [INFO] [stderr] 910 | | Ok(()) [INFO] [stderr] 911 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] note: argument has type std::result::Result<(), ()> [INFO] [stderr] --> typeck.rs:450:22 [INFO] [stderr] | [INFO] [stderr] 450 | std::mem::forget(res); [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 874 | / impl_typeck_err!(self, id: SigAssignStmtRef => { [INFO] [stderr] 875 | | let hir = self.ctx.hir(id)?; [INFO] [stderr] 876 | | let lhs_ty = match hir.target { [INFO] [stderr] 877 | | hir::SigAssignTarget::Name(sig) => self.ctx.ty(sig)?, [INFO] [stderr] ... | [INFO] [stderr] 910 | | Ok(()) [INFO] [stderr] 911 | | }); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#forget_copy [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> typeck.rs:1103:5 [INFO] [stderr] | [INFO] [stderr] 1103 | if let &Ty::Int(_) = self.deref_named_type(ty)? { [INFO] [stderr] | _________________^ [INFO] [stderr] 1104 | | return Ok(ty); [INFO] [stderr] 1105 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 1103 | if let Ty::Int(_) = *(self.deref_named_type(ty)?) { [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: useless lint attribute [INFO] [stderr] --> make_ctx.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | #[deny(missing_docs)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: if you just forgot a `!`, use: `#![deny(missing_docs)]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_attribute [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> make_ctx.rs:40:4 [INFO] [stderr] | [INFO] [stderr] 40 | let mut shortened = false; [INFO] [stderr] | _____________^ [INFO] [stderr] 41 | | if sp.end - sp.begin > 32 { [INFO] [stderr] 42 | | sp.end = sp.begin + 32; [INFO] [stderr] 43 | | shortened = true; [INFO] [stderr] 44 | | } [INFO] [stderr] | |_____________^ help: it is more idiomatic to write: `let shortened = if sp.end - sp.begin > 32 { ..; true } else { false };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = note: you might not need `mut` at all [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `lazy::LazyPhase` [INFO] [stderr] --> lazy.rs:68:2 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn new() -> LazyPhase { [INFO] [stderr] | _____^ [INFO] [stderr] 69 | | LazyPhase { [INFO] [stderr] 70 | | table: RefCell::new(Default::default()), [INFO] [stderr] 71 | | } [INFO] [stderr] 72 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 62 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> term.rs:701:9 [INFO] [stderr] | [INFO] [stderr] 701 | / match term.value { [INFO] [stderr] 702 | | Term::Range(..) => return Ok(self.term_to_range(term)?.map(|r| hir::Constraint::Range(r))), [INFO] [stderr] 703 | | _ => () [INFO] [stderr] 704 | | }; [INFO] [stderr] | |_________^ help: try this: `if let Term::Range(..) = term.value { return Ok(self.term_to_range(term)?.map(|r| hir::Constraint::Range(r))) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> term.rs:702:72 [INFO] [stderr] | [INFO] [stderr] 702 | Term::Range(..) => return Ok(self.term_to_range(term)?.map(|r| hir::Constraint::Range(r))), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `hir::Constraint::Range` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> term.rs:746:37 [INFO] [stderr] | [INFO] [stderr] 746 | DiagBuilder2::error(format!("array constraint cannot be empty")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"array constraint cannot be empty".to_string()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_format)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> term.rs:763:28 [INFO] [stderr] | [INFO] [stderr] 763 | elem: elem.map(|e| Box::new(e)), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove closure as shown: `Box::new` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> term.rs:775:37 [INFO] [stderr] | [INFO] [stderr] 775 | DiagBuilder2::error(format!("record constraint cannot be empty")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"record constraint cannot be empty".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> nodes/expr.rs:215:17 [INFO] [stderr] | [INFO] [stderr] 215 | / if let &Ty::Int(_) = tyc.ctx.deref_named_type(ty)? { [INFO] [stderr] 216 | | return Ok(ty); [INFO] [stderr] 217 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 215 | if let Ty::Int(_) = *(tyc.ctx.deref_named_type(ty)?) { [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> nodes/seq_stmt.rs:241:41 [INFO] [stderr] | [INFO] [stderr] 241 | DiagBuilder2::error(format!("invalid variable assignment")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"invalid variable assignment".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the Vec [INFO] [stderr] --> nodes/seq_stmt.rs:256:39 [INFO] [stderr] | [INFO] [stderr] 256 | let conds = conds.into_iter() [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::into_iter_on_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the Vec [INFO] [stderr] --> nodes/seq_stmt.rs:276:39 [INFO] [stderr] | [INFO] [stderr] 276 | let exprs = exprs.into_iter() [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: identical conversion [INFO] [stderr] --> nodes/seq_stmt.rs:418:45 [INFO] [stderr] | [INFO] [stderr] 418 | Ok(hir::LoopScheme::For(name.into(), ctx.add_discrete_range(range)?)), [INFO] [stderr] | ^^^^^^^^^^^ help: consider removing `.into()`: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_conversion [INFO] [stderr] [INFO] [stderr] warning: this .into_iter() call is equivalent to .iter() and will not move the slice [INFO] [stderr] --> nodes/seq_stmt.rs:592:18 [INFO] [stderr] | [INFO] [stderr] 592 | .into_iter() [INFO] [stderr] | ^^^^^^^^^ help: call directly: `iter` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref [INFO] [stderr] [INFO] [stderr] warning: useless use of `format!` [INFO] [stderr] --> nodes/seq_stmt.rs:613:41 [INFO] [stderr] | [INFO] [stderr] 613 | DiagBuilder2::error(format!("more than one waveform or expression")) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using .to_string(): `"more than one waveform or expression".to_string()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> nodes/seq_stmt.rs:652:55 [INFO] [stderr] | [INFO] [stderr] 652 | fn unpack_sel_waves_as_exprs(&self, ast: I) -> Result>)>> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] error: aborting due to 18 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `moore-vhdl`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "68ee74a3542b10c8e2b2203fe503086dafeed9eea3eac4308cad05abeb2b7e6d"` [INFO] running `"docker" "rm" "-f" "68ee74a3542b10c8e2b2203fe503086dafeed9eea3eac4308cad05abeb2b7e6d"` [INFO] [stdout] 68ee74a3542b10c8e2b2203fe503086dafeed9eea3eac4308cad05abeb2b7e6d