[INFO] fetching crate dynprops 0.1.0... [INFO] linting dynprops-0.1.0 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate dynprops 0.1.0 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate dynprops 0.1.0 [INFO] finished tweaking crates.io crate dynprops 0.1.0 [INFO] tweaked toml for crates.io crate dynprops 0.1.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate dynprops 0.1.0 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 24 packages to latest compatible versions [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] Downloading crates ... [INFO] [stderr] Downloaded static_init_macro v1.0.4 [INFO] [stderr] Downloaded static_init v1.0.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] a417490ed7f4ff9736510ff80953f26a6bedd42eaa84466fbc2a73c2f4d3e156 [INFO] running `Command { std: "docker" "start" "-a" "a417490ed7f4ff9736510ff80953f26a6bedd42eaa84466fbc2a73c2f4d3e156", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a417490ed7f4ff9736510ff80953f26a6bedd42eaa84466fbc2a73c2f4d3e156", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a417490ed7f4ff9736510ff80953f26a6bedd42eaa84466fbc2a73c2f4d3e156", kill_on_drop: false }` [INFO] [stdout] a417490ed7f4ff9736510ff80953f26a6bedd42eaa84466fbc2a73c2f4d3e156 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] 7bc9b46d77089614c6701bbdd121dba40de34544d21d2459f4e9884f1a4f856e [INFO] running `Command { std: "docker" "start" "-a" "7bc9b46d77089614c6701bbdd121dba40de34544d21d2459f4e9884f1a4f856e", kill_on_drop: false }` [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling static_init v1.0.4 [INFO] [stderr] Checking dynprops v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling static_init_macro v1.0.4 [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> src/lib.rs:34:21 [INFO] [stdout] | [INFO] [stdout] 34 | use std::{mem, ptr, usize}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `usize::` will resolve to the respective associated constant [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Subject` [INFO] [stdout] --> src/lib.rs:75:5 [INFO] [stdout] | [INFO] [stdout] 75 | / pub fn new() -> Self { [INFO] [stdout] 76 | | Subject { [INFO] [stdout] 77 | | layout: Mutex::new(SubjectLayout { [INFO] [stdout] 78 | | size: 0, [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#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 73 + impl Default for Subject { [INFO] [stdout] 74 + fn default() -> Self { [INFO] [stdout] 75 + Self::new() [INFO] [stdout] 76 + } [INFO] [stdout] 77 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | / return Property { [INFO] [stdout] 92 | | subject: self, [INFO] [stdout] 93 | | offset: info.offset, [INFO] [stdout] 94 | | init_bit_offset: info.init_bit_offset, [INFO] [stdout] 95 | | initer, [INFO] [stdout] 96 | | _phantom: PhantomData, [INFO] [stdout] 97 | | }; [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] 91 ~ Property { [INFO] [stdout] 92 + subject: self, [INFO] [stdout] 93 + offset: info.offset, [INFO] [stdout] 94 + init_bit_offset: info.init_bit_offset, [INFO] [stdout] 95 + initer, [INFO] [stdout] 96 + _phantom: PhantomData, [INFO] [stdout] 97 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | return Layout::from_size_align_unchecked(guard.size, guard.align); [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] 141 - return Layout::from_size_align_unchecked(guard.size, guard.align); [INFO] [stdout] 141 + Layout::from_size_align_unchecked(guard.size, guard.align) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | return layout.alloc_prop::

(); [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] 147 - return layout.alloc_prop::

(); [INFO] [stdout] 147 + layout.alloc_prop::

() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | return layout.free_nodrop_prop(offset); [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] 153 - return layout.free_nodrop_prop(offset); [INFO] [stdout] 153 + layout.free_nodrop_prop(offset) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | / return PropertyInfo { [INFO] [stdout] 171 | | offset, [INFO] [stdout] 172 | | init_bit_offset, [INFO] [stdout] 173 | | }; [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] 170 ~ PropertyInfo { [INFO] [stdout] 171 + offset, [INFO] [stdout] 172 + init_bit_offset, [INFO] [stdout] 173 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | return offset * 8 + bit; [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] 196 - return offset * 8 + bit; [INFO] [stdout] 196 + offset * 8 + bit [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:207:9 [INFO] [stdout] | [INFO] [stdout] 207 | return offset; [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] 207 - return offset; [INFO] [stdout] 207 + offset [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | return result; [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] 275 - return result; [INFO] [stdout] 275 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | return value_ptr; [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] 427 - return value_ptr; [INFO] [stdout] 427 + value_ptr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use `std::ptr::eq` when comparing raw pointers [INFO] [stdout] --> src/lib.rs:392:12 [INFO] [stdout] | [INFO] [stdout] 392 | if (self.subject as *const Subject) != (index.subject as *const Subject) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!std::ptr::eq(self.subject, index.subject)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_eq [INFO] [stdout] = note: `#[warn(clippy::ptr_eq)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/lib.rs:416:52 [INFO] [stdout] | [INFO] [stdout] 416 | let init_value = index.initer.init(&self); [INFO] [stdout] | ^^^^^ help: change this to: `self` [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: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:444:13 [INFO] [stdout] | [INFO] [stdout] 444 | return &(*self.index_raw(index).as_ref()); [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] 444 - return &(*self.index_raw(index).as_ref()); [INFO] [stdout] 444 + &(*self.index_raw(index).as_ref()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref on an immutable reference [INFO] [stdout] --> src/lib.rs:444:20 [INFO] [stdout] | [INFO] [stdout] 444 | return &(*self.index_raw(index).as_ref()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `self.index_raw(index).as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref [INFO] [stdout] = note: `#[warn(clippy::borrow_deref_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:452:13 [INFO] [stdout] | [INFO] [stdout] 452 | return &mut (*self.index_raw(index).as_mut()); [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] 452 - return &mut (*self.index_raw(index).as_mut()); [INFO] [stdout] 452 + &mut (*self.index_raw(index).as_mut()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:530:28 [INFO] [stdout] | [INFO] [stdout] 530 | if !(lo_chunk_index < hi_chunk_index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(lo_chunk_index >= hi_chunk_index)` [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] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:574:9 [INFO] [stdout] | [INFO] [stdout] 574 | return result; [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] 574 - return result; [INFO] [stdout] 574 + result [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] --> src/lib.rs:521:9 [INFO] [stdout] | [INFO] [stdout] 521 | / match self.overflow_chunks.last() { [INFO] [stdout] 522 | | Some(last_overflow_chunk) => { [INFO] [stdout] 523 | | overflow_data_end = last_overflow_chunk.data_end; [INFO] [stdout] 524 | | if offset < last_overflow_chunk.data_end { [INFO] [stdout] ... | [INFO] [stdout] 554 | | _ => {} [INFO] [stdout] 555 | | } [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] 521 ~ if let Some(last_overflow_chunk) = self.overflow_chunks.last() { [INFO] [stdout] 522 + overflow_data_end = last_overflow_chunk.data_end; [INFO] [stdout] 523 + if offset < last_overflow_chunk.data_end { [INFO] [stdout] 524 + // Use binary search to figure out which chunk [INFO] [stdout] 525 + let mut lo_chunk_index = 0; [INFO] [stdout] 526 + let mut hi_chunk_index = self.overflow_chunks.len() - 1; [INFO] [stdout] 527 + let mut chunk_data_start = self.head_chunk.data_end; [INFO] [stdout] 528 + loop { [INFO] [stdout] 529 + if !(lo_chunk_index < hi_chunk_index) { [INFO] [stdout] 530 + break; [INFO] [stdout] 531 + } [INFO] [stdout] 532 + let mid_chunk_index = (lo_chunk_index + hi_chunk_index) / 2; [INFO] [stdout] 533 + let mid_chunk = &self.overflow_chunks[mid_chunk_index]; [INFO] [stdout] 534 + if offset < mid_chunk.data_end { [INFO] [stdout] 535 + hi_chunk_index = mid_chunk_index; [INFO] [stdout] 536 + } else { [INFO] [stdout] 537 + chunk_data_start = mid_chunk.data_end; [INFO] [stdout] 538 + lo_chunk_index = mid_chunk_index + 1; [INFO] [stdout] 539 + } [INFO] [stdout] 540 + } [INFO] [stdout] 541 + unsafe { [INFO] [stdout] 542 + let overflow_chunk = &self.overflow_chunks[lo_chunk_index]; [INFO] [stdout] 543 + return NonNull::new_unchecked( [INFO] [stdout] 544 + overflow_chunk [INFO] [stdout] 545 + .ptr [INFO] [stdout] 546 + .as_ptr() [INFO] [stdout] 547 + .sub(chunk_data_start) [INFO] [stdout] 548 + .add(offset), [INFO] [stdout] 549 + ); [INFO] [stdout] 550 + } [INFO] [stdout] 551 + } [INFO] [stdout] 552 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: importing legacy numeric constants [INFO] [stdout] --> src/lib.rs:34:21 [INFO] [stdout] | [INFO] [stdout] 34 | use std::{mem, ptr, usize}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: remove this import [INFO] [stdout] = note: then `usize::` will resolve to the respective associated constant [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `Subject` [INFO] [stdout] --> src/lib.rs:75:5 [INFO] [stdout] | [INFO] [stdout] 75 | / pub fn new() -> Self { [INFO] [stdout] 76 | | Subject { [INFO] [stdout] 77 | | layout: Mutex::new(SubjectLayout { [INFO] [stdout] 78 | | size: 0, [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#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 73 + impl Default for Subject { [INFO] [stdout] 74 + fn default() -> Self { [INFO] [stdout] 75 + Self::new() [INFO] [stdout] 76 + } [INFO] [stdout] 77 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | / return Property { [INFO] [stdout] 92 | | subject: self, [INFO] [stdout] 93 | | offset: info.offset, [INFO] [stdout] 94 | | init_bit_offset: info.init_bit_offset, [INFO] [stdout] 95 | | initer, [INFO] [stdout] 96 | | _phantom: PhantomData, [INFO] [stdout] 97 | | }; [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] 91 ~ Property { [INFO] [stdout] 92 + subject: self, [INFO] [stdout] 93 + offset: info.offset, [INFO] [stdout] 94 + init_bit_offset: info.init_bit_offset, [INFO] [stdout] 95 + initer, [INFO] [stdout] 96 + _phantom: PhantomData, [INFO] [stdout] 97 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | return Layout::from_size_align_unchecked(guard.size, guard.align); [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] 141 - return Layout::from_size_align_unchecked(guard.size, guard.align); [INFO] [stdout] 141 + Layout::from_size_align_unchecked(guard.size, guard.align) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | return layout.alloc_prop::

(); [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] 147 - return layout.alloc_prop::

(); [INFO] [stdout] 147 + layout.alloc_prop::

() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | return layout.free_nodrop_prop(offset); [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] 153 - return layout.free_nodrop_prop(offset); [INFO] [stdout] 153 + layout.free_nodrop_prop(offset) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:170:9 [INFO] [stdout] | [INFO] [stdout] 170 | / return PropertyInfo { [INFO] [stdout] 171 | | offset, [INFO] [stdout] 172 | | init_bit_offset, [INFO] [stdout] 173 | | }; [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] 170 ~ PropertyInfo { [INFO] [stdout] 171 + offset, [INFO] [stdout] 172 + init_bit_offset, [INFO] [stdout] 173 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | return offset * 8 + bit; [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] 196 - return offset * 8 + bit; [INFO] [stdout] 196 + offset * 8 + bit [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:207:9 [INFO] [stdout] | [INFO] [stdout] 207 | return offset; [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] 207 - return offset; [INFO] [stdout] 207 + offset [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | return result; [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] 275 - return result; [INFO] [stdout] 275 + result [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | return value_ptr; [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] 427 - return value_ptr; [INFO] [stdout] 427 + value_ptr [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use `std::ptr::eq` when comparing raw pointers [INFO] [stdout] --> src/lib.rs:392:12 [INFO] [stdout] | [INFO] [stdout] 392 | if (self.subject as *const Subject) != (index.subject as *const Subject) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `!std::ptr::eq(self.subject, index.subject)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_eq [INFO] [stdout] = note: `#[warn(clippy::ptr_eq)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/lib.rs:416:52 [INFO] [stdout] | [INFO] [stdout] 416 | let init_value = index.initer.init(&self); [INFO] [stdout] | ^^^^^ help: change this to: `self` [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: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:444:13 [INFO] [stdout] | [INFO] [stdout] 444 | return &(*self.index_raw(index).as_ref()); [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] 444 - return &(*self.index_raw(index).as_ref()); [INFO] [stdout] 444 + &(*self.index_raw(index).as_ref()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: deref on an immutable reference [INFO] [stdout] --> src/lib.rs:444:20 [INFO] [stdout] | [INFO] [stdout] 444 | return &(*self.index_raw(index).as_ref()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if you would like to reborrow, try removing `&*`: `self.index_raw(index).as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#borrow_deref_ref [INFO] [stdout] = note: `#[warn(clippy::borrow_deref_ref)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:452:13 [INFO] [stdout] | [INFO] [stdout] 452 | return &mut (*self.index_raw(index).as_mut()); [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] 452 - return &mut (*self.index_raw(index).as_mut()); [INFO] [stdout] 452 + &mut (*self.index_raw(index).as_mut()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:530:28 [INFO] [stdout] | [INFO] [stdout] 530 | if !(lo_chunk_index < hi_chunk_index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(lo_chunk_index >= hi_chunk_index)` [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] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:574:9 [INFO] [stdout] | [INFO] [stdout] 574 | return result; [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] 574 - return result; [INFO] [stdout] 574 + result [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] --> src/lib.rs:521:9 [INFO] [stdout] | [INFO] [stdout] 521 | / match self.overflow_chunks.last() { [INFO] [stdout] 522 | | Some(last_overflow_chunk) => { [INFO] [stdout] 523 | | overflow_data_end = last_overflow_chunk.data_end; [INFO] [stdout] 524 | | if offset < last_overflow_chunk.data_end { [INFO] [stdout] ... | [INFO] [stdout] 554 | | _ => {} [INFO] [stdout] 555 | | } [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] 521 ~ if let Some(last_overflow_chunk) = self.overflow_chunks.last() { [INFO] [stdout] 522 + overflow_data_end = last_overflow_chunk.data_end; [INFO] [stdout] 523 + if offset < last_overflow_chunk.data_end { [INFO] [stdout] 524 + // Use binary search to figure out which chunk [INFO] [stdout] 525 + let mut lo_chunk_index = 0; [INFO] [stdout] 526 + let mut hi_chunk_index = self.overflow_chunks.len() - 1; [INFO] [stdout] 527 + let mut chunk_data_start = self.head_chunk.data_end; [INFO] [stdout] 528 + loop { [INFO] [stdout] 529 + if !(lo_chunk_index < hi_chunk_index) { [INFO] [stdout] 530 + break; [INFO] [stdout] 531 + } [INFO] [stdout] 532 + let mid_chunk_index = (lo_chunk_index + hi_chunk_index) / 2; [INFO] [stdout] 533 + let mid_chunk = &self.overflow_chunks[mid_chunk_index]; [INFO] [stdout] 534 + if offset < mid_chunk.data_end { [INFO] [stdout] 535 + hi_chunk_index = mid_chunk_index; [INFO] [stdout] 536 + } else { [INFO] [stdout] 537 + chunk_data_start = mid_chunk.data_end; [INFO] [stdout] 538 + lo_chunk_index = mid_chunk_index + 1; [INFO] [stdout] 539 + } [INFO] [stdout] 540 + } [INFO] [stdout] 541 + unsafe { [INFO] [stdout] 542 + let overflow_chunk = &self.overflow_chunks[lo_chunk_index]; [INFO] [stdout] 543 + return NonNull::new_unchecked( [INFO] [stdout] 544 + overflow_chunk [INFO] [stdout] 545 + .ptr [INFO] [stdout] 546 + .as_ptr() [INFO] [stdout] 547 + .sub(chunk_data_start) [INFO] [stdout] 548 + .add(offset), [INFO] [stdout] 549 + ); [INFO] [stdout] 550 + } [INFO] [stdout] 551 + } [INFO] [stdout] 552 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.06s [INFO] running `Command { std: "docker" "inspect" "7bc9b46d77089614c6701bbdd121dba40de34544d21d2459f4e9884f1a4f856e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7bc9b46d77089614c6701bbdd121dba40de34544d21d2459f4e9884f1a4f856e", kill_on_drop: false }` [INFO] [stdout] 7bc9b46d77089614c6701bbdd121dba40de34544d21d2459f4e9884f1a4f856e