[INFO] crate quickercheck 0.2.0 is already in cache [INFO] extracting crate quickercheck 0.2.0 into work/ex/clippy-test-run/sources/stable/reg/quickercheck/0.2.0 [INFO] extracting crate quickercheck 0.2.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/quickercheck/0.2.0 [INFO] validating manifest of quickercheck-0.2.0 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of quickercheck-0.2.0 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing quickercheck-0.2.0 [INFO] finished frobbing quickercheck-0.2.0 [INFO] frobbed toml for quickercheck-0.2.0 written to work/ex/clippy-test-run/sources/stable/reg/quickercheck/0.2.0/Cargo.toml [INFO] started frobbing quickercheck-0.2.0 [INFO] finished frobbing quickercheck-0.2.0 [INFO] frobbed toml for quickercheck-0.2.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/quickercheck/0.2.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting quickercheck-0.2.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/quickercheck/0.2.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 1544bbb84e9db3e6718ee7adf603de8bff14e452e20bbb9413210d3d9e3c0a49 [INFO] running `"docker" "start" "-a" "1544bbb84e9db3e6718ee7adf603de8bff14e452e20bbb9413210d3d9e3c0a49"` [INFO] [stderr] Checking quickercheck v0.2.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:15:23 [INFO] [stderr] | [INFO] [stderr] 15 | GenerateCtx { rng: rng, size: size } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `rng` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:15:33 [INFO] [stderr] | [INFO] [stderr] 15 | GenerateCtx { rng: rng, size: size } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:169:33 [INFO] [stderr] | [INFO] [stderr] 169 | FromIteratorGenerator { generator: generator, _marker: PhantomData } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `generator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:193:58 [INFO] [stderr] | [INFO] [stderr] 193 | pub fn new(generator: G) -> Self { OptionGenerator { generator: generator } } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `generator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:215:68 [INFO] [stderr] | [INFO] [stderr] 215 | pub fn new(g_ok: GOk, g_err: GErr) -> Self { ResultGenerator { g_ok: g_ok, g_err: g_err } } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `g_ok` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:215:80 [INFO] [stderr] | [INFO] [stderr] 215 | pub fn new(g_ok: GOk, g_err: GErr) -> Self { ResultGenerator { g_ok: g_ok, g_err: g_err } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `g_err` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shrink.rs:175:32 [INFO] [stderr] | [INFO] [stderr] 175 | FromIteratorShrinker { shrinker: shrinker, _marker: PhantomData } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `shrinker` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shrink.rs:231:13 [INFO] [stderr] | [INFO] [stderr] 231 | elements: elements, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `elements` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shrink.rs:232:13 [INFO] [stderr] | [INFO] [stderr] 232 | k: k, [INFO] [stderr] | ^^^^ help: replace it with: `k` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:113:13 [INFO] [stderr] | [INFO] [stderr] 113 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/testable.rs:42:59 [INFO] [stderr] | [INFO] [stderr] 42 | ResizedTestable { testable: self.into_testable(), resize: resize } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `resize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:55:13 [INFO] [stderr] | [INFO] [stderr] 55 | attempts: attempts [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `attempts` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | seed: seed, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `seed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | size: size [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | max_size: max_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `max_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | tests: tests, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `tests` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:15:23 [INFO] [stderr] | [INFO] [stderr] 15 | GenerateCtx { rng: rng, size: size } [INFO] [stderr] | ^^^^^^^^ help: replace it with: `rng` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:15:33 [INFO] [stderr] | [INFO] [stderr] 15 | GenerateCtx { rng: rng, size: size } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:169:33 [INFO] [stderr] | [INFO] [stderr] 169 | FromIteratorGenerator { generator: generator, _marker: PhantomData } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `generator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:193:58 [INFO] [stderr] | [INFO] [stderr] 193 | pub fn new(generator: G) -> Self { OptionGenerator { generator: generator } } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `generator` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:215:68 [INFO] [stderr] | [INFO] [stderr] 215 | pub fn new(g_ok: GOk, g_err: GErr) -> Self { ResultGenerator { g_ok: g_ok, g_err: g_err } } [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `g_ok` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/generate.rs:215:80 [INFO] [stderr] | [INFO] [stderr] 215 | pub fn new(g_ok: GOk, g_err: GErr) -> Self { ResultGenerator { g_ok: g_ok, g_err: g_err } } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `g_err` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shrink.rs:175:32 [INFO] [stderr] | [INFO] [stderr] 175 | FromIteratorShrinker { shrinker: shrinker, _marker: PhantomData } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `shrinker` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shrink.rs:231:13 [INFO] [stderr] | [INFO] [stderr] 231 | elements: elements, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `elements` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/shrink.rs:232:13 [INFO] [stderr] | [INFO] [stderr] 232 | k: k, [INFO] [stderr] | ^^^^ help: replace it with: `k` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:16:13 [INFO] [stderr] | [INFO] [stderr] 16 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:82:13 [INFO] [stderr] | [INFO] [stderr] 82 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/rose.rs:113:13 [INFO] [stderr] | [INFO] [stderr] 113 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/testable.rs:42:59 [INFO] [stderr] | [INFO] [stderr] 42 | ResizedTestable { testable: self.into_testable(), resize: resize } [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `resize` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:55:13 [INFO] [stderr] | [INFO] [stderr] 55 | attempts: attempts [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `attempts` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:65:17 [INFO] [stderr] | [INFO] [stderr] 65 | seed: seed, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `seed` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | size: size [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:85:13 [INFO] [stderr] | [INFO] [stderr] 85 | max_size: max_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `max_size` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/quick_check.rs:92:13 [INFO] [stderr] | [INFO] [stderr] 92 | tests: tests, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `tests` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/arbitrary.rs:108:48 [INFO] [stderr] | [INFO] [stderr] 108 | FromIteratorGenerator::new(($($placeholder::arbitrary()),*)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/arbitrary.rs:112:47 [INFO] [stderr] | [INFO] [stderr] 112 | FromIteratorShrinker::new(($($placeholder::shrink()),*)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/arbitrary.rs:108:48 [INFO] [stderr] | [INFO] [stderr] 108 | FromIteratorGenerator::new(($($placeholder::arbitrary()),*)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/arbitrary.rs:108:48 [INFO] [stderr] | [INFO] [stderr] 108 | FromIteratorGenerator::new(($($placeholder::arbitrary()),*)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_parens)] on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/arbitrary.rs:112:47 [INFO] [stderr] | [INFO] [stderr] 112 | FromIteratorShrinker::new(($($placeholder::shrink()),*)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/arbitrary.rs:108:48 [INFO] [stderr] | [INFO] [stderr] 108 | FromIteratorGenerator::new(($($placeholder::arbitrary()),*)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] [INFO] [stderr] warning: the `size @ _` pattern can be written as just `size` [INFO] [stderr] --> src/generate.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | size @ _ if size == ::max_value() => self.rng.gen(), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] warning: the `size @ _` pattern can be written as just `size` [INFO] [stderr] --> src/generate.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | size @ _ => self.rng.gen_range(0, size + 1) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `generate::IntegerGenerator` [INFO] [stderr] --> src/generate.rs:84:5 [INFO] [stderr] | [INFO] [stderr] 84 | pub fn new() -> Self { IntegerGenerator(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 80 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `generate::UnsignedIntegerGenerator` [INFO] [stderr] --> src/generate.rs:125:5 [INFO] [stderr] | [INFO] [stderr] 125 | pub fn new() -> Self { UnsignedIntegerGenerator(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 121 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/generate.rs:200:9 [INFO] [stderr] | [INFO] [stderr] 200 | / match ctx.rng.gen() { [INFO] [stderr] 201 | | true => Some(self.generator.generate(ctx)), [INFO] [stderr] 202 | | false => None [INFO] [stderr] 203 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if ctx.rng.gen() { Some(self.generator.generate(ctx)) } else { None }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/generate.rs:222:9 [INFO] [stderr] | [INFO] [stderr] 222 | / match ctx.rng.gen() { [INFO] [stderr] 223 | | true => Ok(self.g_ok.generate(ctx)), [INFO] [stderr] 224 | | false => Err(self.g_err.generate(ctx)) [INFO] [stderr] 225 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if ctx.rng.gen() { Ok(self.g_ok.generate(ctx)) } else { Err(self.g_err.generate(ctx)) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `generate::RandGenerator` [INFO] [stderr] --> src/generate.rs:234:5 [INFO] [stderr] | [INFO] [stderr] 234 | / pub fn new() -> Self { [INFO] [stderr] 235 | | RandGenerator(PhantomData) [INFO] [stderr] 236 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 229 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the `size @ _` pattern can be written as just `size` [INFO] [stderr] --> src/generate.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | size @ _ if size == ::max_value() => self.rng.gen(), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] warning: the `size @ _` pattern can be written as just `size` [INFO] [stderr] --> src/generate.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | size @ _ => self.rng.gen_range(0, size + 1) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `generate::IntegerGenerator` [INFO] [stderr] --> src/generate.rs:84:5 [INFO] [stderr] | [INFO] [stderr] 84 | pub fn new() -> Self { IntegerGenerator(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 80 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `generate::UnsignedIntegerGenerator` [INFO] [stderr] --> src/generate.rs:125:5 [INFO] [stderr] | [INFO] [stderr] 125 | pub fn new() -> Self { UnsignedIntegerGenerator(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 121 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/generate.rs:200:9 [INFO] [stderr] | [INFO] [stderr] 200 | / match ctx.rng.gen() { [INFO] [stderr] 201 | | true => Some(self.generator.generate(ctx)), [INFO] [stderr] 202 | | false => None [INFO] [stderr] 203 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if ctx.rng.gen() { Some(self.generator.generate(ctx)) } else { None }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_bool)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/generate.rs:222:9 [INFO] [stderr] | [INFO] [stderr] 222 | / match ctx.rng.gen() { [INFO] [stderr] 223 | | true => Ok(self.g_ok.generate(ctx)), [INFO] [stderr] 224 | | false => Err(self.g_err.generate(ctx)) [INFO] [stderr] 225 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if ctx.rng.gen() { Ok(self.g_ok.generate(ctx)) } else { Err(self.g_err.generate(ctx)) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `generate::RandGenerator` [INFO] [stderr] --> src/generate.rs:234:5 [INFO] [stderr] | [INFO] [stderr] 234 | / pub fn new() -> Self { [INFO] [stderr] 235 | | RandGenerator(PhantomData) [INFO] [stderr] 236 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 229 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `shrink::IntegerShrinker` [INFO] [stderr] --> src/shrink.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn new() -> Self { IntegerShrinker(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 92 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `shrink::UnsignedIntegerShrinker` [INFO] [stderr] --> src/shrink.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | pub fn new() -> Self { UnsignedIntegerShrinker(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 135 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/shrink.rs:201:33 [INFO] [stderr] | [INFO] [stderr] 201 | let ref v = elements[idx]; [INFO] [stderr] | ----^^^^^----------------- help: try: `let v = &elements[idx];` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `shrink::DefaultShrinker` [INFO] [stderr] --> src/shrink.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | pub fn new() -> Self { DefaultShrinker(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 264 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/shrink.rs:277:9 [INFO] [stderr] | [INFO] [stderr] 277 | / match *value { [INFO] [stderr] 278 | | true => Box::new(iter::once(false)), [INFO] [stderr] 279 | | false => Box::new(iter::empty()) [INFO] [stderr] 280 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if *value { Box::new(iter::once(false)) } else { Box::new(iter::empty()) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: impl for `HashMap` should be generalized over different hashers [INFO] [stderr] --> src/arbitrary.rs:101:99 [INFO] [stderr] | [INFO] [stderr] 101 | impl <$($placeholder: Arbitrary + Clone),*> Arbitrary for $container<$($placeholder),*> [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::implicit_hasher)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_hasher [INFO] [stderr] help: consider adding a type parameter [INFO] [stderr] | [INFO] [stderr] 101 | impl <$($placeholder: Arbitrary + Clone),*, S: ::std::hash::BuildHasher> Arbitrary for $container<$($placeholder),*HashMap<$placeholder, $placeholder, S> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | / pub fn new(f: F) -> ForAllProperty, Args::Generator, Args::Shrink, F> [INFO] [stderr] 115 | | where F: QuickFn, [INFO] [stderr] 116 | | T: Into [INFO] [stderr] 117 | | { [INFO] [stderr] 118 | | Property::>::for_all_shrink(::arbitrary(), ::shrink()).property(f) [INFO] [stderr] 119 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `shrink::IntegerShrinker` [INFO] [stderr] --> src/shrink.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn new() -> Self { IntegerShrinker(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 92 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `shrink::UnsignedIntegerShrinker` [INFO] [stderr] --> src/shrink.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | pub fn new() -> Self { UnsignedIntegerShrinker(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 135 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `ref` on an entire `let` pattern is discouraged, take a reference with `&` instead [INFO] [stderr] --> src/shrink.rs:201:33 [INFO] [stderr] | [INFO] [stderr] 201 | let ref v = elements[idx]; [INFO] [stderr] | ----^^^^^----------------- help: try: `let v = &elements[idx];` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `shrink::DefaultShrinker` [INFO] [stderr] --> src/shrink.rs:269:5 [INFO] [stderr] | [INFO] [stderr] 269 | pub fn new() -> Self { DefaultShrinker(PhantomData) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 264 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/shrink.rs:277:9 [INFO] [stderr] | [INFO] [stderr] 277 | / match *value { [INFO] [stderr] 278 | | true => Box::new(iter::once(false)), [INFO] [stderr] 279 | | false => Box::new(iter::empty()) [INFO] [stderr] 280 | | } [INFO] [stderr] | |_________^ help: consider using an if/else expression: `if *value { Box::new(iter::once(false)) } else { Box::new(iter::empty()) }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: impl for `HashMap` should be generalized over different hashers [INFO] [stderr] --> src/arbitrary.rs:101:99 [INFO] [stderr] | [INFO] [stderr] 101 | impl <$($placeholder: Arbitrary + Clone),*> Arbitrary for $container<$($placeholder),*> [INFO] [stderr] | ^ [INFO] [stderr] ... [INFO] [stderr] 119 | / generic_impls! { [INFO] [stderr] 120 | | Vec, [INFO] [stderr] 121 | | BTreeMap, [INFO] [stderr] 122 | | BTreeSet, [INFO] [stderr] ... | [INFO] [stderr] 127 | | VecDeque [INFO] [stderr] 128 | | } [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::implicit_hasher)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implicit_hasher [INFO] [stderr] help: consider adding a type parameter [INFO] [stderr] | [INFO] [stderr] 101 | impl <$($placeholder: Arbitrary + Clone),*, S: ::std::hash::BuildHasher> Arbitrary for $container<$($placeholder),*HashMap<$placeholder, $placeholder, S> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | / pub fn new(f: F) -> ForAllProperty, Args::Generator, Args::Shrink, F> [INFO] [stderr] 115 | | where F: QuickFn, [INFO] [stderr] 116 | | T: Into [INFO] [stderr] 117 | | { [INFO] [stderr] 118 | | Property::>::for_all_shrink(::arbitrary(), ::shrink()).property(f) [INFO] [stderr] 119 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_ret_no_self)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/quick_check.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | / match testable.is_expected_to_fail() { [INFO] [stderr] 61 | | true => Ok(self.successful_tests), [INFO] [stderr] 62 | | false => Err(QuickCheckError::Failure { [INFO] [stderr] 63 | | input: result.input, [INFO] [stderr] ... | [INFO] [stderr] 67 | | }) [INFO] [stderr] 68 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] 60 | if testable.is_expected_to_fail() { Ok(self.successful_tests) } else { Err(QuickCheckError::Failure { [INFO] [stderr] 61 | input: result.input, [INFO] [stderr] 62 | successful_tests: self.successful_tests, [INFO] [stderr] 63 | seed: seed, [INFO] [stderr] 64 | size: size [INFO] [stderr] 65 | }) } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `quick_check::QuickCheck` [INFO] [stderr] --> src/quick_check.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | / pub fn new() -> Self { [INFO] [stderr] 75 | | QuickCheck { [INFO] [stderr] 76 | | tests: 100, [INFO] [stderr] 77 | | max_discard_ratio: 10, [INFO] [stderr] ... | [INFO] [stderr] 80 | | } [INFO] [stderr] 81 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 72 | impl Default for quick_check::QuickCheck { [INFO] [stderr] 73 | fn default() -> Self { [INFO] [stderr] 74 | Self::new() [INFO] [stderr] 75 | } [INFO] [stderr] 76 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: this lifetime isn't used in the function definition [INFO] [stderr] --> src/quick_check.rs:139:23 [INFO] [stderr] | [INFO] [stderr] 139 | fn shrink_failure<'a>(&self, rose_result: Rose) -> TestResult { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::extra_unused_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: methods called `new` usually return `Self` [INFO] [stderr] --> src/property.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | / pub fn new(f: F) -> ForAllProperty< [INFO] [stderr] 192 | | ($($ident,)*), [INFO] [stderr] 193 | | <($($ident,)*) as Arbitrary>::Generator, [INFO] [stderr] 194 | | <($($ident,)*) as Arbitrary>::Shrink, [INFO] [stderr] ... | [INFO] [stderr] 202 | | ).property(f) [INFO] [stderr] 203 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/property.rs:238:17 [INFO] [stderr] | [INFO] [stderr] 238 | / match (self.predicate)($($ident.clone()),*) { [INFO] [stderr] 239 | | false => TestStatus::Discard, [INFO] [stderr] 240 | | true => (self.f)($($ident),*).into() [INFO] [stderr] 241 | | } [INFO] [stderr] | |_________________^ help: consider using an if/else expression: `if (self.predicate)($($ident.clone()),*) { macro_tuples_impl! { fn_impls } } else { macro_tuples_impl! { fn_impls } }` [INFO] [stderr] ... [INFO] [stderr] 267 | macro_tuples_impl! { fn_impls } [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] [INFO] [stderr] warning: passing a unit value to a function [INFO] [stderr] --> src/property.rs:281:33 [INFO] [stderr] | [INFO] [stderr] 281 | Property::<()>::for_all(<()>::arbitrary()).property(|| true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unit_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unit_arg [INFO] [stderr] help: if you intended to pass a unit value, use a unit literal instead [INFO] [stderr] | [INFO] [stderr] 281 | Property::<()>::for_all(()).property(|| true); [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to match on a boolean expression [INFO] [stderr] --> src/quick_check.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | / match testable.is_expected_to_fail() { [INFO] [stderr] 61 | | true => Ok(self.successful_tests), [INFO] [stderr] 62 | | false => Err(QuickCheckError::Failure { [INFO] [stderr] 63 | | input: result.input, [INFO] [stderr] ... | [INFO] [stderr] 67 | | }) [INFO] [stderr] 68 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool [INFO] [stderr] help: consider using an if/else expression [INFO] [stderr] | [INFO] [stderr] 60 | if testable.is_expected_to_fail() { Ok(self.successful_tests) } else { Err(QuickCheckError::Failure { [INFO] [stderr] 61 | input: result.input, [INFO] [stderr] 62 | successful_tests: self.successful_tests, [INFO] [stderr] 63 | seed: seed, [INFO] [stderr] 64 | size: size [INFO] [stderr] 65 | }) } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `quick_check::QuickCheck` [INFO] [stderr] --> src/quick_check.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | / pub fn new() -> Self { [INFO] [stderr] 75 | | QuickCheck { [INFO] [stderr] 76 | | tests: 100, [INFO] [stderr] 77 | | max_discard_ratio: 10, [INFO] [stderr] ... | [INFO] [stderr] 80 | | } [INFO] [stderr] 81 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 72 | impl Default for quick_check::QuickCheck { [INFO] [stderr] 73 | fn default() -> Self { [INFO] [stderr] 74 | Self::new() [INFO] [stderr] 75 | } [INFO] [stderr] 76 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this lifetime isn't used in the function definition [INFO] [stderr] --> src/quick_check.rs:139:23 [INFO] [stderr] | [INFO] [stderr] 139 | fn shrink_failure<'a>(&self, rose_result: Rose) -> TestResult { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::extra_unused_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/tests.rs:76:23 [INFO] [stderr] | [INFO] [stderr] 76 | let upto = if xs.len() == 0 { 0 } else { xs.len()-1 }; [INFO] [stderr] | ^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `xs.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: an inclusive range would be more readable [INFO] [stderr] --> src/tests.rs:122:31 [INFO] [stderr] | [INFO] [stderr] 122 | ::new(|n| sieve(n) == (0..(n + 1)).filter(|&i| is_prime(i)).collect::>()) [INFO] [stderr] | ^^^^^^^^^^^^ help: use: `(0..=n)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::range_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#range_plus_one [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 14.00s [INFO] running `"docker" "inspect" "1544bbb84e9db3e6718ee7adf603de8bff14e452e20bbb9413210d3d9e3c0a49"` [INFO] running `"docker" "rm" "-f" "1544bbb84e9db3e6718ee7adf603de8bff14e452e20bbb9413210d3d9e3c0a49"` [INFO] [stdout] 1544bbb84e9db3e6718ee7adf603de8bff14e452e20bbb9413210d3d9e3c0a49