[INFO] crate raster-retrace 0.1.2 is already in cache [INFO] extracting crate raster-retrace 0.1.2 into work/ex/clippy-test-run/sources/stable/reg/raster-retrace/0.1.2 [INFO] extracting crate raster-retrace 0.1.2 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/raster-retrace/0.1.2 [INFO] validating manifest of raster-retrace-0.1.2 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of raster-retrace-0.1.2 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing raster-retrace-0.1.2 [INFO] finished frobbing raster-retrace-0.1.2 [INFO] frobbed toml for raster-retrace-0.1.2 written to work/ex/clippy-test-run/sources/stable/reg/raster-retrace/0.1.2/Cargo.toml [INFO] started frobbing raster-retrace-0.1.2 [INFO] finished frobbing raster-retrace-0.1.2 [INFO] frobbed toml for raster-retrace-0.1.2 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/raster-retrace/0.1.2/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting raster-retrace-0.1.2 against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/raster-retrace/0.1.2:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dclippy::into_iter_on_array" "-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] c4f23d5376acbbc62472eb8623533f509a699825b83024195d3e96c76d266ec7 [INFO] running `"docker" "start" "-a" "c4f23d5376acbbc62472eb8623533f509a699825b83024195d3e96c76d266ec7"` [INFO] [stderr] Checking raster-retrace v0.1.2 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/intern/argparse/mod.rs:56:17 [INFO] [stderr] | [INFO] [stderr] 56 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/intern/argparse/mod.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | descr: descr, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `descr` [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/intern/argparse/mod.rs:109:17 [INFO] [stderr] | [INFO] [stderr] 109 | id_short: id_short, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `id_short` [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/intern/argparse/mod.rs:110:17 [INFO] [stderr] | [INFO] [stderr] 110 | id_long: id_long, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `id_long` [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/intern/argparse/mod.rs:111:17 [INFO] [stderr] | [INFO] [stderr] 111 | metavar: metavar, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `metavar` [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/intern/argparse/mod.rs:112:17 [INFO] [stderr] | [INFO] [stderr] 112 | descr: descr, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `descr` [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/intern/argparse/mod.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | callback: callback, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `callback` [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/intern/argparse/mod.rs:114:17 [INFO] [stderr] | [INFO] [stderr] 114 | nparams: nparams, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `nparams` [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/intern/argparse/mod.rs:115:17 [INFO] [stderr] | [INFO] [stderr] 115 | flag: flag, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `flag` [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/intern/argparse/mod.rs:116:17 [INFO] [stderr] | [INFO] [stderr] 116 | group: group, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `group` [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/intern/argparse/mod.rs:299:9 [INFO] [stderr] | [INFO] [stderr] 299 | descr: descr, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `descr` [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/intern/argparse/mod.rs:300:9 [INFO] [stderr] | [INFO] [stderr] 300 | dest_data: dest_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `dest_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:260:21 [INFO] [stderr] | [INFO] [stderr] 260 | handles: handles, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handles` [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/intern/curve_fit_nd/curve_fit_from_polys.rs:1032:9 [INFO] [stderr] | [INFO] [stderr] 1032 | points_len: points_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `points_len` [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/intern/min_heap/mod.rs:227:13 [INFO] [stderr] | [INFO] [stderr] 227 | user_data: user_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/intern/min_heap/mod.rs:228:13 [INFO] [stderr] | [INFO] [stderr] 228 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/image_skeletonize.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/intern/argparse/mod.rs:56:17 [INFO] [stderr] | [INFO] [stderr] 56 | name: name, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [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/intern/argparse/mod.rs:57:17 [INFO] [stderr] | [INFO] [stderr] 57 | descr: descr, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `descr` [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/intern/argparse/mod.rs:109:17 [INFO] [stderr] | [INFO] [stderr] 109 | id_short: id_short, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `id_short` [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/intern/argparse/mod.rs:110:17 [INFO] [stderr] | [INFO] [stderr] 110 | id_long: id_long, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `id_long` [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/intern/argparse/mod.rs:111:17 [INFO] [stderr] | [INFO] [stderr] 111 | metavar: metavar, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `metavar` [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/intern/argparse/mod.rs:112:17 [INFO] [stderr] | [INFO] [stderr] 112 | descr: descr, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `descr` [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/intern/argparse/mod.rs:113:17 [INFO] [stderr] | [INFO] [stderr] 113 | callback: callback, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `callback` [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/intern/argparse/mod.rs:114:17 [INFO] [stderr] | [INFO] [stderr] 114 | nparams: nparams, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `nparams` [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/intern/argparse/mod.rs:115:17 [INFO] [stderr] | [INFO] [stderr] 115 | flag: flag, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `flag` [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/intern/argparse/mod.rs:116:17 [INFO] [stderr] | [INFO] [stderr] 116 | group: group, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `group` [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/intern/argparse/mod.rs:299:9 [INFO] [stderr] | [INFO] [stderr] 299 | descr: descr, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `descr` [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/intern/argparse/mod.rs:300:9 [INFO] [stderr] | [INFO] [stderr] 300 | dest_data: dest_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `dest_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:260:21 [INFO] [stderr] | [INFO] [stderr] 260 | handles: handles, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `handles` [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/intern/curve_fit_nd/curve_fit_from_polys.rs:1032:9 [INFO] [stderr] | [INFO] [stderr] 1032 | points_len: points_len, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `points_len` [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/intern/min_heap/mod.rs:227:13 [INFO] [stderr] | [INFO] [stderr] 227 | user_data: user_data, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `user_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/intern/min_heap/mod.rs:228:13 [INFO] [stderr] | [INFO] [stderr] 228 | value: value, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/image_skeletonize.rs:15:13 [INFO] [stderr] | [INFO] [stderr] 15 | data: data, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/argparse/mod.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return arg_group_handle; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `arg_group_handle` [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: unneeded return statement [INFO] [stderr] --> src/intern/argparse/mod.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 134 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | return split_point; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `split_point` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | / return ( [INFO] [stderr] 142 | | error_sq, error_index, [INFO] [stderr] 143 | | [dot_vnvn(tan_l, &sub_vnvn(&handle_factor_l, &points_offset[0])), [INFO] [stderr] 144 | | dot_vnvn(tan_r, &sub_vnvn(&handle_factor_r, &points_offset[points_offset.len() - 1]))], [INFO] [stderr] 145 | | ); [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] 141 | ( [INFO] [stderr] 142 | error_sq, error_index, [INFO] [stderr] 143 | [dot_vnvn(tan_l, &sub_vnvn(&handle_factor_l, &points_offset[0])), [INFO] [stderr] 144 | dot_vnvn(tan_r, &sub_vnvn(&handle_factor_r, &points_offset[points_offset.len() - 1]))], [INFO] [stderr] 145 | ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:179:9 [INFO] [stderr] | [INFO] [stderr] 179 | return (0.0, knot_l.index, [handle_len, handle_len]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(0.0, knot_l.index, [handle_len, handle_len])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | return (result.0, result.2); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(result.0, result.2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | return (0.0, [handle_len, handle_len]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(0.0, [handle_len, handle_len])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:263:16 [INFO] [stderr] | [INFO] [stderr] 263 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 264 | | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 265 | | heap.remove(*k_curr_heap_node); [INFO] [stderr] 266 | | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 267 | | } [INFO] [stderr] 268 | | } [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] 263 | } else if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 264 | heap.remove(*k_curr_heap_node); [INFO] [stderr] 265 | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 266 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:422:9 [INFO] [stderr] | [INFO] [stderr] 422 | / if !use_optimize_exhaustive { [INFO] [stderr] 423 | | if (k_refit_index == INVALID) || (k_refit_index == k_curr.index) { [INFO] [stderr] 424 | | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 425 | | heap.remove(*k_curr_heap_node); [INFO] [stderr] ... | [INFO] [stderr] 429 | | } [INFO] [stderr] 430 | | } [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] 422 | if !use_optimize_exhaustive && ((k_refit_index == INVALID) || (k_refit_index == k_curr.index)) { [INFO] [stderr] 423 | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 424 | heap.remove(*k_curr_heap_node); [INFO] [stderr] 425 | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 426 | return; [INFO] [stderr] 427 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:423:13 [INFO] [stderr] | [INFO] [stderr] 423 | / if (k_refit_index == INVALID) || (k_refit_index == k_curr.index) { [INFO] [stderr] 424 | | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 425 | | heap.remove(*k_curr_heap_node); [INFO] [stderr] 426 | | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 427 | | return; [INFO] [stderr] 428 | | } [INFO] [stderr] 429 | | } [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] 423 | if ((k_refit_index == INVALID) || (k_refit_index == k_curr.index)) && *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 424 | heap.remove(*k_curr_heap_node); [INFO] [stderr] 425 | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 426 | return; [INFO] [stderr] 427 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:460:13 [INFO] [stderr] | [INFO] [stderr] 460 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:1094:5 [INFO] [stderr] | [INFO] [stderr] 1094 | return cubic_array; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `cubic_array` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:1145:5 [INFO] [stderr] | [INFO] [stderr] 1145 | return curve_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `curve_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | / return types::Cubic { [INFO] [stderr] 45 | | p0: *p0, [INFO] [stderr] 46 | | p1: msub_vnvn_fl(p0, tan_l, alpha), [INFO] [stderr] 47 | | p2: madd_vnvn_fl(p3, tan_r, alpha), [INFO] [stderr] 48 | | p3: *p3, [INFO] [stderr] 49 | | }; [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] 44 | types::Cubic { [INFO] [stderr] 45 | p0: *p0, [INFO] [stderr] 46 | p1: msub_vnvn_fl(p0, tan_l, alpha), [INFO] [stderr] 47 | p2: madd_vnvn_fl(p3, tan_r, alpha), [INFO] [stderr] 48 | p3: *p3, [INFO] [stderr] 49 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | / return Some(types::Cubic { [INFO] [stderr] 124 | | p0: *p0, [INFO] [stderr] 125 | | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 126 | | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 127 | | p3: *p3, [INFO] [stderr] 128 | | }) [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] 123 | Some(types::Cubic { [INFO] [stderr] 124 | p0: *p0, [INFO] [stderr] 125 | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 126 | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 127 | p3: *p3, [INFO] [stderr] 128 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:136:13 [INFO] [stderr] | [INFO] [stderr] 136 | return 3.0 * u * tmp * tmp; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `3.0 * u * tmp * tmp` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | return 3.0 * u * u * (1.0 - u); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `3.0 * u * u * (1.0 - u)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:145:13 [INFO] [stderr] | [INFO] [stderr] 145 | return tmp * tmp * (1.0 + 2.0 * u); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `tmp * tmp * (1.0 + 2.0 * u)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:149:13 [INFO] [stderr] | [INFO] [stderr] 149 | return u * u * (3.0 - 2.0 * u); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `u * u * (3.0 - 2.0 * u)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:218:13 [INFO] [stderr] | [INFO] [stderr] 218 | return factor; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `factor` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:221:13 [INFO] [stderr] | [INFO] [stderr] 221 | return f64::consts::PI / 2.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `f64::consts::PI / 2.0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:237:13 [INFO] [stderr] | [INFO] [stderr] 237 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:240:13 [INFO] [stderr] | [INFO] [stderr] 240 | return Some(1.0 / 2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(1.0 / 2.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:248:13 [INFO] [stderr] | [INFO] [stderr] 248 | return Some(((1.0 - angle_cos) / (angle_sin * 2.0)) / angle_sin); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(((1.0 - angle_cos) / (angle_sin * 2.0)) / angle_sin)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:283:9 [INFO] [stderr] | [INFO] [stderr] 283 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:345:13 [INFO] [stderr] | [INFO] [stderr] 345 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:347:13 [INFO] [stderr] | [INFO] [stderr] 347 | / return Some(types::Cubic { [INFO] [stderr] 348 | | p0: *p0, [INFO] [stderr] 349 | | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 350 | | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 351 | | p3: *p3, [INFO] [stderr] 352 | | }); [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] 347 | Some(types::Cubic { [INFO] [stderr] 348 | p0: *p0, [INFO] [stderr] 349 | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 350 | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 351 | p3: *p3, [INFO] [stderr] 352 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:379:5 [INFO] [stderr] | [INFO] [stderr] 379 | return u - dot_vnvn(&q0_u, &q1_u) / (dot_vnvn(&q1_u, &q1_u) + dot_vnvn(&q0_u, &q2_u)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `u - dot_vnvn(&q0_u, &q1_u) / (dot_vnvn(&q1_u, &q1_u) + dot_vnvn(&q0_u, &q2_u))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:412:5 [INFO] [stderr] | [INFO] [stderr] 412 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:440:5 [INFO] [stderr] | [INFO] [stderr] 440 | return (u, w); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(u, w)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:459:5 [INFO] [stderr] | [INFO] [stderr] 459 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:456:21 [INFO] [stderr] | [INFO] [stderr] 456 | v_out[j] = ((((p01 * s) + (p12 * t))) * s) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:457:21 [INFO] [stderr] | [INFO] [stderr] 457 | ((((p12 * s) + (p23 * t))) * t); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:476:5 [INFO] [stderr] | [INFO] [stderr] 476 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:492:5 [INFO] [stderr] | [INFO] [stderr] 492 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:526:5 [INFO] [stderr] | [INFO] [stderr] 526 | / return FitError { [INFO] [stderr] 527 | | max_sq: error_max_sq, [INFO] [stderr] 528 | | index: error_index, [INFO] [stderr] 529 | | }; [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] 526 | FitError { [INFO] [stderr] 527 | max_sq: error_max_sq, [INFO] [stderr] 528 | index: error_index, [INFO] [stderr] 529 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:564:5 [INFO] [stderr] | [INFO] [stderr] 564 | / return Some(FitError { [INFO] [stderr] 565 | | max_sq: error_max_sq, [INFO] [stderr] 566 | | index: error_index, [INFO] [stderr] 567 | | }); [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] 564 | Some(FitError { [INFO] [stderr] 565 | max_sq: error_max_sq, [INFO] [stderr] 566 | index: error_index, [INFO] [stderr] 567 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:668:5 [INFO] [stderr] | [INFO] [stderr] 668 | return (cubic_best, error_best); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(cubic_best, error_best)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: immediately dereferencing a reference [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:607:34 [INFO] [stderr] | [INFO] [stderr] 607 | cubic_best = *$cubic_test; [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `cubic_test` [INFO] [stderr] ... [INFO] [stderr] 615 | cubic_test_error_limit!(&cubic_test); [INFO] [stderr] | ------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::deref_addrof)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deref_addrof [INFO] [stderr] [INFO] [stderr] warning: immediately dereferencing a reference [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:607:34 [INFO] [stderr] | [INFO] [stderr] 607 | cubic_best = *$cubic_test; [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `cubic_test` [INFO] [stderr] ... [INFO] [stderr] 619 | cubic_test_error_limit!(&cubic_test); [INFO] [stderr] | ------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deref_addrof [INFO] [stderr] [INFO] [stderr] warning: immediately dereferencing a reference [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:593:34 [INFO] [stderr] | [INFO] [stderr] 593 | cubic_best = *$cubic_test; [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `cubic_test` [INFO] [stderr] ... [INFO] [stderr] 628 | error_least_square = cubic_test_error!(&cubic_test); [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deref_addrof [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:685:5 [INFO] [stderr] | [INFO] [stderr] 685 | return ((fit_error.max_sq, fit_error.index), cubic.p1, cubic.p2); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `((fit_error.max_sq, fit_error.index), cubic.p1, cubic.p2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:136:5 [INFO] [stderr] | [INFO] [stderr] 136 | return Ok((size, color_max, pixel_buffer)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok((size, color_max, pixel_buffer))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | return Ok(buf[0]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(buf[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | / return match usize::from_str(num_str.as_str()) { [INFO] [stderr] 81 | | Ok(n) => { Ok(n) } [INFO] [stderr] 82 | | Err(e) => { Err(Error::new(ErrorKind::Other, e.to_string())) } [INFO] [stderr] 83 | | }; [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] 80 | match usize::from_str(num_str.as_str()) { [INFO] [stderr] 81 | Ok(n) => { Ok(n) } [INFO] [stderr] 82 | Err(e) => { Err(Error::new(ErrorKind::Other, e.to_string())) } [INFO] [stderr] 83 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | return Some(ImageFormat::PPM); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(ImageFormat::PPM)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | return Err(Error::new(ErrorKind::Other, "Unknown file format")); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::new(ErrorKind::Other, "Unknown file format"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | return Err(Error::new(ErrorKind::Other, "Unknown file format")); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::new(ErrorKind::Other, "Unknown file format"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:112:5 [INFO] [stderr] | [INFO] [stderr] 112 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:282:5 [INFO] [stderr] | [INFO] [stderr] 282 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:289:5 [INFO] [stderr] | [INFO] [stderr] 289 | return len_squared_vnvn(v0, v1).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `len_squared_vnvn(v0, v1).sqrt()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:307:5 [INFO] [stderr] | [INFO] [stderr] 307 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:315:5 [INFO] [stderr] | [INFO] [stderr] 315 | return len_squared_negated_vnvn(v0, v1).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `len_squared_negated_vnvn(v0, v1).sqrt()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:325:5 [INFO] [stderr] | [INFO] [stderr] 325 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:333:5 [INFO] [stderr] | [INFO] [stderr] 333 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:342:5 [INFO] [stderr] | [INFO] [stderr] 342 | return v; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `v` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:350:5 [INFO] [stderr] | [INFO] [stderr] 350 | return (v, d); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(v, d)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:356:5 [INFO] [stderr] | [INFO] [stderr] 356 | return (-eps < val) && (val < eps); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(-eps < val) && (val < eps)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:362:5 [INFO] [stderr] | [INFO] [stderr] 362 | return is_almost_zero_ex(val, EPS); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `is_almost_zero_ex(val, EPS)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:389:5 [INFO] [stderr] | [INFO] [stderr] 389 | return mul_vn_fl(v_proj, mul); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `mul_vn_fl(v_proj, mul)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:395:5 [INFO] [stderr] | [INFO] [stderr] 395 | return sub_vnvn(v, &project_vnvn_normalized(v, v_plane)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `sub_vnvn(v, &project_vnvn_normalized(v, v_plane))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:109:9 [INFO] [stderr] | [INFO] [stderr] 109 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:205:9 [INFO] [stderr] | [INFO] [stderr] 205 | return NodeHandle(nhandle); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `NodeHandle(nhandle)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | return user_data; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `user_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:239:9 [INFO] [stderr] | [INFO] [stderr] 239 | return nhandle; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `nhandle` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:264:9 [INFO] [stderr] | [INFO] [stderr] 264 | return Some(self.node_drop(free_node)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(self.node_drop(free_node))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:291:9 [INFO] [stderr] | [INFO] [stderr] 291 | return Some((self.node[free_node].value, self.node_drop(free_node))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some((self.node[free_node].value, self.node_drop(free_node)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:319:9 [INFO] [stderr] | [INFO] [stderr] 319 | return self.tree_index.len() == 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.tree_index.len() == 0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:353:9 [INFO] [stderr] | [INFO] [stderr] 353 | return self.node[nhandle.0].value; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.node[nhandle.0].value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:359:9 [INFO] [stderr] | [INFO] [stderr] 359 | return self.node[nhandle.0].user_data; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.node[nhandle.0].user_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | return poly_float; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_float` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | return poly_list_float; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_float` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | return poly_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | return poly_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | return poly_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:151:5 [INFO] [stderr] | [INFO] [stderr] 151 | return poly_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_outline.rs:319:5 [INFO] [stderr] | [INFO] [stderr] 319 | return poly_list; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_outline.rs:287:13 [INFO] [stderr] | [INFO] [stderr] 287 | return (poly, handled); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(poly, handled)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/polys_from_raster_outline.rs:166:17 [INFO] [stderr] | [INFO] [stderr] 166 | / if handled != 0 { [INFO] [stderr] 167 | | if x == x_init && y == y_init { [INFO] [stderr] 168 | | poly.pop(); // weak [INFO] [stderr] 169 | | break; [INFO] [stderr] 170 | | } [INFO] [stderr] 171 | | } [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] 166 | if handled != 0 && x == x_init && y == y_init { [INFO] [stderr] 167 | poly.pop(); // weak [INFO] [stderr] 168 | break; [INFO] [stderr] 169 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_outline.rs:238:21 [INFO] [stderr] | [INFO] [stderr] 238 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:215:33 [INFO] [stderr] | [INFO] [stderr] 215 | ($y >= 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 227 | ct += if xy_or!(x + a, y + i - 1, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [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] 215 | (y + i > 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:214:33 [INFO] [stderr] | [INFO] [stderr] 214 | if ($x >= 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 228 | ct += if xy_or!(x + i - 1, y + a - 1, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 214 | if (x + i > 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:215:33 [INFO] [stderr] | [INFO] [stderr] 215 | ($y >= 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 228 | ct += if xy_or!(x + i - 1, y + a - 1, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 215 | (y + a > 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:214:33 [INFO] [stderr] | [INFO] [stderr] 214 | if ($x >= 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 229 | ct += if xy_or!(x + a - 1, y - i, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 214 | if (x + a > 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_centerline.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | return poly_list; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_centerline.rs:280:13 [INFO] [stderr] | [INFO] [stderr] 280 | return (is_cyclic, poly); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(is_cyclic, poly)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_centerline.rs:316:13 [INFO] [stderr] | [INFO] [stderr] 316 | return (is_cyclic, poly); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(is_cyclic, poly)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | / return Some([ [INFO] [stderr] 26 | | q.b2 * invdet, /* [0][0] */ [INFO] [stderr] 27 | | q.ab * -invdet, /* [0][1] */ [INFO] [stderr] 28 | | q.a2 * invdet, /* [1][1] */ [INFO] [stderr] 29 | | ]); [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] 25 | Some([ [INFO] [stderr] 26 | q.b2 * invdet, /* [0][0] */ [INFO] [stderr] 27 | q.ab * -invdet, /* [0][1] */ [INFO] [stderr] 28 | q.a2 * invdet, /* [1][1] */ [INFO] [stderr] 29 | ]) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | / return Quadric { [INFO] [stderr] 52 | | a2: q_a.a2 + q_b.a2, [INFO] [stderr] 53 | | ab: q_a.ab + q_b.ab, [INFO] [stderr] 54 | | ac: q_a.ac + q_b.ac, [INFO] [stderr] ... | [INFO] [stderr] 57 | | c2: q_a.c2 + q_b.c2, [INFO] [stderr] 58 | | }; [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] 51 | Quadric { [INFO] [stderr] 52 | a2: q_a.a2 + q_b.a2, [INFO] [stderr] 53 | ab: q_a.ab + q_b.ab, [INFO] [stderr] 54 | ac: q_a.ac + q_b.ac, [INFO] [stderr] 55 | b2: q_a.b2 + q_b.b2, [INFO] [stderr] 56 | bc: q_a.bc + q_b.bc, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:76:9 [INFO] [stderr] | [INFO] [stderr] 76 | / return Quadric { [INFO] [stderr] 77 | | a2: v[0] * v[0], [INFO] [stderr] 78 | | b2: v[1] * v[1], [INFO] [stderr] 79 | | [INFO] [stderr] ... | [INFO] [stderr] 84 | | c2: v[2] * v[2], [INFO] [stderr] 85 | | }; [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] 76 | Quadric { [INFO] [stderr] 77 | a2: v[0] * v[0], [INFO] [stderr] 78 | b2: v[1] * v[1], [INFO] [stderr] 79 | [INFO] [stderr] 80 | ab: v[0] * v[1], [INFO] [stderr] 81 | ac: v[0] * v[2], [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:92:9 [INFO] [stderr] | [INFO] [stderr] 92 | / return (q.a2 * v[0] * v[0]) + (q.ab * 2.0 * v[0] * v[1]) + (q.ac * 2.0 * v[0]) + [INFO] [stderr] 93 | | (q.b2 * v[1] * v[1]) + (q.bc * 2.0 * v[1]) + [INFO] [stderr] 94 | | (q.c2); [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] 92 | (q.a2 * v[0] * v[0]) + (q.ab * 2.0 * v[0] * v[1]) + (q.ac * 2.0 * v[0]) + [INFO] [stderr] 93 | (q.b2 * v[1] * v[1]) + (q.bc * 2.0 * v[1]) + [INFO] [stderr] 94 | (q.c2) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:398:5 [INFO] [stderr] | [INFO] [stderr] 398 | return poly_edit; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_edit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:413:5 [INFO] [stderr] | [INFO] [stderr] 413 | return poly_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | return number_of_neighbors == 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `number_of_neighbors == 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:157:5 [INFO] [stderr] | [INFO] [stderr] 157 | / return [INFO] [stderr] 158 | | if pixel_get(image, x - 1, y - 1) { DIR_SW } else { 0 } | [INFO] [stderr] 159 | | if pixel_get(image, x, y - 1) { DIR_S } else { 0 } | [INFO] [stderr] 160 | | if pixel_get(image, x + 1, y - 1) { DIR_SE } else { 0 } | [INFO] [stderr] ... | [INFO] [stderr] 167 | | if pixel_get(image, x + 1, y + 1) { DIR_NE } else { 0 } [INFO] [stderr] 168 | | ; [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] 157 | if pixel_get(image, x - 1, y - 1) { DIR_SW } else { 0 } | [INFO] [stderr] 158 | if pixel_get(image, x, y - 1) { DIR_S } else { 0 } | [INFO] [stderr] 159 | if pixel_get(image, x + 1, y - 1) { DIR_SE } else { 0 } | [INFO] [stderr] 160 | [INFO] [stderr] 161 | if pixel_get(image, x - 1, y) { DIR_W } else { 0 } | [INFO] [stderr] 162 | if pixel_get(image, x + 1, y) { DIR_E } else { 0 } | [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:176:9 [INFO] [stderr] | [INFO] [stderr] 176 | return image.data[(x + y * image.size[0]) as usize]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `image.data[(x + y * image.size[0]) as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:184:5 [INFO] [stderr] | [INFO] [stderr] 184 | return image.data[(x + y * image.size[0]) as usize]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `image.data[(x + y * image.size[0]) as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:213:5 [INFO] [stderr] | [INFO] [stderr] 213 | return euler_char == 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `euler_char == 0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:217:5 [INFO] [stderr] | [INFO] [stderr] 217 | / return [INFO] [stderr] 218 | | if neighbors & DIR_S != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 219 | | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 220 | | (1 << 0) [INFO] [stderr] 221 | | ; [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] 217 | if neighbors & DIR_S != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 218 | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 219 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:225:5 [INFO] [stderr] | [INFO] [stderr] 225 | / return [INFO] [stderr] 226 | | if neighbors & DIR_W != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 227 | | if neighbors & DIR_S != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 228 | | (1 << 0) [INFO] [stderr] 229 | | ; [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] 225 | if neighbors & DIR_W != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 226 | if neighbors & DIR_S != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 227 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:233:5 [INFO] [stderr] | [INFO] [stderr] 233 | / return [INFO] [stderr] 234 | | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 235 | | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 236 | | (1 << 0) [INFO] [stderr] 237 | | ; [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] 233 | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 234 | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 235 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | / return [INFO] [stderr] 242 | | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 243 | | if neighbors & DIR_W != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 244 | | (1 << 0) [INFO] [stderr] 245 | | ; [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] 241 | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 242 | if neighbors & DIR_W != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 243 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:294:5 [INFO] [stderr] | [INFO] [stderr] 294 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:128:9 [INFO] [stderr] | [INFO] [stderr] 128 | poly_list_dst [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:125:29 [INFO] [stderr] | [INFO] [stderr] 125 | let poly_list_dst = polys_utils::poly_list_subdivide_to_limit( [INFO] [stderr] | _____________________________^ [INFO] [stderr] 126 | | &poly_list_dst, length_threshold); [INFO] [stderr] | |_____________________________________________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:260:21 [INFO] [stderr] | [INFO] [stderr] 260 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:271:21 [INFO] [stderr] | [INFO] [stderr] 271 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:304:21 [INFO] [stderr] | [INFO] [stderr] 304 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:339:21 [INFO] [stderr] | [INFO] [stderr] 339 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:360:29 [INFO] [stderr] | [INFO] [stderr] 360 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:363:29 [INFO] [stderr] | [INFO] [stderr] 363 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:378:29 [INFO] [stderr] | [INFO] [stderr] 378 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:381:29 [INFO] [stderr] | [INFO] [stderr] 381 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:398:29 [INFO] [stderr] | [INFO] [stderr] 398 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:401:29 [INFO] [stderr] | [INFO] [stderr] 401 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:414:21 [INFO] [stderr] | [INFO] [stderr] 414 | return Ok(0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:435:29 [INFO] [stderr] | [INFO] [stderr] 435 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:438:29 [INFO] [stderr] | [INFO] [stderr] 438 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:471:21 [INFO] [stderr] | [INFO] [stderr] 471 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:484:29 [INFO] [stderr] | [INFO] [stderr] 484 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:487:29 [INFO] [stderr] | [INFO] [stderr] 487 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:502:17 [INFO] [stderr] | [INFO] [stderr] 502 | return Ok(0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/argparse/mod.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return arg_group_handle; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `arg_group_handle` [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: unneeded return statement [INFO] [stderr] --> src/intern/argparse/mod.rs:134:9 [INFO] [stderr] | [INFO] [stderr] 134 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:126:5 [INFO] [stderr] | [INFO] [stderr] 126 | return split_point; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `split_point` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | / return ( [INFO] [stderr] 142 | | error_sq, error_index, [INFO] [stderr] 143 | | [dot_vnvn(tan_l, &sub_vnvn(&handle_factor_l, &points_offset[0])), [INFO] [stderr] 144 | | dot_vnvn(tan_r, &sub_vnvn(&handle_factor_r, &points_offset[points_offset.len() - 1]))], [INFO] [stderr] 145 | | ); [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] 141 | ( [INFO] [stderr] 142 | error_sq, error_index, [INFO] [stderr] 143 | [dot_vnvn(tan_l, &sub_vnvn(&handle_factor_l, &points_offset[0])), [INFO] [stderr] 144 | dot_vnvn(tan_r, &sub_vnvn(&handle_factor_r, &points_offset[points_offset.len() - 1]))], [INFO] [stderr] 145 | ) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | return result; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `result` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:179:9 [INFO] [stderr] | [INFO] [stderr] 179 | return (0.0, knot_l.index, [handle_len, handle_len]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(0.0, knot_l.index, [handle_len, handle_len])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | return (result.0, result.2); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(result.0, result.2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | return (0.0, [handle_len, handle_len]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(0.0, [handle_len, handle_len])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:263:16 [INFO] [stderr] | [INFO] [stderr] 263 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 264 | | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 265 | | heap.remove(*k_curr_heap_node); [INFO] [stderr] 266 | | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 267 | | } [INFO] [stderr] 268 | | } [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] 263 | } else if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 264 | heap.remove(*k_curr_heap_node); [INFO] [stderr] 265 | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 266 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:422:9 [INFO] [stderr] | [INFO] [stderr] 422 | / if !use_optimize_exhaustive { [INFO] [stderr] 423 | | if (k_refit_index == INVALID) || (k_refit_index == k_curr.index) { [INFO] [stderr] 424 | | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 425 | | heap.remove(*k_curr_heap_node); [INFO] [stderr] ... | [INFO] [stderr] 429 | | } [INFO] [stderr] 430 | | } [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] 422 | if !use_optimize_exhaustive && ((k_refit_index == INVALID) || (k_refit_index == k_curr.index)) { [INFO] [stderr] 423 | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 424 | heap.remove(*k_curr_heap_node); [INFO] [stderr] 425 | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 426 | return; [INFO] [stderr] 427 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:423:13 [INFO] [stderr] | [INFO] [stderr] 423 | / if (k_refit_index == INVALID) || (k_refit_index == k_curr.index) { [INFO] [stderr] 424 | | if *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 425 | | heap.remove(*k_curr_heap_node); [INFO] [stderr] 426 | | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 427 | | return; [INFO] [stderr] 428 | | } [INFO] [stderr] 429 | | } [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] 423 | if ((k_refit_index == INVALID) || (k_refit_index == k_curr.index)) && *k_curr_heap_node != min_heap::NodeHandle::INVALID { [INFO] [stderr] 424 | heap.remove(*k_curr_heap_node); [INFO] [stderr] 425 | *k_curr_heap_node = min_heap::NodeHandle::INVALID; [INFO] [stderr] 426 | return; [INFO] [stderr] 427 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:460:13 [INFO] [stderr] | [INFO] [stderr] 460 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:1094:5 [INFO] [stderr] | [INFO] [stderr] 1094 | return cubic_array; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `cubic_array` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:1145:5 [INFO] [stderr] | [INFO] [stderr] 1145 | return curve_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `curve_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | / return types::Cubic { [INFO] [stderr] 45 | | p0: *p0, [INFO] [stderr] 46 | | p1: msub_vnvn_fl(p0, tan_l, alpha), [INFO] [stderr] 47 | | p2: madd_vnvn_fl(p3, tan_r, alpha), [INFO] [stderr] 48 | | p3: *p3, [INFO] [stderr] 49 | | }; [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] 44 | types::Cubic { [INFO] [stderr] 45 | p0: *p0, [INFO] [stderr] 46 | p1: msub_vnvn_fl(p0, tan_l, alpha), [INFO] [stderr] 47 | p2: madd_vnvn_fl(p3, tan_r, alpha), [INFO] [stderr] 48 | p3: *p3, [INFO] [stderr] 49 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:123:13 [INFO] [stderr] | [INFO] [stderr] 123 | / return Some(types::Cubic { [INFO] [stderr] 124 | | p0: *p0, [INFO] [stderr] 125 | | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 126 | | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 127 | | p3: *p3, [INFO] [stderr] 128 | | }) [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] 123 | Some(types::Cubic { [INFO] [stderr] 124 | p0: *p0, [INFO] [stderr] 125 | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 126 | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 127 | p3: *p3, [INFO] [stderr] 128 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:136:13 [INFO] [stderr] | [INFO] [stderr] 136 | return 3.0 * u * tmp * tmp; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `3.0 * u * tmp * tmp` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | return 3.0 * u * u * (1.0 - u); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `3.0 * u * u * (1.0 - u)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:145:13 [INFO] [stderr] | [INFO] [stderr] 145 | return tmp * tmp * (1.0 + 2.0 * u); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `tmp * tmp * (1.0 + 2.0 * u)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:149:13 [INFO] [stderr] | [INFO] [stderr] 149 | return u * u * (3.0 - 2.0 * u); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `u * u * (3.0 - 2.0 * u)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:218:13 [INFO] [stderr] | [INFO] [stderr] 218 | return factor; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `factor` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:221:13 [INFO] [stderr] | [INFO] [stderr] 221 | return f64::consts::PI / 2.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `f64::consts::PI / 2.0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:237:13 [INFO] [stderr] | [INFO] [stderr] 237 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:240:13 [INFO] [stderr] | [INFO] [stderr] 240 | return Some(1.0 / 2.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(1.0 / 2.0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:248:13 [INFO] [stderr] | [INFO] [stderr] 248 | return Some(((1.0 - angle_cos) / (angle_sin * 2.0)) / angle_sin); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(((1.0 - angle_cos) / (angle_sin * 2.0)) / angle_sin)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:283:9 [INFO] [stderr] | [INFO] [stderr] 283 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:345:13 [INFO] [stderr] | [INFO] [stderr] 345 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:347:13 [INFO] [stderr] | [INFO] [stderr] 347 | / return Some(types::Cubic { [INFO] [stderr] 348 | | p0: *p0, [INFO] [stderr] 349 | | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 350 | | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 351 | | p3: *p3, [INFO] [stderr] 352 | | }); [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] 347 | Some(types::Cubic { [INFO] [stderr] 348 | p0: *p0, [INFO] [stderr] 349 | p1: msub_vnvn_fl(p0, tan_l, alpha_l), [INFO] [stderr] 350 | p2: madd_vnvn_fl(p3, tan_r, alpha_r), [INFO] [stderr] 351 | p3: *p3, [INFO] [stderr] 352 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:379:5 [INFO] [stderr] | [INFO] [stderr] 379 | return u - dot_vnvn(&q0_u, &q1_u) / (dot_vnvn(&q1_u, &q1_u) + dot_vnvn(&q0_u, &q2_u)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `u - dot_vnvn(&q0_u, &q1_u) / (dot_vnvn(&q1_u, &q1_u) + dot_vnvn(&q0_u, &q2_u))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:412:5 [INFO] [stderr] | [INFO] [stderr] 412 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:440:5 [INFO] [stderr] | [INFO] [stderr] 440 | return (u, w); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(u, w)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:459:5 [INFO] [stderr] | [INFO] [stderr] 459 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:456:21 [INFO] [stderr] | [INFO] [stderr] 456 | v_out[j] = ((((p01 * s) + (p12 * t))) * s) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:457:21 [INFO] [stderr] | [INFO] [stderr] 457 | ((((p12 * s) + (p23 * t))) * t); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:476:5 [INFO] [stderr] | [INFO] [stderr] 476 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:492:5 [INFO] [stderr] | [INFO] [stderr] 492 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:526:5 [INFO] [stderr] | [INFO] [stderr] 526 | / return FitError { [INFO] [stderr] 527 | | max_sq: error_max_sq, [INFO] [stderr] 528 | | index: error_index, [INFO] [stderr] 529 | | }; [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] 526 | FitError { [INFO] [stderr] 527 | max_sq: error_max_sq, [INFO] [stderr] 528 | index: error_index, [INFO] [stderr] 529 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:564:5 [INFO] [stderr] | [INFO] [stderr] 564 | / return Some(FitError { [INFO] [stderr] 565 | | max_sq: error_max_sq, [INFO] [stderr] 566 | | index: error_index, [INFO] [stderr] 567 | | }); [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] 564 | Some(FitError { [INFO] [stderr] 565 | max_sq: error_max_sq, [INFO] [stderr] 566 | index: error_index, [INFO] [stderr] 567 | }) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:668:5 [INFO] [stderr] | [INFO] [stderr] 668 | return (cubic_best, error_best); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(cubic_best, error_best)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: immediately dereferencing a reference [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:607:34 [INFO] [stderr] | [INFO] [stderr] 607 | cubic_best = *$cubic_test; [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `cubic_test` [INFO] [stderr] ... [INFO] [stderr] 615 | cubic_test_error_limit!(&cubic_test); [INFO] [stderr] | ------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::deref_addrof)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deref_addrof [INFO] [stderr] [INFO] [stderr] warning: immediately dereferencing a reference [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:607:34 [INFO] [stderr] | [INFO] [stderr] 607 | cubic_best = *$cubic_test; [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `cubic_test` [INFO] [stderr] ... [INFO] [stderr] 619 | cubic_test_error_limit!(&cubic_test); [INFO] [stderr] | ------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deref_addrof [INFO] [stderr] [INFO] [stderr] warning: immediately dereferencing a reference [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:593:34 [INFO] [stderr] | [INFO] [stderr] 593 | cubic_best = *$cubic_test; [INFO] [stderr] | ^^^^^^^^^^^^ help: try this: `cubic_test` [INFO] [stderr] ... [INFO] [stderr] 628 | error_least_square = cubic_test_error!(&cubic_test); [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#deref_addrof [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:685:5 [INFO] [stderr] | [INFO] [stderr] 685 | return ((fit_error.max_sq, fit_error.index), cubic.p1, cubic.p2); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `((fit_error.max_sq, fit_error.index), cubic.p1, cubic.p2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:136:5 [INFO] [stderr] | [INFO] [stderr] 136 | return Ok((size, color_max, pixel_buffer)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok((size, color_max, pixel_buffer))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:54:9 [INFO] [stderr] | [INFO] [stderr] 54 | return Ok(buf[0]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(buf[0])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:80:9 [INFO] [stderr] | [INFO] [stderr] 80 | / return match usize::from_str(num_str.as_str()) { [INFO] [stderr] 81 | | Ok(n) => { Ok(n) } [INFO] [stderr] 82 | | Err(e) => { Err(Error::new(ErrorKind::Other, e.to_string())) } [INFO] [stderr] 83 | | }; [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] 80 | match usize::from_str(num_str.as_str()) { [INFO] [stderr] 81 | Ok(n) => { Ok(n) } [INFO] [stderr] 82 | Err(e) => { Err(Error::new(ErrorKind::Other, e.to_string())) } [INFO] [stderr] 83 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | return Some(ImageFormat::PPM); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(ImageFormat::PPM)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | return Err(Error::new(ErrorKind::Other, "Unknown file format")); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::new(ErrorKind::Other, "Unknown file format"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/image_load/mod.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | return Err(Error::new(ErrorKind::Other, "Unknown file format")); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::new(ErrorKind::Other, "Unknown file format"))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:112:5 [INFO] [stderr] | [INFO] [stderr] 112 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:272:5 [INFO] [stderr] | [INFO] [stderr] 272 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:282:5 [INFO] [stderr] | [INFO] [stderr] 282 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:289:5 [INFO] [stderr] | [INFO] [stderr] 289 | return len_squared_vnvn(v0, v1).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `len_squared_vnvn(v0, v1).sqrt()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:307:5 [INFO] [stderr] | [INFO] [stderr] 307 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:315:5 [INFO] [stderr] | [INFO] [stderr] 315 | return len_squared_negated_vnvn(v0, v1).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `len_squared_negated_vnvn(v0, v1).sqrt()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:325:5 [INFO] [stderr] | [INFO] [stderr] 325 | return d; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:333:5 [INFO] [stderr] | [INFO] [stderr] 333 | return v_out; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `v_out` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:342:5 [INFO] [stderr] | [INFO] [stderr] 342 | return v; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `v` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:350:5 [INFO] [stderr] | [INFO] [stderr] 350 | return (v, d); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `(v, d)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:356:5 [INFO] [stderr] | [INFO] [stderr] 356 | return (-eps < val) && (val < eps); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(-eps < val) && (val < eps)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:362:5 [INFO] [stderr] | [INFO] [stderr] 362 | return is_almost_zero_ex(val, EPS); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `is_almost_zero_ex(val, EPS)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:389:5 [INFO] [stderr] | [INFO] [stderr] 389 | return mul_vn_fl(v_proj, mul); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `mul_vn_fl(v_proj, mul)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/math_vector/mod.rs:395:5 [INFO] [stderr] | [INFO] [stderr] 395 | return sub_vnvn(v, &project_vnvn_normalized(v, v_plane)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `sub_vnvn(v, &project_vnvn_normalized(v, v_plane))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:109:9 [INFO] [stderr] | [INFO] [stderr] 109 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:205:9 [INFO] [stderr] | [INFO] [stderr] 205 | return NodeHandle(nhandle); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `NodeHandle(nhandle)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 215 | return user_data; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `user_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:239:9 [INFO] [stderr] | [INFO] [stderr] 239 | return nhandle; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: remove `return` as shown: `nhandle` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:264:9 [INFO] [stderr] | [INFO] [stderr] 264 | return Some(self.node_drop(free_node)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(self.node_drop(free_node))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:291:9 [INFO] [stderr] | [INFO] [stderr] 291 | return Some((self.node[free_node].value, self.node_drop(free_node))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some((self.node[free_node].value, self.node_drop(free_node)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:319:9 [INFO] [stderr] | [INFO] [stderr] 319 | return self.tree_index.len() == 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.tree_index.len() == 0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:353:9 [INFO] [stderr] | [INFO] [stderr] 353 | return self.node[nhandle.0].value; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.node[nhandle.0].value` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/intern/min_heap/mod.rs:359:9 [INFO] [stderr] | [INFO] [stderr] 359 | return self.node[nhandle.0].user_data; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.node[nhandle.0].user_data` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | return poly_float; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_float` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | return poly_list_float; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_float` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | return poly_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:101:5 [INFO] [stderr] | [INFO] [stderr] 101 | return poly_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | return poly_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_utils.rs:151:5 [INFO] [stderr] | [INFO] [stderr] 151 | return poly_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_outline.rs:319:5 [INFO] [stderr] | [INFO] [stderr] 319 | return poly_list; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_outline.rs:287:13 [INFO] [stderr] | [INFO] [stderr] 287 | return (poly, handled); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(poly, handled)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this if statement can be collapsed [INFO] [stderr] --> src/polys_from_raster_outline.rs:166:17 [INFO] [stderr] | [INFO] [stderr] 166 | / if handled != 0 { [INFO] [stderr] 167 | | if x == x_init && y == y_init { [INFO] [stderr] 168 | | poly.pop(); // weak [INFO] [stderr] 169 | | break; [INFO] [stderr] 170 | | } [INFO] [stderr] 171 | | } [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] 166 | if handled != 0 && x == x_init && y == y_init { [INFO] [stderr] 167 | poly.pop(); // weak [INFO] [stderr] 168 | break; [INFO] [stderr] 169 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_outline.rs:238:21 [INFO] [stderr] | [INFO] [stderr] 238 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:215:33 [INFO] [stderr] | [INFO] [stderr] 215 | ($y >= 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 227 | ct += if xy_or!(x + a, y + i - 1, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [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] 215 | (y + i > 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:214:33 [INFO] [stderr] | [INFO] [stderr] 214 | if ($x >= 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 228 | ct += if xy_or!(x + i - 1, y + a - 1, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 214 | if (x + i > 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:215:33 [INFO] [stderr] | [INFO] [stderr] 215 | ($y >= 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 228 | ct += if xy_or!(x + i - 1, y + a - 1, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 215 | (y + a > 0 && $y < image_data.1[1]) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: Unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stderr] --> src/polys_from_raster_outline.rs:214:33 [INFO] [stderr] | [INFO] [stderr] 214 | if ($x >= 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 229 | ct += if xy_or!(x + a - 1, y - i, false) { 1 } else { -1 }; [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stderr] help: change `>= y + 1` to `> y` as shown [INFO] [stderr] | [INFO] [stderr] 214 | if (x + a > 0 && $x < image_data.1[0]) && [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_centerline.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | return poly_list; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_centerline.rs:280:13 [INFO] [stderr] | [INFO] [stderr] 280 | return (is_cyclic, poly); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(is_cyclic, poly)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_from_raster_centerline.rs:316:13 [INFO] [stderr] | [INFO] [stderr] 316 | return (is_cyclic, poly); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `(is_cyclic, poly)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | / return Some([ [INFO] [stderr] 26 | | q.b2 * invdet, /* [0][0] */ [INFO] [stderr] 27 | | q.ab * -invdet, /* [0][1] */ [INFO] [stderr] 28 | | q.a2 * invdet, /* [1][1] */ [INFO] [stderr] 29 | | ]); [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] 25 | Some([ [INFO] [stderr] 26 | q.b2 * invdet, /* [0][0] */ [INFO] [stderr] 27 | q.ab * -invdet, /* [0][1] */ [INFO] [stderr] 28 | q.a2 * invdet, /* [1][1] */ [INFO] [stderr] 29 | ]) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:31:13 [INFO] [stderr] | [INFO] [stderr] 31 | return None; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | / return Quadric { [INFO] [stderr] 52 | | a2: q_a.a2 + q_b.a2, [INFO] [stderr] 53 | | ab: q_a.ab + q_b.ab, [INFO] [stderr] 54 | | ac: q_a.ac + q_b.ac, [INFO] [stderr] ... | [INFO] [stderr] 57 | | c2: q_a.c2 + q_b.c2, [INFO] [stderr] 58 | | }; [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] 51 | Quadric { [INFO] [stderr] 52 | a2: q_a.a2 + q_b.a2, [INFO] [stderr] 53 | ab: q_a.ab + q_b.ab, [INFO] [stderr] 54 | ac: q_a.ac + q_b.ac, [INFO] [stderr] 55 | b2: q_a.b2 + q_b.b2, [INFO] [stderr] 56 | bc: q_a.bc + q_b.bc, [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:76:9 [INFO] [stderr] | [INFO] [stderr] 76 | / return Quadric { [INFO] [stderr] 77 | | a2: v[0] * v[0], [INFO] [stderr] 78 | | b2: v[1] * v[1], [INFO] [stderr] 79 | | [INFO] [stderr] ... | [INFO] [stderr] 84 | | c2: v[2] * v[2], [INFO] [stderr] 85 | | }; [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] 76 | Quadric { [INFO] [stderr] 77 | a2: v[0] * v[0], [INFO] [stderr] 78 | b2: v[1] * v[1], [INFO] [stderr] 79 | [INFO] [stderr] 80 | ab: v[0] * v[1], [INFO] [stderr] 81 | ac: v[0] * v[2], [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:92:9 [INFO] [stderr] | [INFO] [stderr] 92 | / return (q.a2 * v[0] * v[0]) + (q.ab * 2.0 * v[0] * v[1]) + (q.ac * 2.0 * v[0]) + [INFO] [stderr] 93 | | (q.b2 * v[1] * v[1]) + (q.bc * 2.0 * v[1]) + [INFO] [stderr] 94 | | (q.c2); [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] 92 | (q.a2 * v[0] * v[0]) + (q.ab * 2.0 * v[0] * v[1]) + (q.ac * 2.0 * v[0]) + [INFO] [stderr] 93 | (q.b2 * v[1] * v[1]) + (q.bc * 2.0 * v[1]) + [INFO] [stderr] 94 | (q.c2) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:398:5 [INFO] [stderr] | [INFO] [stderr] 398 | return poly_edit; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_edit` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/polys_simplify_collapse.rs:413:5 [INFO] [stderr] | [INFO] [stderr] 413 | return poly_list_dst; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `poly_list_dst` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | return number_of_neighbors == 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `number_of_neighbors == 1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:157:5 [INFO] [stderr] | [INFO] [stderr] 157 | / return [INFO] [stderr] 158 | | if pixel_get(image, x - 1, y - 1) { DIR_SW } else { 0 } | [INFO] [stderr] 159 | | if pixel_get(image, x, y - 1) { DIR_S } else { 0 } | [INFO] [stderr] 160 | | if pixel_get(image, x + 1, y - 1) { DIR_SE } else { 0 } | [INFO] [stderr] ... | [INFO] [stderr] 167 | | if pixel_get(image, x + 1, y + 1) { DIR_NE } else { 0 } [INFO] [stderr] 168 | | ; [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] 157 | if pixel_get(image, x - 1, y - 1) { DIR_SW } else { 0 } | [INFO] [stderr] 158 | if pixel_get(image, x, y - 1) { DIR_S } else { 0 } | [INFO] [stderr] 159 | if pixel_get(image, x + 1, y - 1) { DIR_SE } else { 0 } | [INFO] [stderr] 160 | [INFO] [stderr] 161 | if pixel_get(image, x - 1, y) { DIR_W } else { 0 } | [INFO] [stderr] 162 | if pixel_get(image, x + 1, y) { DIR_E } else { 0 } | [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:176:9 [INFO] [stderr] | [INFO] [stderr] 176 | return image.data[(x + y * image.size[0]) as usize]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `image.data[(x + y * image.size[0]) as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | return false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `false` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:184:5 [INFO] [stderr] | [INFO] [stderr] 184 | return image.data[(x + y * image.size[0]) as usize]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `image.data[(x + y * image.size[0]) as usize]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:213:5 [INFO] [stderr] | [INFO] [stderr] 213 | return euler_char == 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `euler_char == 0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:217:5 [INFO] [stderr] | [INFO] [stderr] 217 | / return [INFO] [stderr] 218 | | if neighbors & DIR_S != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 219 | | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 220 | | (1 << 0) [INFO] [stderr] 221 | | ; [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] 217 | if neighbors & DIR_S != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 218 | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 219 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:225:5 [INFO] [stderr] | [INFO] [stderr] 225 | / return [INFO] [stderr] 226 | | if neighbors & DIR_W != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 227 | | if neighbors & DIR_S != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 228 | | (1 << 0) [INFO] [stderr] 229 | | ; [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] 225 | if neighbors & DIR_W != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 226 | if neighbors & DIR_S != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 227 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:233:5 [INFO] [stderr] | [INFO] [stderr] 233 | / return [INFO] [stderr] 234 | | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 235 | | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 236 | | (1 << 0) [INFO] [stderr] 237 | | ; [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] 233 | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 234 | if neighbors & DIR_E != 0 { (1 << 1) } else { 0 } | [INFO] [stderr] 235 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:241:5 [INFO] [stderr] | [INFO] [stderr] 241 | / return [INFO] [stderr] 242 | | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 243 | | if neighbors & DIR_W != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 244 | | (1 << 0) [INFO] [stderr] 245 | | ; [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] 241 | if neighbors & DIR_N != 0 { (1 << 4) } else { 0 } | [INFO] [stderr] 242 | if neighbors & DIR_W != 0 { (1 << 2) } else { 0 } | [INFO] [stderr] 243 | (1 << 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/image_skeletonize.rs:294:5 [INFO] [stderr] | [INFO] [stderr] 294 | return true; [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `true` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:128:9 [INFO] [stderr] | [INFO] [stderr] 128 | poly_list_dst [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:125:29 [INFO] [stderr] | [INFO] [stderr] 125 | let poly_list_dst = polys_utils::poly_list_subdivide_to_limit( [INFO] [stderr] | _____________________________^ [INFO] [stderr] 126 | | &poly_list_dst, length_threshold); [INFO] [stderr] | |_____________________________________________^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:260:21 [INFO] [stderr] | [INFO] [stderr] 260 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:271:21 [INFO] [stderr] | [INFO] [stderr] 271 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:304:21 [INFO] [stderr] | [INFO] [stderr] 304 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:339:21 [INFO] [stderr] | [INFO] [stderr] 339 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:360:29 [INFO] [stderr] | [INFO] [stderr] 360 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:363:29 [INFO] [stderr] | [INFO] [stderr] 363 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:378:29 [INFO] [stderr] | [INFO] [stderr] 378 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:381:29 [INFO] [stderr] | [INFO] [stderr] 381 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:398:29 [INFO] [stderr] | [INFO] [stderr] 398 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:401:29 [INFO] [stderr] | [INFO] [stderr] 401 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:414:21 [INFO] [stderr] | [INFO] [stderr] 414 | return Ok(0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:435:29 [INFO] [stderr] | [INFO] [stderr] 435 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:438:29 [INFO] [stderr] | [INFO] [stderr] 438 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:471:21 [INFO] [stderr] | [INFO] [stderr] 471 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:484:29 [INFO] [stderr] | [INFO] [stderr] 484 | return Ok(1); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(1)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:487:29 [INFO] [stderr] | [INFO] [stderr] 487 | return Err(e.to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(e.to_string())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:502:17 [INFO] [stderr] | [INFO] [stderr] 502 | return Ok(0); [INFO] [stderr] | ^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(0)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/intern/argparse/mod.rs:5:34 [INFO] [stderr] | [INFO] [stderr] 5 | pub const ARGDEF_REQUIRED: u32 = (1 << 0); [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: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/argparse/mod.rs:29:15 [INFO] [stderr] | [INFO] [stderr] 29 | callback: Box Result>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::type_complexity)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/argparse/mod.rs:87:19 [INFO] [stderr] | [INFO] [stderr] 87 | callback: Box Result>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/intern/argparse/mod.rs:81:5 [INFO] [stderr] | [INFO] [stderr] 81 | / pub fn add_argument( [INFO] [stderr] 82 | | &mut self, [INFO] [stderr] 83 | | id_short: &'static str, [INFO] [stderr] 84 | | id_long: &'static str, [INFO] [stderr] ... | [INFO] [stderr] 118 | | ); [INFO] [stderr] 119 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:94:16 [INFO] [stderr] | [INFO] [stderr] 94 | if id_short.len() == 0 && id_long.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `id_short.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:94:39 [INFO] [stderr] | [INFO] [stderr] 94 | if id_short.len() == 0 && id_long.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `id_long.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/argparse/mod.rs:123:14 [INFO] [stderr] | [INFO] [stderr] 123 | arg: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/argparse/mod.rs:190:16 [INFO] [stderr] | [INFO] [stderr] 190 | (arg_handlers_used[i] == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!arg_handlers_used[i]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:195:24 [INFO] [stderr] | [INFO] [stderr] 195 | if (arg_handler.id_short.len() != 0) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_short.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:196:24 [INFO] [stderr] | [INFO] [stderr] 196 | (arg_handler.id_long.len() != 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_long.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:213:16 [INFO] [stderr] | [INFO] [stderr] 213 | if self.arg_groups.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.arg_groups.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:237:20 [INFO] [stderr] | [INFO] [stderr] 237 | if arg_group.descr.len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_group.descr.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:255:20 [INFO] [stderr] | [INFO] [stderr] 255 | if (arg_handler.id_short.len() != 0) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_short.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:256:20 [INFO] [stderr] | [INFO] [stderr] 256 | (arg_handler.id_long.len() != 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_long.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:96:12 [INFO] [stderr] | [INFO] [stderr] 96 | knots: &Vec, [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[Knot]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:236:16 [INFO] [stderr] | [INFO] [stderr] 236 | knots: &Vec, [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[Knot]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:241:23 [INFO] [stderr] | [INFO] [stderr] 241 | debug_assert!(k_curr.no_remove == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:282:16 [INFO] [stderr] | [INFO] [stderr] 282 | if (k_curr.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:283:16 [INFO] [stderr] | [INFO] [stderr] 283 | (k_curr.is_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:284:16 [INFO] [stderr] | [INFO] [stderr] 284 | (k_curr.is_corner == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:327:20 [INFO] [stderr] | [INFO] [stderr] 327 | if (k_iter.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:328:20 [INFO] [stderr] | [INFO] [stderr] 328 | (k_iter.is_corner == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:374:16 [INFO] [stderr] | [INFO] [stderr] 374 | knots: &Vec, [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[Knot]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:380:23 [INFO] [stderr] | [INFO] [stderr] 380 | debug_assert!(k_curr.no_remove == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:551:16 [INFO] [stderr] | [INFO] [stderr] 551 | if (k_curr.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:552:16 [INFO] [stderr] | [INFO] [stderr] 552 | (k_curr.is_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:553:16 [INFO] [stderr] | [INFO] [stderr] 553 | (k_curr.is_corner == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:624:20 [INFO] [stderr] | [INFO] [stderr] 624 | if (k_iter.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:625:20 [INFO] [stderr] | [INFO] [stderr] 625 | (k_iter.is_corner == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:683:13 [INFO] [stderr] | [INFO] [stderr] 683 | (k_prev.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_prev.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:684:13 [INFO] [stderr] | [INFO] [stderr] 684 | (k_next.no_remove == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_next.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:750:20 [INFO] [stderr] | [INFO] [stderr] 750 | if (k_prev.is_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_prev.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:751:20 [INFO] [stderr] | [INFO] [stderr] 751 | (k_prev.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_prev.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:753:20 [INFO] [stderr] | [INFO] [stderr] 753 | (knots[k_prev.next].no_remove == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!knots[k_prev.next].no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:885:18 [INFO] [stderr] | [INFO] [stderr] 885 | points_orig: &Vec<[f64; DIMS]>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[f64; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 26 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:883:1 [INFO] [stderr] | [INFO] [stderr] 883 | / pub fn fit_poly_single( [INFO] [stderr] 884 | | // points_orig: &[[f64; 2]], [INFO] [stderr] 885 | | points_orig: &Vec<[f64; DIMS]>, [INFO] [stderr] 886 | | is_cyclic: bool, [INFO] [stderr] ... | [INFO] [stderr] 1094 | | return cubic_array; [INFO] [stderr] 1095 | | } [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 loop variable `i` is used to index `points_orig` [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:915:14 [INFO] [stderr] | [INFO] [stderr] 915 | for i in 0..knots_len { [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] 915 | for (i, ) in points_orig.iter().enumerate().take(knots_len) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:1067:20 [INFO] [stderr] | [INFO] [stderr] 1067 | if k.is_remove == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:118:12 [INFO] [stderr] | [INFO] [stderr] 118 | if !(alpha_l >= 0.0) || [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::neg_cmp_op_on_partial_ord)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:119:12 [INFO] [stderr] | [INFO] [stderr] 119 | !(alpha_r >= 0.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:342:12 [INFO] [stderr] | [INFO] [stderr] 342 | if !(alpha_l >= 0.0) || [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:343:12 [INFO] [stderr] | [INFO] [stderr] 343 | !(alpha_r >= 0.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:425:23 [INFO] [stderr] | [INFO] [stderr] 425 | debug_assert!(len_vnvn(pt, pt_prev) == *l); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(len_vnvn(pt, pt_prev) - *l).abs() < error` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:425:23 [INFO] [stderr] | [INFO] [stderr] 425 | debug_assert!(len_vnvn(pt, pt_prev) == *l); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:525:19 [INFO] [stderr] | [INFO] [stderr] 525 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(error_max_sq - -1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:525:19 [INFO] [stderr] | [INFO] [stderr] 525 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:563:19 [INFO] [stderr] | [INFO] [stderr] 563 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(error_max_sq - -1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:563:19 [INFO] [stderr] | [INFO] [stderr] 563 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:33:6 [INFO] [stderr] | [INFO] [stderr] 33 | ) -> Result<([usize; 2], usize, Vec<[u8; 3]>), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:41:26 [INFO] [stderr] | [INFO] [stderr] 41 | if buf[0] == '\n' as u8 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::char_lit_as_u8)] on by default [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\n' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:30 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:41 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\t' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:53 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\r' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:65 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\n' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:68:20 [INFO] [stderr] | [INFO] [stderr] 68 | if num_str.len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!num_str.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:75:16 [INFO] [stderr] | [INFO] [stderr] 75 | if num_str.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `num_str.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:90:27 [INFO] [stderr] | [INFO] [stderr] 90 | if !(header[0] == 'P' as u8 && header[1] == '6' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'P' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:90:53 [INFO] [stderr] | [INFO] [stderr] 90 | if !(header[0] == 'P' as u8 && header[1] == '6' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'6' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:24 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'#' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:35 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:46 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\t' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:58 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\r' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:70 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\n' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/image_load/mod.rs:19:15 [INFO] [stderr] | [INFO] [stderr] 19 | filepath: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/image_load/mod.rs:31:15 [INFO] [stderr] | [INFO] [stderr] 31 | filepath: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/image_load/mod.rs:33:6 [INFO] [stderr] | [INFO] [stderr] 33 | ) -> Result<([usize; 2], usize, Vec<[u8; 3]>), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/image_load/mod.rs:44:15 [INFO] [stderr] | [INFO] [stderr] 44 | filepath: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/image_load/mod.rs:45:6 [INFO] [stderr] | [INFO] [stderr] 45 | ) -> Result<([usize; 2], usize, Vec<[u8; 3]>), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: the loop variable `j` is only used to index `v0`. [INFO] [stderr] --> src/intern/math_vector/mod.rs:55:14 [INFO] [stderr] | [INFO] [stderr] 55 | for j in 0..DIMS { [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] 55 | for in v0.iter_mut().take(DIMS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/intern/math_vector/mod.rs:84:14 [INFO] [stderr] | [INFO] [stderr] 84 | for j in 0..DIMS { [INFO] [stderr] | ^^^^^^^ help: try replacing the loop by: `v0[..DIMS].clone_from_slice(&v1[..DIMS])` [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: the loop variable `j` is only used to index `v0`. [INFO] [stderr] --> src/intern/math_vector/mod.rs:260:14 [INFO] [stderr] | [INFO] [stderr] 260 | for j in 0..DIMS { [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] 260 | for in v0.iter_mut().take(DIMS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `j` is only used to index `v0`. [INFO] [stderr] --> src/intern/math_vector/mod.rs:279:14 [INFO] [stderr] | [INFO] [stderr] 279 | for j in 0..DIMS { [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] 279 | for in v0.iter().take(DIMS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/intern/min_heap/mod.rs:102:25 [INFO] [stderr] | [INFO] [stderr] 102 | &self, nhandle: &NodeHandle, [INFO] [stderr] | ^^^^^^^^^^^ help: consider passing by value instead: `NodeHandle` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/min_heap/mod.rs:202:27 [INFO] [stderr] | [INFO] [stderr] 202 | debug_assert!(self.contains_node_handle(&NodeHandle(nhandle)) == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!self.contains_node_handle(&NodeHandle(nhandle))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:245:12 [INFO] [stderr] | [INFO] [stderr] 245 | if self.tree_index.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/intern/min_heap/mod.rs:252:27 [INFO] [stderr] | [INFO] [stderr] 252 | debug_assert!(self.contains_node_handle(&NodeHandle(free_node)) == true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `self.contains_node_handle(&NodeHandle(free_node))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:271:22 [INFO] [stderr] | [INFO] [stderr] 271 | if unlikely!(self.tree_index.len() == 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/intern/min_heap/mod.rs:278:27 [INFO] [stderr] | [INFO] [stderr] 278 | debug_assert!(self.contains_node_handle(&NodeHandle(free_node)) == true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `self.contains_node_handle(&NodeHandle(free_node))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:305:23 [INFO] [stderr] | [INFO] [stderr] 305 | debug_assert!(self.tree_index.len() != 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:325:23 [INFO] [stderr] | [INFO] [stderr] 325 | debug_assert!(self.tree_index.len() != 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:343:23 [INFO] [stderr] | [INFO] [stderr] 343 | debug_assert!(self.tree_index.len() != 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_utils.rs:46:15 [INFO] [stderr] | [INFO] [stderr] 46 | poly_int: &Vec<[i32; DIMS]>) -> Vec<[f64; DIMS]> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[i32; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/polys_utils.rs:53:33 [INFO] [stderr] | [INFO] [stderr] 53 | v_as_float[j] = v_int[j] as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(v_int[j])` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_utils.rs:74:15 [INFO] [stderr] | [INFO] [stderr] 74 | poly_src: &Vec<[f64; DIMS]>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[f64; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_utils.rs:107:15 [INFO] [stderr] | [INFO] [stderr] 107 | poly_src: &Vec<[f64; DIMS]>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[f64; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/polys_from_raster_outline.rs:45:27 [INFO] [stderr] | [INFO] [stderr] 45 | pub const L: u8 = (1 << 0); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `x` [INFO] [stderr] --> src/polys_from_raster_outline.rs:106:32 [INFO] [stderr] | [INFO] [stderr] 106 | pimage[xy!(x + 0, y + 0, psize[0])] |= dir::U; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `y` [INFO] [stderr] --> src/polys_from_raster_outline.rs:106:39 [INFO] [stderr] | [INFO] [stderr] 106 | pimage[xy!(x + 0, y + 0, psize[0])] |= dir::U; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `y` [INFO] [stderr] --> src/polys_from_raster_outline.rs:114:39 [INFO] [stderr] | [INFO] [stderr] 114 | pimage[xy!(x + 1, y + 0, psize[0])] |= dir::L; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `x` [INFO] [stderr] --> src/polys_from_raster_outline.rs:118:32 [INFO] [stderr] | [INFO] [stderr] 118 | pimage[xy!(x + 0, y + 1, psize[0])] |= dir::R; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 58 [INFO] [stderr] --> src/polys_from_raster_outline.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 127 | / fn poly_from_direction_mask( [INFO] [stderr] 128 | | pimage: &mut Vec, [INFO] [stderr] 129 | | x_init: i32, [INFO] [stderr] 130 | | y_init: i32, [INFO] [stderr] ... | [INFO] [stderr] 287 | | return (poly, handled); [INFO] [stderr] 288 | | } [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: this function has too many arguments (8/7) [INFO] [stderr] --> src/polys_from_raster_outline.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 127 | / fn poly_from_direction_mask( [INFO] [stderr] 128 | | pimage: &mut Vec, [INFO] [stderr] 129 | | x_init: i32, [INFO] [stderr] 130 | | y_init: i32, [INFO] [stderr] ... | [INFO] [stderr] 287 | | return (poly, handled); [INFO] [stderr] 288 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/polys_from_raster_outline.rs:260:28 [INFO] [stderr] | [INFO] [stderr] 260 | if turn_ccw == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!turn_ccw` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/polys_from_raster_centerline.rs:21:27 [INFO] [stderr] | [INFO] [stderr] 21 | pub const L: u8 = (1 << 0); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:234:21 [INFO] [stderr] | [INFO] [stderr] 234 | index = index - 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `index -= 1` [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/polys_from_raster_centerline.rs:238:21 [INFO] [stderr] | [INFO] [stderr] 238 | index = index + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `index += 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: manual implementation of an assign operation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:242:21 [INFO] [stderr] | [INFO] [stderr] 242 | index = index - x_span; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `index -= x_span` [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: manual implementation of an assign operation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:246:21 [INFO] [stderr] | [INFO] [stderr] 246 | index = index + x_span; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `index += x_span` [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: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:298:16 [INFO] [stderr] | [INFO] [stderr] 298 | if is_cyclic == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!is_cyclic` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:157:16 [INFO] [stderr] | [INFO] [stderr] 157 | poly_edit: &Vec<[f64; 2]>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: change this to: `&[[f64; 2]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:158:15 [INFO] [stderr] | [INFO] [stderr] 158 | quadrics: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[quadric::Quadric]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:202:16 [INFO] [stderr] | [INFO] [stderr] 202 | poly_edit: &Vec<[f64; 2]>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: change this to: `&[[f64; 2]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:203:15 [INFO] [stderr] | [INFO] [stderr] 203 | quadrics: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[quadric::Quadric]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/polys_simplify_collapse.rs:224:1 [INFO] [stderr] | [INFO] [stderr] 224 | / fn edge_heap_collapse( [INFO] [stderr] 225 | | poly_edit: &mut Vec<[f64; 2]>, [INFO] [stderr] 226 | | quadrics: &mut Vec, [INFO] [stderr] 227 | | heap: &mut min_heap::MinHeap, [INFO] [stderr] ... | [INFO] [stderr] 288 | | } [INFO] [stderr] 289 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:293:11 [INFO] [stderr] | [INFO] [stderr] 293 | poly: &Vec<[f64; 2]>, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 293 | poly: &[[f64; 2]], [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] help: change `poly.clone()` to [INFO] [stderr] | [INFO] [stderr] 297 | let mut poly_edit = poly.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: The function/method `edge_heap_insert` doesn't need a mutable reference [INFO] [stderr] --> src/polys_simplify_collapse.rs:354:13 [INFO] [stderr] | [INFO] [stderr] 354 | &mut poly_edit, [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: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/image_skeletonize.rs:42:24 [INFO] [stderr] | [INFO] [stderr] 42 | if pixel_get_no_check(image, x, y) == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!pixel_get_no_check(image, x, y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:120:21 [INFO] [stderr] | [INFO] [stderr] 120 | const DIR_SW: u32 = 1 << 0; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:220:9 [INFO] [stderr] | [INFO] [stderr] 220 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:228:9 [INFO] [stderr] | [INFO] [stderr] 228 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:236:9 [INFO] [stderr] | [INFO] [stderr] 236 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:244:9 [INFO] [stderr] | [INFO] [stderr] 244 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/curve_write.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 57 | f.write(b" src/curve_write.rs:97:13 [INFO] [stderr] | [INFO] [stderr] 97 | f.write(b"M ")?; [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] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/curve_write.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | f.write(b" src/curve_write.rs:303:17 [INFO] [stderr] | [INFO] [stderr] 303 | f.write(b" Z\n")?; [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] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/curve_write.rs:306:17 [INFO] [stderr] | [INFO] [stderr] 306 | f.write(b" src/main.rs:453:31 [INFO] [stderr] | [INFO] [stderr] 453 | match pass_string.as_ref() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try this: `pass_string` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_asref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:532:25 [INFO] [stderr] | [INFO] [stderr] 532 | let t = (p_src[0] as u32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(p_src[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/main.rs:533:25 [INFO] [stderr] | [INFO] [stderr] 533 | (p_src[1] as u32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(p_src[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/main.rs:534:25 [INFO] [stderr] | [INFO] [stderr] 534 | (p_src[2] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(p_src[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: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/intern/argparse/mod.rs:5:34 [INFO] [stderr] | [INFO] [stderr] 5 | pub const ARGDEF_REQUIRED: u32 = (1 << 0); [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] error: aborting due to 13 previous errors [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/argparse/mod.rs:29:15 [INFO] [stderr] | [INFO] [stderr] 29 | callback: Box Result>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::type_complexity)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/argparse/mod.rs:87:19 [INFO] [stderr] | [INFO] [stderr] 87 | callback: Box Result>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (9/7) [INFO] [stderr] --> src/intern/argparse/mod.rs:81:5 [INFO] [stderr] | [INFO] [stderr] 81 | / pub fn add_argument( [INFO] [stderr] 82 | | &mut self, [INFO] [stderr] 83 | | id_short: &'static str, [INFO] [stderr] 84 | | id_long: &'static str, [INFO] [stderr] ... | [INFO] [stderr] 118 | | ); [INFO] [stderr] 119 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::too_many_arguments)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:94:16 [INFO] [stderr] | [INFO] [stderr] 94 | if id_short.len() == 0 && id_long.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `id_short.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:94:39 [INFO] [stderr] | [INFO] [stderr] 94 | if id_short.len() == 0 && id_long.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `id_long.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/argparse/mod.rs:123:14 [INFO] [stderr] | [INFO] [stderr] 123 | arg: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] error: Could not compile `raster-retrace`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/argparse/mod.rs:190:16 [INFO] [stderr] | [INFO] [stderr] 190 | (arg_handlers_used[i] == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!arg_handlers_used[i]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:195:24 [INFO] [stderr] | [INFO] [stderr] 195 | if (arg_handler.id_short.len() != 0) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_short.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:196:24 [INFO] [stderr] | [INFO] [stderr] 196 | (arg_handler.id_long.len() != 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_long.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:213:16 [INFO] [stderr] | [INFO] [stderr] 213 | if self.arg_groups.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.arg_groups.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:237:20 [INFO] [stderr] | [INFO] [stderr] 237 | if arg_group.descr.len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_group.descr.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:255:20 [INFO] [stderr] | [INFO] [stderr] 255 | if (arg_handler.id_short.len() != 0) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_short.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/argparse/mod.rs:256:20 [INFO] [stderr] | [INFO] [stderr] 256 | (arg_handler.id_long.len() != 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!arg_handler.id_long.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:96:12 [INFO] [stderr] | [INFO] [stderr] 96 | knots: &Vec, [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[Knot]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:236:16 [INFO] [stderr] | [INFO] [stderr] 236 | knots: &Vec, [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[Knot]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:241:23 [INFO] [stderr] | [INFO] [stderr] 241 | debug_assert!(k_curr.no_remove == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:282:16 [INFO] [stderr] | [INFO] [stderr] 282 | if (k_curr.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:283:16 [INFO] [stderr] | [INFO] [stderr] 283 | (k_curr.is_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:284:16 [INFO] [stderr] | [INFO] [stderr] 284 | (k_curr.is_corner == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:327:20 [INFO] [stderr] | [INFO] [stderr] 327 | if (k_iter.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:328:20 [INFO] [stderr] | [INFO] [stderr] 328 | (k_iter.is_corner == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:374:16 [INFO] [stderr] | [INFO] [stderr] 374 | knots: &Vec, [INFO] [stderr] | ^^^^^^^^^^ help: change this to: `&[Knot]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:380:23 [INFO] [stderr] | [INFO] [stderr] 380 | debug_assert!(k_curr.no_remove == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:551:16 [INFO] [stderr] | [INFO] [stderr] 551 | if (k_curr.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:552:16 [INFO] [stderr] | [INFO] [stderr] 552 | (k_curr.is_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:553:16 [INFO] [stderr] | [INFO] [stderr] 553 | (k_curr.is_corner == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_curr.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:624:20 [INFO] [stderr] | [INFO] [stderr] 624 | if (k_iter.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:625:20 [INFO] [stderr] | [INFO] [stderr] 625 | (k_iter.is_corner == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_iter.is_corner` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:683:13 [INFO] [stderr] | [INFO] [stderr] 683 | (k_prev.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_prev.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:684:13 [INFO] [stderr] | [INFO] [stderr] 684 | (k_next.no_remove == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_next.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:750:20 [INFO] [stderr] | [INFO] [stderr] 750 | if (k_prev.is_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_prev.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:751:20 [INFO] [stderr] | [INFO] [stderr] 751 | (k_prev.no_remove == false) && [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k_prev.no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:753:20 [INFO] [stderr] | [INFO] [stderr] 753 | (knots[k_prev.next].no_remove == false) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!knots[k_prev.next].no_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:885:18 [INFO] [stderr] | [INFO] [stderr] 885 | points_orig: &Vec<[f64; DIMS]>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[f64; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 26 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:883:1 [INFO] [stderr] | [INFO] [stderr] 883 | / pub fn fit_poly_single( [INFO] [stderr] 884 | | // points_orig: &[[f64; 2]], [INFO] [stderr] 885 | | points_orig: &Vec<[f64; DIMS]>, [INFO] [stderr] 886 | | is_cyclic: bool, [INFO] [stderr] ... | [INFO] [stderr] 1094 | | return cubic_array; [INFO] [stderr] 1095 | | } [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 loop variable `i` is used to index `points_orig` [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:915:14 [INFO] [stderr] | [INFO] [stderr] 915 | for i in 0..knots_len { [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] 915 | for (i, ) in points_orig.iter().enumerate().take(knots_len) { [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_from_polys.rs:1067:20 [INFO] [stderr] | [INFO] [stderr] 1067 | if k.is_remove == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!k.is_remove` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:118:12 [INFO] [stderr] | [INFO] [stderr] 118 | if !(alpha_l >= 0.0) || [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::neg_cmp_op_on_partial_ord)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:119:12 [INFO] [stderr] | [INFO] [stderr] 119 | !(alpha_r >= 0.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:342:12 [INFO] [stderr] | [INFO] [stderr] 342 | if !(alpha_l >= 0.0) || [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] warning: The use of negated comparison operators on partially ordered types produces code that is hard to read and refactor. Please consider using the `partial_cmp` method instead, to make it clear that the two values could be incomparable. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:343:12 [INFO] [stderr] | [INFO] [stderr] 343 | !(alpha_r >= 0.0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#neg_cmp_op_on_partial_ord [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:425:23 [INFO] [stderr] | [INFO] [stderr] 425 | debug_assert!(len_vnvn(pt, pt_prev) == *l); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(len_vnvn(pt, pt_prev) - *l).abs() < error` [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:425:23 [INFO] [stderr] | [INFO] [stderr] 425 | debug_assert!(len_vnvn(pt, pt_prev) == *l); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:525:19 [INFO] [stderr] | [INFO] [stderr] 525 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(error_max_sq - -1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:525:19 [INFO] [stderr] | [INFO] [stderr] 525 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:563:19 [INFO] [stderr] | [INFO] [stderr] 563 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider comparing them within some error: `(error_max_sq - -1.0).abs() < error` [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/intern/curve_fit_nd/curve_fit_single.rs:563:19 [INFO] [stderr] | [INFO] [stderr] 563 | debug_assert!(error_max_sq != -1.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:33:6 [INFO] [stderr] | [INFO] [stderr] 33 | ) -> Result<([usize; 2], usize, Vec<[u8; 3]>), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:41:26 [INFO] [stderr] | [INFO] [stderr] 41 | if buf[0] == '\n' as u8 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::char_lit_as_u8)] on by default [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\n' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:30 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:41 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\t' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:53 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\r' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:67:65 [INFO] [stderr] | [INFO] [stderr] 67 | if elem!(buf[0], ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\n' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:68:20 [INFO] [stderr] | [INFO] [stderr] 68 | if num_str.len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!num_str.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:75:16 [INFO] [stderr] | [INFO] [stderr] 75 | if num_str.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `num_str.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:90:27 [INFO] [stderr] | [INFO] [stderr] 90 | if !(header[0] == 'P' as u8 && header[1] == '6' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'P' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:90:53 [INFO] [stderr] | [INFO] [stderr] 90 | if !(header[0] == 'P' as u8 && header[1] == '6' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'6' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:24 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'#' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:35 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b' ' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:46 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\t' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:58 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\r' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: casting character literal to u8. `char`s are 4 bytes wide in rust, so casting to u8 truncates them [INFO] [stderr] --> src/intern/image_load/image_load_ppm/mod.rs:101:70 [INFO] [stderr] | [INFO] [stderr] 101 | if elem!(byte, '#' as u8, ' ' as u8, '\t' as u8, '\r' as u8, '\n' as u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: Consider using a byte literal instead: [INFO] [stderr] b'\n' [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#char_lit_as_u8 [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/image_load/mod.rs:19:15 [INFO] [stderr] | [INFO] [stderr] 19 | filepath: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/image_load/mod.rs:31:15 [INFO] [stderr] | [INFO] [stderr] 31 | filepath: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/image_load/mod.rs:33:6 [INFO] [stderr] | [INFO] [stderr] 33 | ) -> Result<([usize; 2], usize, Vec<[u8; 3]>), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: writing `&String` instead of `&str` involves a new object where a slice will do. [INFO] [stderr] --> src/intern/image_load/mod.rs:44:15 [INFO] [stderr] | [INFO] [stderr] 44 | filepath: &String, [INFO] [stderr] | ^^^^^^^ help: change this to: `&str` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stderr] --> src/intern/image_load/mod.rs:45:6 [INFO] [stderr] | [INFO] [stderr] 45 | ) -> Result<([usize; 2], usize, Vec<[u8; 3]>), Error> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stderr] [INFO] [stderr] warning: the loop variable `j` is only used to index `v0`. [INFO] [stderr] --> src/intern/math_vector/mod.rs:55:14 [INFO] [stderr] | [INFO] [stderr] 55 | for j in 0..DIMS { [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] 55 | for in v0.iter_mut().take(DIMS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: it looks like you're manually copying between slices [INFO] [stderr] --> src/intern/math_vector/mod.rs:84:14 [INFO] [stderr] | [INFO] [stderr] 84 | for j in 0..DIMS { [INFO] [stderr] | ^^^^^^^ help: try replacing the loop by: `v0[..DIMS].clone_from_slice(&v1[..DIMS])` [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: the loop variable `j` is only used to index `v0`. [INFO] [stderr] --> src/intern/math_vector/mod.rs:260:14 [INFO] [stderr] | [INFO] [stderr] 260 | for j in 0..DIMS { [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] 260 | for in v0.iter_mut().take(DIMS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the loop variable `j` is only used to index `v0`. [INFO] [stderr] --> src/intern/math_vector/mod.rs:279:14 [INFO] [stderr] | [INFO] [stderr] 279 | for j in 0..DIMS { [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] 279 | for in v0.iter().take(DIMS) { [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/intern/min_heap/mod.rs:102:25 [INFO] [stderr] | [INFO] [stderr] 102 | &self, nhandle: &NodeHandle, [INFO] [stderr] | ^^^^^^^^^^^ help: consider passing by value instead: `NodeHandle` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/intern/min_heap/mod.rs:202:27 [INFO] [stderr] | [INFO] [stderr] 202 | debug_assert!(self.contains_node_handle(&NodeHandle(nhandle)) == false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!self.contains_node_handle(&NodeHandle(nhandle))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:245:12 [INFO] [stderr] | [INFO] [stderr] 245 | if self.tree_index.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/intern/min_heap/mod.rs:252:27 [INFO] [stderr] | [INFO] [stderr] 252 | debug_assert!(self.contains_node_handle(&NodeHandle(free_node)) == true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `self.contains_node_handle(&NodeHandle(free_node))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:271:22 [INFO] [stderr] | [INFO] [stderr] 271 | if unlikely!(self.tree_index.len() == 0) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/intern/min_heap/mod.rs:278:27 [INFO] [stderr] | [INFO] [stderr] 278 | debug_assert!(self.contains_node_handle(&NodeHandle(free_node)) == true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `self.contains_node_handle(&NodeHandle(free_node))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:305:23 [INFO] [stderr] | [INFO] [stderr] 305 | debug_assert!(self.tree_index.len() != 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:325:23 [INFO] [stderr] | [INFO] [stderr] 325 | debug_assert!(self.tree_index.len() != 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/intern/min_heap/mod.rs:343:23 [INFO] [stderr] | [INFO] [stderr] 343 | debug_assert!(self.tree_index.len() != 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.tree_index.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_utils.rs:46:15 [INFO] [stderr] | [INFO] [stderr] 46 | poly_int: &Vec<[i32; DIMS]>) -> Vec<[f64; DIMS]> [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[i32; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: casting i32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/polys_utils.rs:53:33 [INFO] [stderr] | [INFO] [stderr] 53 | v_as_float[j] = v_int[j] as f64; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: try: `f64::from(v_int[j])` [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: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_utils.rs:74:15 [INFO] [stderr] | [INFO] [stderr] 74 | poly_src: &Vec<[f64; DIMS]>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[f64; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_utils.rs:107:15 [INFO] [stderr] | [INFO] [stderr] 107 | poly_src: &Vec<[f64; DIMS]>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: change this to: `&[[f64; DIMS]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/polys_from_raster_outline.rs:45:27 [INFO] [stderr] | [INFO] [stderr] 45 | pub const L: u8 = (1 << 0); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `x` [INFO] [stderr] --> src/polys_from_raster_outline.rs:106:32 [INFO] [stderr] | [INFO] [stderr] 106 | pimage[xy!(x + 0, y + 0, psize[0])] |= dir::U; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `y` [INFO] [stderr] --> src/polys_from_raster_outline.rs:106:39 [INFO] [stderr] | [INFO] [stderr] 106 | pimage[xy!(x + 0, y + 0, psize[0])] |= dir::U; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `y` [INFO] [stderr] --> src/polys_from_raster_outline.rs:114:39 [INFO] [stderr] | [INFO] [stderr] 114 | pimage[xy!(x + 1, y + 0, psize[0])] |= dir::L; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `x` [INFO] [stderr] --> src/polys_from_raster_outline.rs:118:32 [INFO] [stderr] | [INFO] [stderr] 118 | pimage[xy!(x + 0, y + 1, psize[0])] |= dir::R; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the function has a cyclomatic complexity of 58 [INFO] [stderr] --> src/polys_from_raster_outline.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 127 | / fn poly_from_direction_mask( [INFO] [stderr] 128 | | pimage: &mut Vec, [INFO] [stderr] 129 | | x_init: i32, [INFO] [stderr] 130 | | y_init: i32, [INFO] [stderr] ... | [INFO] [stderr] 287 | | return (poly, handled); [INFO] [stderr] 288 | | } [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: this function has too many arguments (8/7) [INFO] [stderr] --> src/polys_from_raster_outline.rs:127:9 [INFO] [stderr] | [INFO] [stderr] 127 | / fn poly_from_direction_mask( [INFO] [stderr] 128 | | pimage: &mut Vec, [INFO] [stderr] 129 | | x_init: i32, [INFO] [stderr] 130 | | y_init: i32, [INFO] [stderr] ... | [INFO] [stderr] 287 | | return (poly, handled); [INFO] [stderr] 288 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/polys_from_raster_outline.rs:260:28 [INFO] [stderr] | [INFO] [stderr] 260 | if turn_ccw == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!turn_ccw` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/polys_from_raster_centerline.rs:21:27 [INFO] [stderr] | [INFO] [stderr] 21 | pub const L: u8 = (1 << 0); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: manual implementation of an assign operation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:234:21 [INFO] [stderr] | [INFO] [stderr] 234 | index = index - 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `index -= 1` [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/polys_from_raster_centerline.rs:238:21 [INFO] [stderr] | [INFO] [stderr] 238 | index = index + 1; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace it with: `index += 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: manual implementation of an assign operation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:242:21 [INFO] [stderr] | [INFO] [stderr] 242 | index = index - x_span; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `index -= x_span` [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: manual implementation of an assign operation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:246:21 [INFO] [stderr] | [INFO] [stderr] 246 | index = index + x_span; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `index += x_span` [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: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/polys_from_raster_centerline.rs:298:16 [INFO] [stderr] | [INFO] [stderr] 298 | if is_cyclic == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!is_cyclic` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:157:16 [INFO] [stderr] | [INFO] [stderr] 157 | poly_edit: &Vec<[f64; 2]>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: change this to: `&[[f64; 2]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:158:15 [INFO] [stderr] | [INFO] [stderr] 158 | quadrics: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[quadric::Quadric]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:202:16 [INFO] [stderr] | [INFO] [stderr] 202 | poly_edit: &Vec<[f64; 2]>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: change this to: `&[[f64; 2]]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:203:15 [INFO] [stderr] | [INFO] [stderr] 203 | quadrics: &Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `&[quadric::Quadric]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/polys_simplify_collapse.rs:224:1 [INFO] [stderr] | [INFO] [stderr] 224 | / fn edge_heap_collapse( [INFO] [stderr] 225 | | poly_edit: &mut Vec<[f64; 2]>, [INFO] [stderr] 226 | | quadrics: &mut Vec, [INFO] [stderr] 227 | | heap: &mut min_heap::MinHeap, [INFO] [stderr] ... | [INFO] [stderr] 288 | | } [INFO] [stderr] 289 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/polys_simplify_collapse.rs:293:11 [INFO] [stderr] | [INFO] [stderr] 293 | poly: &Vec<[f64; 2]>, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 293 | poly: &[[f64; 2]], [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] help: change `poly.clone()` to [INFO] [stderr] | [INFO] [stderr] 297 | let mut poly_edit = poly.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: The function/method `edge_heap_insert` doesn't need a mutable reference [INFO] [stderr] --> src/polys_simplify_collapse.rs:354:13 [INFO] [stderr] | [INFO] [stderr] 354 | &mut poly_edit, [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: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/image_skeletonize.rs:42:24 [INFO] [stderr] | [INFO] [stderr] 42 | if pixel_get_no_check(image, x, y) == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!pixel_get_no_check(image, x, y)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:120:21 [INFO] [stderr] | [INFO] [stderr] 120 | const DIR_SW: u32 = 1 << 0; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:220:9 [INFO] [stderr] | [INFO] [stderr] 220 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:228:9 [INFO] [stderr] | [INFO] [stderr] 228 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:236:9 [INFO] [stderr] | [INFO] [stderr] 236 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] warning: the operation is ineffective. Consider reducing it to `1` [INFO] [stderr] --> src/image_skeletonize.rs:244:9 [INFO] [stderr] | [INFO] [stderr] 244 | (1 << 0) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#identity_op [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/curve_write.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 57 | f.write(b" src/curve_write.rs:97:13 [INFO] [stderr] | [INFO] [stderr] 97 | f.write(b"M ")?; [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] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/curve_write.rs:203:9 [INFO] [stderr] | [INFO] [stderr] 203 | f.write(b" src/curve_write.rs:303:17 [INFO] [stderr] | [INFO] [stderr] 303 | f.write(b" Z\n")?; [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] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/curve_write.rs:306:17 [INFO] [stderr] | [INFO] [stderr] 306 | f.write(b" src/main.rs:453:31 [INFO] [stderr] | [INFO] [stderr] 453 | match pass_string.as_ref() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try this: `pass_string` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_asref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_asref [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:532:25 [INFO] [stderr] | [INFO] [stderr] 532 | let t = (p_src[0] as u32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(p_src[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/main.rs:533:25 [INFO] [stderr] | [INFO] [stderr] 533 | (p_src[1] as u32) + [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(p_src[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/main.rs:534:25 [INFO] [stderr] | [INFO] [stderr] 534 | (p_src[2] as u32); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u32::from(p_src[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] error: aborting due to 13 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `raster-retrace`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "c4f23d5376acbbc62472eb8623533f509a699825b83024195d3e96c76d266ec7"` [INFO] running `"docker" "rm" "-f" "c4f23d5376acbbc62472eb8623533f509a699825b83024195d3e96c76d266ec7"` [INFO] [stdout] c4f23d5376acbbc62472eb8623533f509a699825b83024195d3e96c76d266ec7