[INFO] updating cached repository yohhoy/av1parser [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/yohhoy/av1parser [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/yohhoy/av1parser" "work/ex/clippy-test-run/sources/stable/gh/yohhoy/av1parser"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/yohhoy/av1parser'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/yohhoy/av1parser" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/yohhoy/av1parser"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/yohhoy/av1parser'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] dae880322e7324a4396f35b1bd226281cdb3a2c8 [INFO] sha for GitHub repo yohhoy/av1parser: dae880322e7324a4396f35b1bd226281cdb3a2c8 [INFO] validating manifest of yohhoy/av1parser 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 yohhoy/av1parser 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 yohhoy/av1parser [INFO] finished frobbing yohhoy/av1parser [INFO] frobbed toml for yohhoy/av1parser written to work/ex/clippy-test-run/sources/stable/gh/yohhoy/av1parser/Cargo.toml [INFO] started frobbing yohhoy/av1parser [INFO] finished frobbing yohhoy/av1parser [INFO] frobbed toml for yohhoy/av1parser written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/yohhoy/av1parser/Cargo.toml [INFO] crate yohhoy/av1parser has a lockfile. skipping [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 yohhoy/av1parser against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-4/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/yohhoy/av1parser:/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] d4b5c3896defb09f7568e6e02ff89069a1f0e64939673a7901b905e82f866742 [INFO] running `"docker" "start" "-a" "d4b5c3896defb09f7568e6e02ff89069a1f0e64939673a7901b905e82f866742"` [INFO] [stderr] Checking atty v0.2.10 [INFO] [stderr] Checking clap v2.32.0 [INFO] [stderr] Checking av1parser v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/bitio.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/ivf.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | codec: codec, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `codec` [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/ivf.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | width: width, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `width` [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/ivf.rs:87:9 [INFO] [stderr] | [INFO] [stderr] 87 | height: height, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `height` [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/ivf.rs:88:9 [INFO] [stderr] | [INFO] [stderr] 88 | framerate: framerate, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `framerate` [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/ivf.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 89 | timescale: timescale, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `timescale` [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/ivf.rs:90:9 [INFO] [stderr] | [INFO] [stderr] 90 | nframes: nframes, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `nframes` [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/mkv.rs:179:17 [INFO] [stderr] | [INFO] [stderr] 179 | flags: flags, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `flags` [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/obu.rs:1400:9 [INFO] [stderr] | [INFO] [stderr] 1400 | obu_type: obu_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `obu_type` [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/obu.rs:1403:9 [INFO] [stderr] | [INFO] [stderr] 1403 | temporal_id: temporal_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `temporal_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/obu.rs:1404:9 [INFO] [stderr] | [INFO] [stderr] 1404 | spatial_id: spatial_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `spatial_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/obu.rs:1405:9 [INFO] [stderr] | [INFO] [stderr] 1405 | obu_size: obu_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `obu_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/bitio.rs:42:13 [INFO] [stderr] | [INFO] [stderr] 42 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/ivf.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | codec: codec, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `codec` [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/ivf.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | width: width, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `width` [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/ivf.rs:87:9 [INFO] [stderr] | [INFO] [stderr] 87 | height: height, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `height` [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/ivf.rs:88:9 [INFO] [stderr] | [INFO] [stderr] 88 | framerate: framerate, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `framerate` [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/ivf.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 89 | timescale: timescale, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `timescale` [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/ivf.rs:90:9 [INFO] [stderr] | [INFO] [stderr] 90 | nframes: nframes, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `nframes` [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/mkv.rs:179:17 [INFO] [stderr] | [INFO] [stderr] 179 | flags: flags, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `flags` [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/obu.rs:1400:9 [INFO] [stderr] | [INFO] [stderr] 1400 | obu_type: obu_type, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `obu_type` [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/obu.rs:1403:9 [INFO] [stderr] | [INFO] [stderr] 1403 | temporal_id: temporal_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `temporal_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/obu.rs:1404:9 [INFO] [stderr] | [INFO] [stderr] 1404 | spatial_id: spatial_id, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `spatial_id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/obu.rs:1405:9 [INFO] [stderr] | [INFO] [stderr] 1405 | obu_size: obu_size, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `obu_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: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/av1.rs:80:20 [INFO] [stderr] | [INFO] [stderr] 80 | } else { [INFO] [stderr] | ____________________^ [INFO] [stderr] 81 | | if self.ref_frame_id[i] > fh.current_frame_id [INFO] [stderr] 82 | | && self.ref_frame_id[i] [INFO] [stderr] 83 | | < ((1 << id_len) + fh.current_frame_id - (1 << diff_len)) [INFO] [stderr] ... | [INFO] [stderr] 86 | | } [INFO] [stderr] 87 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 80 | } else if self.ref_frame_id[i] > fh.current_frame_id [INFO] [stderr] 81 | && self.ref_frame_id[i] [INFO] [stderr] 82 | < ((1 << id_len) + fh.current_frame_id - (1 << diff_len)) [INFO] [stderr] 83 | { [INFO] [stderr] 84 | self.ref_valid[i] = false; [INFO] [stderr] 85 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/av1.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | return diff; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `diff` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:10:27 [INFO] [stderr] | [INFO] [stderr] 10 | const ELEMENT_EBML: u32 = 0x1A45DFA3; // EBML header [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1A45_DFA3` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | const ELEMENT_SEGMENT: u32 = 0x18538067; // Segment [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1853_8067` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:12:31 [INFO] [stderr] | [INFO] [stderr] 12 | const ELEMENT_SEEKHEAD: u32 = 0x114D9B74; // Meta Seek Information [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x114D_9B74` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | const ELEMENT_INFO: u32 = 0x1549A966; // Segment Information [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1549_A966` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:14:30 [INFO] [stderr] | [INFO] [stderr] 14 | const ELEMENT_CLUSTER: u32 = 0x1F43B675; // Cluster [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1F43_B675` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:18:29 [INFO] [stderr] | [INFO] [stderr] 18 | const ELEMENT_TRACKS: u32 = 0x1654AE6B; // Track [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1654_AE6B` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | const ELEMENT_CUES: u32 = 0x1C53BB6B; // Cueing Data [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1C53_BB6B` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/obu.rs:406:13 [INFO] [stderr] | [INFO] [stderr] 406 | assert!(value <= (1u64 << 32) - 1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::int_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 406 | assert!(value < (1u64 << 32)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/obu.rs:481:16 [INFO] [stderr] | [INFO] [stderr] 481 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 482 | | if cc.bit_depth == 12 { [INFO] [stderr] 483 | | cc.subsampling_x = br.f::(1)?; // f(1) [INFO] [stderr] 484 | | if cc.subsampling_x != 0 { [INFO] [stderr] ... | [INFO] [stderr] 492 | | } [INFO] [stderr] 493 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 481 | } else if cc.bit_depth == 12 { [INFO] [stderr] 482 | cc.subsampling_x = br.f::(1)?; // f(1) [INFO] [stderr] 483 | if cc.subsampling_x != 0 { [INFO] [stderr] 484 | cc.subsampling_y = br.f::(1)?; // f(1) [INFO] [stderr] 485 | } else { [INFO] [stderr] 486 | cc.subsampling_y = 0; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:618:5 [INFO] [stderr] | [INFO] [stderr] 618 | / if cc.num_planes > 1 { [INFO] [stderr] 619 | | if lfp.loop_filter_level[0] != 0 || lfp.loop_filter_level[1] != 0 { [INFO] [stderr] 620 | | lfp.loop_filter_level[2] = br.f::(6)?; // f(6) [INFO] [stderr] 621 | | lfp.loop_filter_level[3] = br.f::(6)?; // f(6) [INFO] [stderr] 622 | | } [INFO] [stderr] 623 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 618 | if cc.num_planes > 1 && (lfp.loop_filter_level[0] != 0 || lfp.loop_filter_level[1] != 0) { [INFO] [stderr] 619 | lfp.loop_filter_level[2] = br.f::(6)?; // f(6) [INFO] [stderr] 620 | lfp.loop_filter_level[3] = br.f::(6)?; // f(6) [INFO] [stderr] 621 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:1098:20 [INFO] [stderr] | [INFO] [stderr] 1098 | } else if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) > 0 { [INFO] [stderr] | ____________________^ [INFO] [stderr] 1099 | | if backward_idx < 0 || av1::get_relative_dist(ref_hint, backward_hint, sh) < 0 { [INFO] [stderr] 1100 | | backward_idx = i as i32; [INFO] [stderr] 1101 | | backward_hint = ref_hint; [INFO] [stderr] 1102 | | } [INFO] [stderr] 1103 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1098 | } else if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) > 0 && (backward_idx < 0 || av1::get_relative_dist(ref_hint, backward_hint, sh) < 0) { [INFO] [stderr] 1099 | backward_idx = i as i32; [INFO] [stderr] 1100 | backward_hint = ref_hint; [INFO] [stderr] 1101 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:1118:17 [INFO] [stderr] | [INFO] [stderr] 1118 | / if av1::get_relative_dist(ref_hint, forward_hint, sh) < 0 { [INFO] [stderr] 1119 | | if second_forward_id < 0 [INFO] [stderr] 1120 | | || av1::get_relative_dist(ref_hint, second_forward_hint, sh) > 0 [INFO] [stderr] 1121 | | { [INFO] [stderr] ... | [INFO] [stderr] 1124 | | } [INFO] [stderr] 1125 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1118 | if av1::get_relative_dist(ref_hint, forward_hint, sh) < 0 && (second_forward_id < 0 [INFO] [stderr] 1119 | || av1::get_relative_dist(ref_hint, second_forward_hint, sh) > 0) { [INFO] [stderr] 1120 | second_forward_id = i as i32; [INFO] [stderr] 1121 | second_forward_hint = ref_hint; [INFO] [stderr] 1122 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/obu.rs:1399:5 [INFO] [stderr] | [INFO] [stderr] 1399 | / return Ok(Obu { [INFO] [stderr] 1400 | | obu_type: obu_type, [INFO] [stderr] 1401 | | obu_extension_flag: obu_extension_flag == 1, [INFO] [stderr] 1402 | | obu_has_size_field: obu_has_size_field == 1, [INFO] [stderr] ... | [INFO] [stderr] 1406 | | header_len: obu_header_len + obu_size_len, [INFO] [stderr] 1407 | | }); [INFO] [stderr] | |_______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 1399 | Ok(Obu { [INFO] [stderr] 1400 | obu_type: obu_type, [INFO] [stderr] 1401 | obu_extension_flag: obu_extension_flag == 1, [INFO] [stderr] 1402 | obu_has_size_field: obu_has_size_field == 1, [INFO] [stderr] 1403 | temporal_id: temporal_id, [INFO] [stderr] 1404 | spatial_id: spatial_id, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:1659:5 [INFO] [stderr] | [INFO] [stderr] 1659 | / if !fh.frame_is_intra || fh.refresh_frame_flags != all_frames { [INFO] [stderr] 1660 | | if fh.error_resilient_mode && sh.enable_order_hint { [INFO] [stderr] 1661 | | for i in 0..NUM_REF_FRAMES { [INFO] [stderr] 1662 | | fh.ref_order_hint[i] = br.f::(sh.order_hint_bits as usize)?; // f(OrderHintBits) [INFO] [stderr] ... | [INFO] [stderr] 1667 | | } [INFO] [stderr] 1668 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1659 | if (!fh.frame_is_intra || fh.refresh_frame_flags != all_frames) && fh.error_resilient_mode && sh.enable_order_hint { [INFO] [stderr] 1660 | for i in 0..NUM_REF_FRAMES { [INFO] [stderr] 1661 | fh.ref_order_hint[i] = br.f::(sh.order_hint_bits as usize)?; // f(OrderHintBits) [INFO] [stderr] 1662 | if fh.ref_order_hint[i] != rfman.ref_order_hint[i] { [INFO] [stderr] 1663 | rfman.ref_valid[i] = false; [INFO] [stderr] 1664 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/obu.rs:1677:12 [INFO] [stderr] | [INFO] [stderr] 1677 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 1678 | | if fh.frame_type == INTRA_ONLY_FRAME { [INFO] [stderr] 1679 | | fh.frame_size = parse_frame_size(&mut br, sh, &fh)?; // frame_size() [INFO] [stderr] 1680 | | fh.render_size = parse_render_size(&mut br, &fh.frame_size)?; // render_size() [INFO] [stderr] ... | [INFO] [stderr] 1741 | | } [INFO] [stderr] 1742 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1677 | } else if fh.frame_type == INTRA_ONLY_FRAME { [INFO] [stderr] 1678 | fh.frame_size = parse_frame_size(&mut br, sh, &fh)?; // frame_size() [INFO] [stderr] 1679 | fh.render_size = parse_render_size(&mut br, &fh.frame_size)?; // render_size() [INFO] [stderr] 1680 | if fh.allow_screen_content_tools [INFO] [stderr] 1681 | && fh.frame_size.upscaled_width == fh.frame_size.frame_width [INFO] [stderr] 1682 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/av1.rs:80:20 [INFO] [stderr] | [INFO] [stderr] 80 | } else { [INFO] [stderr] | ____________________^ [INFO] [stderr] 81 | | if self.ref_frame_id[i] > fh.current_frame_id [INFO] [stderr] 82 | | && self.ref_frame_id[i] [INFO] [stderr] 83 | | < ((1 << id_len) + fh.current_frame_id - (1 << diff_len)) [INFO] [stderr] ... | [INFO] [stderr] 86 | | } [INFO] [stderr] 87 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 80 | } else if self.ref_frame_id[i] > fh.current_frame_id [INFO] [stderr] 81 | && self.ref_frame_id[i] [INFO] [stderr] 82 | < ((1 << id_len) + fh.current_frame_id - (1 << diff_len)) [INFO] [stderr] 83 | { [INFO] [stderr] 84 | self.ref_valid[i] = false; [INFO] [stderr] 85 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/av1.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | return diff; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `diff` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:10:27 [INFO] [stderr] | [INFO] [stderr] 10 | const ELEMENT_EBML: u32 = 0x1A45DFA3; // EBML header [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1A45_DFA3` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | const ELEMENT_SEGMENT: u32 = 0x18538067; // Segment [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1853_8067` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:12:31 [INFO] [stderr] | [INFO] [stderr] 12 | const ELEMENT_SEEKHEAD: u32 = 0x114D9B74; // Meta Seek Information [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x114D_9B74` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:13:27 [INFO] [stderr] | [INFO] [stderr] 13 | const ELEMENT_INFO: u32 = 0x1549A966; // Segment Information [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1549_A966` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:14:30 [INFO] [stderr] | [INFO] [stderr] 14 | const ELEMENT_CLUSTER: u32 = 0x1F43B675; // Cluster [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1F43_B675` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:18:29 [INFO] [stderr] | [INFO] [stderr] 18 | const ELEMENT_TRACKS: u32 = 0x1654AE6B; // Track [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1654_AE6B` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/mkv.rs:26:27 [INFO] [stderr] | [INFO] [stderr] 26 | const ELEMENT_CUES: u32 = 0x1C53BB6B; // Cueing Data [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0x1C53_BB6B` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/obu.rs:406:13 [INFO] [stderr] | [INFO] [stderr] 406 | assert!(value <= (1u64 << 32) - 1); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::int_plus_one)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 406 | assert!(value < (1u64 << 32)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/obu.rs:481:16 [INFO] [stderr] | [INFO] [stderr] 481 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 482 | | if cc.bit_depth == 12 { [INFO] [stderr] 483 | | cc.subsampling_x = br.f::(1)?; // f(1) [INFO] [stderr] 484 | | if cc.subsampling_x != 0 { [INFO] [stderr] ... | [INFO] [stderr] 492 | | } [INFO] [stderr] 493 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 481 | } else if cc.bit_depth == 12 { [INFO] [stderr] 482 | cc.subsampling_x = br.f::(1)?; // f(1) [INFO] [stderr] 483 | if cc.subsampling_x != 0 { [INFO] [stderr] 484 | cc.subsampling_y = br.f::(1)?; // f(1) [INFO] [stderr] 485 | } else { [INFO] [stderr] 486 | cc.subsampling_y = 0; [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:618:5 [INFO] [stderr] | [INFO] [stderr] 618 | / if cc.num_planes > 1 { [INFO] [stderr] 619 | | if lfp.loop_filter_level[0] != 0 || lfp.loop_filter_level[1] != 0 { [INFO] [stderr] 620 | | lfp.loop_filter_level[2] = br.f::(6)?; // f(6) [INFO] [stderr] 621 | | lfp.loop_filter_level[3] = br.f::(6)?; // f(6) [INFO] [stderr] 622 | | } [INFO] [stderr] 623 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 618 | if cc.num_planes > 1 && (lfp.loop_filter_level[0] != 0 || lfp.loop_filter_level[1] != 0) { [INFO] [stderr] 619 | lfp.loop_filter_level[2] = br.f::(6)?; // f(6) [INFO] [stderr] 620 | lfp.loop_filter_level[3] = br.f::(6)?; // f(6) [INFO] [stderr] 621 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:1098:20 [INFO] [stderr] | [INFO] [stderr] 1098 | } else if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) > 0 { [INFO] [stderr] | ____________________^ [INFO] [stderr] 1099 | | if backward_idx < 0 || av1::get_relative_dist(ref_hint, backward_hint, sh) < 0 { [INFO] [stderr] 1100 | | backward_idx = i as i32; [INFO] [stderr] 1101 | | backward_hint = ref_hint; [INFO] [stderr] 1102 | | } [INFO] [stderr] 1103 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1098 | } else if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) > 0 && (backward_idx < 0 || av1::get_relative_dist(ref_hint, backward_hint, sh) < 0) { [INFO] [stderr] 1099 | backward_idx = i as i32; [INFO] [stderr] 1100 | backward_hint = ref_hint; [INFO] [stderr] 1101 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:1118:17 [INFO] [stderr] | [INFO] [stderr] 1118 | / if av1::get_relative_dist(ref_hint, forward_hint, sh) < 0 { [INFO] [stderr] 1119 | | if second_forward_id < 0 [INFO] [stderr] 1120 | | || av1::get_relative_dist(ref_hint, second_forward_hint, sh) > 0 [INFO] [stderr] 1121 | | { [INFO] [stderr] ... | [INFO] [stderr] 1124 | | } [INFO] [stderr] 1125 | | } [INFO] [stderr] | |_________________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1118 | if av1::get_relative_dist(ref_hint, forward_hint, sh) < 0 && (second_forward_id < 0 [INFO] [stderr] 1119 | || av1::get_relative_dist(ref_hint, second_forward_hint, sh) > 0) { [INFO] [stderr] 1120 | second_forward_id = i as i32; [INFO] [stderr] 1121 | second_forward_hint = ref_hint; [INFO] [stderr] 1122 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/obu.rs:1399:5 [INFO] [stderr] | [INFO] [stderr] 1399 | / return Ok(Obu { [INFO] [stderr] 1400 | | obu_type: obu_type, [INFO] [stderr] 1401 | | obu_extension_flag: obu_extension_flag == 1, [INFO] [stderr] 1402 | | obu_has_size_field: obu_has_size_field == 1, [INFO] [stderr] ... | [INFO] [stderr] 1406 | | header_len: obu_header_len + obu_size_len, [INFO] [stderr] 1407 | | }); [INFO] [stderr] | |_______^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] help: remove `return` as shown [INFO] [stderr] | [INFO] [stderr] 1399 | Ok(Obu { [INFO] [stderr] 1400 | obu_type: obu_type, [INFO] [stderr] 1401 | obu_extension_flag: obu_extension_flag == 1, [INFO] [stderr] 1402 | obu_has_size_field: obu_has_size_field == 1, [INFO] [stderr] 1403 | temporal_id: temporal_id, [INFO] [stderr] 1404 | spatial_id: spatial_id, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/obu.rs:1659:5 [INFO] [stderr] | [INFO] [stderr] 1659 | / if !fh.frame_is_intra || fh.refresh_frame_flags != all_frames { [INFO] [stderr] 1660 | | if fh.error_resilient_mode && sh.enable_order_hint { [INFO] [stderr] 1661 | | for i in 0..NUM_REF_FRAMES { [INFO] [stderr] 1662 | | fh.ref_order_hint[i] = br.f::(sh.order_hint_bits as usize)?; // f(OrderHintBits) [INFO] [stderr] ... | [INFO] [stderr] 1667 | | } [INFO] [stderr] 1668 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1659 | if (!fh.frame_is_intra || fh.refresh_frame_flags != all_frames) && fh.error_resilient_mode && sh.enable_order_hint { [INFO] [stderr] 1660 | for i in 0..NUM_REF_FRAMES { [INFO] [stderr] 1661 | fh.ref_order_hint[i] = br.f::(sh.order_hint_bits as usize)?; // f(OrderHintBits) [INFO] [stderr] 1662 | if fh.ref_order_hint[i] != rfman.ref_order_hint[i] { [INFO] [stderr] 1663 | rfman.ref_valid[i] = false; [INFO] [stderr] 1664 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/obu.rs:1677:12 [INFO] [stderr] | [INFO] [stderr] 1677 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 1678 | | if fh.frame_type == INTRA_ONLY_FRAME { [INFO] [stderr] 1679 | | fh.frame_size = parse_frame_size(&mut br, sh, &fh)?; // frame_size() [INFO] [stderr] 1680 | | fh.render_size = parse_render_size(&mut br, &fh.frame_size)?; // render_size() [INFO] [stderr] ... | [INFO] [stderr] 1741 | | } [INFO] [stderr] 1742 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 1677 | } else if fh.frame_type == INTRA_ONLY_FRAME { [INFO] [stderr] 1678 | fh.frame_size = parse_frame_size(&mut br, sh, &fh)?; // frame_size() [INFO] [stderr] 1679 | fh.render_size = parse_render_size(&mut br, &fh.frame_size)?; // render_size() [INFO] [stderr] 1680 | if fh.allow_screen_content_tools [INFO] [stderr] 1681 | && fh.frame_size.upscaled_width == fh.frame_size.frame_width [INFO] [stderr] 1682 | { [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/av1.rs:105:30 [INFO] [stderr] | [INFO] [stderr] 105 | for j in 0..=5 { [INFO] [stderr] | ^^^^^ help: try replacing the loop by: `self.saved_gm_params[i][ref_][..5 + 1].clone_from_slice(&fh.global_motion_params.gm_params[ref_][..5 + 1])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/bitio.rs:21:21 [INFO] [stderr] | [INFO] [stderr] 21 | v as $ty [INFO] [stderr] | ^ help: try: `u64::from(v)` [INFO] [stderr] ... [INFO] [stderr] 28 | impl_from_u32!(u8 u16 u32 u64 usize); [INFO] [stderr] | ------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/bitio.rs:68:28 [INFO] [stderr] | [INFO] [stderr] 68 | x = (x << 1) | self.read_bit()? as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.read_bit()?)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/bitio.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | value = value - 2 * sign_mask [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `value -= 2 * sign_mask` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/bitio.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | x = x >> 1; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `x >>= 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | value = b0[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | value = (b0[0] as u32) << 8 | b1[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:41:39 [INFO] [stderr] | [INFO] [stderr] 41 | value = (b0[0] as u32) << 8 | b1[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b1[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | value = (b0[0] as u32) << 16 | (b2[0] as u32) << 8 | b2[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:45:40 [INFO] [stderr] | [INFO] [stderr] 45 | value = (b0[0] as u32) << 16 | (b2[0] as u32) << 8 | b2[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b2[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:45:62 [INFO] [stderr] | [INFO] [stderr] 45 | value = (b0[0] as u32) << 16 | (b2[0] as u32) << 8 | b2[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b2[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:17 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:40 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b3[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:63 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b3[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:85 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b3[2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:63:21 [INFO] [stderr] | [INFO] [stderr] 63 | let mut value = b0[0] as i64; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `i64::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: handle read amount returned or use `Read::read_exact` instead [INFO] [stderr] --> src/mkv.rs:74:9 [INFO] [stderr] | [INFO] [stderr] 74 | reader.take(lzcnt as u64).read(&mut buf)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buf`. [INFO] [stderr] --> src/mkv.rs:75:18 [INFO] [stderr] | [INFO] [stderr] 75 | for i in 0..lzcnt { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 75 | for in buf.iter().take(lzcnt) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:76:36 [INFO] [stderr] | [INFO] [stderr] 76 | value = (value << 8) | buf[i] as i64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `i64::from(buf[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: handle read amount returned or use `Read::read_exact` instead [INFO] [stderr] --> src/mkv.rs:93:5 [INFO] [stderr] | [INFO] [stderr] 93 | reader.take(len as u64).read(&mut buf)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:94:21 [INFO] [stderr] | [INFO] [stderr] 94 | let mut value = buf[0] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(buf[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buf`. [INFO] [stderr] --> src/mkv.rs:95:14 [INFO] [stderr] | [INFO] [stderr] 95 | for i in 1..(len as usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 95 | for in buf.iter().take((len as usize)).skip(1) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:96:30 [INFO] [stderr] | [INFO] [stderr] 96 | value = value << 8 | buf[i] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(buf[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:178:71 [INFO] [stderr] | [INFO] [stderr] 178 | timecode: self.clusters[self.curr_cluster].timecode + (tc_offset as i64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i64::from(tc_offset)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/mkv.rs:197:21 [INFO] [stderr] | [INFO] [stderr] 196 | let mut node_body = Vec::with_capacity(node_size as usize); [INFO] [stderr] | -------------------------------------- help: consider replace allocation with: `vec![0; node_size as usize]` [INFO] [stderr] 197 | node_body.resize(node_size as usize, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::slow_vector_initialization)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/mkv.rs:240:13 [INFO] [stderr] | [INFO] [stderr] 239 | let mut entry_body = Vec::with_capacity(entry_size); [INFO] [stderr] | ------------------------------ help: consider replace allocation with: `vec![0; entry_size]` [INFO] [stderr] 240 | entry_body.resize(entry_size, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/av1.rs:105:30 [INFO] [stderr] | [INFO] [stderr] 105 | for j in 0..=5 { [INFO] [stderr] | ^^^^^ help: try replacing the loop by: `self.saved_gm_params[i][ref_][..5 + 1].clone_from_slice(&fh.global_motion_params.gm_params[ref_][..5 + 1])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::manual_memcpy)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_memcpy [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/bitio.rs:21:21 [INFO] [stderr] | [INFO] [stderr] 21 | v as $ty [INFO] [stderr] | ^ help: try: `u64::from(v)` [INFO] [stderr] ... [INFO] [stderr] 28 | impl_from_u32!(u8 u16 u32 u64 usize); [INFO] [stderr] | ------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/bitio.rs:68:28 [INFO] [stderr] | [INFO] [stderr] 68 | x = (x << 1) | self.read_bit()? as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(self.read_bit()?)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/bitio.rs:78:13 [INFO] [stderr] | [INFO] [stderr] 78 | value = value - 2 * sign_mask [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `value -= 2 * sign_mask` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::assign_op_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/bitio.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | x = x >> 1; [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `x >>= 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assign_op_pattern [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | value = b0[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | value = (b0[0] as u32) << 8 | b1[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:41:39 [INFO] [stderr] | [INFO] [stderr] 41 | value = (b0[0] as u32) << 8 | b1[0] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b1[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | value = (b0[0] as u32) << 16 | (b2[0] as u32) << 8 | b2[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:45:40 [INFO] [stderr] | [INFO] [stderr] 45 | value = (b0[0] as u32) << 16 | (b2[0] as u32) << 8 | b2[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b2[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:45:62 [INFO] [stderr] | [INFO] [stderr] 45 | value = (b0[0] as u32) << 16 | (b2[0] as u32) << 8 | b2[1] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b2[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:17 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:40 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b3[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:63 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: try: `u32::from(b3[1])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:49:85 [INFO] [stderr] | [INFO] [stderr] 49 | value = (b0[0] as u32) << 24 | (b3[0] as u32) << 16 | (b3[1] as u32) << 8 | b3[2] as u32; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `u32::from(b3[2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:63:21 [INFO] [stderr] | [INFO] [stderr] 63 | let mut value = b0[0] as i64; [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `i64::from(b0[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: handle read amount returned or use `Read::read_exact` instead [INFO] [stderr] --> src/mkv.rs:74:9 [INFO] [stderr] | [INFO] [stderr] 74 | reader.take(lzcnt as u64).read(&mut buf)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buf`. [INFO] [stderr] --> src/mkv.rs:75:18 [INFO] [stderr] | [INFO] [stderr] 75 | for i in 0..lzcnt { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_range_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 75 | for in buf.iter().take(lzcnt) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:76:36 [INFO] [stderr] | [INFO] [stderr] 76 | value = (value << 8) | buf[i] as i64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `i64::from(buf[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: handle read amount returned or use `Read::read_exact` instead [INFO] [stderr] --> src/mkv.rs:93:5 [INFO] [stderr] | [INFO] [stderr] 93 | reader.take(len as u64).read(&mut buf)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:94:21 [INFO] [stderr] | [INFO] [stderr] 94 | let mut value = buf[0] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(buf[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `buf`. [INFO] [stderr] --> src/mkv.rs:95:14 [INFO] [stderr] | [INFO] [stderr] 95 | for i in 1..(len as usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 95 | for in buf.iter().take((len as usize)).skip(1) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:96:30 [INFO] [stderr] | [INFO] [stderr] 96 | value = value << 8 | buf[i] as u64; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try: `u64::from(buf[i])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:400:18 [INFO] [stderr] | [INFO] [stderr] 400 | value |= ((leb128_byte & 0x7f) as u64) << (i * 7); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(leb128_byte & 0x7f)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting i16 to i64 may become silently lossy if types change [INFO] [stderr] --> src/mkv.rs:178:71 [INFO] [stderr] | [INFO] [stderr] 178 | timecode: self.clusters[self.curr_cluster].timecode + (tc_offset as i64), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try: `i64::from(tc_offset)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/obu.rs:513:36 [INFO] [stderr] | [INFO] [stderr] 513 | ti.num_ticks_per_picture = 0 + 1; // uvlc() [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/mkv.rs:197:21 [INFO] [stderr] | [INFO] [stderr] 196 | let mut node_body = Vec::with_capacity(node_size as usize); [INFO] [stderr] | -------------------------------------- help: consider replace allocation with: `vec![0; node_size as usize]` [INFO] [stderr] 197 | node_body.resize(node_size as usize, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::slow_vector_initialization)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:544:5 [INFO] [stderr] | [INFO] [stderr] 544 | / let supreres_denom; [INFO] [stderr] 545 | | if fs.use_superres { [INFO] [stderr] 546 | | let coded_denom = br.f::(SUPERRS_DENOM_BITS)?; // f(SUPERRES_DENOM_BITS) [INFO] [stderr] 547 | | supreres_denom = coded_denom + SUPERRES_DENOM_MIN; [INFO] [stderr] 548 | | } else { [INFO] [stderr] 549 | | supreres_denom = SUPERRES_NUM; [INFO] [stderr] 550 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let supreres_denom = if fs.use_superres { ..; coded_denom + SUPERRES_DENOM_MIN } else { SUPERRES_NUM };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:580:5 [INFO] [stderr] | [INFO] [stderr] 580 | / let interpolation_filter; [INFO] [stderr] 581 | | if is_filter_switchable { [INFO] [stderr] 582 | | interpolation_filter = SWITCHABLE; [INFO] [stderr] 583 | | } else { [INFO] [stderr] 584 | | interpolation_filter = br.f::(2)?; // f(2) [INFO] [stderr] 585 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let interpolation_filter = if is_filter_switchable { SWITCHABLE } else { br.f::(2)? };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: slow zero-filling initialization [INFO] [stderr] --> src/mkv.rs:240:13 [INFO] [stderr] | [INFO] [stderr] 239 | let mut entry_body = Vec::with_capacity(entry_size); [INFO] [stderr] | ------------------------------ help: consider replace allocation with: `vec![0; entry_size]` [INFO] [stderr] 240 | entry_body.resize(entry_size, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:745:39 [INFO] [stderr] | [INFO] [stderr] 745 | tile_cols_log2 = tile_log2(1, ti.tile_cols as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(ti.tile_cols)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:764:39 [INFO] [stderr] | [INFO] [stderr] 764 | tile_rows_log2 = tile_log2(1, ti.tile_rows as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(ti.tile_rows)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:788:9 [INFO] [stderr] | [INFO] [stderr] 788 | / let diff_uv_delta; [INFO] [stderr] 789 | | if cc.separate_uv_delta_q { [INFO] [stderr] 790 | | diff_uv_delta = br.f::(1)?; // f(1) [INFO] [stderr] 791 | | } else { [INFO] [stderr] 792 | | diff_uv_delta = false; [INFO] [stderr] 793 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let diff_uv_delta = if cc.separate_uv_delta_q { br.f::(1)? } else { false };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:826:5 [INFO] [stderr] | [INFO] [stderr] 826 | / let delta_q; [INFO] [stderr] 827 | | if delta_coded { [INFO] [stderr] 828 | | delta_q = br.su(1 + 6)?; // su(1+6) [INFO] [stderr] 829 | | } else { [INFO] [stderr] 830 | | delta_q = 0; [INFO] [stderr] 831 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let delta_q = if delta_coded { br.su(1 + 6)? } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: the loop variable `i` is only used to index `Segmentation_Feature_Bits`. [INFO] [stderr] --> src/obu.rs:875:22 [INFO] [stderr] | [INFO] [stderr] 875 | for i in 0..MAX_SEGMENTS { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 875 | for in Segmentation_Feature_Bits.iter().take(MAX_SEGMENTS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:1042:9 [INFO] [stderr] | [INFO] [stderr] 1042 | / let lr_uv_shift; [INFO] [stderr] 1043 | | if sh.color_config.subsampling_x != 0 && sh.color_config.subsampling_y != 0 && use_chroma_lr [INFO] [stderr] 1044 | | { [INFO] [stderr] 1045 | | lr_uv_shift = br.f::(1)?; // f(1) [INFO] [stderr] 1046 | | } else { [INFO] [stderr] 1047 | | lr_uv_shift = 0; [INFO] [stderr] 1048 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let lr_uv_shift = if sh.color_config.subsampling_x != 0 && sh.color_config.subsampling_y != 0 && use_chroma_lr { br.f::(1)? } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1092:28 [INFO] [stderr] | [INFO] [stderr] 1092 | let ref_hint = rfman.ref_order_hint[fh.ref_frame_idx[i] as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(rfman.ref_order_hint[fh.ref_frame_idx[i] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1093:49 [INFO] [stderr] | [INFO] [stderr] 1093 | if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(fh.order_hint)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1098:56 [INFO] [stderr] | [INFO] [stderr] 1098 | } else if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(fh.order_hint)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1117:32 [INFO] [stderr] | [INFO] [stderr] 1117 | let ref_hint = rfman.ref_order_hint[fh.ref_frame_idx[i] as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(rfman.ref_order_hint[fh.ref_frame_idx[i] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1379:30 [INFO] [stderr] | [INFO] [stderr] 1379 | let obu_header_len = 1 + (obu_extension_flag as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(obu_extension_flag)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 38 [INFO] [stderr] --> src/obu.rs:1413:1 [INFO] [stderr] | [INFO] [stderr] 1413 | / pub fn parse_sequence_header(bs: &mut R) -> Option { [INFO] [stderr] 1414 | | let mut br = BitReader::new(bs); [INFO] [stderr] 1415 | | let mut sh = SequenceHeader::default(); [INFO] [stderr] 1416 | | [INFO] [stderr] ... | [INFO] [stderr] 1532 | | Some(sh) [INFO] [stderr] 1533 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 78 [INFO] [stderr] --> src/obu.rs:1538:1 [INFO] [stderr] | [INFO] [stderr] 1538 | / pub fn parse_frame_header( [INFO] [stderr] 1539 | | bs: &mut R, [INFO] [stderr] 1540 | | sh: &SequenceHeader, [INFO] [stderr] 1541 | | rfman: &mut av1::RefFrameManager, [INFO] [stderr] ... | [INFO] [stderr] 1809 | | Some(fh) [INFO] [stderr] 1810 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:400:18 [INFO] [stderr] | [INFO] [stderr] 400 | value |= ((leb128_byte & 0x7f) as u64) << (i * 7); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(leb128_byte & 0x7f)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/obu.rs:1750:20 [INFO] [stderr] | [INFO] [stderr] 1750 | } else { [INFO] [stderr] | ____________________^ [INFO] [stderr] 1751 | | // RefFrameSignBias[refFrame] = get_relative_dist(hint, OrderHint) > 0 [INFO] [stderr] 1752 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/obu.rs:1748:37 [INFO] [stderr] | [INFO] [stderr] 1748 | if sh.enable_order_hint { [INFO] [stderr] | _____________________________________^ [INFO] [stderr] 1749 | | // RefFrameSignBias[refFrame] = 0 [INFO] [stderr] 1750 | | } else { [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/obu.rs:1777:12 [INFO] [stderr] | [INFO] [stderr] 1777 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 1778 | | // load_previous_segment_ids() [INFO] [stderr] 1779 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] note: same as this [INFO] [stderr] --> src/obu.rs:1775:49 [INFO] [stderr] | [INFO] [stderr] 1775 | if fh.primary_ref_frame == PRIMARY_REF_NONE { [INFO] [stderr] | _________________________________________________^ [INFO] [stderr] 1776 | | // init_coeff_cdfs() [INFO] [stderr] 1777 | | } else { [INFO] [stderr] | |_____^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:53:46 [INFO] [stderr] | [INFO] [stderr] 53 | let reader = &mut io::Read::take(reader, obu.obu_size as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: The function/method `ivf::parse_ivf_header` doesn't need a mutable reference [INFO] [stderr] --> src/main.rs:138:33 [INFO] [stderr] | [INFO] [stderr] 138 | match ivf::parse_ivf_header(&mut ivf_header) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/obu.rs:513:36 [INFO] [stderr] | [INFO] [stderr] 513 | ti.num_ticks_per_picture = 0 + 1; // uvlc() [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::identity_op)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:178:47 [INFO] [stderr] | [INFO] [stderr] 178 | reader.seek(SeekFrom::Start(pos + obu.obu_size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:180:43 [INFO] [stderr] | [INFO] [stderr] 180 | reader.seek(SeekFrom::Start(pos + frame.size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(frame.size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:544:5 [INFO] [stderr] | [INFO] [stderr] 544 | / let supreres_denom; [INFO] [stderr] 545 | | if fs.use_superres { [INFO] [stderr] 546 | | let coded_denom = br.f::(SUPERRS_DENOM_BITS)?; // f(SUPERRES_DENOM_BITS) [INFO] [stderr] 547 | | supreres_denom = coded_denom + SUPERRES_DENOM_MIN; [INFO] [stderr] 548 | | } else { [INFO] [stderr] 549 | | supreres_denom = SUPERRES_NUM; [INFO] [stderr] 550 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let supreres_denom = if fs.use_superres { ..; coded_denom + SUPERRES_DENOM_MIN } else { SUPERRES_NUM };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:580:5 [INFO] [stderr] | [INFO] [stderr] 580 | / let interpolation_filter; [INFO] [stderr] 581 | | if is_filter_switchable { [INFO] [stderr] 582 | | interpolation_filter = SWITCHABLE; [INFO] [stderr] 583 | | } else { [INFO] [stderr] 584 | | interpolation_filter = br.f::(2)?; // f(2) [INFO] [stderr] 585 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let interpolation_filter = if is_filter_switchable { SWITCHABLE } else { br.f::(2)? };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:238:47 [INFO] [stderr] | [INFO] [stderr] 238 | reader.seek(SeekFrom::Start(pos + obu.obu_size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:269:43 [INFO] [stderr] | [INFO] [stderr] 269 | reader.seek(SeekFrom::Start(pos + obu.obu_size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:745:39 [INFO] [stderr] | [INFO] [stderr] 745 | tile_cols_log2 = tile_log2(1, ti.tile_cols as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(ti.tile_cols)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:764:39 [INFO] [stderr] | [INFO] [stderr] 764 | tile_rows_log2 = tile_log2(1, ti.tile_rows as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(ti.tile_rows)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:788:9 [INFO] [stderr] | [INFO] [stderr] 788 | / let diff_uv_delta; [INFO] [stderr] 789 | | if cc.separate_uv_delta_q { [INFO] [stderr] 790 | | diff_uv_delta = br.f::(1)?; // f(1) [INFO] [stderr] 791 | | } else { [INFO] [stderr] 792 | | diff_uv_delta = false; [INFO] [stderr] 793 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let diff_uv_delta = if cc.separate_uv_delta_q { br.f::(1)? } else { false };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:826:5 [INFO] [stderr] | [INFO] [stderr] 826 | / let delta_q; [INFO] [stderr] 827 | | if delta_coded { [INFO] [stderr] 828 | | delta_q = br.su(1 + 6)?; // su(1+6) [INFO] [stderr] 829 | | } else { [INFO] [stderr] 830 | | delta_q = 0; [INFO] [stderr] 831 | | } [INFO] [stderr] | |_____^ help: it is more idiomatic to write: `let delta_q = if delta_coded { br.su(1 + 6)? } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] error: Could not compile `av1parser`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: the loop variable `i` is only used to index `Segmentation_Feature_Bits`. [INFO] [stderr] --> src/obu.rs:875:22 [INFO] [stderr] | [INFO] [stderr] 875 | for i in 0..MAX_SEGMENTS { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_range_loop [INFO] [stderr] help: consider using an iterator [INFO] [stderr] | [INFO] [stderr] 875 | for in Segmentation_Feature_Bits.iter().take(MAX_SEGMENTS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/obu.rs:1042:9 [INFO] [stderr] | [INFO] [stderr] 1042 | / let lr_uv_shift; [INFO] [stderr] 1043 | | if sh.color_config.subsampling_x != 0 && sh.color_config.subsampling_y != 0 && use_chroma_lr [INFO] [stderr] 1044 | | { [INFO] [stderr] 1045 | | lr_uv_shift = br.f::(1)?; // f(1) [INFO] [stderr] 1046 | | } else { [INFO] [stderr] 1047 | | lr_uv_shift = 0; [INFO] [stderr] 1048 | | } [INFO] [stderr] | |_________^ help: it is more idiomatic to write: `let lr_uv_shift = if sh.color_config.subsampling_x != 0 && sh.color_config.subsampling_y != 0 && use_chroma_lr { br.f::(1)? } else { 0 };` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1092:28 [INFO] [stderr] | [INFO] [stderr] 1092 | let ref_hint = rfman.ref_order_hint[fh.ref_frame_idx[i] as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(rfman.ref_order_hint[fh.ref_frame_idx[i] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1093:49 [INFO] [stderr] | [INFO] [stderr] 1093 | if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) < 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(fh.order_hint)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1098:56 [INFO] [stderr] | [INFO] [stderr] 1098 | } else if av1::get_relative_dist(ref_hint, fh.order_hint as i32, sh) > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(fh.order_hint)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to i32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1117:32 [INFO] [stderr] | [INFO] [stderr] 1117 | let ref_hint = rfman.ref_order_hint[fh.ref_frame_idx[i] as usize] as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `i32::from(rfman.ref_order_hint[fh.ref_frame_idx[i] as usize])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/obu.rs:1379:30 [INFO] [stderr] | [INFO] [stderr] 1379 | let obu_header_len = 1 + (obu_extension_flag as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(obu_extension_flag)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 38 [INFO] [stderr] --> src/obu.rs:1413:1 [INFO] [stderr] | [INFO] [stderr] 1413 | / pub fn parse_sequence_header(bs: &mut R) -> Option { [INFO] [stderr] 1414 | | let mut br = BitReader::new(bs); [INFO] [stderr] 1415 | | let mut sh = SequenceHeader::default(); [INFO] [stderr] 1416 | | [INFO] [stderr] ... | [INFO] [stderr] 1532 | | Some(sh) [INFO] [stderr] 1533 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cyclomatic_complexity)] on by default [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 78 [INFO] [stderr] --> src/obu.rs:1538:1 [INFO] [stderr] | [INFO] [stderr] 1538 | / pub fn parse_frame_header( [INFO] [stderr] 1539 | | bs: &mut R, [INFO] [stderr] 1540 | | sh: &SequenceHeader, [INFO] [stderr] 1541 | | rfman: &mut av1::RefFrameManager, [INFO] [stderr] ... | [INFO] [stderr] 1809 | | Some(fh) [INFO] [stderr] 1810 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: you could split it up into multiple smaller functions [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cyclomatic_complexity [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/obu.rs:1750:20 [INFO] [stderr] | [INFO] [stderr] 1750 | } else { [INFO] [stderr] | ____________________^ [INFO] [stderr] 1751 | | // RefFrameSignBias[refFrame] = get_relative_dist(hint, OrderHint) > 0 [INFO] [stderr] 1752 | | } [INFO] [stderr] | |_____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::if_same_then_else)] on by default [INFO] [stderr] note: same as this [INFO] [stderr] --> src/obu.rs:1748:37 [INFO] [stderr] | [INFO] [stderr] 1748 | if sh.enable_order_hint { [INFO] [stderr] | _____________________________________^ [INFO] [stderr] 1749 | | // RefFrameSignBias[refFrame] = 0 [INFO] [stderr] 1750 | | } else { [INFO] [stderr] | |_____________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] error: this `if` has identical blocks [INFO] [stderr] --> src/obu.rs:1777:12 [INFO] [stderr] | [INFO] [stderr] 1777 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 1778 | | // load_previous_segment_ids() [INFO] [stderr] 1779 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] note: same as this [INFO] [stderr] --> src/obu.rs:1775:49 [INFO] [stderr] | [INFO] [stderr] 1775 | if fh.primary_ref_frame == PRIMARY_REF_NONE { [INFO] [stderr] | _________________________________________________^ [INFO] [stderr] 1776 | | // init_coeff_cdfs() [INFO] [stderr] 1777 | | } else { [INFO] [stderr] | |_____^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_same_then_else [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:53:46 [INFO] [stderr] | [INFO] [stderr] 53 | let reader = &mut io::Read::take(reader, obu.obu_size as u64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: The function/method `ivf::parse_ivf_header` doesn't need a mutable reference [INFO] [stderr] --> src/main.rs:138:33 [INFO] [stderr] | [INFO] [stderr] 138 | match ivf::parse_ivf_header(&mut ivf_header) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_mut_passed)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_mut_passed [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:178:47 [INFO] [stderr] | [INFO] [stderr] 178 | reader.seek(SeekFrom::Start(pos + obu.obu_size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:180:43 [INFO] [stderr] | [INFO] [stderr] 180 | reader.seek(SeekFrom::Start(pos + frame.size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(frame.size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:238:47 [INFO] [stderr] | [INFO] [stderr] 238 | reader.seek(SeekFrom::Start(pos + obu.obu_size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to u64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:269:43 [INFO] [stderr] | [INFO] [stderr] 269 | reader.seek(SeekFrom::Start(pos + obu.obu_size as u64))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try: `u64::from(obu.obu_size)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `av1parser`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "d4b5c3896defb09f7568e6e02ff89069a1f0e64939673a7901b905e82f866742"` [INFO] running `"docker" "rm" "-f" "d4b5c3896defb09f7568e6e02ff89069a1f0e64939673a7901b905e82f866742"` [INFO] [stdout] d4b5c3896defb09f7568e6e02ff89069a1f0e64939673a7901b905e82f866742