[INFO] fetching crate bitcoinleveldb-skiplist 0.1.16-alpha.0...
[INFO] checking bitcoinleveldb-skiplist-0.1.16-alpha.0 against master#4d1bd0db7f489b22c6d8aa2385937a95412c015b for pr-114682
[INFO] extracting crate bitcoinleveldb-skiplist 0.1.16-alpha.0 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate bitcoinleveldb-skiplist 0.1.16-alpha.0 on toolchain 4d1bd0db7f489b22c6d8aa2385937a95412c015b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate bitcoinleveldb-skiplist 0.1.16-alpha.0
[INFO] finished tweaking crates.io crate bitcoinleveldb-skiplist 0.1.16-alpha.0
[INFO] tweaked toml for crates.io crate bitcoinleveldb-skiplist 0.1.16-alpha.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fe262c1eaf6d0152218ae9789da87c9cde78ca5af418cd7f2d0aa72c5c757cc4
[INFO] running `Command { std: "docker" "start" "-a" "fe262c1eaf6d0152218ae9789da87c9cde78ca5af418cd7f2d0aa72c5c757cc4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fe262c1eaf6d0152218ae9789da87c9cde78ca5af418cd7f2d0aa72c5c757cc4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe262c1eaf6d0152218ae9789da87c9cde78ca5af418cd7f2d0aa72c5c757cc4", kill_on_drop: false }`
[INFO] [stdout] fe262c1eaf6d0152218ae9789da87c9cde78ca5af418cd7f2d0aa72c5c757cc4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+4d1bd0db7f489b22c6d8aa2385937a95412c015b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b357ba6d9f97a7ba50cf1ece06e7be0a039a32a8a5ed44de069316afab554987
[INFO] running `Command { std: "docker" "start" "-a" "b357ba6d9f97a7ba50cf1ece06e7be0a039a32a8a5ed44de069316afab554987", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling memchr v2.6.4
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde v1.0.193
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling pkg-config v0.3.28
[INFO] [stderr]    Compiling termcolor v1.4.0
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling syn v2.0.42
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling crossbeam-utils v0.8.17
[INFO] [stderr]    Compiling gimli v0.28.1
[INFO] [stderr]    Compiling miniz_oxide v0.7.1
[INFO] [stderr]    Compiling serde_json v1.0.108
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling ahash v0.7.7
[INFO] [stderr]    Compiling term v0.4.6
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling aho-corasick v1.1.2
[INFO] [stderr]    Compiling object v0.32.1
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling term-painter v0.2.4
[INFO] [stderr]    Compiling itertools v0.8.2
[INFO] [stderr]    Compiling dunce v1.0.4
[INFO] [stderr]    Compiling shell-words v0.1.0
[INFO] [stderr]    Compiling pathdiff v0.1.0
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling semver v1.0.20
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling rustix v0.38.28
[INFO] [stderr]    Compiling clang-sys v1.6.1
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.12
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling bitflags v2.4.1
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling os_str_bytes v6.6.1
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling bindgen v0.60.1
[INFO] [stderr]    Compiling home v0.5.9
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling textwrap v0.16.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling shlex v1.2.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling getrandom v0.2.11
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling addr2line v0.21.0
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling priority-queue v1.3.2
[INFO] [stderr]    Compiling thiserror v1.0.51
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]    Compiling sqlite3-src v0.2.12
[INFO] [stderr]    Compiling openssl-sys v0.9.98
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling libc-stdhandle v0.1.0
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling cpp_common v0.5.9
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.16
[INFO] [stderr]    Compiling cpp_core v0.6.0
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling powerfmt v0.2.0
[INFO] [stderr]    Compiling smallvec v1.11.2
[INFO] [stderr]    Compiling sqlite3-sys v0.12.0
[INFO] [stderr]    Compiling crossbeam-deque v0.8.4
[INFO] [stderr]    Compiling num-complex v0.4.4
[INFO] [stderr]    Compiling crossbeam-channel v0.5.9
[INFO] [stderr]    Compiling crossbeam-queue v0.3.9
[INFO] [stderr]    Compiling raw-cpuid v10.7.0
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling indoc v1.0.9
[INFO] [stderr]    Compiling time-core v0.1.2
[INFO] [stderr]    Compiling poison v0.1.0
[INFO] [stderr]    Compiling shared-mutex v0.3.1
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling nix v0.24.3
[INFO] [stderr]    Compiling crossbeam v0.8.2
[INFO] [stderr]    Compiling sqlite3 v0.24.0
[INFO] [stderr]    Compiling sqlite v0.25.3
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]    Compiling errno v0.2.8
[INFO] [stderr]    Compiling fs2 v0.4.3
[INFO] [stderr]    Compiling socket2 v0.4.10
[INFO] [stderr]    Compiling pnet_sys v0.31.0
[INFO] [stderr]    Compiling float-ord v0.3.2
[INFO] [stderr]    Compiling quanta v0.9.3
[INFO] [stderr]    Compiling atomic-take v1.1.0
[INFO] [stderr]    Compiling bitset v0.1.2
[INFO] [stderr]    Compiling comparator v0.3.0
[INFO] [stderr]    Compiling atomic v0.5.3
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling time-point v0.1.1
[INFO] [stderr]    Compiling maplit v1.0.2
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling cpp_build v0.5.9
[INFO] [stderr]    Compiling env_logger v0.9.3
[INFO] [stderr]    Compiling atomic_float v0.1.0
[INFO] [stderr]    Compiling const-default v1.0.0
[INFO] [stderr]    Compiling winapi v0.2.8
[INFO] [stderr]    Compiling multiset v0.0.5
[INFO] [stderr]    Compiling integer-encoding v3.0.4
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling num v0.4.1
[INFO] [stderr]    Compiling serde_derive v1.0.193
[INFO] [stderr]    Compiling cpp_macros v0.5.9
[INFO] [stderr]    Compiling thiserror-impl v1.0.51
[INFO] [stderr]    Compiling qttypes v0.2.11
[INFO] [stderr]    Compiling qmetaobject v0.2.10
[INFO] [stderr]    Compiling qt_macros v0.1.1
[INFO] [stderr]    Compiling qmetaobject_impl v0.2.10
[INFO] [stderr]    Compiling phf_macros v0.10.0
[INFO] [stderr]    Compiling modular-bitfield-impl v0.11.2
[INFO] [stderr]    Compiling delegate v0.7.0
[INFO] [stderr]    Compiling try-catch v0.2.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling cpp v0.5.9
[INFO] [stderr]    Compiling phf v0.10.1
[INFO] [stderr]    Compiling modular-bitfield v0.11.2
[INFO] [stderr]    Compiling libevent-sys v0.2.6
[INFO] [stderr]    Compiling toml v0.4.10
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling deranged v0.3.10
[INFO] [stderr]    Compiling multimap v0.8.3
[INFO] [stderr]    Compiling serde-big-array v0.4.1
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling ritual_common v0.4.0
[INFO] [stderr]     Checking time v0.3.31
[INFO] [stderr]    Compiling qt_ritual_common v0.4.0
[INFO] [stderr]    Compiling ritual_build v0.4.0
[INFO] [stderr]    Compiling qt_ritual_build v0.5.0
[INFO] [stderr]    Compiling qt_core v0.5.0
[INFO] [stderr]    Compiling qt_gui v0.5.0
[INFO] [stderr]    Compiling libevent v0.1.0
[INFO] [stderr]     Checking bitcoin-imports v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoin-cfg v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoin-derive v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-slice v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-status v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-util v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-comparator v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-filter v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-arena v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-key v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-rand v0.1.16-alpha.0
[INFO] [stderr]    Compiling bitcoinleveldb-skiplist v0.1.16-alpha.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `list`
[INFO] [stdout]   --> src/skiplist.rs:91:16
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn new(list: *const SkipList<Box<dyn SliceComparator>>) -> Self {
[INFO] [stdout]    |                ^^^^ help: if this is intentional, prefix it with an underscore: `_list`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/skiplist.rs:168:38
[INFO] [stdout]     |
[INFO] [stdout] 168 |     #[inline] pub fn seek(&mut self, target: &dyn Key)  {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist.rs:225:16
[INFO] [stdout]     |
[INFO] [stdout] 225 |     pub fn new(k: &Box<dyn Key>) -> Self {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:239:28
[INFO] [stdout]     |
[INFO] [stdout] 239 |     pub fn next(&mut self, n: i32) -> *mut SkipListNode {
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         n: i32,
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/skiplist.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         x: *mut SkipListNode)  {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:268:39
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn no_barrier_next(&mut self, n: i32) -> *mut SkipListNode {
[INFO] [stdout]     |                                       ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:278:9
[INFO] [stdout]     |
[INFO] [stdout] 278 |         n: i32,
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/skiplist.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |         x: *mut SkipListNode)  {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/skiplist.rs:299:25
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn equal(&self, a: &Box<dyn Key>, b: &Box<dyn Key>) -> bool {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/skiplist.rs:299:43
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn equal(&self, a: &Box<dyn Key>, b: &Box<dyn Key>) -> bool {
[INFO] [stdout]     |                                           ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |         key_:    &Box<dyn Key>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> src/skiplist.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         height: i32) -> *mut SkipListNode {
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         key_: &Box<dyn Key>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:342:9
[INFO] [stdout]     |
[INFO] [stdout] 342 |         n:   *mut SkipListNode) -> bool {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |         key_:  &Box<dyn Key>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `list`
[INFO] [stdout]   --> src/skiplist.rs:91:16
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn new(list: *const SkipList<Box<dyn SliceComparator>>) -> Self {
[INFO] [stdout]    |                ^^^^ help: if this is intentional, prefix it with an underscore: `_list`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prev`
[INFO] [stdout]    --> src/skiplist.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 363 |         prev: *mut *mut SkipListNode) -> *mut SkipListNode {
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/skiplist.rs:168:38
[INFO] [stdout]     |
[INFO] [stdout] 168 |     #[inline] pub fn seek(&mut self, target: &dyn Key)  {
[INFO] [stdout]     |                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:393:34
[INFO] [stdout]     |
[INFO] [stdout] 393 |     pub fn find_less_than(&self, key_: &Box<dyn Key>) -> *mut SkipListNode {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmp`
[INFO] [stdout]    --> src/skiplist.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         cmp:   Box<dyn SliceComparator>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_cmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arena`
[INFO] [stdout]    --> src/skiplist.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         arena: *mut Arena) -> Self {
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist.rs:225:16
[INFO] [stdout]     |
[INFO] [stdout] 225 |     pub fn new(k: &Box<dyn Key>) -> Self {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:475:30
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub fn insert(&mut self, key_: &Box<dyn Key>)  {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:517:28
[INFO] [stdout]     |
[INFO] [stdout] 517 |     pub fn contains(&self, key_: &Box<dyn Key>) -> bool {
[INFO] [stdout]     |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/skiplist_test.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn invoke(&self, a: &Key, b: &Key) -> i32 {
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/skiplist_test.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn invoke(&self, a: &Key, b: &Key) -> i32 {
[INFO] [stdout]    |                                   ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:239:28
[INFO] [stdout]     |
[INFO] [stdout] 239 |     pub fn next(&mut self, n: i32) -> *mut SkipListNode {
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         n: i32,
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/skiplist.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         x: *mut SkipListNode)  {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:268:39
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn no_barrier_next(&mut self, n: i32) -> *mut SkipListNode {
[INFO] [stdout]     |                                       ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:278:9
[INFO] [stdout]     |
[INFO] [stdout] 278 |         n: i32,
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/skiplist.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |         x: *mut SkipListNode)  {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/skiplist.rs:299:25
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn equal(&self, a: &Box<dyn Key>, b: &Box<dyn Key>) -> bool {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/skiplist.rs:299:43
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn equal(&self, a: &Box<dyn Key>, b: &Box<dyn Key>) -> bool {
[INFO] [stdout]     |                                           ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |         key_:    &Box<dyn Key>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> src/skiplist.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         height: i32) -> *mut SkipListNode {
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |         key_: &Box<dyn Key>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/skiplist.rs:342:9
[INFO] [stdout]     |
[INFO] [stdout] 342 |         n:   *mut SkipListNode) -> bool {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |         key_:  &Box<dyn Key>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prev`
[INFO] [stdout]    --> src/skiplist.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 363 |         prev: *mut *mut SkipListNode) -> *mut SkipListNode {
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:393:34
[INFO] [stdout]     |
[INFO] [stdout] 393 |     pub fn find_less_than(&self, key_: &Box<dyn Key>) -> *mut SkipListNode {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmp`
[INFO] [stdout]    --> src/skiplist.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         cmp:   Box<dyn SliceComparator>,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_cmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arena`
[INFO] [stdout]    --> src/skiplist.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         arena: *mut Arena) -> Self {
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_arena`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:212:31
[INFO] [stdout]     |
[INFO] [stdout] 212 |         pub fn set(&mut self, k: i32, v: i32)  {
[INFO] [stdout]     |                               ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:475:30
[INFO] [stdout]     |
[INFO] [stdout] 475 |     pub fn insert(&mut self, key_: &Box<dyn Key>)  {
[INFO] [stdout]     |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/skiplist_test.rs:212:39
[INFO] [stdout]     |
[INFO] [stdout] 212 |         pub fn set(&mut self, k: i32, v: i32)  {
[INFO] [stdout]     |                                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist.rs:517:28
[INFO] [stdout]     |
[INFO] [stdout] 517 |     pub fn contains(&self, key_: &Box<dyn Key>) -> bool {
[INFO] [stdout]     |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:220:31
[INFO] [stdout]     |
[INFO] [stdout] 220 |         pub fn get(&mut self, k: i32) -> i32 {
[INFO] [stdout]     |                               ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist_test.rs:244:16
[INFO] [stdout]     |
[INFO] [stdout] 244 |     pub fn key(key_: Key) -> u64 {
[INFO] [stdout]     |                ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/skiplist_test.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn invoke(&self, a: &Key, b: &Key) -> i32 {
[INFO] [stdout]    |                          ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist_test.rs:252:16
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn gen(key_: Key) -> u64 {
[INFO] [stdout]     |                ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist_test.rs:260:17
[INFO] [stdout]     |
[INFO] [stdout] 260 |     pub fn hash(key_: Key) -> u64 {
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> src/skiplist_test.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn invoke(&self, a: &Key, b: &Key) -> i32 {
[INFO] [stdout]    |                                   ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:268:25
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn hash_numbers(k: u64, g: u64) -> u64 {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:212:31
[INFO] [stdout]     |
[INFO] [stdout] 212 |         pub fn set(&mut self, k: i32, v: i32)  {
[INFO] [stdout]     |                               ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/skiplist_test.rs:212:39
[INFO] [stdout]     |
[INFO] [stdout] 212 |         pub fn set(&mut self, k: i32, v: i32)  {
[INFO] [stdout]     |                                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]    --> src/skiplist_test.rs:268:33
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn hash_numbers(k: u64, g: u64) -> u64 {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:220:31
[INFO] [stdout]     |
[INFO] [stdout] 220 |         pub fn get(&mut self, k: i32) -> i32 {
[INFO] [stdout]     |                               ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:277:21
[INFO] [stdout]     |
[INFO] [stdout] 277 |     pub fn make_key(k: u64, g: u64) -> Key {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]    --> src/skiplist_test.rs:277:29
[INFO] [stdout]     |
[INFO] [stdout] 277 |     pub fn make_key(k: u64, g: u64) -> Key {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:288:25
[INFO] [stdout]     |
[INFO] [stdout] 288 |     pub fn is_valid_key(k: Key) -> bool {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist_test.rs:244:16
[INFO] [stdout]     |
[INFO] [stdout] 244 |     pub fn key(key_: Key) -> u64 {
[INFO] [stdout]     |                ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rnd`
[INFO] [stdout]    --> src/skiplist_test.rs:296:26
[INFO] [stdout]     |
[INFO] [stdout] 296 |     pub fn random_target(rnd: *mut Random) -> Key {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_rnd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rnd`
[INFO] [stdout]    --> src/skiplist_test.rs:318:34
[INFO] [stdout]     |
[INFO] [stdout] 318 |     pub fn write_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_rnd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist_test.rs:252:16
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn gen(key_: Key) -> u64 {
[INFO] [stdout]     |                ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rnd`
[INFO] [stdout]    --> src/skiplist_test.rs:330:33
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn read_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_rnd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_`
[INFO] [stdout]    --> src/skiplist_test.rs:260:17
[INFO] [stdout]     |
[INFO] [stdout] 260 |     pub fn hash(key_: Key) -> u64 {
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_key_`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:268:25
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn hash_numbers(k: u64, g: u64) -> u64 {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/skiplist_test.rs:436:16
[INFO] [stdout]     |
[INFO] [stdout] 436 |     pub fn new(s: i32) -> Self {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]    --> src/skiplist_test.rs:268:33
[INFO] [stdout]     |
[INFO] [stdout] 268 |     pub fn hash_numbers(k: u64, g: u64) -> u64 {
[INFO] [stdout]     |                                 ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/skiplist_test.rs:450:28
[INFO] [stdout]     |
[INFO] [stdout] 450 |     pub fn wait(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:277:21
[INFO] [stdout]     |
[INFO] [stdout] 277 |     pub fn make_key(k: u64, g: u64) -> Key {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/skiplist_test.rs:463:30
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub fn change(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |                              ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]    --> src/skiplist_test.rs:277:29
[INFO] [stdout]     |
[INFO] [stdout] 277 |     pub fn make_key(k: u64, g: u64) -> Key {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arg`
[INFO] [stdout]    --> src/skiplist_test.rs:475:22
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn concurrent_reader(arg: *mut c_void)  {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_arg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/skiplist_test.rs:288:25
[INFO] [stdout]     |
[INFO] [stdout] 288 |     pub fn is_valid_key(k: Key) -> bool {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rnd`
[INFO] [stdout]    --> src/skiplist_test.rs:296:26
[INFO] [stdout]     |
[INFO] [stdout] 296 |     pub fn random_target(rnd: *mut Random) -> Key {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_rnd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `run`
[INFO] [stdout]    --> src/skiplist_test.rs:491:19
[INFO] [stdout]     |
[INFO] [stdout] 491 | fn run_concurrent(run: i32)  {
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_run`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rnd`
[INFO] [stdout]    --> src/skiplist_test.rs:318:34
[INFO] [stdout]     |
[INFO] [stdout] 318 |     pub fn write_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_rnd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rnd`
[INFO] [stdout]    --> src/skiplist_test.rs:330:33
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn read_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |                                 ^^^ help: if this is intentional, prefix it with an underscore: `_rnd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/skiplist_test.rs:436:16
[INFO] [stdout]     |
[INFO] [stdout] 436 |     pub fn new(s: i32) -> Self {
[INFO] [stdout]     |                ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/skiplist_test.rs:450:28
[INFO] [stdout]     |
[INFO] [stdout] 450 |     pub fn wait(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/skiplist_test.rs:463:30
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub fn change(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |                              ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arg`
[INFO] [stdout]    --> src/skiplist_test.rs:475:22
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn concurrent_reader(arg: *mut c_void)  {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_arg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `run`
[INFO] [stdout]    --> src/skiplist_test.rs:491:19
[INFO] [stdout]     |
[INFO] [stdout] 491 | fn run_concurrent(run: i32)  {
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_run`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `argc`
[INFO] [stdout]    --> src/skiplist_test.rs:551:9
[INFO] [stdout]     |
[INFO] [stdout] 551 |         argc: i32,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_argc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `argv`
[INFO] [stdout]    --> src/skiplist_test.rs:552:9
[INFO] [stdout]     |
[INFO] [stdout] 552 |         argv: *mut *mut u8) -> i32 {
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_argv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `argc`
[INFO] [stdout]    --> src/skiplist_test.rs:551:9
[INFO] [stdout]     |
[INFO] [stdout] 551 |         argc: i32,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_argc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `argv`
[INFO] [stdout]    --> src/skiplist_test.rs:552:9
[INFO] [stdout]     |
[INFO] [stdout] 552 |         argv: *mut *mut u8) -> i32 {
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_argv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `compare`, `arena`, `head`, `max_height`, and `rnd` are never read
[INFO] [stdout]   --> src/skiplist.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct SkipList<Comparator> {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     compare:    Comparator,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     arena:      *const Arena,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 45 |
[INFO] [stdout] 46 |     head:       *const SkipListNode,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     max_height: Atomic<i32>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     rnd:        Random,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `list` and `node` are never read
[INFO] [stdout]   --> src/skiplist.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct SkipListIterator {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 73 |     list: *mut SkipList<Box<dyn SliceComparator>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 74 |     node: *mut SkipListNode,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `key_` and `next` are never read
[INFO] [stdout]    --> src/skiplist.rs:213:5
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct SkipListNode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 213 |     key_:  Box<dyn Key>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     next: [Atomic<*mut SkipListNode>; 1],
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Key` is never used
[INFO] [stdout]  --> src/skiplist_test.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | type Key = u64;
[INFO] [stdout]   |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `invoke` is never used
[INFO] [stdout]   --> src/skiplist_test.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TComparator {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 12 |
[INFO] [stdout] 13 |     pub fn invoke(&self, a: &Key, b: &Key) -> i32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SkipTest` is never constructed
[INFO] [stdout]   --> src/skiplist_test.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct SkipTest {}
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `current`, `arena`, and `list` are never read
[INFO] [stdout]    --> src/skiplist_test.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 165 | struct ConcurrentTest {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 170 |     current: concurrent_test::State,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 171 |
[INFO] [stdout] 172 |     arena:   Arena,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     list:    SkipList<TComparator>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/skiplist_test.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 242 | impl ConcurrentTest {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 243 |
[INFO] [stdout] 244 |     pub fn key(key_: Key) -> u64 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn gen(key_: Key) -> u64 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn hash(key_: Key) -> u64 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 268 |     pub fn hash_numbers(k: u64, g: u64) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     pub fn make_key(k: u64, g: u64) -> Key {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     pub fn is_valid_key(k: Key) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn random_target(rnd: *mut Random) -> Key {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |     pub fn write_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub fn read_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestState` is never constructed
[INFO] [stdout]    --> src/skiplist_test.rs:411:8
[INFO] [stdout]     |
[INFO] [stdout] 411 | struct TestState {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `wait`, and `change` are never used
[INFO] [stdout]    --> src/skiplist_test.rs:436:12
[INFO] [stdout]     |
[INFO] [stdout] 434 | impl TestState {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 435 |     
[INFO] [stdout] 436 |     pub fn new(s: i32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 450 |     pub fn wait(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 463 |     pub fn change(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `concurrent_reader` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:475:4
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn concurrent_reader(arg: *mut c_void)  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_concurrent` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:491:4
[INFO] [stdout]     |
[INFO] [stdout] 491 | fn run_concurrent(run: i32)  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `skiplist_test_main` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:550:4
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn skiplist_test_main(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generation` is never read
[INFO] [stdout]    --> src/skiplist_test.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub struct State {
[INFO] [stdout]     |                ----- field in this struct
[INFO] [stdout] 193 |         generation: [AtomicI32; K],
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set` and `get` are never used
[INFO] [stdout]    --> src/skiplist_test.rs:212:16
[INFO] [stdout]     |
[INFO] [stdout] 210 |     impl State {
[INFO] [stdout]     |     ---------- methods in this implementation
[INFO] [stdout] 211 |         
[INFO] [stdout] 212 |         pub fn set(&mut self, k: i32, v: i32)  {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |         pub fn get(&mut self, k: i32) -> i32 {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `compare`, `arena`, `head`, `max_height`, and `rnd` are never read
[INFO] [stdout]   --> src/skiplist.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct SkipList<Comparator> {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     compare:    Comparator,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     arena:      *const Arena,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 45 |
[INFO] [stdout] 46 |     head:       *const SkipListNode,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     max_height: Atomic<i32>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     rnd:        Random,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Inner` is never constructed
[INFO] [stdout]    --> src/skiplist_test.rs:422:16
[INFO] [stdout]     |
[INFO] [stdout] 422 |     pub struct Inner {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ReaderState` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:427:14
[INFO] [stdout]     |
[INFO] [stdout] 427 |     pub enum ReaderState { 
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `list` and `node` are never read
[INFO] [stdout]   --> src/skiplist.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct SkipListIterator {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 73 |     list: *mut SkipList<Box<dyn SliceComparator>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 74 |     node: *mut SkipListNode,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SkipListMaxHeight` should have an upper case name
[INFO] [stdout]   --> src/skiplist.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const SkipListMaxHeight: usize = 12;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SKIP_LIST_MAX_HEIGHT`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `key_` and `next` are never read
[INFO] [stdout]    --> src/skiplist.rs:213:5
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct SkipListNode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 213 |     key_:  Box<dyn Key>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     next: [Atomic<*mut SkipListNode>; 1],
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Key` is never used
[INFO] [stdout]  --> src/skiplist_test.rs:7:6
[INFO] [stdout]   |
[INFO] [stdout] 7 | type Key = u64;
[INFO] [stdout]   |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `invoke` is never used
[INFO] [stdout]   --> src/skiplist_test.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl TComparator {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] 12 |
[INFO] [stdout] 13 |     pub fn invoke(&self, a: &Key, b: &Key) -> i32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SkipTest` is never constructed
[INFO] [stdout]   --> src/skiplist_test.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct SkipTest {}
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `current`, `arena`, and `list` are never read
[INFO] [stdout]    --> src/skiplist_test.rs:170:5
[INFO] [stdout]     |
[INFO] [stdout] 165 | struct ConcurrentTest {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 170 |     current: concurrent_test::State,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 171 |
[INFO] [stdout] 172 |     arena:   Arena,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     list:    SkipList<TComparator>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/skiplist_test.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 242 | impl ConcurrentTest {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 243 |
[INFO] [stdout] 244 |     pub fn key(key_: Key) -> u64 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn gen(key_: Key) -> u64 {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn hash(key_: Key) -> u64 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 268 |     pub fn hash_numbers(k: u64, g: u64) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |     pub fn make_key(k: u64, g: u64) -> Key {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     pub fn is_valid_key(k: Key) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn random_target(rnd: *mut Random) -> Key {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |     pub fn write_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub fn read_step(&mut self, rnd: *mut Random)  {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestState` is never constructed
[INFO] [stdout]    --> src/skiplist_test.rs:411:8
[INFO] [stdout]     |
[INFO] [stdout] 411 | struct TestState {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `wait`, and `change` are never used
[INFO] [stdout]    --> src/skiplist_test.rs:436:12
[INFO] [stdout]     |
[INFO] [stdout] 434 | impl TestState {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 435 |     
[INFO] [stdout] 436 |     pub fn new(s: i32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 450 |     pub fn wait(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 463 |     pub fn change(&mut self, s: test_state::ReaderState)  {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `concurrent_reader` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:475:4
[INFO] [stdout]     |
[INFO] [stdout] 475 | fn concurrent_reader(arg: *mut c_void)  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_concurrent` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:491:4
[INFO] [stdout]     |
[INFO] [stdout] 491 | fn run_concurrent(run: i32)  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `skiplist_test_main` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:550:4
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn skiplist_test_main(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generation` is never read
[INFO] [stdout]    --> src/skiplist_test.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub struct State {
[INFO] [stdout]     |                ----- field in this struct
[INFO] [stdout] 193 |         generation: [AtomicI32; K],
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set` and `get` are never used
[INFO] [stdout]    --> src/skiplist_test.rs:212:16
[INFO] [stdout]     |
[INFO] [stdout] 210 |     impl State {
[INFO] [stdout]     |     ---------- methods in this implementation
[INFO] [stdout] 211 |         
[INFO] [stdout] 212 |         pub fn set(&mut self, k: i32, v: i32)  {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |         pub fn get(&mut self, k: i32) -> i32 {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Inner` is never constructed
[INFO] [stdout]    --> src/skiplist_test.rs:422:16
[INFO] [stdout]     |
[INFO] [stdout] 422 |     pub struct Inner {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ReaderState` is never used
[INFO] [stdout]    --> src/skiplist_test.rs:427:14
[INFO] [stdout]     |
[INFO] [stdout] 427 |     pub enum ReaderState { 
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SkipListMaxHeight` should have an upper case name
[INFO] [stdout]   --> src/skiplist.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const SkipListMaxHeight: usize = 12;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `SKIP_LIST_MAX_HEIGHT`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 63 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 63 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 38s
[INFO] running `Command { std: "docker" "inspect" "b357ba6d9f97a7ba50cf1ece06e7be0a039a32a8a5ed44de069316afab554987", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b357ba6d9f97a7ba50cf1ece06e7be0a039a32a8a5ed44de069316afab554987", kill_on_drop: false }`
[INFO] [stdout] b357ba6d9f97a7ba50cf1ece06e7be0a039a32a8a5ed44de069316afab554987
