[INFO] cloning repository https://github.com/siko-lang/siko [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/siko-lang/siko" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsiko-lang%2Fsiko", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsiko-lang%2Fsiko'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] af5942691300bd23bdad8fcae5fc17ee00308146 [INFO] linting siko-lang/siko against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsiko-lang%2Fsiko" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/siko-lang/siko [INFO] finished tweaking git repo https://github.com/siko-lang/siko [INFO] tweaked toml for git repo https://github.com/siko-lang/siko written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/siko-lang/siko on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/siko-lang/siko already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1dae3295c9e903c9226c5a3d24e48f1db296f609b86c5fa5496f403138ac978f [INFO] running `Command { std: "docker" "start" "-a" "1dae3295c9e903c9226c5a3d24e48f1db296f609b86c5fa5496f403138ac978f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1dae3295c9e903c9226c5a3d24e48f1db296f609b86c5fa5496f403138ac978f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1dae3295c9e903c9226c5a3d24e48f1db296f609b86c5fa5496f403138ac978f", kill_on_drop: false }` [INFO] [stdout] 1dae3295c9e903c9226c5a3d24e48f1db296f609b86c5fa5496f403138ac978f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 52c2cde99407f69bfddebbec7a3c1069825e3447b62a0e60cee25a453ecf2aa3 [INFO] running `Command { std: "docker" "start" "-a" "52c2cde99407f69bfddebbec7a3c1069825e3447b62a0e60cee25a453ecf2aa3", kill_on_drop: false }` [INFO] [stderr] Checking siko v0.1.0 (/opt/rustwide/workdir/compiler) [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/PackageFinder.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 49 | local: local, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `local` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/BuilderUtils.rs:96:13 [INFO] [stdout] | [INFO] [stdout] 96 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | blockId: blockId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | blocks: blocks, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `blocks` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:448:17 [INFO] [stdout] | [INFO] [stdout] 448 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:453:17 [INFO] [stdout] | [INFO] [stdout] 453 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | traceEnabled: traceEnabled, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traceEnabled` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Initializer.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/SyntaxBlock.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | id: id, [INFO] [stdout] | ^^^^^^ help: replace it with: `id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/path/Path.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | root: root, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `root` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/path/Path.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/simplification/DeadCodeEliminator.rs:99:17 [INFO] [stdout] | [INFO] [stdout] 99 | blockId: blockId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | id: id, [INFO] [stdout] | ^^^^^^ help: replace it with: `id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | implicit: implicit, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `implicit` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:64:17 [INFO] [stdout] | [INFO] [stdout] 64 | implicit: implicit, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `implicit` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BlockBuilder.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | bodyBuilder: bodyBuilder, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `bodyBuilder` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BlockBuilder.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | mode: mode, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `mode` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | body: body, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | nextBlockId: nextBlockId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `nextBlockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | ty: ty, [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | ty: ty, [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:223:13 [INFO] [stdout] | [INFO] [stdout] 223 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | result: result, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `result` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:225:13 [INFO] [stdout] | [INFO] [stdout] 225 | body: body, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | constraintContext: constraintContext, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraintContext` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:227:13 [INFO] [stdout] | [INFO] [stdout] 227 | kind: kind, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:228:13 [INFO] [stdout] | [INFO] [stdout] 228 | attributes: attributes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `attributes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | isDirectlyRecursive: isDirectlyRecursive, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `isDirectlyRecursive` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | constraint: constraint, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraint` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:125:13 [INFO] [stdout] | [INFO] [stdout] 125 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | constraintContext: constraintContext, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraintContext` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | lowering: lowering, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `lowering` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | function: function, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `function` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:35:23 [INFO] [stdout] | [INFO] [stdout] 35 | MirVariable { name: name, ty: ty } [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:35:35 [INFO] [stdout] | [INFO] [stdout] 35 | MirVariable { name: name, ty: ty } [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:479:13 [INFO] [stdout] | [INFO] [stdout] 479 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | kind: kind, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/Lowering.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/Lowering.rs:139:13 [INFO] [stdout] | [INFO] [stdout] 139 | variants: variants, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `variants` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | index: index, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | fileManager: fileManager, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `fileManager` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:133:13 [INFO] [stdout] | [INFO] [stdout] 133 | fileId: fileId, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fileId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:134:13 [INFO] [stdout] | [INFO] [stdout] 134 | span: span, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | msg: msg, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | slogan: slogan, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `slogan` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | entries: entries, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `entries` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/minic/Generator.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/minic/Generator.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | fnPointers: fnPointers, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `fnPointers` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:374:21 [INFO] [stdout] | [INFO] [stdout] 374 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:415:21 [INFO] [stdout] | [INFO] [stdout] 415 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:469:21 [INFO] [stdout] | [INFO] [stdout] 469 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:483:21 [INFO] [stdout] | [INFO] [stdout] 483 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:485:21 [INFO] [stdout] | [INFO] [stdout] 485 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:516:13 [INFO] [stdout] | [INFO] [stdout] 516 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/monomorphizer/Monomorphizer.rs:428:17 [INFO] [stdout] | [INFO] [stdout] 428 | handlerResolution: handlerResolution, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `handlerResolution` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/monomorphizer/Monomorphizer.rs:429:17 [INFO] [stdout] | [INFO] [stdout] 429 | impls: impls, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `impls` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/monomorphizer/Monomorphizer.rs:621:13 [INFO] [stdout] | [INFO] [stdout] 621 | attributes: attributes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `attributes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Data.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Data.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Data.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | methods: methods, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `methods` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Effect.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Effect.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | public: public, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `public` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Expr.rs:323:13 [INFO] [stdout] | [INFO] [stdout] 323 | statements: statements, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `statements` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Function.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | body: body, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | content: content, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | position: position, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | fileId: fileId, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fileId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 99 | token: token, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `token` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Parser.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Parser.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | fileId: fileId, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fileId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Parser.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | fileName: fileName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `fileName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | public: public, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `public` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:86:26 [INFO] [stdout] | [INFO] [stdout] 86 | AssociatedType { name: name, ty: ty } [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:86:38 [INFO] [stdout] | [INFO] [stdout] 86 | AssociatedType { name: name, ty: ty } [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Type.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 154 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:86:13 [INFO] [stdout] | [INFO] [stdout] 86 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | moduleResolver: moduleResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `moduleResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | typeResolver: typeResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:91:13 [INFO] [stdout] | [INFO] [stdout] 91 | emptyVariants: emptyVariants, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `emptyVariants` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:92:13 [INFO] [stdout] | [INFO] [stdout] 92 | structs: structs, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `structs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | variants: variants, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `variants` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | enums: enums, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `enums` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | implicits: implicits, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `implicits` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | moduleResolver: moduleResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `moduleResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | constraintContext: constraintContext, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraintContext` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | owner: owner, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `owner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | traceEnabled: traceEnabled, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traceEnabled` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | runner: runner, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `runner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:165:13 [INFO] [stdout] | [INFO] [stdout] 165 | traceEnabled: traceEnabled, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traceEnabled` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:373:33 [INFO] [stdout] | [INFO] [stdout] 373 | ... items: items, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `items` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:548:33 [INFO] [stdout] | [INFO] [stdout] 548 | ... ty: ty, [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:655:33 [INFO] [stdout] | [INFO] [stdout] 655 | ... memberType: memberType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `memberType` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:846:33 [INFO] [stdout] | [INFO] [stdout] 846 | ... associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/TypeResolver.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | moduleResolver: moduleResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `moduleResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 40 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 140 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:171:13 [INFO] [stdout] | [INFO] [stdout] 171 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 183 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:184:9 [INFO] [stdout] | [INFO] [stdout] 184 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 75 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 40 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:244:9 [INFO] [stdout] | [INFO] [stdout] 244 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:245:9 [INFO] [stdout] | [INFO] [stdout] 245 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:320:9 [INFO] [stdout] | [INFO] [stdout] 320 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:154:9 [INFO] [stdout] | [INFO] [stdout] 154 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:185:13 [INFO] [stdout] | [INFO] [stdout] 185 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:197:9 [INFO] [stdout] | [INFO] [stdout] 197 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 40 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:205:9 [INFO] [stdout] | [INFO] [stdout] 205 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:250:9 [INFO] [stdout] | [INFO] [stdout] 250 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | bodyLocation: bodyLocation, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `bodyLocation` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | branches: branches, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `branches` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | irCompiler: irCompiler, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `irCompiler` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | runner: runner, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `runner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:364:25 [INFO] [stdout] | [INFO] [stdout] 364 | cases: cases, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:418:25 [INFO] [stdout] | [INFO] [stdout] 418 | cases: cases, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:427:32 [INFO] [stdout] | [INFO] [stdout] 427 | ... if m.decisionPath.decisions.len() >= currentDecision.decisions.len() + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `m.decisionPath.decisions.len() > currentDecision.decisions.len()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] = note: `#[warn(clippy::int_plus_one)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:454:25 [INFO] [stdout] | [INFO] [stdout] 454 | cases: cases, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/IrCompiler.rs:249:17 [INFO] [stdout] | [INFO] [stdout] 249 | value: value, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 234 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | f: f, [INFO] [stdout] | ^^^^ help: replace it with: `f` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:237:13 [INFO] [stdout] | [INFO] [stdout] 237 | traitMethodselector: traitMethodselector, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitMethodselector` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | instanceStore: instanceStore, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `instanceStore` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | allocator: allocator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `allocator` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | implResolver: implResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `implResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:248:13 [INFO] [stdout] | [INFO] [stdout] 248 | unifier: unifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `unifier` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:1608:33 [INFO] [stdout] | [INFO] [stdout] 1608 | ... fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:1609:33 [INFO] [stdout] | [INFO] [stdout] 1609 | ... isRef: isRef, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `isRef` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/DependencyProcessor.rs:63:39 [INFO] [stdout] | [INFO] [stdout] 63 | let group = DependencyGroup { items: items }; [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `items` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/Dot.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/Instantiator.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | allocator: allocator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `allocator` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/SCC.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | id: id, [INFO] [stdout] | ^^^^^^ help: replace it with: `id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/PackageFinder.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 49 | local: local, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `local` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] = note: `#[warn(clippy::redundant_field_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/BuilderUtils.rs:96:13 [INFO] [stdout] | [INFO] [stdout] 96 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | blockId: blockId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | blocks: blocks, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `blocks` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:448:17 [INFO] [stdout] | [INFO] [stdout] 448 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:453:17 [INFO] [stdout] | [INFO] [stdout] 453 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | traceEnabled: traceEnabled, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traceEnabled` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:46:13 [INFO] [stdout] | [INFO] [stdout] 46 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/Initializer.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/drop/SyntaxBlock.rs:10:13 [INFO] [stdout] | [INFO] [stdout] 10 | id: id, [INFO] [stdout] | ^^^^^^ help: replace it with: `id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/path/Path.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | root: root, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `root` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/path/Path.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/backend/simplification/DeadCodeEliminator.rs:99:17 [INFO] [stdout] | [INFO] [stdout] 99 | blockId: blockId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | id: id, [INFO] [stdout] | ^^^^^^ help: replace it with: `id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | implicit: implicit, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `implicit` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:64:17 [INFO] [stdout] | [INFO] [stdout] 64 | implicit: implicit, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `implicit` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Block.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BlockBuilder.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | bodyBuilder: bodyBuilder, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `bodyBuilder` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BlockBuilder.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | mode: mode, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `mode` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | body: body, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | nextBlockId: nextBlockId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `nextBlockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | ty: ty, [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | ty: ty, [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Data.rs:73:13 [INFO] [stdout] | [INFO] [stdout] 73 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:222:13 [INFO] [stdout] | [INFO] [stdout] 222 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:223:13 [INFO] [stdout] | [INFO] [stdout] 223 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | result: result, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `result` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:225:13 [INFO] [stdout] | [INFO] [stdout] 225 | body: body, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | constraintContext: constraintContext, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraintContext` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:227:13 [INFO] [stdout] | [INFO] [stdout] 227 | kind: kind, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:228:13 [INFO] [stdout] | [INFO] [stdout] 228 | attributes: attributes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `attributes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | isDirectlyRecursive: isDirectlyRecursive, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `isDirectlyRecursive` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:50:13 [INFO] [stdout] | [INFO] [stdout] 50 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | constraint: constraint, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraint` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:125:13 [INFO] [stdout] | [INFO] [stdout] 125 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | constraintContext: constraintContext, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraintContext` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | lowering: lowering, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `lowering` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | function: function, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `function` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:35:23 [INFO] [stdout] | [INFO] [stdout] 35 | MirVariable { name: name, ty: ty } [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:35:35 [INFO] [stdout] | [INFO] [stdout] 35 | MirVariable { name: name, ty: ty } [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:479:13 [INFO] [stdout] | [INFO] [stdout] 479 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/FunctionBuilder.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | kind: kind, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `kind` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/Lowering.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/hir_lowering/Lowering.rs:139:13 [INFO] [stdout] | [INFO] [stdout] 139 | variants: variants, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `variants` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | index: index, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | fileManager: fileManager, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `fileManager` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:133:13 [INFO] [stdout] | [INFO] [stdout] 133 | fileId: fileId, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fileId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Location.rs:134:13 [INFO] [stdout] | [INFO] [stdout] 134 | span: span, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `span` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | msg: msg, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `msg` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | location: location, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:78:13 [INFO] [stdout] | [INFO] [stdout] 78 | slogan: slogan, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `slogan` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/location/Report.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | entries: entries, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `entries` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/minic/Generator.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/minic/Generator.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | fnPointers: fnPointers, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `fnPointers` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:374:21 [INFO] [stdout] | [INFO] [stdout] 374 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:415:21 [INFO] [stdout] | [INFO] [stdout] 415 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:469:21 [INFO] [stdout] | [INFO] [stdout] 469 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:483:21 [INFO] [stdout] | [INFO] [stdout] 483 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:485:21 [INFO] [stdout] | [INFO] [stdout] 485 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/mir/MiniCLowering.rs:516:13 [INFO] [stdout] | [INFO] [stdout] 516 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/monomorphizer/Monomorphizer.rs:428:17 [INFO] [stdout] | [INFO] [stdout] 428 | handlerResolution: handlerResolution, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `handlerResolution` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/monomorphizer/Monomorphizer.rs:429:17 [INFO] [stdout] | [INFO] [stdout] 429 | impls: impls, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `impls` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/monomorphizer/Monomorphizer.rs:621:13 [INFO] [stdout] | [INFO] [stdout] 621 | attributes: attributes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `attributes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Data.rs:61:13 [INFO] [stdout] | [INFO] [stdout] 61 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Data.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Data.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | methods: methods, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `methods` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Effect.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Effect.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | public: public, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `public` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Expr.rs:323:13 [INFO] [stdout] | [INFO] [stdout] 323 | statements: statements, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `statements` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Function.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | body: body, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | content: content, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `content` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | position: position, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | fileId: fileId, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fileId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Lexer.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 99 | token: token, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `token` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Parser.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Parser.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | fileId: fileId, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fileId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Parser.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | fileName: fileName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `fileName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | public: public, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `public` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:76:13 [INFO] [stdout] | [INFO] [stdout] 76 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:77:13 [INFO] [stdout] | [INFO] [stdout] 77 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:86:26 [INFO] [stdout] | [INFO] [stdout] 86 | AssociatedType { name: name, ty: ty } [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Trait.rs:86:38 [INFO] [stdout] | [INFO] [stdout] 86 | AssociatedType { name: name, ty: ty } [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/parser/Type.rs:154:13 [INFO] [stdout] | [INFO] [stdout] 154 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:86:13 [INFO] [stdout] | [INFO] [stdout] 86 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | moduleResolver: moduleResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `moduleResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | typeResolver: typeResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:91:13 [INFO] [stdout] | [INFO] [stdout] 91 | emptyVariants: emptyVariants, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `emptyVariants` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:92:13 [INFO] [stdout] | [INFO] [stdout] 92 | structs: structs, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `structs` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | variants: variants, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `variants` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | enums: enums, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `enums` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/ExprResolver.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | implicits: implicits, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `implicits` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:63:13 [INFO] [stdout] | [INFO] [stdout] 63 | moduleResolver: moduleResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `moduleResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | constraintContext: constraintContext, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraintContext` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | owner: owner, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `owner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/FunctionResolver.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | traceEnabled: traceEnabled, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traceEnabled` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | args: args, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | runner: runner, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `runner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:165:13 [INFO] [stdout] | [INFO] [stdout] 165 | traceEnabled: traceEnabled, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traceEnabled` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:373:33 [INFO] [stdout] | [INFO] [stdout] 373 | ... items: items, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `items` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:548:33 [INFO] [stdout] | [INFO] [stdout] 548 | ... ty: ty, [INFO] [stdout] | ^^^^^^ help: replace it with: `ty` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:655:33 [INFO] [stdout] | [INFO] [stdout] 655 | ... memberType: memberType, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `memberType` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/Resolver.rs:846:33 [INFO] [stdout] | [INFO] [stdout] 846 | ... associatedTypes: associatedTypes, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `associatedTypes` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/TypeResolver.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | moduleResolver: moduleResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `moduleResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 40 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 140 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:171:13 [INFO] [stdout] | [INFO] [stdout] 171 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 183 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:184:9 [INFO] [stdout] | [INFO] [stdout] 184 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:185:9 [INFO] [stdout] | [INFO] [stdout] 185 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Clone.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:72:13 [INFO] [stdout] | [INFO] [stdout] 72 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Copy.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 137 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:139:9 [INFO] [stdout] | [INFO] [stdout] 139 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Discriminator.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 37 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:75:9 [INFO] [stdout] | [INFO] [stdout] 75 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Eq.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/FromInt.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 125 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 40 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:244:9 [INFO] [stdout] | [INFO] [stdout] 244 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:245:9 [INFO] [stdout] | [INFO] [stdout] 245 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/Ord.rs:320:9 [INFO] [stdout] | [INFO] [stdout] 320 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:154:9 [INFO] [stdout] | [INFO] [stdout] 154 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:185:13 [INFO] [stdout] | [INFO] [stdout] 185 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:197:9 [INFO] [stdout] | [INFO] [stdout] 197 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialEq.rs:272:9 [INFO] [stdout] | [INFO] [stdout] 272 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:40:13 [INFO] [stdout] | [INFO] [stdout] 40 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:205:9 [INFO] [stdout] | [INFO] [stdout] 205 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | constraints: constraints, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `constraints` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | typeParams: typeParams, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `typeParams` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:250:9 [INFO] [stdout] | [INFO] [stdout] 250 | traitName: traitName, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | types: types, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `types` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/autoderive/PartialOrd.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | params: params, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:48:13 [INFO] [stdout] | [INFO] [stdout] 48 | bodyLocation: bodyLocation, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `bodyLocation` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | branches: branches, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `branches` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | irCompiler: irCompiler, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `irCompiler` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | runner: runner, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `runner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:364:25 [INFO] [stdout] | [INFO] [stdout] 364 | cases: cases, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:418:25 [INFO] [stdout] | [INFO] [stdout] 418 | cases: cases, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:427:32 [INFO] [stdout] | [INFO] [stdout] 427 | ... if m.decisionPath.decisions.len() >= currentDecision.decisions.len() + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `m.decisionPath.decisions.len() > currentDecision.decisions.len()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] = note: `#[warn(clippy::int_plus_one)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/Compiler.rs:454:25 [INFO] [stdout] | [INFO] [stdout] 454 | cases: cases, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `cases` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/resolver/matchcompiler/IrCompiler.rs:249:17 [INFO] [stdout] | [INFO] [stdout] 249 | value: value, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:233:13 [INFO] [stdout] | [INFO] [stdout] 233 | ctx: ctx, [INFO] [stdout] | ^^^^^^^^ help: replace it with: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 234 | program: program, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `program` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | f: f, [INFO] [stdout] | ^^^^ help: replace it with: `f` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:237:13 [INFO] [stdout] | [INFO] [stdout] 237 | traitMethodselector: traitMethodselector, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `traitMethodselector` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | instanceStore: instanceStore, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `instanceStore` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | allocator: allocator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `allocator` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | implResolver: implResolver, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `implResolver` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:248:13 [INFO] [stdout] | [INFO] [stdout] 248 | unifier: unifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: replace it with: `unifier` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:1608:33 [INFO] [stdout] | [INFO] [stdout] 1608 | ... fields: fields, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: replace it with: `fields` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/typechecker/Typechecker.rs:1609:33 [INFO] [stdout] | [INFO] [stdout] 1609 | ... isRef: isRef, [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `isRef` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/DependencyProcessor.rs:63:39 [INFO] [stdout] | [INFO] [stdout] 63 | let group = DependencyGroup { items: items }; [INFO] [stdout] | ^^^^^^^^^^^^ help: replace it with: `items` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/Dot.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | name: name, [INFO] [stdout] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/Instantiator.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | allocator: allocator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `allocator` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant field names in struct initialization [INFO] [stdout] --> compiler/src/siko/util/SCC.rs:18:13 [INFO] [stdout] | [INFO] [stdout] 18 | id: id, [INFO] [stdout] | ^^^^^^ help: replace it with: `id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/Compiler.rs:43:46 [INFO] [stdout] | [INFO] [stdout] 43 | let mut resolver = Resolver::new(&ctx, name_resolution_runner.clone()); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/Compiler.rs:53:50 [INFO] [stdout] | [INFO] [stdout] 53 | let mut parser = Parser::new(&ctx, fileId, f.to_string()); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/Compiler.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | / match std::env::var("SIKO_STD_PATH") { [INFO] [stdout] 74 | | Ok(val) => { [INFO] [stdout] 75 | | stdLibPath = val.into(); [INFO] [stdout] ... | [INFO] [stdout] 78 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 73 ~ if let Ok(val) = std::env::var("SIKO_STD_PATH") { [INFO] [stdout] 74 + stdLibPath = val.into(); [INFO] [stdout] 75 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/Compiler.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / match std::env::var("SIKO_TARGET_OS") { [INFO] [stdout] 80 | | Ok(val) => { [INFO] [stdout] 81 | | self.config.targetOS = match val.as_str() { [INFO] [stdout] 82 | | "linux" => TargetOS::Linux, [INFO] [stdout] ... | [INFO] [stdout] 88 | | Err(_) => {} [INFO] [stdout] 89 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 79 ~ if let Ok(val) = std::env::var("SIKO_TARGET_OS") { [INFO] [stdout] 80 + self.config.targetOS = match val.as_str() { [INFO] [stdout] 81 + "linux" => TargetOS::Linux, [INFO] [stdout] 82 + "macos" => TargetOS::MacOS, [INFO] [stdout] 83 + "windows" => TargetOS::Windows, [INFO] [stdout] 84 + _ => fatalError("Unknown target OS"), [INFO] [stdout] 85 + }; [INFO] [stdout] 86 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> compiler/src/Compiler.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let stdArch; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `stdArch` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 207 ~ [INFO] [stdout] 208 ~ let stdArch = match self.config.targetOS { [INFO] [stdout] 209 | TargetOS::Linux => { [INFO] [stdout] 210 ~ stdLibPath.join("Arch/Linux") [INFO] [stdout] 211 | } [INFO] [stdout] 212 | TargetOS::MacOS => { [INFO] [stdout] 213 ~ stdLibPath.join("Arch/Darwin") [INFO] [stdout] 214 | } [INFO] [stdout] 215 | TargetOS::Windows => { [INFO] [stdout] 216 ~ stdLibPath.join("Arch/Windows") [INFO] [stdout] 217 | } [INFO] [stdout] 218 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/PackageFinder.rs:96:45 [INFO] [stdout] | [INFO] [stdout] 96 | .extend(rootPackage.addPath(&std::path::Path::new(&path), local)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `std::path::Path::new(&path)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/Backend.rs:26:35 [INFO] [stdout] | [INFO] [stdout] 26 | .run(|| eliminateDeadCode(&ctx, program)); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/Backend.rs:35:28 [INFO] [stdout] | [INFO] [stdout] 35 | .run(|| checkDrops(&ctx, program, dropCheckRunner)); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> compiler/src/siko/backend/BuilderUtils.rs:34:80 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn generateVariant(&mut self, variantName: &QualifiedName, fieldTypes: &Vec, variantIndex: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 34 ~ pub fn generateVariant(&mut self, variantName: &QualifiedName, fieldTypes: &[Type], variantIndex: usize) { [INFO] [stdout] 35 | let variant = Variant { [INFO] [stdout] 36 | name: variantName.clone(), [INFO] [stdout] 37 ~ items: fieldTypes.to_owned(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:43:21 [INFO] [stdout] | [INFO] [stdout] 43 | / if !self.visited.contains(&InstructionRef { [INFO] [stdout] 44 | | blockId: blockId.clone(), [INFO] [stdout] 45 | | instructionId: index as u32, [INFO] [stdout] 46 | | }) { [INFO] [stdout] ... | [INFO] [stdout] 53 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 46 ~ }) [INFO] [stdout] 47 ~ && !instruction.implicit { [INFO] [stdout] 48 | println!("unreachable code {}", instruction); [INFO] [stdout] ... [INFO] [stdout] 51 | r.print(); [INFO] [stdout] 52 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:44:34 [INFO] [stdout] | [INFO] [stdout] 44 | blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:49:42 [INFO] [stdout] | [INFO] [stdout] 49 | ... let slogan = format!("Unreachable code"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Unreachable code".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:69:38 [INFO] [stdout] | [INFO] [stdout] 69 | ... blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `Option::map` [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 106 | / match self { [INFO] [stdout] 107 | | Some(t) => Some(t.removeTuples(ctx)), [INFO] [stdout] 108 | | None => None, [INFO] [stdout] 109 | | } [INFO] [stdout] | |_________^ help: try: `self.as_ref().map(|t| t.removeTuples(ctx))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map [INFO] [stdout] = note: `#[warn(clippy::manual_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:16:26 [INFO] [stdout] | [INFO] [stdout] 16 | for (_, function) in &program.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] = note: `#[warn(clippy::for_kv_map)]` on by default [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 16 - for (_, function) in &program.functions { [INFO] [stdout] 16 + for function in program.functions.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:45:31 [INFO] [stdout] | [INFO] [stdout] 45 | for (_, block) in &body.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 45 - for (_, block) in &body.blocks { [INFO] [stdout] 45 + for block in body.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateStruct` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:85:51 [INFO] [stdout] | [INFO] [stdout] 85 | let structDef = instantiateStruct(&mut self.allocator, &structDef, &rootType); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 85 - let structDef = instantiateStruct(&mut self.allocator, &structDef, &rootType); [INFO] [stdout] 85 + let structDef = instantiateStruct(&self.allocator, &structDef, &rootType); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:86:49 [INFO] [stdout] | [INFO] [stdout] 86 | let (f, _) = structDef.getField(&name); [INFO] [stdout] | ^^^^^ help: change this to: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `destType [INFO] [stdout] .getTupleTypes().get(0)` [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:131:40 [INFO] [stdout] | [INFO] [stdout] 131 | let mut selfType = destType [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 132 | | .getTupleTypes() [INFO] [stdout] 133 | | .get(0) [INFO] [stdout] | |_______________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 131 ~ let mut selfType = destType [INFO] [stdout] 132 + .getTupleTypes().first() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateType` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:136:48 [INFO] [stdout] | [INFO] [stdout] 136 | selfType = instantiateType(&mut self.allocator, selfType); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 136 - selfType = instantiateType(&mut self.allocator, selfType); [INFO] [stdout] 136 + selfType = instantiateType(&self.allocator, selfType); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateType` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:142:42 [INFO] [stdout] | [INFO] [stdout] 142 | fnType = instantiateType(&mut self.allocator, fnType); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 142 - fnType = instantiateType(&mut self.allocator, fnType); [INFO] [stdout] 142 + fnType = instantiateType(&self.allocator, fnType); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateEnum` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:204:47 [INFO] [stdout] | [INFO] [stdout] 204 | let enumDef = instantiateEnum(&mut self.allocator, &enumDef, &srcTy); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 204 - let enumDef = instantiateEnum(&mut self.allocator, &enumDef, &srcTy); [INFO] [stdout] 204 + let enumDef = instantiateEnum(&self.allocator, &enumDef, &srcTy); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:138:27 [INFO] [stdout] | [INFO] [stdout] 138 | for (_, block) in &body.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 138 - for (_, block) in &body.blocks { [INFO] [stdout] 138 + for block in body.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:153:25 [INFO] [stdout] | [INFO] [stdout] 153 | / if info.isRef { [INFO] [stdout] 154 | | let path = buildFieldPath(&info.receiver, &info.fields); [INFO] [stdout] 155 | | if self.traceEnabled { [INFO] [stdout] 156 | | println!(" FieldRef: {} -> {}", info.receiver.name(), path); [INFO] [stdout] ... | [INFO] [stdout] 165 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 152 ~ InstructionKind::FieldAccess(dest, info) [INFO] [stdout] 153 ~ if info.isRef => { [INFO] [stdout] 154 | let path = buildFieldPath(&info.receiver, &info.fields); [INFO] [stdout] ... [INFO] [stdout] 164 | } [INFO] [stdout] 165 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:180:30 [INFO] [stdout] | [INFO] [stdout] 180 | blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:31:55 [INFO] [stdout] | [INFO] [stdout] 31 | let entry = self.borrowVarMap.entry(instrRef).or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:70:44 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn buildBorrowVarMap(&self, links: &BTreeMap, groupInfo: &BlockGroupInfo) -> BorrowVarMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] = note: `#[warn(clippy::mutable_key_type)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | let inverseLinkMap = self.buildInverseLinkMap(links); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:82:30 [INFO] [stdout] | [INFO] [stdout] 82 | blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:106:42 [INFO] [stdout] | [INFO] [stdout] 106 | fn buildInverseLinkMap(&self, links: &BTreeMap) -> BTreeMap> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:106:68 [INFO] [stdout] | [INFO] [stdout] 106 | fn buildInverseLinkMap(&self, links: &BTreeMap) -> BTreeMap> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | let mut inverseLinkMap: BTreeMap> = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:113:22 [INFO] [stdout] | [INFO] [stdout] 113 | .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:127:25 [INFO] [stdout] | [INFO] [stdout] 127 | inverseLinkMap: &BTreeMap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | let mut allBorrowVars: BTreeSet = BTreeSet::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:136:64 [INFO] [stdout] | [INFO] [stdout] 136 | let mut extV = self.profileBuilder.getFinalVarType(&dest); [INFO] [stdout] | ^^^^^ help: change this to: `dest` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:144:64 [INFO] [stdout] | [INFO] [stdout] 144 | let mut extV = self.profileBuilder.getFinalVarType(&dest); [INFO] [stdout] | ^^^^^ help: change this to: `dest` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:151:68 [INFO] [stdout] | [INFO] [stdout] 151 | let mut extV = self.profileBuilder.getFinalVarType(&dest); [INFO] [stdout] | ^^^^^ help: change this to: `dest` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 183 | let mut borrowVarToUsers: BTreeMap> = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:188:22 [INFO] [stdout] | [INFO] [stdout] 188 | .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:283:38 [INFO] [stdout] | [INFO] [stdout] 283 | fn resolveBorrowVars(inverseLinkMap: &BTreeMap>, allBorrowVars: &BTreeSet) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:283:81 [INFO] [stdout] | [INFO] [stdout] 283 | fn resolveBorrowVars(inverseLinkMap: &BTreeMap>, allBorrowVars: &BTreeSet) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Check.rs:34:54 [INFO] [stdout] | [INFO] [stdout] 34 | let f = self.program.getFunction(&item).unwrap(); [INFO] [stdout] | ^^^^^ help: change this to: `item` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Check.rs:53:23 [INFO] [stdout] | [INFO] [stdout] 53 | for (_, f) in &self.program.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 53 - for (_, f) in &self.program.functions { [INFO] [stdout] 53 + for f in self.program.functions.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/DataGroups.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | let mut allDeps: BTreeMap> = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/DataGroups.rs:314:26 [INFO] [stdout] | [INFO] [stdout] 314 | .expect(&format!("Data definition not found {}", name)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| panic!("Data definition not found {}", name))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] = note: `#[warn(clippy::expect_fun_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Error.rs:20:17 [INFO] [stdout] | [INFO] [stdout] 20 | / let mut entries = Vec::new(); [INFO] [stdout] 21 | | entries.push(Entry::new( [INFO] [stdout] 22 | | Some("NOTE: Value moved here".to_string()), [INFO] [stdout] 23 | | moveLocation.clone(), [INFO] [stdout] ... | [INFO] [stdout] 27 | | borrowLocation.clone(), [INFO] [stdout] 28 | | )); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let entries = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] = note: `#[warn(clippy::vec_init_then_push)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Error.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | / let mut entries = Vec::new(); [INFO] [stdout] 39 | | entries.push(Entry::new( [INFO] [stdout] 40 | | Some("NOTE: Value created here".to_string()), [INFO] [stdout] 41 | | createLocation.clone(), [INFO] [stdout] ... | [INFO] [stdout] 45 | | borrowLocation.clone(), [INFO] [stdout] 46 | | )); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let entries = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfile.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | let mut allDeps = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfile.rs:122:44 [INFO] [stdout] | [INFO] [stdout] 122 | let deps = allDeps.get(&c).expect("argVar must be in allDeps"); [INFO] [stdout] | ^^ help: change this to: `c` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:120:14 [INFO] [stdout] | [INFO] [stdout] 120 | .expect(&format!("Variable type not found: {}", var.name())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| panic!("Variable type not found: {}", var.name()))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 225 | let updated = self.profileStore.addProfile(self.profile.clone()); [INFO] [stdout] | ----------------------------------------------------------------- unnecessary `let` binding [INFO] [stdout] 226 | updated [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 225 ~ [INFO] [stdout] 226 ~ self.profileStore.addProfile(self.profile.clone()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:151:31 [INFO] [stdout] | [INFO] [stdout] 151 | for (_, b) in &body.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 151 - for (_, b) in &body.blocks { [INFO] [stdout] 151 + for b in body.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:244:26 [INFO] [stdout] | [INFO] [stdout] 244 | .expect(&format!("Argument variable not found in param map: {}", argName)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| panic!("Argument variable not found in param map: {}", argName))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:462:52 [INFO] [stdout] | [INFO] [stdout] 462 | let field = structDef.getField(&name); [INFO] [stdout] | ^^^^^ help: change this to: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:97:23 [INFO] [stdout] | [INFO] [stdout] 97 | for (_, e) in &mut program.enums { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 97 - for (_, e) in &mut program.enums { [INFO] [stdout] 97 + for e in program.enums.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:101:23 [INFO] [stdout] | [INFO] [stdout] 101 | for (_, s) in &mut program.structs { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 101 - for (_, s) in &mut program.structs { [INFO] [stdout] 101 + for s in program.structs.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:105:23 [INFO] [stdout] | [INFO] [stdout] 105 | for (_, f) in &mut program.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 105 - for (_, f) in &mut program.functions { [INFO] [stdout] 105 + for f in program.functions.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:117:74 [INFO] [stdout] | [INFO] [stdout] 117 | let mut generator = ClosureGenerator::new(&mut program, key, &*closure); [INFO] [stdout] | ^^^^^^^^^ help: try: `&closure` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for cloning elements [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:168:45 [INFO] [stdout] | [INFO] [stdout] 168 | let paramTypes: Vec = params.iter().map(|p| p.clone()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `cloned` method: `params.iter().cloned()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:218:27 [INFO] [stdout] | [INFO] [stdout] 218 | for (_, block) in &mut self.blocks { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 218 - for (_, block) in &mut self.blocks { [INFO] [stdout] 218 + for block in self.blocks.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | / loop { [INFO] [stdout] 23 | | if let Some(instr) = builder.getInstruction() { [INFO] [stdout] 24 | | match &instr.kind { [INFO] [stdout] 25 | | InstructionKind::FunctionCall(dest, info) => { [INFO] [stdout] ... | [INFO] [stdout] 59 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instr) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] = note: `#[warn(clippy::while_let_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:26:25 [INFO] [stdout] | [INFO] [stdout] 26 | / if info.coroutineSpawn { [INFO] [stdout] 27 | | let entryPointName = [INFO] [stdout] 28 | | QualifiedName::CoroutineStateMachineVariant(Box::new(info.name.clone()), 0 as u32); [INFO] [stdout] 29 | | let stateMachineTy = Type::Named(getStateMachineEnumName(&info.name), vec![]); [INFO] [stdout] ... | [INFO] [stdout] 50 | | builder.replaceInstruction(newCall, instr.location.clone()); [INFO] [stdout] 51 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 25 ~ InstructionKind::FunctionCall(dest, info) [INFO] [stdout] 26 ~ if info.coroutineSpawn => { [INFO] [stdout] 27 | let entryPointName = [INFO] [stdout] ... [INFO] [stdout] 50 | builder.replaceInstruction(newCall, instr.location.clone()); [INFO] [stdout] 51 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | / match &instr.kind { [INFO] [stdout] 25 | | InstructionKind::FunctionCall(dest, info) => { [INFO] [stdout] 26 | | if info.coroutineSpawn { [INFO] [stdout] 27 | | let entryPointName = [INFO] [stdout] ... | [INFO] [stdout] 53 | | _ => {} [INFO] [stdout] 54 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 24 ~ if let InstructionKind::FunctionCall(dest, info) = &instr.kind { [INFO] [stdout] 25 + if info.coroutineSpawn { [INFO] [stdout] 26 + let entryPointName = [INFO] [stdout] 27 + QualifiedName::CoroutineStateMachineVariant(Box::new(info.name.clone()), 0 as u32); [INFO] [stdout] 28 + let stateMachineTy = Type::Named(getStateMachineEnumName(&info.name), vec![]); [INFO] [stdout] 29 + let variantCtorVar = [INFO] [stdout] 30 + bodyBuilder.createTempValueWithType(instr.location.clone(), stateMachineTy); [INFO] [stdout] 31 + let variantCtorCallInfo = CallInfo { [INFO] [stdout] 32 + name: entryPointName.clone(), [INFO] [stdout] 33 + args: info.args.clone(), [INFO] [stdout] 34 + context: info.context.clone(), [INFO] [stdout] 35 + coroutineSpawn: false, [INFO] [stdout] 36 + instanceRefs: Vec::new(), [INFO] [stdout] 37 + }; [INFO] [stdout] 38 + let variantCtorCall = [INFO] [stdout] 39 + InstructionKind::FunctionCall(variantCtorVar.clone(), variantCtorCallInfo); [INFO] [stdout] 40 + builder.addInstruction(variantCtorCall, instr.location.clone()); [INFO] [stdout] 41 + builder.step(); [INFO] [stdout] 42 + let coroutineName = getLoweredCoroutineName(&dest.getType()); [INFO] [stdout] 43 + let variantName = QualifiedName::CoroutineInstance( [INFO] [stdout] 44 + Box::new(coroutineName), [INFO] [stdout] 45 + Box::new(QualifiedName::CoroutineStateMachineEnum(Box::new(info.name.clone()))), [INFO] [stdout] 46 + ); [INFO] [stdout] 47 + let info = CallInfo::new(variantName, vec![variantCtorVar.useVar()]); [INFO] [stdout] 48 + let newCall = InstructionKind::FunctionCall(dest.clone(), info); [INFO] [stdout] 49 + builder.replaceInstruction(newCall, instr.location.clone()); [INFO] [stdout] 50 + } [INFO] [stdout] 51 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `u32` is unnecessary [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:28:106 [INFO] [stdout] | [INFO] [stdout] 28 | ... QualifiedName::CoroutineStateMachineVariant(Box::new(info.name.clone()), 0 as u32); [INFO] [stdout] | ^^^^^^^^ help: try: `0_u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineGenerator.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | / let mut params = Vec::new(); [INFO] [stdout] 43 | | params.push(Parameter::Named( [INFO] [stdout] 44 | | "coro".to_string(), [INFO] [stdout] 45 | | coroutineTy.clone(), [INFO] [stdout] 46 | | ParamInfo::new(), [INFO] [stdout] 47 | | )); [INFO] [stdout] | |___________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineGenerator.rs:242:9 [INFO] [stdout] | [INFO] [stdout] 233 | / let f = Function { [INFO] [stdout] 234 | | name: isCompletedName, [INFO] [stdout] 235 | | params, [INFO] [stdout] 236 | | result: ResultKind::SingleReturn(boolTy), [INFO] [stdout] ... | [INFO] [stdout] 240 | | attributes: Attributes::new(), [INFO] [stdout] 241 | | }; [INFO] [stdout] | |__________- unnecessary `let` binding [INFO] [stdout] 242 | f [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 233 ~ [INFO] [stdout] 234 ~ Function { [INFO] [stdout] 235 + name: isCompletedName, [INFO] [stdout] 236 + params, [INFO] [stdout] 237 + result: ResultKind::SingleReturn(boolTy), [INFO] [stdout] 238 + body: Some(bodyBuilder.build()), [INFO] [stdout] 239 + kind: FunctionKind::UserDefined(location.clone()), [INFO] [stdout] 240 + constraintContext: ConstraintContext::new(), [INFO] [stdout] 241 + attributes: Attributes::new(), [INFO] [stdout] 242 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineGenerator.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | / let mut params = Vec::new(); [INFO] [stdout] 168 | | params.push(Parameter::Named( [INFO] [stdout] 169 | | "coro".to_string(), [INFO] [stdout] 170 | | coroutineTy.clone(), [INFO] [stdout] 171 | | ParamInfo::new(), [INFO] [stdout] 172 | | )); [INFO] [stdout] | |___________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineLowering.rs:90:55 [INFO] [stdout] | [INFO] [stdout] 90 | let func = self.program.functions.get(&fnName).unwrap().clone(); [INFO] [stdout] | ^^^^^^^ help: change this to: `fnName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineLowering.rs:118:31 [INFO] [stdout] | [INFO] [stdout] 118 | for (_, coroutine) in &self.coroutines { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 118 - for (_, coroutine) in &self.coroutines { [INFO] [stdout] 118 + for coroutine in self.coroutines.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineLowering.rs:126:23 [INFO] [stdout] | [INFO] [stdout] 126 | for (_, e) in &mut self.program.enums { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 126 - for (_, e) in &mut self.program.enums { [INFO] [stdout] 126 + for e in self.program.enums.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineLowering.rs:130:23 [INFO] [stdout] | [INFO] [stdout] 130 | for (_, s) in &mut self.program.structs { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 130 - for (_, s) in &mut self.program.structs { [INFO] [stdout] 130 + for s in self.program.structs.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineLowering.rs:396:27 [INFO] [stdout] | [INFO] [stdout] 396 | for (_, block) in &mut self.blocks { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 396 - for (_, block) in &mut self.blocks { [INFO] [stdout] 396 + for block in self.blocks.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineStateProcessor.rs:144:9 [INFO] [stdout] | [INFO] [stdout] 144 | / loop { [INFO] [stdout] 145 | | if let Some(instr) = builder.getInstruction() { [INFO] [stdout] 146 | | match &instr.kind { [INFO] [stdout] 147 | | InstructionKind::Jump(_, targetBlock) => { [INFO] [stdout] ... | [INFO] [stdout] 195 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instr) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineStateProcessor.rs:294:26 [INFO] [stdout] | [INFO] [stdout] 294 | for (_, info) in &self.values { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 294 - for (_, info) in &self.values { [INFO] [stdout] 294 + for info in self.values.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineTransformer.rs:261:13 [INFO] [stdout] | [INFO] [stdout] 261 | / loop { [INFO] [stdout] 262 | | if let Some(instr) = builder.getInstruction() { [INFO] [stdout] 263 | | if let InstructionKind::Yield(_, _) = &instr.kind { [INFO] [stdout] 264 | | count += 1; [INFO] [stdout] ... | [INFO] [stdout] 270 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instr) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineTransformer.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | / loop { [INFO] [stdout] 285 | | if let Some(instr) = builder.getInstruction() { [INFO] [stdout] 286 | | match &instr.kind { [INFO] [stdout] 287 | | InstructionKind::Assign(var, value) => { [INFO] [stdout] ... | [INFO] [stdout] 342 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instr) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineTransformer.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | / fn generateReturn( [INFO] [stdout] 346 | | &mut self, [INFO] [stdout] 347 | | bodyBuilder: &mut BodyBuilder, [INFO] [stdout] 348 | | builder: &mut BlockBuilder, [INFO] [stdout] ... | [INFO] [stdout] 353 | | variables: Vec, [INFO] [stdout] 354 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineTransformer.rs:419:9 [INFO] [stdout] | [INFO] [stdout] 419 | / let mut params = Vec::new(); [INFO] [stdout] 420 | | params.push(Parameter::Named( [INFO] [stdout] 421 | | "stateMachine".to_string(), [INFO] [stdout] 422 | | self.enumTy.asRef(), [INFO] [stdout] 423 | | ParamInfo::new(), [INFO] [stdout] 424 | | )); [INFO] [stdout] | |___________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/Utils.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 32 | let resultTy = Type::Named(getCoroutineCoResumeResultName().monomorphized(ctx), vec![]); [INFO] [stdout] | ---------------------------------------------------------------------------------------- unnecessary `let` binding [INFO] [stdout] 33 | resultTy [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 32 ~ [INFO] [stdout] 33 ~ Type::Named(getCoroutineCoResumeResultName().monomorphized(ctx), vec![]) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/drop/BlockProcessor.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | / loop { [INFO] [stdout] 30 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/BlockProcessor.rs:37:42 [INFO] [stdout] | [INFO] [stdout] 37 | jumpTargets.push(blockId.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/BlockProcessor.rs:42:46 [INFO] [stdout] | [INFO] [stdout] 42 | ... jumpTargets.push(case.branch.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `case.branch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/BlockProcessor.rs:48:46 [INFO] [stdout] | [INFO] [stdout] 48 | ... jumpTargets.push(case.branch.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `case.branch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/BlockProcessor.rs:52:42 [INFO] [stdout] | [INFO] [stdout] 52 | jumpTargets.push(info.blockId.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `info.blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/CollisionChecker.rs:42:28 [INFO] [stdout] | [INFO] [stdout] 42 | queue.push(item.clone()); [INFO] [stdout] | ^^^^^^^^^^^^ help: try dereferencing it: `*item` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/CollisionChecker.rs:43:38 [INFO] [stdout] | [INFO] [stdout] 43 | self.blockEnvs.entry(item.clone()).or_insert_with(Context::new); [INFO] [stdout] | ^^^^^^^^^^^^ help: try dereferencing it: `*item` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/drop/CollisionChecker.rs:45:13 [INFO] [stdout] | [INFO] [stdout] 45 | / loop { [INFO] [stdout] 46 | | let Some(blockId) = queue.pop() else { break }; [INFO] [stdout] 47 | | totalCount += 1; [INFO] [stdout] ... | [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(blockId) = queue.pop() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/CollisionChecker.rs:64:66 [INFO] [stdout] | [INFO] [stdout] 64 | let blockStartContext = self.blockEnvs.entry(jumpTarget.clone()).or_insert_with(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `jumpTarget` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/drop/CollisionChecker.rs:72:30 [INFO] [stdout] | [INFO] [stdout] 72 | ... .or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/drop/CollisionChecker.rs:88:30 [INFO] [stdout] | [INFO] [stdout] 88 | ... .or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/CollisionChecker.rs:103:40 [INFO] [stdout] | [INFO] [stdout] 103 | ... queue.push(jumpTarget.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `jumpTarget` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/drop/DeclarationStore.rs:32:14 [INFO] [stdout] | [INFO] [stdout] 32 | .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`u32` -> `u32`) [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:158:43 [INFO] [stdout] | [INFO] [stdout] 158 | if instructions.contains(&(index as u32)) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `{ index }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:162:26 [INFO] [stdout] | [INFO] [stdout] 162 | .expect(&format!("No instruction at index {}", index)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| panic!("No instruction at index {}", index))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:255:9 [INFO] [stdout] | [INFO] [stdout] 255 | let mut potentialImplicitClones = BTreeSet::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Path`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Variable`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/Drop.rs:273:27 [INFO] [stdout] | [INFO] [stdout] 273 | .push(path.instructionRef.instructionId.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `path.instructionRef.instructionId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/drop/DropMetadataStore.rs:42:28 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn paths(&self) -> &BTreeSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `SimplePath`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Vec`, which has interior mutability [INFO] [stdout] = note: ... because it contains `PathSegment`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/drop/DropMetadataStore.rs:115:28 [INFO] [stdout] | [INFO] [stdout] 115 | pub fn paths(&self) -> BTreeSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `SimplePath`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Vec`, which has interior mutability [INFO] [stdout] = note: ... because it contains `PathSegment`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> compiler/src/siko/backend/drop/Error.rs:29:34 [INFO] [stdout] | [INFO] [stdout] 29 | ... Some(format!("NOTE: previously moved here")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"NOTE: previously moved here".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> compiler/src/siko/backend/drop/Error.rs:42:34 [INFO] [stdout] | [INFO] [stdout] 42 | ... Some(format!("NOTE: previously moved here")), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"NOTE: previously moved here".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> compiler/src/siko/backend/drop/Error.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | if errors.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!errors.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] = note: `#[warn(clippy::len_zero)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> compiler/src/siko/backend/drop/Event.rs:54:21 [INFO] [stdout] | [INFO] [stdout] 54 | / if !paths.contains(&usage.path) { [INFO] [stdout] 55 | | paths.push(usage.path.clone()); [INFO] [stdout] 56 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 53 ~ Event::Usage(usage) if usage.isMove() [INFO] [stdout] 54 ~ && !paths.contains(&usage.path) => { [INFO] [stdout] 55 | paths.push(usage.path.clone()); [INFO] [stdout] 56 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> compiler/src/siko/backend/drop/Event.rs:59:21 [INFO] [stdout] | [INFO] [stdout] 59 | / if !paths.contains(path) { [INFO] [stdout] 60 | | paths.push(path.clone()); [INFO] [stdout] 61 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 58 ~ Event::Assign(path) [INFO] [stdout] 59 ~ if !paths.contains(path) => { [INFO] [stdout] 60 | paths.push(path.clone()); [INFO] [stdout] 61 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/backend/drop/Event.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | / match pruned.events[index].clone() { [INFO] [stdout] 113 | | Event::Assign(path) => { [INFO] [stdout] 114 | | for i in 0..index { [INFO] [stdout] 115 | | if doesAssignInvalidateEvent(&pruned.events[i], &path) { [INFO] [stdout] ... | [INFO] [stdout] 129 | | _ => {} [INFO] [stdout] 130 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 112 ~ if let Event::Assign(path) = pruned.events[index].clone() { [INFO] [stdout] 113 + for i in 0..index { [INFO] [stdout] 114 + if doesAssignInvalidateEvent(&pruned.events[i], &path) { [INFO] [stdout] 115 + pruned.events[i] = Event::Noop; [INFO] [stdout] 116 + } [INFO] [stdout] 117 + } [INFO] [stdout] 118 + baseEvents.retain(|e| { [INFO] [stdout] 119 + if doesAssignInvalidateEvent(e, &path) { [INFO] [stdout] 120 + //println!("Removing base event: {} because it is invalidated by {}", e, path); [INFO] [stdout] 121 + false [INFO] [stdout] 122 + } else { [INFO] [stdout] 123 + //println!("Keeping base event: {}", e); [INFO] [stdout] 124 + true [INFO] [stdout] 125 + } [INFO] [stdout] 126 + }); [INFO] [stdout] 127 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> compiler/src/siko/backend/drop/Event.rs:194:43 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn validate(mut self, baseEvents: &Vec, trace: bool) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 194 ~ pub fn validate(mut self, baseEvents: &[Event], trace: bool) -> (Vec, Vec) { [INFO] [stdout] 195 | if trace { [INFO] [stdout] 196 | println!("Validating event series: {:?}", self.series.events); [INFO] [stdout] 197 | } [INFO] [stdout] 198 ~ let mut baseEvents = baseEvents.to_owned(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:55:30 [INFO] [stdout] | [INFO] [stdout] 55 | for (_, dropFlag) in &self.declaredDropFlags { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 55 - for (_, dropFlag) in &self.declaredDropFlags { [INFO] [stdout] 55 + for dropFlag in self.declaredDropFlags.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:93:13 [INFO] [stdout] | [INFO] [stdout] 93 | / loop { [INFO] [stdout] 94 | | match builder.getInstruction() { [INFO] [stdout] 95 | | Some(instruction) => { [INFO] [stdout] ... | [INFO] [stdout] 189 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:119:100 [INFO] [stdout] | [INFO] [stdout] 119 | ... if let Some(droppedValues) = self.declarationStore.getDeclarations(&id) { [INFO] [stdout] | ^^^ help: change this to: `id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:130:94 [INFO] [stdout] | [INFO] [stdout] 130 | ... self.addDropPath(&mut builder, ¤t, &var); [INFO] [stdout] | ^^^^ help: change this to: `var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | / loop { [INFO] [stdout] 200 | | match queue.pop_front() { [INFO] [stdout] 201 | | Some(blockId) => { [INFO] [stdout] ... | [INFO] [stdout] 207 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(blockId) = queue.pop_front() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:218:9 [INFO] [stdout] | [INFO] [stdout] 218 | / loop { [INFO] [stdout] 219 | | match builder.getInstruction() { [INFO] [stdout] 220 | | Some(instruction) => { [INFO] [stdout] ... | [INFO] [stdout] 322 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `u32` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:267:72 [INFO] [stdout] | [INFO] [stdout] 267 | ... name: FieldId::Indexed(index.clone()), [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/drop/Finalizer.rs:297:46 [INFO] [stdout] | [INFO] [stdout] 297 | ... self.disablePath(&path, &mut dropBlock.iterator()); [INFO] [stdout] | ^^^^^ help: change this to: `path` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/drop/Initializer.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | / loop { [INFO] [stdout] 58 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 59 | | if let InstructionKind::DeclareVar(v, _) = &instruction.kind { [INFO] [stdout] 60 | | self.declarationStore.explicitDeclarations.insert(v.name()); [INFO] [stdout] ... | [INFO] [stdout] 66 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/drop/Initializer.rs:76:42 [INFO] [stdout] | [INFO] [stdout] 76 | self.declareVar(var, &syntaxBlock, builder, true); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `syntaxBlock` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/drop/Initializer.rs:83:63 [INFO] [stdout] | [INFO] [stdout] 83 | ... self.declareVar(&assignPath.root, &syntaxBlock, builder, false); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `syntaxBlock` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/backend/drop/SyntaxBlock.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | return format!("{}", self.id); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 25 - return format!("{}", self.id); [INFO] [stdout] 25 + format!("{}", self.id) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/backend/drop/SyntaxBlock.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | return format!("{}.{}", self.id, self.childBlocks.last().unwrap().getCurrentBlockId()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 27 - return format!("{}.{}", self.id, self.childBlocks.last().unwrap().getCurrentBlockId()); [INFO] [stdout] 27 + format!("{}.{}", self.id, self.childBlocks.last().unwrap().getCurrentBlockId()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> compiler/src/siko/backend/drop/SyntaxBlock.rs:25:20 [INFO] [stdout] | [INFO] [stdout] 25 | return format!("{}", self.id); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `self.id.to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this match could be replaced by its body itself [INFO] [stdout] --> compiler/src/siko/backend/drop/Util.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | / match self { [INFO] [stdout] 10 | | _ => { [INFO] [stdout] 11 | | self.isNever() [INFO] [stdout] 12 | | || self.isPtr() [INFO] [stdout] ... | [INFO] [stdout] 19 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_single_binding [INFO] [stdout] = note: `#[warn(clippy::match_single_binding)]` on by default [INFO] [stdout] help: consider using the match body instead [INFO] [stdout] | [INFO] [stdout] 9 ~ self.isNever() [INFO] [stdout] 10 + || self.isPtr() [INFO] [stdout] 11 + || self.isReference() [INFO] [stdout] 12 + || self.isUnit() [INFO] [stdout] 13 + || self.isVoid() [INFO] [stdout] 14 + || self.isVoidPtr() [INFO] [stdout] 15 + || self.isFunctionPtr() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> compiler/src/siko/backend/path/Usage.rs:94:49 [INFO] [stdout] | [INFO] [stdout] 94 | info.args.getVariables().iter().map(|arg| varToUsage(arg)).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `varToUsage` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> compiler/src/siko/backend/path/Usage.rs:133:45 [INFO] [stdout] | [INFO] [stdout] 133 | UsageInfo::with(args.iter().map(|arg| varToUsage(arg)).collect(), Some(dest.toPath())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `varToUsage` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> compiler/src/siko/backend/path/Usage.rs:143:43 [INFO] [stdout] | [INFO] [stdout] 143 | usages.extend(args.iter().map(|arg| varToUsage(arg))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `varToUsage` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> compiler/src/siko/backend/path/Usage.rs:187:43 [INFO] [stdout] | [INFO] [stdout] 187 | usages.extend(args.iter().map(|arg| varToUsage(arg))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `varToUsage` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this match could be replaced by its body itself [INFO] [stdout] --> compiler/src/siko/backend/path/Util.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | / match self { [INFO] [stdout] 22 | | _ => { [INFO] [stdout] 23 | | self.isNever() [INFO] [stdout] 24 | | || self.isPtr() [INFO] [stdout] ... | [INFO] [stdout] 31 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_single_binding [INFO] [stdout] help: consider using the match body instead [INFO] [stdout] | [INFO] [stdout] 21 ~ self.isNever() [INFO] [stdout] 22 + || self.isPtr() [INFO] [stdout] 23 + || self.isReference() [INFO] [stdout] 24 + || self.isUnit() [INFO] [stdout] 25 + || self.isVoid() [INFO] [stdout] 26 + || self.isVoidPtr() [INFO] [stdout] 27 + || self.isFunctionPtr() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/DataGroup.rs:114:17 [INFO] [stdout] | [INFO] [stdout] 114 | return recursive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 114 - return recursive; [INFO] [stdout] 114 + recursive [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateStruct` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/DataGroup.rs:68:47 [INFO] [stdout] | [INFO] [stdout] 68 | let s = instantiateStruct(&mut self.allocator, s, ty); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 68 - let s = instantiateStruct(&mut self.allocator, s, ty); [INFO] [stdout] 68 + let s = instantiateStruct(&self.allocator, s, ty); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateEnum` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/DataGroup.rs:86:45 [INFO] [stdout] | [INFO] [stdout] 86 | let e = instantiateEnum(&mut self.allocator, e, ty); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 86 - let e = instantiateEnum(&mut self.allocator, e, ty); [INFO] [stdout] 86 + let e = instantiateEnum(&self.allocator, e, ty); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/DataGroup.rs:185:19 [INFO] [stdout] | [INFO] [stdout] 185 | for (_, s) in &program.structs { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 185 - for (_, s) in &program.structs { [INFO] [stdout] 185 + for s in program.structs.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/DataGroup.rs:188:19 [INFO] [stdout] | [INFO] [stdout] 188 | for (_, e) in &program.enums { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 188 - for (_, e) in &program.enums { [INFO] [stdout] 188 + for e in program.enums.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/RecursiveDataHandler.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | let mut functions = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_none()` [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/RecursiveDataHandler.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | if let None = &function.body { [INFO] [stdout] | -------^^^^----------------- help: try: `if function.body.is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] = note: `#[warn(clippy::redundant_pattern_matching)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/RecursiveDataHandler.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | let mut transformVars = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Variable`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/RecursiveDataHandler.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | / loop { [INFO] [stdout] 50 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 51 | | //println!("Processing instruction: {}", instruction); [INFO] [stdout] 52 | | match &instruction.kind { [INFO] [stdout] ... | [INFO] [stdout] 166 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/RecursiveDataHandler.rs:55:25 [INFO] [stdout] | [INFO] [stdout] 55 | / match f.kind { [INFO] [stdout] 56 | | FunctionKind::VariantCtor(index) => { [INFO] [stdout] 57 | | let mut newKind = instruction.kind.clone(); [INFO] [stdout] 58 | | let enumName = f.name.base(); [INFO] [stdout] ... | [INFO] [stdout] 82 | | _ => {} [INFO] [stdout] 83 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 55 ~ if let FunctionKind::VariantCtor(index) = f.kind { [INFO] [stdout] 56 + let mut newKind = instruction.kind.clone(); [INFO] [stdout] 57 + let enumName = f.name.base(); [INFO] [stdout] 58 + let e = program.getEnum(&enumName).expect("enum not found"); [INFO] [stdout] 59 + let variant = &e.variants[index as usize]; [INFO] [stdout] 60 + //println!("Calling {}.{} => {}", f.name, index, formatTypes(&variant.items)); [INFO] [stdout] 61 + for (arg, ty) in info.args.getVariables().iter().zip(&variant.items) { [INFO] [stdout] 62 + let argType = arg.getType(); [INFO] [stdout] 63 + if argType == *ty { [INFO] [stdout] 64 + continue; [INFO] [stdout] 65 + } [INFO] [stdout] 66 + if ty.isBoxed(&argType) { [INFO] [stdout] 67 + //println!("Boxing argument: {} of type {}", arg, argType); [INFO] [stdout] 68 + let boxedVar = bodyBuilder [INFO] [stdout] 69 + .createTempValueWithType(instruction.location.clone(), ty.clone()); [INFO] [stdout] 70 + let boxCall = InstructionKind::FunctionCall( [INFO] [stdout] 71 + boxedVar.clone(), [INFO] [stdout] 72 + CallInfo::new(getBoxNewFnName(), vec![arg.clone()]), [INFO] [stdout] 73 + ); [INFO] [stdout] 74 + newKind = newKind.replaceVar(&arg, boxedVar); [INFO] [stdout] 75 + builder.addInstruction(boxCall, instruction.location.clone()); [INFO] [stdout] 76 + builder.step(); [INFO] [stdout] 77 + } [INFO] [stdout] 78 + } [INFO] [stdout] 79 + builder.replaceInstruction(newKind, instruction.location.clone()); [INFO] [stdout] 80 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/RecursiveDataHandler.rs:75:70 [INFO] [stdout] | [INFO] [stdout] 75 | ... newKind = newKind.replaceVar(&arg, boxedVar); [INFO] [stdout] | ^^^^ help: change this to: `arg` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateEnum` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/recursivedatahandler/RecursiveDataHandler.rs:89:49 [INFO] [stdout] | [INFO] [stdout] 89 | let e = instantiateEnum(&mut allocator, &e, &sourceType); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 89 - let e = instantiateEnum(&mut allocator, &e, &sourceType); [INFO] [stdout] 89 + let e = instantiateEnum(&allocator, &e, &sourceType); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/BlockMerger.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | / if self.function.body.is_none() { [INFO] [stdout] 25 | | return None; [INFO] [stdout] 26 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] = note: `#[warn(clippy::question_mark)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/BlockMerger.rs:74:17 [INFO] [stdout] | [INFO] [stdout] 74 | / loop { [INFO] [stdout] 75 | | if let Some(lastInstruction) = builder.getLastInstruction() { [INFO] [stdout] 76 | | if let InstructionKind::Jump(_, targetId) = &lastInstruction.kind { [INFO] [stdout] ... | [INFO] [stdout] 92 | | } [INFO] [stdout] | |_________________^ help: try: `while let Some(lastInstruction) = builder.getLastInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/CompileTimeEvaluator.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | / if self.function.body.is_none() { [INFO] [stdout] 35 | | return None; // No body to evaluate [INFO] [stdout] 36 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/CompileTimeEvaluator.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | / loop { [INFO] [stdout] 78 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 79 | | //println!("Processing instruction: {}", instruction); [INFO] [stdout] 80 | | match instruction.kind { [INFO] [stdout] ... | [INFO] [stdout] 158 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/DeadCodeEliminator.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | / if self.function.body.is_none() { [INFO] [stdout] 28 | | return None; [INFO] [stdout] 29 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/DeadCodeEliminator.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | / loop { [INFO] [stdout] 65 | | if let Some(_i) = builder.getInstruction() { [INFO] [stdout] 66 | | //println!("DCE: Checking instruction: {}", _i); [INFO] [stdout] 67 | | let id = InstructionRef { [INFO] [stdout] ... | [INFO] [stdout] 81 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(_i) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> compiler/src/siko/backend/simplification/Inliner.rs:69:21 [INFO] [stdout] | [INFO] [stdout] 69 | groupItems: &Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 69 - groupItems: &Vec, [INFO] [stdout] 69 + groupItems: &[QualifiedName], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/Inliner.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | / loop { [INFO] [stdout] 76 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 77 | | match &instruction.kind { [INFO] [stdout] 78 | | InstructionKind::FunctionCall(dest, info) => { [INFO] [stdout] ... | [INFO] [stdout] 208 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/backend/simplification/Inliner.rs:77:21 [INFO] [stdout] | [INFO] [stdout] 77 | / match &instruction.kind { [INFO] [stdout] 78 | | InstructionKind::FunctionCall(dest, info) => { [INFO] [stdout] 79 | | let callee = program.functions.get(&info.name).expect("Function not found"); [INFO] [stdout] 80 | | let callArgs = info.args.getVariables(); [INFO] [stdout] ... | [INFO] [stdout] 202 | | _ => {} [INFO] [stdout] 203 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 77 ~ if let InstructionKind::FunctionCall(dest, info) = &instruction.kind { [INFO] [stdout] 78 + let callee = program.functions.get(&info.name).expect("Function not found"); [INFO] [stdout] 79 + let callArgs = info.args.getVariables(); [INFO] [stdout] 80 + if callee.canbeInlined() && !self.functionGroupInfo.isRecursive(&info.name) { [INFO] [stdout] 81 + if groupItems.contains(&info.name) { [INFO] [stdout] 82 + // Don't inline functions in the same group [INFO] [stdout] 83 + self.wasNotInlined.insert(info.name.clone()); [INFO] [stdout] 84 + builder.step(); [INFO] [stdout] 85 + continue; [INFO] [stdout] 86 + } [INFO] [stdout] 87 + self.wasInlined.insert(info.name.clone()); [INFO] [stdout] 88 + //println!("Inlining function: {}", info.name); [INFO] [stdout] 89 + //println!("Callee {}", callee); [INFO] [stdout] 90 + let afterCallBlockId = builder.splitBlock(1); [INFO] [stdout] 91 + let calleeBody = match &callee.body { [INFO] [stdout] 92 + Some(body) => body, [INFO] [stdout] 93 + None => { [INFO] [stdout] 94 + panic!("Callee has no body: {}", info.name); [INFO] [stdout] 95 + } [INFO] [stdout] 96 + }; [INFO] [stdout] 97 + //println!("After call block id: {}", afterCallBlockId); [INFO] [stdout] 98 + let mut argMap = BTreeMap::new(); [INFO] [stdout] 99 + for (index, p) in callee.params.iter().enumerate() { [INFO] [stdout] 100 + match callArgs.get(index) { [INFO] [stdout] 101 + Some(argVar) => { [INFO] [stdout] 102 + argMap.insert(p.getName().clone(), argVar.clone()); [INFO] [stdout] 103 + } [INFO] [stdout] 104 + None => { [INFO] [stdout] 105 + println!( [INFO] [stdout] 106 + "[inliner] missing argument {} for parameter {} while inlining {}", [INFO] [stdout] 107 + index, [INFO] [stdout] 108 + p.getName(), [INFO] [stdout] 109 + info.name [INFO] [stdout] 110 + ); [INFO] [stdout] 111 + println!( [INFO] [stdout] 112 + "[inliner] available args: {:?}", [INFO] [stdout] 113 + callArgs.iter().map(|v| v.to_string()).collect::>() [INFO] [stdout] 114 + ); [INFO] [stdout] 115 + panic!("Argument not found"); [INFO] [stdout] 116 + } [INFO] [stdout] 117 + } [INFO] [stdout] 118 + } [INFO] [stdout] 119 + let mut inlineVarCopier = [INFO] [stdout] 120 + VariableInlineCopier::new(bodyBuilder.getVariableAllocator(), argMap); [INFO] [stdout] 121 + let calleeBody = calleeBody.copy(&mut inlineVarCopier); [INFO] [stdout] 122 + let mut blockIdMap = BTreeMap::new(); [INFO] [stdout] 123 + //println!("Block ids in callee:"); [INFO] [stdout] 124 + //println!("{:?}", calleeBody.getAllBlockIds()); [INFO] [stdout] 125 + for (blockId, _) in &calleeBody.blocks { [INFO] [stdout] 126 + let newBlock = bodyBuilder.createBlock(); [INFO] [stdout] 127 + //println!(" mapping block {} => {}", blockId, newBlock.getBlockId()); [INFO] [stdout] 128 + blockIdMap.insert(blockId, newBlock.getBlockId()); [INFO] [stdout] 129 + } [INFO] [stdout] 130 + let entryBlockId = blockIdMap [INFO] [stdout] 131 + .get(&BlockId::first()) [INFO] [stdout] 132 + .expect("Entry block not found") [INFO] [stdout] 133 + .clone(); [INFO] [stdout] 134 + let jumpVar = bodyBuilder [INFO] [stdout] 135 + .createTempValueWithType(instruction.location.clone(), Type::getNeverType()); [INFO] [stdout] 136 + builder.replaceInstruction( [INFO] [stdout] 137 + InstructionKind::Jump(jumpVar, entryBlockId), [INFO] [stdout] 138 + instruction.location.clone(), [INFO] [stdout] 139 + ); [INFO] [stdout] 140 + for (_, block) in &calleeBody.blocks { [INFO] [stdout] 141 + let newBlockId = *blockIdMap.get(&block.getId()).unwrap(); [INFO] [stdout] 142 + let mut newBlockBuilder = bodyBuilder.block(newBlockId); [INFO] [stdout] 143 + let inner = block.getInner(); [INFO] [stdout] 144 + let b = inner.borrow(); [INFO] [stdout] 145 + for instruction in &b.instructions { [INFO] [stdout] 146 + match &instruction.kind { [INFO] [stdout] 147 + InstructionKind::Return(_, arg) => { [INFO] [stdout] 148 + newBlockBuilder.addAssign( [INFO] [stdout] 149 + dest.clone(), [INFO] [stdout] 150 + arg.clone(), [INFO] [stdout] 151 + instruction.location.clone(), [INFO] [stdout] 152 + ); [INFO] [stdout] 153 + newBlockBuilder.addJump(afterCallBlockId, instruction.location.clone()); [INFO] [stdout] 154 + } [INFO] [stdout] 155 + InstructionKind::Jump(_, blockId) => { [INFO] [stdout] 156 + let targetBlockId = *blockIdMap.get(blockId).unwrap(); [INFO] [stdout] 157 + newBlockBuilder.addJump(targetBlockId, instruction.location.clone()); [INFO] [stdout] 158 + } [INFO] [stdout] 159 + InstructionKind::EnumSwitch(var, cases) => { [INFO] [stdout] 160 + let mut newCases = Vec::new(); [INFO] [stdout] 161 + for oldCase in cases { [INFO] [stdout] 162 + let targetBlockId = *blockIdMap.get(&oldCase.branch).unwrap(); [INFO] [stdout] 163 + let newCase = EnumCase { [INFO] [stdout] 164 + index: oldCase.index.clone(), [INFO] [stdout] 165 + branch: targetBlockId, [INFO] [stdout] 166 + }; [INFO] [stdout] 167 + newCases.push(newCase); [INFO] [stdout] 168 + } [INFO] [stdout] 169 + newBlockBuilder.addInstruction( [INFO] [stdout] 170 + InstructionKind::EnumSwitch(var.clone(), newCases), [INFO] [stdout] 171 + instruction.location.clone(), [INFO] [stdout] 172 + ); [INFO] [stdout] 173 + } [INFO] [stdout] 174 + InstructionKind::IntegerSwitch(variable, integer_cases) => { [INFO] [stdout] 175 + let mut newCases = Vec::new(); [INFO] [stdout] 176 + for oldCase in integer_cases { [INFO] [stdout] 177 + let targetBlockId = *blockIdMap.get(&oldCase.branch).unwrap(); [INFO] [stdout] 178 + let newCase = IntegerCase { [INFO] [stdout] 179 + value: oldCase.value.clone(), [INFO] [stdout] 180 + branch: targetBlockId, [INFO] [stdout] 181 + }; [INFO] [stdout] 182 + newCases.push(newCase); [INFO] [stdout] 183 + } [INFO] [stdout] 184 + newBlockBuilder.addInstruction( [INFO] [stdout] 185 + InstructionKind::IntegerSwitch(variable.clone(), newCases), [INFO] [stdout] 186 + instruction.location.clone(), [INFO] [stdout] 187 + ); [INFO] [stdout] 188 + } [INFO] [stdout] 189 + kind => { [INFO] [stdout] 190 + newBlockBuilder [INFO] [stdout] 191 + .addInstruction(kind.clone(), instruction.location.clone()); [INFO] [stdout] 192 + } [INFO] [stdout] 193 + } [INFO] [stdout] 194 + } [INFO] [stdout] 195 + } [INFO] [stdout] 196 + return true; [INFO] [stdout] 197 + } else { [INFO] [stdout] 198 + //println!("Not inlining function: {} (not inline)", info.name); [INFO] [stdout] 199 + } [INFO] [stdout] 200 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's keys [INFO] [stdout] --> compiler/src/siko/backend/simplification/Inliner.rs:126:53 [INFO] [stdout] | [INFO] [stdout] 126 | ... for (blockId, _) in &calleeBody.blocks { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 126 - for (blockId, _) in &calleeBody.blocks { [INFO] [stdout] 126 + for blockId in calleeBody.blocks.keys() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/simplification/Inliner.rs:131:52 [INFO] [stdout] | [INFO] [stdout] 131 | ... let entryBlockId = blockIdMap [INFO] [stdout] | __________________________________________^ [INFO] [stdout] 132 | | ... .get(&BlockId::first()) [INFO] [stdout] 133 | | ... .expect("Entry block not found") [INFO] [stdout] 134 | | ... .clone(); [INFO] [stdout] | |__________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] help: try dereferencing it [INFO] [stdout] | [INFO] [stdout] 131 ~ let entryBlockId = *blockIdMap [INFO] [stdout] 132 + .get(&BlockId::first()) [INFO] [stdout] 133 ~ .expect("Entry block not found"); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/simplification/Inliner.rs:141:51 [INFO] [stdout] | [INFO] [stdout] 141 | ... for (_, block) in &calleeBody.blocks { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 141 - for (_, block) in &calleeBody.blocks { [INFO] [stdout] 141 + for block in calleeBody.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Option` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/simplification/Inliner.rs:165:64 [INFO] [stdout] | [INFO] [stdout] 165 | ... index: oldCase.index.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `oldCase.index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/backend/simplification/JumpSimplifier.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | return simplifier.process(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 7 - return simplifier.process(); [INFO] [stdout] 7 + simplifier.process() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/simplification/JumpSimplifier.rs:6:46 [INFO] [stdout] | [INFO] [stdout] 6 | let mut simplifier = JumpSimplifier::new(&f); [INFO] [stdout] | ^^ help: change this to: `f` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/JumpSimplifier.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | / if self.function.body.is_none() { [INFO] [stdout] 37 | | return None; [INFO] [stdout] 38 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's keys [INFO] [stdout] --> compiler/src/siko/backend/simplification/JumpSimplifier.rs:61:29 [INFO] [stdout] | [INFO] [stdout] 61 | for (blockId, _) in &self.jumps { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 61 - for (blockId, _) in &self.jumps { [INFO] [stdout] 61 + for blockId in self.jumps.keys() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/JumpSimplifier.rs:69:13 [INFO] [stdout] | [INFO] [stdout] 69 | / loop { [INFO] [stdout] 70 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 71 | | if let InstructionKind::Jump(result, target) = &instruction.kind { [INFO] [stdout] 72 | | if let Some(newTarget) = self.replace(*target) { [INFO] [stdout] ... | [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/simplification/Simplifier.rs:25:60 [INFO] [stdout] | [INFO] [stdout] 25 | let mut simplifiedFunc = program.functions.get(&fnName).unwrap().clone(); [INFO] [stdout] | ^^^^^^^ help: change this to: `fnName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/backend/simplification/SwitchSimplifier.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | return simplifier.process(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 7 - return simplifier.process(); [INFO] [stdout] 7 + simplifier.process() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/simplification/SwitchSimplifier.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | let mut simplifier = SwitchSimplifier::new(&f); [INFO] [stdout] | ^^ help: change this to: `f` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/SwitchSimplifier.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | / if self.function.body.is_none() { [INFO] [stdout] 21 | | return None; [INFO] [stdout] 22 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/SwitchSimplifier.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | / loop { [INFO] [stdout] 34 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 35 | | if let InstructionKind::EnumSwitch(_, cases) = &instruction.kind { [INFO] [stdout] ... | [INFO] [stdout] 71 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/simplification/SwitchSimplifier.rs:46:71 [INFO] [stdout] | [INFO] [stdout] 46 | ... let kind = InstructionKind::Jump(jumpVar, targetBlocks.iter().next().unwrap().clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*targetBlocks.iter().next().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/simplification/SwitchSimplifier.rs:62:71 [INFO] [stdout] | [INFO] [stdout] 62 | ... let kind = InstructionKind::Jump(jumpVar, targetBlocks.iter().next().unwrap().clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*targetBlocks.iter().next().unwrap()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | / if self.function.body.is_none() { [INFO] [stdout] 51 | | return None; // No body to evaluate [INFO] [stdout] 52 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:208:9 [INFO] [stdout] | [INFO] [stdout] 208 | / loop { [INFO] [stdout] 209 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 210 | | match instruction.kind { [INFO] [stdout] 211 | | InstructionKind::DeclareVar(_, _) => {} [INFO] [stdout] ... | [INFO] [stdout] 250 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:237:34 [INFO] [stdout] | [INFO] [stdout] 237 | ... .or_insert_with(BTreeSet::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:258:26 [INFO] [stdout] | [INFO] [stdout] 258 | .or_insert_with(BTreeSet::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (10/7) [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:270:5 [INFO] [stdout] | [INFO] [stdout] 270 | / fn process_propagation_block( [INFO] [stdout] 271 | | &mut self, [INFO] [stdout] 272 | | blockId: BlockId, [INFO] [stdout] 273 | | summary: &BlockSummary, [INFO] [stdout] ... | [INFO] [stdout] 280 | | traceEnabled: bool, [INFO] [stdout] 281 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:282:45 [INFO] [stdout] | [INFO] [stdout] 282 | let entry = incoming.entry(blockId).or_insert_with(BTreeMap::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:291:30 [INFO] [stdout] | [INFO] [stdout] 291 | ... .or_insert_with(BTreeSet::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:300:53 [INFO] [stdout] | [INFO] [stdout] 300 | let entrySet = entry.entry(var.clone()).or_insert_with(BTreeSet::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:349:18 [INFO] [stdout] | [INFO] [stdout] 349 | .or_insert_with(BTreeSet::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:353:53 [INFO] [stdout] | [INFO] [stdout] 353 | let outgoingEntry = outgoing.entry(blockId).or_insert_with(BTreeMap::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedAssignmentEliminator.rs:362:21 [INFO] [stdout] | [INFO] [stdout] 362 | / if groupSet.contains(succ) { [INFO] [stdout] 363 | | if queued.insert(*succ) { [INFO] [stdout] 364 | | if traceEnabled { [INFO] [stdout] 365 | | println!("[UAE] queued block {}", succ); [INFO] [stdout] ... | [INFO] [stdout] 369 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 362 ~ if groupSet.contains(succ) [INFO] [stdout] 363 ~ && queued.insert(*succ) { [INFO] [stdout] 364 | if traceEnabled { [INFO] [stdout] ... [INFO] [stdout] 367 | queue.push_back(*succ); [INFO] [stdout] 368 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedVariableEliminator.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | / if self.function.body.is_none() { [INFO] [stdout] 33 | | return None; [INFO] [stdout] 34 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedVariableEliminator.rs:65:13 [INFO] [stdout] | [INFO] [stdout] 65 | / if v.isTemp() { [INFO] [stdout] 66 | | if *count == 0 { [INFO] [stdout] 67 | | //println!("Unused variable: {}", v); [INFO] [stdout] 68 | | needsRemoval = true; [INFO] [stdout] 69 | | } [INFO] [stdout] 70 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 65 ~ if v.isTemp() [INFO] [stdout] 66 ~ && *count == 0 { [INFO] [stdout] 67 | //println!("Unused variable: {}", v); [INFO] [stdout] 68 | needsRemoval = true; [INFO] [stdout] 69 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/UnusedVariableEliminator.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | / loop { [INFO] [stdout] 85 | | if let Some(i) = builder.getInstruction() { [INFO] [stdout] 86 | | if let Some(v) = i.kind.getResultVar() { [INFO] [stdout] 87 | | if v.isTemp() { [INFO] [stdout] ... | [INFO] [stdout] 102 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(i) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/backend/simplification/VarSimplifier.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | return current; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 42 - return current; [INFO] [stdout] 42 + current [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this block may be rewritten with the `?` operator [INFO] [stdout] --> compiler/src/siko/backend/simplification/VarSimplifier.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | / if self.function.body.is_none() { [INFO] [stdout] 55 | | return None; [INFO] [stdout] 56 | | } [INFO] [stdout] | |_________^ help: replace it with: `self.function.body.as_ref()?;` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#question_mark [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/VarSimplifier.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | / loop { [INFO] [stdout] 67 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 68 | | if let InstructionKind::DeclareVar(_, _) = &instruction.kind { [INFO] [stdout] 69 | | builder.step(); [INFO] [stdout] ... | [INFO] [stdout] 90 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/backend/simplification/VarSimplifier.rs:80:21 [INFO] [stdout] | [INFO] [stdout] 80 | / match instruction.kind { [INFO] [stdout] 81 | | InstructionKind::Assign(dest, src) => { [INFO] [stdout] 82 | | self.assignments.insert(src.name(), dest.clone()); [INFO] [stdout] ... | [INFO] [stdout] 85 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 80 ~ if let InstructionKind::Assign(dest, src) = instruction.kind { [INFO] [stdout] 81 + self.assignments.insert(src.name(), dest.clone()); [INFO] [stdout] 82 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/simplification/VarSimplifier.rs:125:13 [INFO] [stdout] | [INFO] [stdout] 125 | / loop { [INFO] [stdout] 126 | | if let Some(instruction) = builder.getInstruction() { [INFO] [stdout] 127 | | if let InstructionKind::DeclareVar(var, _) = &instruction.kind { [INFO] [stdout] 128 | | if self.simplifiedVars.contains_key(&var.name()) { [INFO] [stdout] ... | [INFO] [stdout] 157 | | } [INFO] [stdout] | |_____________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/simplification/VarSimplifier.rs:139:52 [INFO] [stdout] | [INFO] [stdout] 139 | ... kind = kind.replaceVar(&var, dest.useVar()); [INFO] [stdout] | ^^^^ help: change this to: `var` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `Option::map` [INFO] [stdout] --> compiler/src/siko/hir/Apply.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | / match self { [INFO] [stdout] 64 | | Some(t) => Some(t.apply(sub)), [INFO] [stdout] 65 | | None => None, [INFO] [stdout] 66 | | } [INFO] [stdout] | |_________^ help: try: `self.map(|t| t.apply(sub))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:37:42 [INFO] [stdout] | [INFO] [stdout] 37 | reverse.entry(block.clone()).or_insert_with(BTreeSet::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:37:27 [INFO] [stdout] | [INFO] [stdout] 37 | reverse.entry(block.clone()).or_insert_with(BTreeSet::new); [INFO] [stdout] | ^^^^^^^^^^^^^ help: try dereferencing it: `*block` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:41:43 [INFO] [stdout] | [INFO] [stdout] 41 | reverse.entry(to.clone()).or_insert_with(BTreeSet::new).insert(from.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:41:31 [INFO] [stdout] | [INFO] [stdout] 41 | reverse.entry(to.clone()).or_insert_with(BTreeSet::new).insert(from.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*to` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:41:80 [INFO] [stdout] | [INFO] [stdout] 41 | reverse.entry(to.clone()).or_insert_with(BTreeSet::new).insert(from.clone()); [INFO] [stdout] | ^^^^^^^^^^^^ help: try dereferencing it: `*from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's keys [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:76:30 [INFO] [stdout] | [INFO] [stdout] 76 | for (block_id, _) in &self.inverseDeps { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 76 - for (block_id, _) in &self.inverseDeps { [INFO] [stdout] 76 + for block_id in self.inverseDeps.keys() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:78:34 [INFO] [stdout] | [INFO] [stdout] 78 | let mut queue = vec![block_id.clone()]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*block_id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:81:38 [INFO] [stdout] | [INFO] [stdout] 81 | reachable.insert(current.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try removing the `clone` call: `current` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:87:36 [INFO] [stdout] | [INFO] [stdout] 87 | queue.push(neighbor.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*neighbor` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:93:24 [INFO] [stdout] | [INFO] [stdout] 93 | map.insert(block_id.clone(), reachable); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*block_id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:105:34 [INFO] [stdout] | [INFO] [stdout] 105 | group_map.insert(item.clone(), index); [INFO] [stdout] | ^^^^^^^^^^^^ help: try dereferencing it: `*item` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:112:50 [INFO] [stdout] | [INFO] [stdout] 112 | let entry = group_deps.entry(*group).or_insert_with(BTreeSet::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:148:53 [INFO] [stdout] | [INFO] [stdout] 148 | ... reachable_blocks.insert(item.clone()); [INFO] [stdout] | ^^^^^^^^^^^^ help: try dereferencing it: `*item` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:152:65 [INFO] [stdout] | [INFO] [stdout] 152 | ... reachable_blocks.insert(neighbor_item.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*neighbor_item` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:160:24 [INFO] [stdout] | [INFO] [stdout] 160 | map.insert(block_id.clone(), reachable_blocks); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*block_id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:182:43 [INFO] [stdout] | [INFO] [stdout] 182 | allDeps.entry(id.clone()).or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:182:31 [INFO] [stdout] | [INFO] [stdout] 182 | allDeps.entry(id.clone()).or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:183:47 [INFO] [stdout] | [INFO] [stdout] 183 | inverseDeps.entry(id.clone()).or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:183:35 [INFO] [stdout] | [INFO] [stdout] 183 | inverseDeps.entry(id.clone()).or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:189:59 [INFO] [stdout] | [INFO] [stdout] 189 | ... allDeps.entry(target.clone()).or_insert_with(Vec::new).push(id.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:189:43 [INFO] [stdout] | [INFO] [stdout] 189 | ... allDeps.entry(target.clone()).or_insert_with(Vec::new).push(id.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try dereferencing it: `*target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:189:89 [INFO] [stdout] | [INFO] [stdout] 189 | ... allDeps.entry(target.clone()).or_insert_with(Vec::new).push(id.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:192:34 [INFO] [stdout] | [INFO] [stdout] 192 | ... .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:191:40 [INFO] [stdout] | [INFO] [stdout] 191 | ... .entry(id.clone()) [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:193:39 [INFO] [stdout] | [INFO] [stdout] 193 | ... .push(target.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try dereferencing it: `*target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:199:38 [INFO] [stdout] | [INFO] [stdout] 199 | ... .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:198:44 [INFO] [stdout] | [INFO] [stdout] 198 | ... .entry(c.branch.clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `c.branch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:200:43 [INFO] [stdout] | [INFO] [stdout] 200 | ... .push(id.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:203:38 [INFO] [stdout] | [INFO] [stdout] 203 | ... .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:202:44 [INFO] [stdout] | [INFO] [stdout] 202 | ... .entry(id.clone()) [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:204:43 [INFO] [stdout] | [INFO] [stdout] 204 | ... .push(c.branch.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `c.branch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:211:38 [INFO] [stdout] | [INFO] [stdout] 211 | ... .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:210:44 [INFO] [stdout] | [INFO] [stdout] 210 | ... .entry(c.branch.clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `c.branch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:212:43 [INFO] [stdout] | [INFO] [stdout] 212 | ... .push(id.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:215:38 [INFO] [stdout] | [INFO] [stdout] 215 | ... .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:214:44 [INFO] [stdout] | [INFO] [stdout] 214 | ... .entry(id.clone()) [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:216:43 [INFO] [stdout] | [INFO] [stdout] 216 | ... .push(c.branch.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `c.branch` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:222:34 [INFO] [stdout] | [INFO] [stdout] 222 | ... .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:221:40 [INFO] [stdout] | [INFO] [stdout] 221 | ... .entry(info.blockId.clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `info.blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:223:39 [INFO] [stdout] | [INFO] [stdout] 223 | ... .push(id.clone()); [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:226:34 [INFO] [stdout] | [INFO] [stdout] 226 | ... .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:225:40 [INFO] [stdout] | [INFO] [stdout] 225 | ... .entry(id.clone()) [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/BlockGroupBuilder.rs:227:39 [INFO] [stdout] | [INFO] [stdout] 227 | ... .push(info.blockId.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `info.blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/Body.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | &self.blocks.get(&id).expect("Block not found") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `self.blocks.get(&id).expect("Block not found")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/Body.rs:48:27 [INFO] [stdout] | [INFO] [stdout] 48 | for (_, block) in &self.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 48 - for (_, block) in &self.blocks { [INFO] [stdout] 48 + for block in self.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's keys [INFO] [stdout] --> compiler/src/siko/hir/Body.rs:62:24 [INFO] [stdout] | [INFO] [stdout] 62 | for (id, _) in &self.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 62 - for (id, _) in &self.blocks { [INFO] [stdout] 62 + for id in self.blocks.keys() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/Body.rs:105:27 [INFO] [stdout] | [INFO] [stdout] 105 | for (_, block) in &self.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 105 - for (_, block) in &self.blocks { [INFO] [stdout] 105 + for block in self.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | return irBlock.add(instruction, location, implicit); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 89 - return irBlock.add(instruction, location, implicit); [INFO] [stdout] 89 + irBlock.add(instruction, location, implicit) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | return irBlock.insert(index, instruction, location, implicit); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 101 - return irBlock.insert(index, instruction, location, implicit); [INFO] [stdout] 101 + irBlock.insert(index, instruction, location, implicit) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:113:9 [INFO] [stdout] | [INFO] [stdout] 113 | return irBlock.replace(index, instruction, location, implicit); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 113 - return irBlock.replace(index, instruction, location, implicit); [INFO] [stdout] 113 + irBlock.replace(index, instruction, location, implicit) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> compiler/src/siko/hir/BodyBuilder.rs:130:9 [INFO] [stdout] | [INFO] [stdout] 129 | let v = Variable::new(VariableName::Local(name.to_string(), valueId), location); [INFO] [stdout] | -------------------------------------------------------------------------------- unnecessary `let` binding [INFO] [stdout] 130 | v [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 129 ~ [INFO] [stdout] 130 ~ Variable::new(VariableName::Local(name.to_string(), valueId), location) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/Copy.rs:189:79 [INFO] [stdout] | [INFO] [stdout] 189 | InstructionKind::Jump(v, b) => InstructionKind::Jump(v.copy(map), b.clone()), [INFO] [stdout] | ^^^^^^^^^ help: try dereferencing it: `*b` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/Copy.rs:218:48 [INFO] [stdout] | [INFO] [stdout] 218 | InstructionKind::ClosureReturn(block_id.clone(), variable.copy(map), return_value.copy(map)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*block_id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | / match self { [INFO] [stdout] 121 | | FunctionKind::Extern(ExternKind::C(_)) => true, [INFO] [stdout] 122 | | _ => false, [INFO] [stdout] 123 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] = note: `#[warn(clippy::match_like_matches_macro)]` on by default [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 120 - match self { [INFO] [stdout] 121 - FunctionKind::Extern(ExternKind::C(_)) => true, [INFO] [stdout] 122 - _ => false, [INFO] [stdout] 123 - } [INFO] [stdout] 120 + matches!(self, FunctionKind::Extern(ExternKind::C(_))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / match self { [INFO] [stdout] 135 | | FunctionKind::VariantCtor(_) | FunctionKind::StructCtor => true, [INFO] [stdout] 136 | | _ => false, [INFO] [stdout] 137 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 134 - match self { [INFO] [stdout] 135 - FunctionKind::VariantCtor(_) | FunctionKind::StructCtor => true, [INFO] [stdout] 136 - _ => false, [INFO] [stdout] 137 - } [INFO] [stdout] 134 + matches!(self, FunctionKind::VariantCtor(_) | FunctionKind::StructCtor) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | / match self { [INFO] [stdout] 142 | | FunctionKind::TraitMemberDecl(_) | FunctionKind::TraitMemberDefinition(_) => true, [INFO] [stdout] 143 | | _ => false, [INFO] [stdout] 144 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 141 - match self { [INFO] [stdout] 142 - FunctionKind::TraitMemberDecl(_) | FunctionKind::TraitMemberDefinition(_) => true, [INFO] [stdout] 143 - _ => false, [INFO] [stdout] 144 - } [INFO] [stdout] 141 + matches!(self, FunctionKind::TraitMemberDecl(_) | FunctionKind::TraitMemberDefinition(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | / match self { [INFO] [stdout] 156 | | FunctionKind::Extern(_) => true, [INFO] [stdout] 157 | | _ => false, [INFO] [stdout] 158 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 155 - match self { [INFO] [stdout] 156 - FunctionKind::Extern(_) => true, [INFO] [stdout] 157 - _ => false, [INFO] [stdout] 158 - } [INFO] [stdout] 155 + matches!(self, FunctionKind::Extern(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | / match self { [INFO] [stdout] 171 | | ResultKind::Coroutine(_) => true, [INFO] [stdout] 172 | | _ => false, [INFO] [stdout] 173 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 170 - match self { [INFO] [stdout] 171 - ResultKind::Coroutine(_) => true, [INFO] [stdout] 172 - _ => false, [INFO] [stdout] 173 - } [INFO] [stdout] 170 + matches!(self, ResultKind::Coroutine(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | / match self.kind { [INFO] [stdout] 234 | | FunctionKind::VariantCtor(_) | FunctionKind::StructCtor => true, [INFO] [stdout] 235 | | _ => false, [INFO] [stdout] 236 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 233 - match self.kind { [INFO] [stdout] 234 - FunctionKind::VariantCtor(_) | FunctionKind::StructCtor => true, [INFO] [stdout] 235 - _ => false, [INFO] [stdout] 236 - } [INFO] [stdout] 233 + matches!(self.kind, FunctionKind::VariantCtor(_) | FunctionKind::StructCtor) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:261:13 [INFO] [stdout] | [INFO] [stdout] 261 | &body.blocks.get(&BlockId::first()).expect("Block not found") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `body.blocks.get(&BlockId::first()).expect("Block not found")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this can be `std::io::Error::other(_)` [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:293:13 [INFO] [stdout] | [INFO] [stdout] 293 | std::io::Error::new(std::io::ErrorKind::Other, "Failed to create function file") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#io_other_error [INFO] [stdout] = note: `#[warn(clippy::io_other_error)]` on by default [INFO] [stdout] help: use `std::io::Error::other` [INFO] [stdout] | [INFO] [stdout] 293 - std::io::Error::new(std::io::ErrorKind::Other, "Failed to create function file") [INFO] [stdout] 293 + std::io::Error::other("Failed to create function file") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this can be `std::io::Error::other(_)` [INFO] [stdout] --> compiler/src/siko/hir/Function.rs:297:13 [INFO] [stdout] | [INFO] [stdout] 297 | std::io::Error::new(std::io::ErrorKind::Other, "Failed to write function name") [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#io_other_error [INFO] [stdout] help: use `std::io::Error::other` [INFO] [stdout] | [INFO] [stdout] 297 - std::io::Error::new(std::io::ErrorKind::Other, "Failed to write function name") [INFO] [stdout] 297 + std::io::Error::other("Failed to write function name") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateTypes` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/hir/FunctionCallResolver.rs:109:36 [INFO] [stdout] | [INFO] [stdout] 109 | let sub = instantiateTypes(&mut self.allocator, &types); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 109 - let sub = instantiateTypes(&mut self.allocator, &types); [INFO] [stdout] 109 + let sub = instantiateTypes(&self.allocator, &types); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> compiler/src/siko/hir/FunctionCallResolver.rs:151:12 [INFO] [stdout] | [INFO] [stdout] 151 | if expectedArgs.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!expectedArgs.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> compiler/src/siko/hir/FunctionCallResolver.rs:170:12 [INFO] [stdout] | [INFO] [stdout] 170 | if neededConstraints.len() > 0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!neededConstraints.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (14/7) [INFO] [stdout] --> compiler/src/siko/hir/FunctionCallResolver.rs:220:5 [INFO] [stdout] | [INFO] [stdout] 220 | / fn checkConstraint( [INFO] [stdout] 221 | | &mut self, [INFO] [stdout] 222 | | f: &Function, [INFO] [stdout] 223 | | resultVar: &Variable, [INFO] [stdout] ... | [INFO] [stdout] 234 | | traceEnabled: bool, [INFO] [stdout] 235 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateType` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/hir/FunctionCallResolver.rs:368:54 [INFO] [stdout] | [INFO] [stdout] 368 | let memberType = instantiateType(&mut self.allocator, m.memberType.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 368 - let memberType = instantiateType(&mut self.allocator, m.memberType.clone()); [INFO] [stdout] 368 + let memberType = instantiateType(&self.allocator, m.memberType.clone()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let mut allDeps: BTreeMap> = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let mut isDirectlyRecursive: BTreeSet = BTreeSet::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:37:23 [INFO] [stdout] | [INFO] [stdout] 37 | for (_, f) in &self.program.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 37 - for (_, f) in &self.program.functions { [INFO] [stdout] 37 + for f in self.program.functions.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut groupMap = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:65:27 [INFO] [stdout] | [INFO] [stdout] 65 | for (_, block) in &body.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 65 - for (_, block) in &body.blocks { [INFO] [stdout] 65 + for block in body.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:69:17 [INFO] [stdout] | [INFO] [stdout] 69 | / match &instr.kind { [INFO] [stdout] 70 | | InstructionKind::FunctionCall(_, info) => { [INFO] [stdout] 71 | | if deps.contains(&info.name) { [INFO] [stdout] 72 | | continue; [INFO] [stdout] ... | [INFO] [stdout] 76 | | _ => {} [INFO] [stdout] 77 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 69 ~ if let InstructionKind::FunctionCall(_, info) = &instr.kind { [INFO] [stdout] 70 + if deps.contains(&info.name) { [INFO] [stdout] 71 + continue; [INFO] [stdout] 72 + } [INFO] [stdout] 73 + deps.push(info.name.clone()); [INFO] [stdout] 74 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:85:18 [INFO] [stdout] | [INFO] [stdout] 85 | allDeps: &BTreeMap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:86:19 [INFO] [stdout] | [INFO] [stdout] 86 | groupMap: &BTreeMap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:96:18 [INFO] [stdout] | [INFO] [stdout] 96 | allDeps: &BTreeMap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/FunctionGroupBuilder.rs:98:19 [INFO] [stdout] | [INFO] [stdout] 98 | groupMap: &BTreeMap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Graph.rs:178:13 [INFO] [stdout] | [INFO] [stdout] 178 | / match instruction { [INFO] [stdout] 179 | | InstructionKind::Jump(_, _) [INFO] [stdout] 180 | | | InstructionKind::EnumSwitch(_, _) [INFO] [stdout] 181 | | | InstructionKind::IntegerSwitch(_, _) [INFO] [stdout] ... | [INFO] [stdout] 185 | | _ => false, [INFO] [stdout] 186 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 178 ~ matches!(instruction, InstructionKind::Jump(_, _) [INFO] [stdout] 179 + | InstructionKind::EnumSwitch(_, _) [INFO] [stdout] 180 + | InstructionKind::IntegerSwitch(_, _) [INFO] [stdout] 181 + | InstructionKind::Return(_, _) [INFO] [stdout] 182 + | InstructionKind::BlockStart(_) [INFO] [stdout] 183 + | InstructionKind::BlockEnd(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: large size difference between variants [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | / pub enum InstanceSearchResult { [INFO] [stdout] 24 | | Found(Instance), [INFO] [stdout] | | --------------- the largest variant contains at least 352 bytes [INFO] [stdout] 25 | | Ambiguous(Vec), [INFO] [stdout] | | ----------------------------- the second-largest variant contains at least 24 bytes [INFO] [stdout] 26 | | NotFound, [INFO] [stdout] 27 | | } [INFO] [stdout] | |_^ the entire enum is at least 352 bytes [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stdout] = note: `#[warn(clippy::large_enum_variant)]` on by default [INFO] [stdout] help: consider boxing the large fields or introducing indirection in some other way to reduce the total size of the enum [INFO] [stdout] | [INFO] [stdout] 24 - Found(Instance), [INFO] [stdout] 24 + Found(Box), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | / match self { [INFO] [stdout] 31 | | InstanceSearchResult::Found(_) => true, [INFO] [stdout] 32 | | _ => false, [INFO] [stdout] 33 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 30 - match self { [INFO] [stdout] 31 - InstanceSearchResult::Found(_) => true, [INFO] [stdout] 32 - _ => false, [INFO] [stdout] 33 - } [INFO] [stdout] 30 + matches!(self, InstanceSearchResult::Found(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | let mut localInstances = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let mut importedInstances = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/Compiler.rs:43:46 [INFO] [stdout] | [INFO] [stdout] 43 | let mut resolver = Resolver::new(&ctx, name_resolution_runner.clone()); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:106:24 [INFO] [stdout] | [INFO] [stdout] 106 | if !unify( [INFO] [stdout] | ________________________^ [INFO] [stdout] 107 | | &mut sub, [INFO] [stdout] 108 | | implArg.clone(), [INFO] [stdout] 109 | | cArg.clone(), [INFO] [stdout] ... | [INFO] [stdout] 112 | | .is_ok() [INFO] [stdout] | |____________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 106 ~ if unify( [INFO] [stdout] 107 + &mut sub, [INFO] [stdout] 108 + implArg.clone(), [INFO] [stdout] 109 + cArg.clone(), [INFO] [stdout] 110 + Config::default().voidSeparate(), [INFO] [stdout] 111 + ).is_err() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:96:76 [INFO] [stdout] | [INFO] [stdout] 96 | let mut instanceDef = instantiateInstance(&self.allocator, &instanceDef); [INFO] [stdout] | ^^^^^^^^^^^^ help: change this to: `instanceDef` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/Compiler.rs:53:50 [INFO] [stdout] | [INFO] [stdout] 53 | let mut parser = Parser::new(&ctx, fileId, f.to_string()); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/Compiler.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | / match std::env::var("SIKO_STD_PATH") { [INFO] [stdout] 74 | | Ok(val) => { [INFO] [stdout] 75 | | stdLibPath = val.into(); [INFO] [stdout] ... | [INFO] [stdout] 78 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] = note: `#[warn(clippy::single_match)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 73 ~ if let Ok(val) = std::env::var("SIKO_STD_PATH") { [INFO] [stdout] 74 + stdLibPath = val.into(); [INFO] [stdout] 75 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/Compiler.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | / match std::env::var("SIKO_TARGET_OS") { [INFO] [stdout] 80 | | Ok(val) => { [INFO] [stdout] 81 | | self.config.targetOS = match val.as_str() { [INFO] [stdout] 82 | | "linux" => TargetOS::Linux, [INFO] [stdout] ... | [INFO] [stdout] 88 | | Err(_) => {} [INFO] [stdout] 89 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 79 ~ if let Ok(val) = std::env::var("SIKO_TARGET_OS") { [INFO] [stdout] 80 + self.config.targetOS = match val.as_str() { [INFO] [stdout] 81 + "linux" => TargetOS::Linux, [INFO] [stdout] 82 + "macos" => TargetOS::MacOS, [INFO] [stdout] 83 + "windows" => TargetOS::Windows, [INFO] [stdout] 84 + _ => fatalError("Unknown target OS"), [INFO] [stdout] 85 + }; [INFO] [stdout] 86 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:174:35 [INFO] [stdout] | [INFO] [stdout] 174 | for (_, instances) in &self.localInstances { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 174 - for (_, instances) in &self.localInstances { [INFO] [stdout] 174 + for instances in self.localInstances.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:179:35 [INFO] [stdout] | [INFO] [stdout] 179 | for (_, instances) in &self.importedInstances { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 179 - for (_, instances) in &self.importedInstances { [INFO] [stdout] 179 + for instances in self.importedInstances.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> compiler/src/Compiler.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let stdArch; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `stdArch` here and remove the assignments from the `match` arms [INFO] [stdout] | [INFO] [stdout] 207 ~ [INFO] [stdout] 208 ~ let stdArch = match self.config.targetOS { [INFO] [stdout] 209 | TargetOS::Linux => { [INFO] [stdout] 210 ~ stdLibPath.join("Arch/Linux") [INFO] [stdout] 211 | } [INFO] [stdout] 212 | TargetOS::MacOS => { [INFO] [stdout] 213 ~ stdLibPath.join("Arch/Darwin") [INFO] [stdout] 214 | } [INFO] [stdout] 215 | TargetOS::Windows => { [INFO] [stdout] 216 ~ stdLibPath.join("Arch/Windows") [INFO] [stdout] 217 | } [INFO] [stdout] 218 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:240:62 [INFO] [stdout] | [INFO] [stdout] 240 | match self.findInstanceForConstraint(constraint, &localCandidates, level, runner.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: change this to: `localCandidates` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:247:62 [INFO] [stdout] | [INFO] [stdout] 247 | match self.findInstanceForConstraint(constraint, &importedCandidates, level, runner.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: change this to: `importedCandidates` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/InstanceResolver.rs:265:30 [INFO] [stdout] | [INFO] [stdout] 265 | .getInstance(&instanceName) [INFO] [stdout] | ^^^^^^^^^^^^^ help: change this to: `instanceName` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/PackageFinder.rs:96:45 [INFO] [stdout] | [INFO] [stdout] 96 | .extend(rootPackage.addPath(&std::path::Path::new(&path), local)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `std::path::Path::new(&path)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/Backend.rs:26:35 [INFO] [stdout] | [INFO] [stdout] 26 | .run(|| eliminateDeadCode(&ctx, program)); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/Backend.rs:35:28 [INFO] [stdout] | [INFO] [stdout] 35 | .run(|| checkDrops(&ctx, program, dropCheckRunner)); [INFO] [stdout] | ^^^^ help: change this to: `ctx` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> compiler/src/siko/backend/BuilderUtils.rs:34:80 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn generateVariant(&mut self, variantName: &QualifiedName, fieldTypes: &Vec, variantIndex: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 34 ~ pub fn generateVariant(&mut self, variantName: &QualifiedName, fieldTypes: &[Type], variantIndex: usize) { [INFO] [stdout] 35 | let variant = Variant { [INFO] [stdout] 36 | name: variantName.clone(), [INFO] [stdout] 37 ~ items: fieldTypes.to_owned(), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:43:21 [INFO] [stdout] | [INFO] [stdout] 43 | / if !self.visited.contains(&InstructionRef { [INFO] [stdout] 44 | | blockId: blockId.clone(), [INFO] [stdout] 45 | | instructionId: index as u32, [INFO] [stdout] 46 | | }) { [INFO] [stdout] ... | [INFO] [stdout] 53 | | } [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 46 ~ }) [INFO] [stdout] 47 ~ && !instruction.implicit { [INFO] [stdout] 48 | println!("unreachable code {}", instruction); [INFO] [stdout] ... [INFO] [stdout] 51 | r.print(); [INFO] [stdout] 52 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:44:34 [INFO] [stdout] | [INFO] [stdout] 44 | blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:49:42 [INFO] [stdout] | [INFO] [stdout] 49 | ... let slogan = format!("Unreachable code"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Unreachable code".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/DeadCodeEliminator.rs:69:38 [INFO] [stdout] | [INFO] [stdout] 69 | ... blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: manual implementation of `Option::map` [INFO] [stdout] --> compiler/src/siko/backend/RemoveTuples.rs:106:9 [INFO] [stdout] | [INFO] [stdout] 106 | / match self { [INFO] [stdout] 107 | | Some(t) => Some(t.removeTuples(ctx)), [INFO] [stdout] 108 | | None => None, [INFO] [stdout] 109 | | } [INFO] [stdout] | |_________^ help: try: `self.as_ref().map(|t| t.removeTuples(ctx))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map [INFO] [stdout] = note: `#[warn(clippy::manual_map)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: an implementation of `From` is preferred since it gives you `Into<_>` for free where the reverse isn't true [INFO] [stdout] --> compiler/src/siko/hir/Instruction.rs:382:1 [INFO] [stdout] | [INFO] [stdout] 382 | impl Into for Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#from_over_into [INFO] [stdout] = note: `#[warn(clippy::from_over_into)]` on by default [INFO] [stdout] help: replace the `Into` implementation with `From>` [INFO] [stdout] | [INFO] [stdout] 382 ~ impl From> for Arguments { [INFO] [stdout] 383 ~ fn from(val: Vec) -> Self { [INFO] [stdout] 384 ~ Arguments::Resolved(val) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: an implementation of `From` is preferred since it gives you `Into<_>` for free where the reverse isn't true [INFO] [stdout] --> compiler/src/siko/hir/Instruction.rs:388:1 [INFO] [stdout] | [INFO] [stdout] 388 | impl Into for Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#from_over_into [INFO] [stdout] help: replace the `Into` implementation with `From>` [INFO] [stdout] | [INFO] [stdout] 388 ~ impl From> for Arguments { [INFO] [stdout] 389 ~ fn from(val: Vec) -> Self { [INFO] [stdout] 390 ~ Arguments::Unresolved(val) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: an implementation of `From` is preferred since it gives you `Into<_>` for free where the reverse isn't true [INFO] [stdout] --> compiler/src/siko/hir/Instruction.rs:394:1 [INFO] [stdout] | [INFO] [stdout] 394 | impl Into for () { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#from_over_into [INFO] [stdout] help: replace the `Into` implementation with `From<()>` [INFO] [stdout] | [INFO] [stdout] 394 ~ impl From<()> for Arguments { [INFO] [stdout] 395 ~ fn from(val: ()) -> Self { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:16:26 [INFO] [stdout] | [INFO] [stdout] 16 | for (_, function) in &program.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] = note: `#[warn(clippy::for_kv_map)]` on by default [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 16 - for (_, function) in &program.functions { [INFO] [stdout] 16 + for function in program.functions.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:45:31 [INFO] [stdout] | [INFO] [stdout] 45 | for (_, block) in &body.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 45 - for (_, block) in &body.blocks { [INFO] [stdout] 45 + for block in body.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateStruct` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:85:51 [INFO] [stdout] | [INFO] [stdout] 85 | let structDef = instantiateStruct(&mut self.allocator, &structDef, &rootType); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] = note: `#[warn(clippy::unnecessary_mut_passed)]` on by default [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 85 - let structDef = instantiateStruct(&mut self.allocator, &structDef, &rootType); [INFO] [stdout] 85 + let structDef = instantiateStruct(&self.allocator, &structDef, &rootType); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:86:49 [INFO] [stdout] | [INFO] [stdout] 86 | let (f, _) = structDef.getField(&name); [INFO] [stdout] | ^^^^^ help: change this to: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: accessing first element with `destType [INFO] [stdout] .getTupleTypes().get(0)` [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:131:40 [INFO] [stdout] | [INFO] [stdout] 131 | let mut selfType = destType [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 132 | | .getTupleTypes() [INFO] [stdout] 133 | | .get(0) [INFO] [stdout] | |_______________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first [INFO] [stdout] = note: `#[warn(clippy::get_first)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 131 ~ let mut selfType = destType [INFO] [stdout] 132 + .getTupleTypes().first() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateType` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:136:48 [INFO] [stdout] | [INFO] [stdout] 136 | selfType = instantiateType(&mut self.allocator, selfType); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 136 - selfType = instantiateType(&mut self.allocator, selfType); [INFO] [stdout] 136 + selfType = instantiateType(&self.allocator, selfType); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateType` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:142:42 [INFO] [stdout] | [INFO] [stdout] 142 | fnType = instantiateType(&mut self.allocator, fnType); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 142 - fnType = instantiateType(&mut self.allocator, fnType); [INFO] [stdout] 142 + fnType = instantiateType(&self.allocator, fnType); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the function `instantiateEnum` doesn't need a mutable reference [INFO] [stdout] --> compiler/src/siko/backend/TypeVerifier.rs:204:47 [INFO] [stdout] | [INFO] [stdout] 204 | let enumDef = instantiateEnum(&mut self.allocator, &enumDef, &srcTy); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stdout] help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] 204 - let enumDef = instantiateEnum(&mut self.allocator, &enumDef, &srcTy); [INFO] [stdout] 204 + let enumDef = instantiateEnum(&self.allocator, &enumDef, &srcTy); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:138:27 [INFO] [stdout] | [INFO] [stdout] 138 | for (_, block) in &body.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 138 - for (_, block) in &body.blocks { [INFO] [stdout] 138 + for block in body.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:153:25 [INFO] [stdout] | [INFO] [stdout] 153 | / if info.isRef { [INFO] [stdout] 154 | | let path = buildFieldPath(&info.receiver, &info.fields); [INFO] [stdout] 155 | | if self.traceEnabled { [INFO] [stdout] 156 | | println!(" FieldRef: {} -> {}", info.receiver.name(), path); [INFO] [stdout] ... | [INFO] [stdout] 165 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 152 ~ InstructionKind::FieldAccess(dest, info) [INFO] [stdout] 153 ~ if info.isRef => { [INFO] [stdout] 154 | let path = buildFieldPath(&info.receiver, &info.fields); [INFO] [stdout] ... [INFO] [stdout] 164 | } [INFO] [stdout] 165 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowChecker.rs:180:30 [INFO] [stdout] | [INFO] [stdout] 180 | blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:31:55 [INFO] [stdout] | [INFO] [stdout] 31 | let entry = self.borrowVarMap.entry(instrRef).or_insert_with(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:70:44 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn buildBorrowVarMap(&self, links: &BTreeMap, groupInfo: &BlockGroupInfo) -> BorrowVarMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] = note: `#[warn(clippy::mutable_key_type)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | let inverseLinkMap = self.buildInverseLinkMap(links); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:82:30 [INFO] [stdout] | [INFO] [stdout] 82 | blockId: blockId.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:106:42 [INFO] [stdout] | [INFO] [stdout] 106 | fn buildInverseLinkMap(&self, links: &BTreeMap) -> BTreeMap> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:106:68 [INFO] [stdout] | [INFO] [stdout] 106 | fn buildInverseLinkMap(&self, links: &BTreeMap) -> BTreeMap> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | let mut inverseLinkMap: BTreeMap> = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/Program.rs:99:25 [INFO] [stdout] | [INFO] [stdout] 99 | for (_, fun) in &self.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 99 - for (_, fun) in &self.functions { [INFO] [stdout] 99 + for fun in self.functions.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/Program.rs:112:25 [INFO] [stdout] | [INFO] [stdout] 112 | for (_, fun) in &self.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 112 - for (_, fun) in &self.functions { [INFO] [stdout] 112 + for fun in self.functions.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/Program.rs:115:23 [INFO] [stdout] | [INFO] [stdout] 115 | for (_, c) in &self.structs { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 115 - for (_, c) in &self.structs { [INFO] [stdout] 115 + for c in self.structs.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/Program.rs:118:23 [INFO] [stdout] | [INFO] [stdout] 118 | for (_, e) in &self.enums { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 118 - for (_, e) in &self.enums { [INFO] [stdout] 118 + for e in self.enums.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:113:22 [INFO] [stdout] | [INFO] [stdout] 113 | .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/hir/Program.rs:121:23 [INFO] [stdout] | [INFO] [stdout] 121 | for (_, i) in &self.implicits { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 121 - for (_, i) in &self.implicits { [INFO] [stdout] 121 + for i in self.implicits.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:127:25 [INFO] [stdout] | [INFO] [stdout] 127 | inverseLinkMap: &BTreeMap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | let mut allBorrowVars: BTreeSet = BTreeSet::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:136:64 [INFO] [stdout] | [INFO] [stdout] 136 | let mut extV = self.profileBuilder.getFinalVarType(&dest); [INFO] [stdout] | ^^^^^ help: change this to: `dest` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:144:64 [INFO] [stdout] | [INFO] [stdout] 144 | let mut extV = self.profileBuilder.getFinalVarType(&dest); [INFO] [stdout] | ^^^^^ help: change this to: `dest` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:151:68 [INFO] [stdout] | [INFO] [stdout] 151 | let mut extV = self.profileBuilder.getFinalVarType(&dest); [INFO] [stdout] | ^^^^^ help: change this to: `dest` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:104:46 [INFO] [stdout] | [INFO] [stdout] 104 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:105:48 [INFO] [stdout] | [INFO] [stdout] 105 | let new_info = info.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:109:46 [INFO] [stdout] | [INFO] [stdout] 109 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:110:52 [INFO] [stdout] | [INFO] [stdout] 110 | let new_source = source.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:114:46 [INFO] [stdout] | [INFO] [stdout] 114 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:115:46 [INFO] [stdout] | [INFO] [stdout] 115 | let new_obj = obj.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:120:46 [INFO] [stdout] | [INFO] [stdout] 120 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 183 | let mut borrowVarToUsers: BTreeMap> = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:121:48 [INFO] [stdout] | [INFO] [stdout] 121 | let new_func = func.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:126:48 [INFO] [stdout] | [INFO] [stdout] 126 | let new_dest = dest.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:188:22 [INFO] [stdout] | [INFO] [stdout] 188 | .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:127:48 [INFO] [stdout] | [INFO] [stdout] 127 | let new_info = info.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:131:46 [INFO] [stdout] | [INFO] [stdout] 131 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:132:50 [INFO] [stdout] | [INFO] [stdout] 132 | let new_value = value.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:136:46 [INFO] [stdout] | [INFO] [stdout] 136 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:141:46 [INFO] [stdout] | [INFO] [stdout] 141 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:145:46 [INFO] [stdout] | [INFO] [stdout] 145 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:149:46 [INFO] [stdout] | [INFO] [stdout] 149 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:153:46 [INFO] [stdout] | [INFO] [stdout] 153 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:154:50 [INFO] [stdout] | [INFO] [stdout] 154 | let new_value = value.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:158:46 [INFO] [stdout] | [INFO] [stdout] 158 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:159:52 [INFO] [stdout] | [INFO] [stdout] 159 | let new_target = target.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:163:46 [INFO] [stdout] | [INFO] [stdout] 163 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:164:52 [INFO] [stdout] | [INFO] [stdout] 164 | let new_target = target.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:283:38 [INFO] [stdout] | [INFO] [stdout] 283 | fn resolveBorrowVars(inverseLinkMap: &BTreeMap>, allBorrowVars: &BTreeSet) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:171:46 [INFO] [stdout] | [INFO] [stdout] 171 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/BorrowVarMap.rs:283:81 [INFO] [stdout] | [INFO] [stdout] 283 | fn resolveBorrowVars(inverseLinkMap: &BTreeMap>, allBorrowVars: &BTreeSet) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:172:48 [INFO] [stdout] | [INFO] [stdout] 172 | InstructionKind::Jump(new_var, id.clone()) [INFO] [stdout] | ^^^^^^^^^^ help: try dereferencing it: `*id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:175:46 [INFO] [stdout] | [INFO] [stdout] 175 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:176:46 [INFO] [stdout] | [INFO] [stdout] 176 | let new_arg = arg.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:180:46 [INFO] [stdout] | [INFO] [stdout] 180 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:181:46 [INFO] [stdout] | [INFO] [stdout] 181 | let new_arg = arg.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:185:46 [INFO] [stdout] | [INFO] [stdout] 185 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:186:52 [INFO] [stdout] | [INFO] [stdout] 186 | let new_target = target.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:190:46 [INFO] [stdout] | [INFO] [stdout] 190 | let new_var = var.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Check.rs:34:54 [INFO] [stdout] | [INFO] [stdout] 34 | let f = self.program.getFunction(&item).unwrap(); [INFO] [stdout] | ^^^^^ help: change this to: `item` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:194:46 [INFO] [stdout] | [INFO] [stdout] 194 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:195:46 [INFO] [stdout] | [INFO] [stdout] 195 | let new_arg = arg.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:199:48 [INFO] [stdout] | [INFO] [stdout] 199 | let new_root = root.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Check.rs:53:23 [INFO] [stdout] | [INFO] [stdout] 53 | for (_, f) in &self.program.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 53 - for (_, f) in &self.program.functions { [INFO] [stdout] 53 + for f in self.program.functions.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:203:48 [INFO] [stdout] | [INFO] [stdout] 203 | let new_root = root.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:209:44 [INFO] [stdout] | [INFO] [stdout] 209 | let info = info.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:210:52 [INFO] [stdout] | [INFO] [stdout] 210 | InstructionKind::With(v.replaceVar(&from, to), info) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:213:62 [INFO] [stdout] | [INFO] [stdout] 213 | InstructionKind::ReadImplicit(var.replaceVar(&from, to.clone()), name.clone()) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:216:77 [INFO] [stdout] | [INFO] [stdout] 216 | InstructionKind::WriteImplicit(name.clone(), var.replaceVar(&from, to.clone())) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:219:57 [INFO] [stdout] | [INFO] [stdout] 219 | InstructionKind::LoadPtr(var.replaceVar(&from, to.clone()), target.replaceVar(&from, to)) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:219:95 [INFO] [stdout] | [INFO] [stdout] 219 | InstructionKind::LoadPtr(var.replaceVar(&from, to.clone()), target.replaceVar(&from, to)) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:222:58 [INFO] [stdout] | [INFO] [stdout] 222 | InstructionKind::StorePtr(var.replaceVar(&from, to.clone()), target.replaceVar(&from, to)) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:222:96 [INFO] [stdout] | [INFO] [stdout] 222 | InstructionKind::StorePtr(var.replaceVar(&from, to.clone()), target.replaceVar(&from, to)) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:225:44 [INFO] [stdout] | [INFO] [stdout] 225 | let info = info.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:226:63 [INFO] [stdout] | [INFO] [stdout] 226 | InstructionKind::CreateClosure(var.replaceVar(&from, to.clone()), info) [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:229:48 [INFO] [stdout] | [INFO] [stdout] 229 | InstructionKind::ClosureReturn(block_id.clone(), variable.clone(), return_value.clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*block_id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:232:46 [INFO] [stdout] | [INFO] [stdout] 232 | let new_var = var.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:233:44 [INFO] [stdout] | [INFO] [stdout] 233 | let new_v1 = v1.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:234:44 [INFO] [stdout] | [INFO] [stdout] 234 | let new_v2 = v2.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:238:42 [INFO] [stdout] | [INFO] [stdout] 238 | let new_v = v.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:239:42 [INFO] [stdout] | [INFO] [stdout] 239 | let new_a = a.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:243:42 [INFO] [stdout] | [INFO] [stdout] 243 | let new_v = v.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:247:42 [INFO] [stdout] | [INFO] [stdout] 247 | let new_v = v.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:248:42 [INFO] [stdout] | [INFO] [stdout] 248 | let new_f = f.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:253:42 [INFO] [stdout] | [INFO] [stdout] 253 | let new_v = v.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:254:42 [INFO] [stdout] | [INFO] [stdout] 254 | let new_t = t.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:258:42 [INFO] [stdout] | [INFO] [stdout] 258 | let new_v = v.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:259:42 [INFO] [stdout] | [INFO] [stdout] 259 | let new_t = t.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:263:42 [INFO] [stdout] | [INFO] [stdout] 263 | let new_v = v.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:267:42 [INFO] [stdout] | [INFO] [stdout] 267 | let new_v = v.replaceVar(&from, to.clone()); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/hir/ReplaceVar.rs:268:46 [INFO] [stdout] | [INFO] [stdout] 268 | let new_arr = arr.replaceVar(&from, to); [INFO] [stdout] | ^^^^^ help: change this to: `from` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/DataGroups.rs:157:9 [INFO] [stdout] | [INFO] [stdout] 157 | let mut allDeps: BTreeMap> = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `print!` in `Display` impl [INFO] [stdout] --> compiler/src/siko/hir/Substitution.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 47 | print!("["); [INFO] [stdout] | ^^^^^^^^^^^ help: replace with: `write!(f, ..)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_in_format_impl [INFO] [stdout] = note: `#[warn(clippy::print_in_format_impl)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `print!` in `Display` impl [INFO] [stdout] --> compiler/src/siko/hir/Substitution.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | print!("]"); [INFO] [stdout] | ^^^^^^^^^^^ help: replace with: `write!(f, ..)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#print_in_format_impl [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/hir/SyntaxBlockIterator.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | / loop { [INFO] [stdout] 56 | | match builder.getInstruction() { [INFO] [stdout] 57 | | Some(instruction) => { [INFO] [stdout] ... | [INFO] [stdout] 92 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instruction) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/DataGroups.rs:314:26 [INFO] [stdout] | [INFO] [stdout] 314 | .expect(&format!("Data definition not found {}", name)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| panic!("Data definition not found {}", name))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] = note: `#[warn(clippy::expect_fun_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> compiler/src/siko/hir/Trait.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 146 | let normalized = self.clone().apply(&sub); [INFO] [stdout] | ------------------------------------------ unnecessary `let` binding [INFO] [stdout] 147 | normalized [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 146 ~ [INFO] [stdout] 147 ~ self.clone().apply(&sub) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Error.rs:20:17 [INFO] [stdout] | [INFO] [stdout] 20 | / let mut entries = Vec::new(); [INFO] [stdout] 21 | | entries.push(Entry::new( [INFO] [stdout] 22 | | Some("NOTE: Value moved here".to_string()), [INFO] [stdout] 23 | | moveLocation.clone(), [INFO] [stdout] ... | [INFO] [stdout] 27 | | borrowLocation.clone(), [INFO] [stdout] 28 | | )); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let entries = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] = note: `#[warn(clippy::vec_init_then_push)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/Error.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 38 | / let mut entries = Vec::new(); [INFO] [stdout] 39 | | entries.push(Entry::new( [INFO] [stdout] 40 | | Some("NOTE: Value created here".to_string()), [INFO] [stdout] 41 | | createLocation.clone(), [INFO] [stdout] ... | [INFO] [stdout] 45 | | borrowLocation.clone(), [INFO] [stdout] 46 | | )); [INFO] [stdout] | |___________________^ help: consider using the `vec![]` macro: `let entries = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> compiler/src/siko/hir/TraitMethodSelector.rs:24:66 [INFO] [stdout] | [INFO] [stdout] 24 | let selections = self.methods.entry(name).or_insert_with(|| Vec::new()); [INFO] [stdout] | ^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `Vec::new` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant name ends with the enum's name [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | SelfType, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#enum_variant_names [INFO] [stdout] = note: `#[warn(clippy::enum_variant_names)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: mutable key type [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfile.rs:96:9 [INFO] [stdout] | [INFO] [stdout] 96 | let mut allDeps = BTreeMap::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ... because it contains `Type`, which has interior mutability [INFO] [stdout] = note: ... because it contains `QualifiedName`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Context`, which has interior mutability [INFO] [stdout] = note: ... because it contains `HandlerResolution`, which has interior mutability [INFO] [stdout] = note: ... because it contains `BTreeMap`, which has interior mutability [INFO] [stdout] = note: ... because it contains `EffectHandler`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Rc>`, which has interior mutability [INFO] [stdout] = note: ... because it contains `RefCell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `Cell`, which has interior mutability [INFO] [stdout] = note: ... because it contains `UnsafeCell`, which has interior mutability [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutable_key_type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfile.rs:122:44 [INFO] [stdout] | [INFO] [stdout] 122 | let deps = allDeps.get(&c).expect("argVar must be in allDeps"); [INFO] [stdout] | ^^ help: change this to: `c` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:120:14 [INFO] [stdout] | [INFO] [stdout] 120 | .expect(&format!("Variable type not found: {}", var.name())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| panic!("Variable type not found: {}", var.name()))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:218:20 [INFO] [stdout] | [INFO] [stdout] 218 | if args.len() > 0 && args[0] == Type::SelfType { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!args.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: returning the result of a `let` binding from a block [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:226:9 [INFO] [stdout] | [INFO] [stdout] 225 | let updated = self.profileStore.addProfile(self.profile.clone()); [INFO] [stdout] | ----------------------------------------------------------------- unnecessary `let` binding [INFO] [stdout] 226 | updated [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stdout] = note: `#[warn(clippy::let_and_return)]` on by default [INFO] [stdout] help: return the expression directly [INFO] [stdout] | [INFO] [stdout] 225 ~ [INFO] [stdout] 226 ~ self.profileStore.addProfile(self.profile.clone()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | return Type::Tuple(args); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 236 - return Type::Tuple(args); [INFO] [stdout] 236 + Type::Tuple(args) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:245:20 [INFO] [stdout] | [INFO] [stdout] 245 | if args.len() > 0 && args[0] == Type::SelfType { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!args.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:151:31 [INFO] [stdout] | [INFO] [stdout] 151 | for (_, b) in &body.blocks { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 151 - for (_, b) in &body.blocks { [INFO] [stdout] 151 + for b in body.blocks.values() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: length comparison to zero [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:265:25 [INFO] [stdout] | [INFO] [stdout] 265 | assert!(args.len() > 0); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!args.is_empty()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:284:9 [INFO] [stdout] | [INFO] [stdout] 284 | / match &self { [INFO] [stdout] 285 | | Type::Tuple(_) => true, [INFO] [stdout] 286 | | _ => false, [INFO] [stdout] 287 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 284 - match &self { [INFO] [stdout] 285 - Type::Tuple(_) => true, [INFO] [stdout] 286 - _ => false, [INFO] [stdout] 287 - } [INFO] [stdout] 284 + matches!(self, Type::Tuple(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:291:9 [INFO] [stdout] | [INFO] [stdout] 291 | / match &self { [INFO] [stdout] 292 | | Type::Never(_) => true, [INFO] [stdout] 293 | | _ => false, [INFO] [stdout] 294 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 291 - match &self { [INFO] [stdout] 292 - Type::Never(_) => true, [INFO] [stdout] 293 - _ => false, [INFO] [stdout] 294 - } [INFO] [stdout] 291 + matches!(self, Type::Never(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:298:9 [INFO] [stdout] | [INFO] [stdout] 298 | / match &self { [INFO] [stdout] 299 | | Type::Named(_, _) => true, [INFO] [stdout] 300 | | _ => false, [INFO] [stdout] 301 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 298 - match &self { [INFO] [stdout] 299 - Type::Named(_, _) => true, [INFO] [stdout] 300 - _ => false, [INFO] [stdout] 301 - } [INFO] [stdout] 298 + matches!(self, Type::Named(_, _)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:335:17 [INFO] [stdout] | [INFO] [stdout] 335 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 335 - return true; [INFO] [stdout] 335 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:343:17 [INFO] [stdout] | [INFO] [stdout] 343 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 343 - return true; [INFO] [stdout] 343 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:351:17 [INFO] [stdout] | [INFO] [stdout] 351 | return result.isSpecified(fully); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 351 - return result.isSpecified(fully); [INFO] [stdout] 351 + result.isSpecified(fully) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:359:17 [INFO] [stdout] | [INFO] [stdout] 359 | return result.isSpecified(fully); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 359 - return result.isSpecified(fully); [INFO] [stdout] 359 + result.isSpecified(fully) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:362:17 [INFO] [stdout] | [INFO] [stdout] 362 | return !fully; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 362 - return !fully; [INFO] [stdout] 362 + !fully [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:365:17 [INFO] [stdout] | [INFO] [stdout] 365 | return false; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 365 - return false; [INFO] [stdout] 365 + false [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:368:17 [INFO] [stdout] | [INFO] [stdout] 368 | return ty.isSpecified(fully); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 368 - return ty.isSpecified(fully); [INFO] [stdout] 368 + ty.isSpecified(fully) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:371:17 [INFO] [stdout] | [INFO] [stdout] 371 | return ty.isSpecified(fully); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 371 - return ty.isSpecified(fully); [INFO] [stdout] 371 + ty.isSpecified(fully) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:377:17 [INFO] [stdout] | [INFO] [stdout] 377 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 377 - return true; [INFO] [stdout] 377 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:380:17 [INFO] [stdout] | [INFO] [stdout] 380 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 380 - return true; [INFO] [stdout] 380 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:383:17 [INFO] [stdout] | [INFO] [stdout] 383 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 383 - return true; [INFO] [stdout] 383 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:386:17 [INFO] [stdout] | [INFO] [stdout] 386 | return true; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 386 - return true; [INFO] [stdout] 386 + true [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:389:17 [INFO] [stdout] | [INFO] [stdout] 389 | return yieldTy.isSpecified(fully) && retTy.isSpecified(fully); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 389 - return yieldTy.isSpecified(fully) && retTy.isSpecified(fully); [INFO] [stdout] 389 + yieldTy.isSpecified(fully) && retTy.isSpecified(fully) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function call inside of `expect` [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:244:26 [INFO] [stdout] | [INFO] [stdout] 244 | .expect(&format!("Argument variable not found in param map: {}", argName)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| panic!("Argument variable not found in param map: {}", argName))` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#expect_fun_call [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:395:9 [INFO] [stdout] | [INFO] [stdout] 395 | / match &self { [INFO] [stdout] 396 | | Type::Reference(_) => true, [INFO] [stdout] 397 | | _ => false, [INFO] [stdout] 398 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 395 - match &self { [INFO] [stdout] 396 - Type::Reference(_) => true, [INFO] [stdout] 397 - _ => false, [INFO] [stdout] 398 - } [INFO] [stdout] 395 + matches!(self, Type::Reference(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:409:9 [INFO] [stdout] | [INFO] [stdout] 409 | / match &self { [INFO] [stdout] 410 | | Type::Void => true, [INFO] [stdout] 411 | | _ => false, [INFO] [stdout] 412 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 409 - match &self { [INFO] [stdout] 410 - Type::Void => true, [INFO] [stdout] 411 - _ => false, [INFO] [stdout] 412 - } [INFO] [stdout] 409 + matches!(self, Type::Void) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:416:9 [INFO] [stdout] | [INFO] [stdout] 416 | / match &self { [INFO] [stdout] 417 | | Type::VoidPtr => true, [INFO] [stdout] 418 | | _ => false, [INFO] [stdout] 419 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 416 - match &self { [INFO] [stdout] 417 - Type::VoidPtr => true, [INFO] [stdout] 418 - _ => false, [INFO] [stdout] 419 - } [INFO] [stdout] 416 + matches!(self, Type::VoidPtr) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:423:9 [INFO] [stdout] | [INFO] [stdout] 423 | / match &self { [INFO] [stdout] 424 | | Type::Ptr(_) => true, [INFO] [stdout] 425 | | _ => false, [INFO] [stdout] 426 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 423 - match &self { [INFO] [stdout] 424 - Type::Ptr(_) => true, [INFO] [stdout] 425 - _ => false, [INFO] [stdout] 426 - } [INFO] [stdout] 423 + matches!(self, Type::Ptr(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:446:9 [INFO] [stdout] | [INFO] [stdout] 446 | / match &self { [INFO] [stdout] 447 | | Type::Var(_) => true, [INFO] [stdout] 448 | | _ => false, [INFO] [stdout] 449 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 446 - match &self { [INFO] [stdout] 447 - Type::Var(_) => true, [INFO] [stdout] 448 - _ => false, [INFO] [stdout] 449 - } [INFO] [stdout] 446 + matches!(self, Type::Var(_)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:453:9 [INFO] [stdout] | [INFO] [stdout] 453 | / match &self { [INFO] [stdout] 454 | | Type::Var(TypeVar::Var(_)) => true, [INFO] [stdout] 455 | | _ => false, [INFO] [stdout] 456 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 453 - match &self { [INFO] [stdout] 454 - Type::Var(TypeVar::Var(_)) => true, [INFO] [stdout] 455 - _ => false, [INFO] [stdout] 456 - } [INFO] [stdout] 453 + matches!(self, Type::Var(TypeVar::Var(_))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:460:9 [INFO] [stdout] | [INFO] [stdout] 460 | / match &self { [INFO] [stdout] 461 | | Type::FunctionPtr(_, _) => true, [INFO] [stdout] 462 | | _ => false, [INFO] [stdout] 463 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 460 - match &self { [INFO] [stdout] 461 - Type::FunctionPtr(_, _) => true, [INFO] [stdout] 462 - _ => false, [INFO] [stdout] 463 - } [INFO] [stdout] 460 + matches!(self, Type::FunctionPtr(_, _)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match expression looks like `matches!` macro [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:467:9 [INFO] [stdout] | [INFO] [stdout] 467 | / match &self { [INFO] [stdout] 468 | | Type::Function(_, _) => true, [INFO] [stdout] 469 | | _ => false, [INFO] [stdout] 470 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro [INFO] [stdout] help: use `matches!` directly [INFO] [stdout] | [INFO] [stdout] 467 - match &self { [INFO] [stdout] 468 - Type::Function(_, _) => true, [INFO] [stdout] 469 - _ => false, [INFO] [stdout] 470 - } [INFO] [stdout] 467 + matches!(self, Type::Function(_, _)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:569:27 [INFO] [stdout] | [INFO] [stdout] 569 | pub fn formatTypes(types: &Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 569 - pub fn formatTypes(types: &Vec) -> String { [INFO] [stdout] 569 + pub fn formatTypes(types: &[Type]) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> compiler/src/siko/backend/borrowcheck/functionprofiles/FunctionProfileBuilder.rs:462:52 [INFO] [stdout] | [INFO] [stdout] 462 | let field = structDef.getField(&name); [INFO] [stdout] | ^^^^^ help: change this to: `name` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do [INFO] [stdout] --> compiler/src/siko/hir/Type.rs:574:34 [INFO] [stdout] | [INFO] [stdout] 574 | pub fn formatTypesBracket(types: &Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 574 - pub fn formatTypesBracket(types: &Vec) -> String { [INFO] [stdout] 574 + pub fn formatTypesBracket(types: &[Type]) -> String { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/hir/TypeVarAllocator.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | / match ty { [INFO] [stdout] 33 | | Type::Var(TypeVar::Var(var)) => { [INFO] [stdout] 34 | | let mut n = self.next.borrow_mut(); [INFO] [stdout] 35 | | if *var >= *n { [INFO] [stdout] ... | [INFO] [stdout] 39 | | _ => {} [INFO] [stdout] 40 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 32 ~ if let Type::Var(TypeVar::Var(var)) = ty { [INFO] [stdout] 33 + let mut n = self.next.borrow_mut(); [INFO] [stdout] 34 + if *var >= *n { [INFO] [stdout] 35 + *n = *var + 1; [INFO] [stdout] 36 + } [INFO] [stdout] 37 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:47:17 [INFO] [stdout] | [INFO] [stdout] 47 | return Err(Error {}); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 47 - return Err(Error {}); [INFO] [stdout] 47 + Err(Error {}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | return Err(Error {}); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 57 - return Err(Error {}); [INFO] [stdout] 57 + Err(Error {}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | return Ok(()); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 67 - return Ok(()); [INFO] [stdout] 67 + Ok(()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:69:17 [INFO] [stdout] | [INFO] [stdout] 69 | return Err(Error {}); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 69 - return Err(Error {}); [INFO] [stdout] 69 + Err(Error {}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:107:13 [INFO] [stdout] | [INFO] [stdout] 107 | return unify(sub, *res1, *res2, cfg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 107 - return unify(sub, *res1, *res2, cfg); [INFO] [stdout] 107 + unify(sub, *res1, *res2, cfg) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | return unify(sub, *res1, *res2, cfg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 113 - return unify(sub, *res1, *res2, cfg); [INFO] [stdout] 113 + unify(sub, *res1, *res2, cfg) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:130:14 [INFO] [stdout] | [INFO] [stdout] 130 | _ => return Err(Error {}), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 130 - _ => return Err(Error {}), [INFO] [stdout] 130 + _ => Err(Error {}), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> compiler/src/siko/hir/Unification.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | / if n1 == n2 { [INFO] [stdout] 67 | | return Ok(()); [INFO] [stdout] 68 | | } else { [INFO] [stdout] 69 | | return Err(Error {}); [INFO] [stdout] 70 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 65 ~ (Type::Var(TypeVar::Named(n1)), Type::Var(TypeVar::Named(n2))) [INFO] [stdout] 66 ~ if n1 == n2 => { [INFO] [stdout] 67 | return Ok(()); [INFO] [stdout] 68 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:97:23 [INFO] [stdout] | [INFO] [stdout] 97 | for (_, e) in &mut program.enums { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 97 - for (_, e) in &mut program.enums { [INFO] [stdout] 97 + for e in program.enums.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:101:23 [INFO] [stdout] | [INFO] [stdout] 101 | for (_, s) in &mut program.structs { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 101 - for (_, s) in &mut program.structs { [INFO] [stdout] 101 + for s in program.structs.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_err()` [INFO] [stdout] --> compiler/src/siko/hir/Unifier.rs:74:20 [INFO] [stdout] | [INFO] [stdout] 74 | if let Err(_) = unify(&mut sub, ty1.clone(), ty2.clone(), self.unificationConfig.clone()) { [INFO] [stdout] | -------^^^^^^---------------------------------------------------------------------------- help: try: `if unify(&mut sub, ty1.clone(), ty2.clone(), self.unificationConfig.clone()).is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:105:23 [INFO] [stdout] | [INFO] [stdout] 105 | for (_, f) in &mut program.functions { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 105 - for (_, f) in &mut program.functions { [INFO] [stdout] 105 + for f in program.functions.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Config` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/Unifier.rs:74:71 [INFO] [stdout] | [INFO] [stdout] 74 | if let Err(_) = unify(&mut sub, ty1.clone(), ty2.clone(), self.unificationConfig.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.unificationConfig` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref which would be done by auto-deref [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:117:74 [INFO] [stdout] | [INFO] [stdout] 117 | let mut generator = ClosureGenerator::new(&mut program, key, &*closure); [INFO] [stdout] | ^^^^^^^^^ help: try: `&closure` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref [INFO] [stdout] = note: `#[warn(clippy::explicit_auto_deref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant pattern matching, consider using `is_err()` [INFO] [stdout] --> compiler/src/siko/hir/Unifier.rs:90:20 [INFO] [stdout] | [INFO] [stdout] 90 | if let Err(_) = unify(&mut sub, ty1.clone(), ty2.clone(), self.unificationConfig.clone()) { [INFO] [stdout] | -------^^^^^^---------------------------------------------------------------------------- help: try: `if unify(&mut sub, ty1.clone(), ty2.clone(), self.unificationConfig.clone()).is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Config` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/Unifier.rs:90:71 [INFO] [stdout] | [INFO] [stdout] 90 | if let Err(_) = unify(&mut sub, ty1.clone(), ty2.clone(), self.unificationConfig.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.unificationConfig` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you are using an explicit closure for cloning elements [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:168:45 [INFO] [stdout] | [INFO] [stdout] 168 | let paramTypes: Vec = params.iter().map(|p| p.clone()).collect(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider calling the dedicated `cloned` method: `params.iter().cloned()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_clone [INFO] [stdout] = note: `#[warn(clippy::map_clone)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to want to iterate on a map's values [INFO] [stdout] --> compiler/src/siko/backend/closurelowering/ClosureLowering.rs:218:27 [INFO] [stdout] | [INFO] [stdout] 218 | for (_, block) in &mut self.blocks { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#for_kv_map [INFO] [stdout] help: use the corresponding method [INFO] [stdout] | [INFO] [stdout] 218 - for (_, block) in &mut self.blocks { [INFO] [stdout] 218 + for block in self.blocks.values_mut() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `bool` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/UseVar.rs:69:67 [INFO] [stdout] | [INFO] [stdout] 69 | InstructionKind::Bind(dest.clone(), src.useVar(), mutability.clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*mutability` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/UseVar.rs:81:83 [INFO] [stdout] | [INFO] [stdout] 81 | InstructionKind::Jump(v, blockId) => InstructionKind::Jump(v.clone(), blockId.clone()), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try dereferencing it: `*blockId` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `BlockId` which implements the `Copy` trait [INFO] [stdout] --> compiler/src/siko/hir/UseVar.rs:108:48 [INFO] [stdout] | [INFO] [stdout] 108 | InstructionKind::ClosureReturn(block_id.clone(), variable.clone(), return_value.useVar()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try dereferencing it: `*block_id` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this loop could be written as a `while let` loop [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | / loop { [INFO] [stdout] 23 | | if let Some(instr) = builder.getInstruction() { [INFO] [stdout] 24 | | match &instr.kind { [INFO] [stdout] 25 | | InstructionKind::FunctionCall(dest, info) => { [INFO] [stdout] ... | [INFO] [stdout] 59 | | } [INFO] [stdout] | |_________^ help: try: `while let Some(instr) = builder.getInstruction() { .. }` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stdout] = note: `#[warn(clippy::while_let_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:26:25 [INFO] [stdout] | [INFO] [stdout] 26 | / if info.coroutineSpawn { [INFO] [stdout] 27 | | let entryPointName = [INFO] [stdout] 28 | | QualifiedName::CoroutineStateMachineVariant(Box::new(info.name.clone()), 0 as u32); [INFO] [stdout] 29 | | let stateMachineTy = Type::Named(getStateMachineEnumName(&info.name), vec![]); [INFO] [stdout] ... | [INFO] [stdout] 50 | | builder.replaceInstruction(newCall, instr.location.clone()); [INFO] [stdout] 51 | | } [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 25 ~ InstructionKind::FunctionCall(dest, info) [INFO] [stdout] 26 ~ if info.coroutineSpawn => { [INFO] [stdout] 27 | let entryPointName = [INFO] [stdout] ... [INFO] [stdout] 50 | builder.replaceInstruction(newCall, instr.location.clone()); [INFO] [stdout] 51 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 24 | / match &instr.kind { [INFO] [stdout] 25 | | InstructionKind::FunctionCall(dest, info) => { [INFO] [stdout] 26 | | if info.coroutineSpawn { [INFO] [stdout] 27 | | let entryPointName = [INFO] [stdout] ... | [INFO] [stdout] 53 | | _ => {} [INFO] [stdout] 54 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 24 ~ if let InstructionKind::FunctionCall(dest, info) = &instr.kind { [INFO] [stdout] 25 + if info.coroutineSpawn { [INFO] [stdout] 26 + let entryPointName = [INFO] [stdout] 27 + QualifiedName::CoroutineStateMachineVariant(Box::new(info.name.clone()), 0 as u32); [INFO] [stdout] 28 + let stateMachineTy = Type::Named(getStateMachineEnumName(&info.name), vec![]); [INFO] [stdout] 29 + let variantCtorVar = [INFO] [stdout] 30 + bodyBuilder.createTempValueWithType(instr.location.clone(), stateMachineTy); [INFO] [stdout] 31 + let variantCtorCallInfo = CallInfo { [INFO] [stdout] 32 + name: entryPointName.clone(), [INFO] [stdout] 33 + args: info.args.clone(), [INFO] [stdout] 34 + context: info.context.clone(), [INFO] [stdout] 35 + coroutineSpawn: false, [INFO] [stdout] 36 + instanceRefs: Vec::new(), [INFO] [stdout] 37 + }; [INFO] [stdout] 38 + let variantCtorCall = [INFO] [stdout] 39 + InstructionKind::FunctionCall(variantCtorVar.clone(), variantCtorCallInfo); [INFO] [stdout] 40 + builder.addInstruction(variantCtorCall, instr.location.clone()); [INFO] [stdout] 41 + builder.step(); [INFO] [stdout] 42 + let coroutineName = getLoweredCoroutineName(&dest.getType()); [INFO] [stdout] 43 + let variantName = QualifiedName::CoroutineInstance( [INFO] [stdout] 44 + Box::new(coroutineName), [INFO] [stdout] 45 + Box::new(QualifiedName::CoroutineStateMachineEnum(Box::new(info.name.clone()))), [INFO] [stdout] 46 + ); [INFO] [stdout] 47 + let info = CallInfo::new(variantName, vec![variantCtorVar.useVar()]); [INFO] [stdout] 48 + let newCall = InstructionKind::FunctionCall(dest.clone(), info); [INFO] [stdout] 49 + builder.replaceInstruction(newCall, instr.location.clone()); [INFO] [stdout] 50 + } [INFO] [stdout] 51 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting integer literal to `u32` is unnecessary [INFO] [stdout] --> compiler/src/siko/backend/coroutinelowering/CoroutineCreateLowering.rs:28:106 [INFO] [stdout] | [INFO] [stdout] 28 | ... QualifiedName::CoroutineStateMachineVariant(Box::new(info.name.clone()), 0 as u32); [INFO] [stdout] | ^^^^^^^^ help: try: `0_u32` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [WARN] too many lines in the log, truncating it