[INFO] crate ipc-channel 0.11.2 is already in cache [INFO] extracting crate ipc-channel 0.11.2 into work/ex/clippy-test-run/sources/stable/reg/ipc-channel/0.11.2 [INFO] extracting crate ipc-channel 0.11.2 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ipc-channel/0.11.2 [INFO] validating manifest of ipc-channel-0.11.2 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of ipc-channel-0.11.2 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing ipc-channel-0.11.2 [INFO] finished frobbing ipc-channel-0.11.2 [INFO] frobbed toml for ipc-channel-0.11.2 written to work/ex/clippy-test-run/sources/stable/reg/ipc-channel/0.11.2/Cargo.toml [INFO] started frobbing ipc-channel-0.11.2 [INFO] finished frobbing ipc-channel-0.11.2 [INFO] frobbed toml for ipc-channel-0.11.2 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/ipc-channel/0.11.2/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting ipc-channel-0.11.2 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/ipc-channel/0.11.2:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 0ffae806bd3f129b6ac1250766af3689f678b0100c9b5f4e7fe49b2056151359 [INFO] running `"docker" "start" "-a" "0ffae806bd3f129b6ac1250766af3689f678b0100c9b5f4e7fe49b2056151359"` [INFO] [stderr] Checking bincode v1.0.1 [INFO] [stderr] Checking ipc-channel v0.11.2 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:61:9 [INFO] [stderr] | [INFO] [stderr] 61 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:205:13 [INFO] [stderr] | [INFO] [stderr] 205 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:246:25 [INFO] [stderr] | [INFO] [stderr] 246 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:247:25 [INFO] [stderr] | [INFO] [stderr] 247 | os_ipc_channels: os_ipc_channels, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_ipc_channels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | os_shared_memory: os_shared_memory, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_shared_memory` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:360:13 [INFO] [stderr] | [INFO] [stderr] 360 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:361:13 [INFO] [stderr] | [INFO] [stderr] 361 | os_ipc_channels: os_ipc_channels, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_ipc_channels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:409:13 [INFO] [stderr] | [INFO] [stderr] 409 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:434:13 [INFO] [stderr] | [INFO] [stderr] 434 | os_server: os_server, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_server` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:482:13 [INFO] [stderr] | [INFO] [stderr] 482 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:518:13 [INFO] [stderr] | [INFO] [stderr] 518 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:466:13 [INFO] [stderr] | [INFO] [stderr] 466 | fd: fd [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:566:13 [INFO] [stderr] | [INFO] [stderr] 566 | fd: fd, [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:615:17 [INFO] [stderr] | [INFO] [stderr] 615 | fd: fd, [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:681:13 [INFO] [stderr] | [INFO] [stderr] 681 | fd: fd, [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:777:13 [INFO] [stderr] | [INFO] [stderr] 777 | ptr: ptr, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ptr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:778:13 [INFO] [stderr] | [INFO] [stderr] 778 | length: length, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `length` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:779:13 [INFO] [stderr] | [INFO] [stderr] 779 | store: store, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `store` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:1001:13 [INFO] [stderr] | [INFO] [stderr] 1001 | cmsg_buffer: cmsg_buffer, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmsg_buffer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:34:17 [INFO] [stderr] | [INFO] [stderr] 34 | msg_sender: msg_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:35:17 [INFO] [stderr] | [INFO] [stderr] 35 | wakeup_sender: wakeup_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `wakeup_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | msg_receiver: msg_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | msg_wakeup_id: msg_wakeup_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_wakeup_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | ipc_receiver_set: ipc_receiver_set, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `ipc_receiver_set` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:52:9 [INFO] [stderr] | [INFO] [stderr] 52 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:61:9 [INFO] [stderr] | [INFO] [stderr] 61 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:125:13 [INFO] [stderr] | [INFO] [stderr] 125 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:205:13 [INFO] [stderr] | [INFO] [stderr] 205 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:246:25 [INFO] [stderr] | [INFO] [stderr] 246 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:247:25 [INFO] [stderr] | [INFO] [stderr] 247 | os_ipc_channels: os_ipc_channels, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_ipc_channels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | os_shared_memory: os_shared_memory, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_shared_memory` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:360:13 [INFO] [stderr] | [INFO] [stderr] 360 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:361:13 [INFO] [stderr] | [INFO] [stderr] 361 | os_ipc_channels: os_ipc_channels, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_ipc_channels` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:409:13 [INFO] [stderr] | [INFO] [stderr] 409 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:434:13 [INFO] [stderr] | [INFO] [stderr] 434 | os_server: os_server, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_server` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:451:13 [INFO] [stderr] | [INFO] [stderr] 451 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:482:13 [INFO] [stderr] | [INFO] [stderr] 482 | os_receiver: os_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/ipc.rs:518:13 [INFO] [stderr] | [INFO] [stderr] 518 | os_sender: os_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `os_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:466:13 [INFO] [stderr] | [INFO] [stderr] 466 | fd: fd [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:566:13 [INFO] [stderr] | [INFO] [stderr] 566 | fd: fd, [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:615:17 [INFO] [stderr] | [INFO] [stderr] 615 | fd: fd, [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:681:13 [INFO] [stderr] | [INFO] [stderr] 681 | fd: fd, [INFO] [stderr] | ^^^^^^ help: replace it with: `fd` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:777:13 [INFO] [stderr] | [INFO] [stderr] 777 | ptr: ptr, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `ptr` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:778:13 [INFO] [stderr] | [INFO] [stderr] 778 | length: length, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `length` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:779:13 [INFO] [stderr] | [INFO] [stderr] 779 | store: store, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `store` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/platform/unix/mod.rs:1001:13 [INFO] [stderr] | [INFO] [stderr] 1001 | cmsg_buffer: cmsg_buffer, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `cmsg_buffer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:34:17 [INFO] [stderr] | [INFO] [stderr] 34 | msg_sender: msg_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:35:17 [INFO] [stderr] | [INFO] [stderr] 35 | wakeup_sender: wakeup_sender, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `wakeup_sender` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 94 | msg_receiver: msg_receiver, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_receiver` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | msg_wakeup_id: msg_wakeup_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `msg_wakeup_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/router.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | ipc_receiver_set: ipc_receiver_set, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `ipc_receiver_set` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: You matched a field with a wildcard pattern. Consider using `..` instead [INFO] [stderr] --> src/platform/unix/mod.rs:439:26 [INFO] [stderr] | [INFO] [stderr] 439 | for &PollEntry { id: _, fd } in self.pollfds.values() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unneeded_field_pattern)] on by default [INFO] [stderr] = help: Try with `PollEntry { fd, .. }` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_field_pattern [INFO] [stderr] [INFO] [stderr] warning: You matched a field with a wildcard pattern. Consider using `..` instead [INFO] [stderr] --> src/platform/unix/mod.rs:439:26 [INFO] [stderr] | [INFO] [stderr] 439 | for &PollEntry { id: _, fd } in self.pollfds.values() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unneeded_field_pattern)] on by default [INFO] [stderr] = help: Try with `PollEntry { fd, .. }` [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unneeded_field_pattern [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/ipc.rs:87:22 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn to_opaque(self) -> OpaqueIpcReceiver { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/ipc.rs:189:20 [INFO] [stderr] | [INFO] [stderr] 189 | Ok(self.os_sender.send(&bytes[..], os_ipc_channels, os_ipc_shared_memory_regions)?) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 189 | Ok(()) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/ipc.rs:194:22 [INFO] [stderr] | [INFO] [stderr] 194 | pub fn to_opaque(self) -> OpaqueIpcSender { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/ipc.rs:532:59 [INFO] [stderr] | [INFO] [stderr] 532 | self.os_sender.send(data, vec![], vec![]).map_err(|e| Error::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `Error::from` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | -> Result<(Vec, Vec, Vec),UnixError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::type_complexity)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:134:24 [INFO] [stderr] | [INFO] [stderr] 134 | -> Result<(Vec, Vec, Vec),UnixError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/platform/unix/mod.rs:325:20 [INFO] [stderr] | [INFO] [stderr] 325 | if !(*sendbuf_size < sent_size) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `*sendbuf_size >= sent_size` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::nonminimal_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/platform/unix/mod.rs:570:22 [INFO] [stderr] | [INFO] [stderr] 570 | pub fn to_sender(&mut self) -> OsIpcSender { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/platform/unix/mod.rs:574:24 [INFO] [stderr] | [INFO] [stderr] 574 | pub fn to_receiver(&mut self) -> OsIpcReceiver { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] error: you are getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/platform/unix/mod.rs:605:51 [INFO] [stderr] | [INFO] [stderr] 605 | let (sockaddr, len) = new_sockaddr_un(CString::new(path_string).unwrap().as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::temporary_cstring_as_ptr)] on by default [INFO] [stderr] = note: that pointer will be invalid outside this expression [INFO] [stderr] help: assign the `CString` to a variable to extend its lifetime [INFO] [stderr] --> src/platform/unix/mod.rs:605:51 [INFO] [stderr] | [INFO] [stderr] 605 | let (sockaddr, len) = new_sockaddr_un(CString::new(path_string).unwrap().as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#temporary_cstring_as_ptr [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:621:28 [INFO] [stderr] | [INFO] [stderr] 621 | pub fn accept(self) -> Result<(OsIpcReceiver, [INFO] [stderr] | ____________________________^ [INFO] [stderr] 622 | | Vec, [INFO] [stderr] 623 | | Vec, [INFO] [stderr] 624 | | Vec),UnixError> { [INFO] [stderr] | |_____________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/platform/unix/mod.rs:705:17 [INFO] [stderr] | [INFO] [stderr] 705 | assert!(address != ptr::null_mut()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cmp_null)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/platform/unix/mod.rs:822:30 [INFO] [stderr] | [INFO] [stderr] 822 | pub fn channel_is_closed(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:861:12 [INFO] [stderr] | [INFO] [stderr] 861 | -> Result<(Vec, Vec, Vec),UnixError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] error: unsafe vector initialization [INFO] [stderr] --> src/platform/unix/mod.rs:874:9 [INFO] [stderr] | [INFO] [stderr] 873 | main_data_buffer = Vec::with_capacity(OsIpcSender::get_max_fragment_size()); [INFO] [stderr] | -------------------------------------------------------- help: consider replace allocation with: `vec![0; OsIpcSender::get_max_fragment_size()]` [INFO] [stderr] 874 | main_data_buffer.set_len(OsIpcSender::get_max_fragment_size()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unsafe_vector_initialization)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unsafe_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/platform/unix/mod.rs:899:23 [INFO] [stderr] | [INFO] [stderr] 899 | let fd = *cmsg_fds.offset(index as isize); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `cmsg_fds.add(index)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_offset_with_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/platform/unix/mod.rs:1068:5 [INFO] [stderr] | [INFO] [stderr] 1068 | / (cmsg as *mut libc::c_uchar).offset(CMSG_ALIGN( [INFO] [stderr] 1069 | | mem::size_of::()) as isize) as *mut c_void [INFO] [stderr] | |________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1068 | (cmsg as *mut libc::c_uchar).add(CMSG_ALIGN( [INFO] [stderr] 1069 | mem::size_of::())) as *mut c_void [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `router::RouterProxy` [INFO] [stderr] --> src/router.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | / pub fn new() -> RouterProxy { [INFO] [stderr] 29 | | let (msg_sender, msg_receiver) = crossbeam_channel::unbounded(); [INFO] [stderr] 30 | | let (wakeup_sender, wakeup_receiver) = ipc::channel().unwrap(); [INFO] [stderr] 31 | | thread::spawn(move || Router::new(msg_receiver, wakeup_receiver).run()); [INFO] [stderr] ... | [INFO] [stderr] 37 | | } [INFO] [stderr] 38 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 27 | impl Default for router::RouterProxy { [INFO] [stderr] 28 | fn default() -> Self { [INFO] [stderr] 29 | Self::new() [INFO] [stderr] 30 | } [INFO] [stderr] 31 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `while let` loop [INFO] [stderr] --> src/router.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | / loop { [INFO] [stderr] 103 | | let results = match self.ipc_receiver_set.select() { [INFO] [stderr] 104 | | Ok(results) => results, [INFO] [stderr] 105 | | Err(_) => break, [INFO] [stderr] ... | [INFO] [stderr] 126 | | } [INFO] [stderr] 127 | | } [INFO] [stderr] | |_________^ help: try: `while let Ok(results) = self.ipc_receiver_set.select() { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] error: aborting due to 2 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `ipc-channel`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/ipc.rs:87:22 [INFO] [stderr] | [INFO] [stderr] 87 | pub fn to_opaque(self) -> OpaqueIpcReceiver { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::wrong_self_convention)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/ipc.rs:189:20 [INFO] [stderr] | [INFO] [stderr] 189 | Ok(self.os_sender.send(&bytes[..], os_ipc_channels, os_ipc_shared_memory_regions)?) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 189 | Ok(()) [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/ipc.rs:194:22 [INFO] [stderr] | [INFO] [stderr] 194 | pub fn to_opaque(self) -> OpaqueIpcSender { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/ipc.rs:532:59 [INFO] [stderr] | [INFO] [stderr] 532 | self.os_sender.send(data, vec![], vec![]).map_err(|e| Error::from(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `Error::from` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:129:20 [INFO] [stderr] | [INFO] [stderr] 129 | -> Result<(Vec, Vec, Vec),UnixError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::type_complexity)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:134:24 [INFO] [stderr] | [INFO] [stderr] 134 | -> Result<(Vec, Vec, Vec),UnixError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: this boolean expression can be simplified [INFO] [stderr] --> src/platform/unix/mod.rs:325:20 [INFO] [stderr] | [INFO] [stderr] 325 | if !(*sendbuf_size < sent_size) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `*sendbuf_size >= sent_size` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::nonminimal_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/platform/unix/mod.rs:570:22 [INFO] [stderr] | [INFO] [stderr] 570 | pub fn to_sender(&mut self) -> OsIpcSender { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] warning: methods called `to_*` usually take self by reference; consider choosing a less ambiguous name [INFO] [stderr] --> src/platform/unix/mod.rs:574:24 [INFO] [stderr] | [INFO] [stderr] 574 | pub fn to_receiver(&mut self) -> OsIpcReceiver { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stderr] [INFO] [stderr] error: you are getting the inner pointer of a temporary `CString` [INFO] [stderr] --> src/platform/unix/mod.rs:605:51 [INFO] [stderr] | [INFO] [stderr] 605 | let (sockaddr, len) = new_sockaddr_un(CString::new(path_string).unwrap().as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::temporary_cstring_as_ptr)] on by default [INFO] [stderr] = note: that pointer will be invalid outside this expression [INFO] [stderr] help: assign the `CString` to a variable to extend its lifetime [INFO] [stderr] --> src/platform/unix/mod.rs:605:51 [INFO] [stderr] | [INFO] [stderr] 605 | let (sockaddr, len) = new_sockaddr_un(CString::new(path_string).unwrap().as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#temporary_cstring_as_ptr [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:621:28 [INFO] [stderr] | [INFO] [stderr] 621 | pub fn accept(self) -> Result<(OsIpcReceiver, [INFO] [stderr] | ____________________________^ [INFO] [stderr] 622 | | Vec, [INFO] [stderr] 623 | | Vec, [INFO] [stderr] 624 | | Vec),UnixError> { [INFO] [stderr] | |_____________________________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: Comparing with null is better expressed by the .is_null() method [INFO] [stderr] --> src/platform/unix/mod.rs:705:17 [INFO] [stderr] | [INFO] [stderr] 705 | assert!(address != ptr::null_mut()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cmp_null)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cmp_null [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/platform/unix/mod.rs:822:30 [INFO] [stderr] | [INFO] [stderr] 822 | pub fn channel_is_closed(&self) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/platform/unix/mod.rs:861:12 [INFO] [stderr] | [INFO] [stderr] 861 | -> Result<(Vec, Vec, Vec),UnixError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] error: unsafe vector initialization [INFO] [stderr] --> src/platform/unix/mod.rs:874:9 [INFO] [stderr] | [INFO] [stderr] 873 | main_data_buffer = Vec::with_capacity(OsIpcSender::get_max_fragment_size()); [INFO] [stderr] | -------------------------------------------------------- help: consider replace allocation with: `vec![0; OsIpcSender::get_max_fragment_size()]` [INFO] [stderr] 874 | main_data_buffer.set_len(OsIpcSender::get_max_fragment_size()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unsafe_vector_initialization)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unsafe_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/platform/unix/mod.rs:899:23 [INFO] [stderr] | [INFO] [stderr] 899 | let fd = *cmsg_fds.offset(index as isize); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `cmsg_fds.add(index)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_offset_with_cast)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] [INFO] [stderr] warning: use of `offset` with a `usize` casted to an `isize` [INFO] [stderr] --> src/platform/unix/mod.rs:1068:5 [INFO] [stderr] | [INFO] [stderr] 1068 | / (cmsg as *mut libc::c_uchar).offset(CMSG_ALIGN( [INFO] [stderr] 1069 | | mem::size_of::()) as isize) as *mut c_void [INFO] [stderr] | |________________________________________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_offset_with_cast [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1068 | (cmsg as *mut libc::c_uchar).add(CMSG_ALIGN( [INFO] [stderr] 1069 | mem::size_of::())) as *mut c_void [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/platform/test.rs:915:58 [INFO] [stderr] | [INFO] [stderr] 915 | iterations_per_ms = iterations * 1_000_000 / time_per_run.subsec_nanos() as u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(time_per_run.subsec_nanos())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `router::RouterProxy` [INFO] [stderr] --> src/router.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | / pub fn new() -> RouterProxy { [INFO] [stderr] 29 | | let (msg_sender, msg_receiver) = crossbeam_channel::unbounded(); [INFO] [stderr] 30 | | let (wakeup_sender, wakeup_receiver) = ipc::channel().unwrap(); [INFO] [stderr] 31 | | thread::spawn(move || Router::new(msg_receiver, wakeup_receiver).run()); [INFO] [stderr] ... | [INFO] [stderr] 37 | | } [INFO] [stderr] 38 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 27 | impl Default for router::RouterProxy { [INFO] [stderr] 28 | fn default() -> Self { [INFO] [stderr] 29 | Self::new() [INFO] [stderr] 30 | } [INFO] [stderr] 31 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `while let` loop [INFO] [stderr] --> src/router.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | / loop { [INFO] [stderr] 103 | | let results = match self.ipc_receiver_set.select() { [INFO] [stderr] 104 | | Ok(results) => results, [INFO] [stderr] 105 | | Err(_) => break, [INFO] [stderr] ... | [INFO] [stderr] 126 | | } [INFO] [stderr] 127 | | } [INFO] [stderr] | |_________^ help: try: `while let Ok(results) = self.ipc_receiver_set.select() { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::drop` with a reference instead of an owned value. Dropping a reference does nothing. [INFO] [stderr] --> src/test.rs:239:57 [INFO] [stderr] | [INFO] [stderr] 239 | ROUTER.add_route(rx0.to_opaque(), Box::new(move |_| drop(&dropper))); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::drop_ref)] on by default [INFO] [stderr] note: argument has type &test::router_drops_callbacks_on_sender_shutdown::Dropper [INFO] [stderr] --> src/test.rs:239:62 [INFO] [stderr] | [INFO] [stderr] 239 | ROUTER.add_route(rx0.to_opaque(), Box::new(move |_| drop(&dropper))); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#drop_ref [INFO] [stderr] [INFO] [stderr] error: calls to `std::mem::drop` with a reference instead of an owned value. Dropping a reference does nothing. [INFO] [stderr] --> src/test.rs:262:57 [INFO] [stderr] | [INFO] [stderr] 262 | ROUTER.add_route(rx0.to_opaque(), Box::new(move |_| drop(&dropper))); [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: argument has type &test::router_drops_callbacks_on_cloned_sender_shutdown::Dropper [INFO] [stderr] --> src/test.rs:262:62 [INFO] [stderr] | [INFO] [stderr] 262 | ROUTER.add_route(rx0.to_opaque(), Box::new(move |_| drop(&dropper))); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#drop_ref [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `ipc-channel`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "0ffae806bd3f129b6ac1250766af3689f678b0100c9b5f4e7fe49b2056151359"` [INFO] running `"docker" "rm" "-f" "0ffae806bd3f129b6ac1250766af3689f678b0100c9b5f4e7fe49b2056151359"` [INFO] [stdout] 0ffae806bd3f129b6ac1250766af3689f678b0100c9b5f4e7fe49b2056151359