[INFO] crate wrapped2d 0.4.0 is already in cache [INFO] extracting crate wrapped2d 0.4.0 into work/ex/clippy-test-run/sources/stable/reg/wrapped2d/0.4.0 [INFO] extracting crate wrapped2d 0.4.0 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/wrapped2d/0.4.0 [INFO] validating manifest of wrapped2d-0.4.0 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of wrapped2d-0.4.0 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing wrapped2d-0.4.0 [INFO] finished frobbing wrapped2d-0.4.0 [INFO] frobbed toml for wrapped2d-0.4.0 written to work/ex/clippy-test-run/sources/stable/reg/wrapped2d/0.4.0/Cargo.toml [INFO] started frobbing wrapped2d-0.4.0 [INFO] finished frobbing wrapped2d-0.4.0 [INFO] frobbed toml for wrapped2d-0.4.0 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/wrapped2d/0.4.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting wrapped2d-0.4.0 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-5/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/wrapped2d/0.4.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] e959f931077feee8e6331123c042f010662beb9950c1cba71dbd6ec3fa5253e4 [INFO] running `"docker" "start" "-a" "e959f931077feee8e6331123c042f010662beb9950c1cba71dbd6ec3fa5253e4"` [INFO] [stderr] Compiling wrapped2d v0.4.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/handle.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [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/handle.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | version: version, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `version` [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/common/math.rs:351:16 [INFO] [stderr] | [INFO] [stderr] 351 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `x` [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/common/math.rs:351:22 [INFO] [stderr] | [INFO] [stderr] 351 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `y` [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/collision/distance.rs:73:17 [INFO] [stderr] | [INFO] [stderr] 73 | transform_a: transform_a, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transform_a` [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/collision/distance.rs:74:17 [INFO] [stderr] | [INFO] [stderr] 74 | transform_b: transform_b, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transform_b` [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/collision/distance.rs:75:17 [INFO] [stderr] | [INFO] [stderr] 75 | use_radii: use_radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `use_radii` [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/collision/time_of_impact.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | sweep_a: sweep_a, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `sweep_a` [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/collision/time_of_impact.rs:33:17 [INFO] [stderr] | [INFO] [stderr] 33 | sweep_b: sweep_b, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `sweep_b` [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/collision/time_of_impact.rs:34:17 [INFO] [stderr] | [INFO] [stderr] 34 | t_max: t_max, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `t_max` [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/dynamics/body.rs:81:17 [INFO] [stderr] | [INFO] [stderr] 81 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/dynamics/body.rs:82:17 [INFO] [stderr] | [INFO] [stderr] 82 | custom: custom, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `custom` [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/dynamics/fixture.rs:73:17 [INFO] [stderr] | [INFO] [stderr] 73 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/dynamics/fixture.rs:74:17 [INFO] [stderr] | [INFO] [stderr] 74 | custom: custom, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `custom` [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/dynamics/joints/distance.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/distance.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/friction.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/friction.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/gear.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | joint_1: joint_1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `joint_1` [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/dynamics/joints/gear.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | joint_2: joint_2, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `joint_2` [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/dynamics/joints/motor.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/motor.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/mouse.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/mouse.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/prismatic.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/prismatic.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/pulley.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/pulley.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/revolute.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/revolute.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/rope.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/rope.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/weld.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/weld.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/wheel.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/wheel.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/mod.rs:94:17 [INFO] [stderr] | [INFO] [stderr] 94 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/dynamics/joints/mod.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | custom: custom, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `custom` [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/handle.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | index: index, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `index` [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/handle.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | version: version, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `version` [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/common/math.rs:351:16 [INFO] [stderr] | [INFO] [stderr] 351 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `x` [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/common/math.rs:351:22 [INFO] [stderr] | [INFO] [stderr] 351 | Vec2 { x: x, y: y } [INFO] [stderr] | ^^^^ help: replace it with: `y` [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/collision/distance.rs:73:17 [INFO] [stderr] | [INFO] [stderr] 73 | transform_a: transform_a, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transform_a` [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/collision/distance.rs:74:17 [INFO] [stderr] | [INFO] [stderr] 74 | transform_b: transform_b, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `transform_b` [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/collision/distance.rs:75:17 [INFO] [stderr] | [INFO] [stderr] 75 | use_radii: use_radii, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `use_radii` [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/collision/time_of_impact.rs:32:17 [INFO] [stderr] | [INFO] [stderr] 32 | sweep_a: sweep_a, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `sweep_a` [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/collision/time_of_impact.rs:33:17 [INFO] [stderr] | [INFO] [stderr] 33 | sweep_b: sweep_b, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `sweep_b` [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/collision/time_of_impact.rs:34:17 [INFO] [stderr] | [INFO] [stderr] 34 | t_max: t_max, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `t_max` [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/dynamics/body.rs:81:17 [INFO] [stderr] | [INFO] [stderr] 81 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/dynamics/body.rs:82:17 [INFO] [stderr] | [INFO] [stderr] 82 | custom: custom, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `custom` [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/dynamics/fixture.rs:73:17 [INFO] [stderr] | [INFO] [stderr] 73 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/dynamics/fixture.rs:74:17 [INFO] [stderr] | [INFO] [stderr] 74 | custom: custom, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `custom` [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/dynamics/joints/distance.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/distance.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/friction.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/friction.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/gear.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | joint_1: joint_1, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `joint_1` [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/dynamics/joints/gear.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | joint_2: joint_2, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `joint_2` [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/dynamics/joints/motor.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/motor.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/mouse.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/mouse.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/prismatic.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/prismatic.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/pulley.rs:23:13 [INFO] [stderr] | [INFO] [stderr] 23 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/pulley.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/revolute.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/revolute.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/rope.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/rope.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/weld.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/weld.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/wheel.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | body_a: body_a, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_a` [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/dynamics/joints/wheel.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | body_b: body_b, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `body_b` [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/dynamics/joints/mod.rs:94:17 [INFO] [stderr] | [INFO] [stderr] 94 | handle: handle, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `handle` [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/dynamics/joints/mod.rs:95:17 [INFO] [stderr] | [INFO] [stderr] 95 | custom: custom, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `custom` [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/handle.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | return self.index == rhs.index && self.version == rhs.version; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.index == rhs.index && self.version == rhs.version` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/common/settings.rs:1:21 [INFO] [stderr] | [INFO] [stderr] 1 | pub const PI: f32 = 3.14159265359; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `3.141_592_653_59` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/handle.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | return self.index == rhs.index && self.version == rhs.version; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.index == rhs.index && self.version == rhs.version` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/common/settings.rs:1:21 [INFO] [stderr] | [INFO] [stderr] 1 | pub const PI: f32 = 3.14159265359; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `3.141_592_653_59` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `ConstAny` [INFO] [stderr] --> src/ffi.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub type ConstAny = *const c_void; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/wrap.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | / fn deref<'b>(&'b self) -> &'b T { [INFO] [stderr] 136 | | self.object.as_ref().unwrap() [INFO] [stderr] 137 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/wrap.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | / fn deref_mut<'b>(&'b mut self) -> &'b mut T { [INFO] [stderr] 142 | | self.object.as_mut().unwrap() [INFO] [stderr] 143 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/wrap.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | / fn deref<'b>(&'b self) -> &'b T { [INFO] [stderr] 171 | | self.object.as_ref().unwrap() [INFO] [stderr] 172 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `handle::HandleMap` [INFO] [stderr] --> src/handle.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | / pub fn new() -> HandleMap { [INFO] [stderr] 87 | | HandleMap { [INFO] [stderr] 88 | | next_index: 0, [INFO] [stderr] 89 | | availables: Vec::new(), [INFO] [stderr] ... | [INFO] [stderr] 92 | | } [INFO] [stderr] 93 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 78 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/handle.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | / pub fn iter<'a>(&'a self) -> HandleIter<'a, T, E> { [INFO] [stderr] 187 | | HandleIter { [INFO] [stderr] 188 | | iter: self.entries.iter(), [INFO] [stderr] 189 | | phantom: PhantomData, [INFO] [stderr] 190 | | } [INFO] [stderr] 191 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn sqr_norm(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:51:17 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn norm(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:55:17 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn sqew(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:65:18 [INFO] [stderr] | [INFO] [stderr] 65 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&*(self as *const common::math::Vec2 as *const [f32; 2])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ptr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:69:18 [INFO] [stderr] | [INFO] [stderr] 69 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(self as *mut common::math::Vec2 as *mut [f32; 2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:73:18 [INFO] [stderr] | [INFO] [stderr] 73 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&*(array as *const [f32; 2] as *const common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:77:18 [INFO] [stderr] | [INFO] [stderr] 77 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(array as *mut [f32; 2] as *mut common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:256:19 [INFO] [stderr] | [INFO] [stderr] 256 | pub fn x_axis(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:263:19 [INFO] [stderr] | [INFO] [stderr] 263 | pub fn y_axis(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:270:18 [INFO] [stderr] | [INFO] [stderr] 270 | pub fn angle(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: float has excessive precision [INFO] [stderr] --> src/common/settings.rs:1:21 [INFO] [stderr] | [INFO] [stderr] 1 | pub const PI: f32 = 3.14159265359; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `3.141_592_7` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] error: approximate value of `f{32, 64}::consts::PI` found. Consider using it directly [INFO] [stderr] --> src/common/settings.rs:1:21 [INFO] [stderr] | [INFO] [stderr] 1 | pub const PI: f32 = 3.14159265359; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::approx_constant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#approx_constant [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:18:18 [INFO] [stderr] | [INFO] [stderr] 18 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&*(self as *const common::Color as *const [f32; 4])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:22:18 [INFO] [stderr] | [INFO] [stderr] 22 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(self as *mut common::Color as *mut [f32; 4])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:26:18 [INFO] [stderr] | [INFO] [stderr] 26 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&*(array as *const [f32; 4] as *const common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:30:18 [INFO] [stderr] | [INFO] [stderr] 30 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(array as *mut [f32; 4] as *mut common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:48:39 [INFO] [stderr] | [INFO] [stderr] 48 | fn draw_circle(&mut self, center: &Vec2, radius: f32, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:49:45 [INFO] [stderr] | [INFO] [stderr] 49 | fn draw_solid_circle(&mut self, center: &Vec2, radius: f32, axis: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:49:71 [INFO] [stderr] | [INFO] [stderr] 49 | fn draw_solid_circle(&mut self, center: &Vec2, radius: f32, axis: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:50:36 [INFO] [stderr] | [INFO] [stderr] 50 | fn draw_segment(&mut self, p1: &Vec2, p2: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:50:47 [INFO] [stderr] | [INFO] [stderr] 50 | fn draw_segment(&mut self, p1: &Vec2, p2: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:59:16 [INFO] [stderr] | [INFO] [stderr] 59 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:69:16 [INFO] [stderr] | [INFO] [stderr] 69 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:79:16 [INFO] [stderr] | [INFO] [stderr] 79 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:89:16 [INFO] [stderr] | [INFO] [stderr] 89 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:98:16 [INFO] [stderr] | [INFO] [stderr] 98 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:104:16 [INFO] [stderr] | [INFO] [stderr] 104 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/common/mod.rs:124:28 [INFO] [stderr] | [INFO] [stderr] 124 | mem::transmute(draw), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `draw as *mut D as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_transmute)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `collision::shapes::chain::ChainShape` [INFO] [stderr] --> src/collision/shapes/chain.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | / pub fn new() -> Self { [INFO] [stderr] 17 | | unsafe { ChainShape::from_ffi(ffi::ChainShape_new()) } [INFO] [stderr] 18 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 15 | impl Default for collision::shapes::chain::ChainShape { [INFO] [stderr] 16 | fn default() -> Self { [INFO] [stderr] 17 | Self::new() [INFO] [stderr] 18 | } [INFO] [stderr] 19 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `collision::shapes::edge::EdgeShape` [INFO] [stderr] --> src/collision/shapes/edge.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | / pub fn new() -> Self { [INFO] [stderr] 16 | | unsafe { EdgeShape::from_ffi(ffi::EdgeShape_new()) } [INFO] [stderr] 17 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 14 | impl Default for collision::shapes::edge::EdgeShape { [INFO] [stderr] 15 | fn default() -> Self { [INFO] [stderr] 16 | Self::new() [INFO] [stderr] 17 | } [INFO] [stderr] 18 | } [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/collision/shapes/edge.rs:19:25 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_with(v1: &Vec2, v2: &Vec2) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/edge.rs:19:36 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_with(v1: &Vec2, v2: &Vec2) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/edge.rs:25:31 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn set(&mut self, v1: &Vec2, v2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/edge.rs:25:42 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn set(&mut self, v1: &Vec2, v2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you should consider adding a `Default` implementation for `collision::shapes::circle::CircleShape` [INFO] [stderr] --> src/collision/shapes/circle.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / pub fn new() -> Self { [INFO] [stderr] 13 | | unsafe { CircleShape::from_ffi(ffi::CircleShape_new()) } [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 11 | impl Default for collision::shapes::circle::CircleShape { [INFO] [stderr] 12 | fn default() -> Self { [INFO] [stderr] 13 | Self::new() [INFO] [stderr] 14 | } [INFO] [stderr] 15 | } [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/collision/shapes/circle.rs:23:32 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn support(&self, dir: &Vec2) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/collision/shapes/circle.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / pub fn vertex<'a>(&'a self, index: i32) -> &'a Vec2 { [INFO] [stderr] 38 | | unsafe { [INFO] [stderr] 39 | | &*ffi::CircleShape_get_vertex(self.ptr(), index) // Comes from a C++ & [INFO] [stderr] 40 | | } [INFO] [stderr] 41 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `collision::shapes::polygon::PolygonShape` [INFO] [stderr] --> src/collision/shapes/polygon.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / pub fn new() -> Self { [INFO] [stderr] 13 | | unsafe { PolygonShape::from_ffi(ffi::PolygonShape_new()) } [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 11 | impl Default for collision::shapes::polygon::PolygonShape { [INFO] [stderr] 12 | fn default() -> Self { [INFO] [stderr] 13 | Self::new() [INFO] [stderr] 14 | } [INFO] [stderr] 15 | } [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/collision/shapes/polygon.rs:24:69 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn set_as_oriented_box(&mut self, hw: f32, hh: f32, center: &Vec2, angle: f32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/polygon.rs:40:55 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn new_oriented_box(hw: f32, hh: f32, center: &Vec2, angle: f32) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/collision/shapes/polygon.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | / pub fn vertex<'a>(&'a self, index: i32) -> &'a Vec2 { [INFO] [stderr] 51 | | unsafe { [INFO] [stderr] 52 | | &*ffi::PolygonShape_get_vertex(self.ptr(), index) // Comes from a C++ & [INFO] [stderr] 53 | | } [INFO] [stderr] 54 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/mod.rs:59:45 [INFO] [stderr] | [INFO] [stderr] 59 | fn test_point(&self, xf: &Transform, p: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/collision/shapes/mod.rs:107:9 [INFO] [stderr] | [INFO] [stderr] 107 | / match self { [INFO] [stderr] 108 | | &Circle(ref x) => x.base_ptr(), [INFO] [stderr] 109 | | &Edge(ref x) => x.base_ptr(), [INFO] [stderr] 110 | | &Polygon(ref x) => x.base_ptr(), [INFO] [stderr] 111 | | &Chain(ref x) => x.base_ptr(), [INFO] [stderr] 112 | | _ => panic!("Truly unknown shape"), [INFO] [stderr] 113 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 107 | match *self { [INFO] [stderr] 108 | Circle(ref x) => x.base_ptr(), [INFO] [stderr] 109 | Edge(ref x) => x.base_ptr(), [INFO] [stderr] 110 | Polygon(ref x) => x.base_ptr(), [INFO] [stderr] 111 | Chain(ref x) => x.base_ptr(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/collision/shapes/mod.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 118 | / match self { [INFO] [stderr] 119 | | &mut Circle(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 120 | | &mut Edge(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 121 | | &mut Polygon(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 122 | | &mut Chain(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 123 | | _ => panic!("Truly unknown shape"), [INFO] [stderr] 124 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 118 | match *self { [INFO] [stderr] 119 | Circle(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 120 | Edge(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 121 | Polygon(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 122 | Chain(ref mut x) => x.mut_base_ptr(), [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/collision/mod.rs:31:20 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn feature(&self) -> ContactFeature { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/mod.rs:35:16 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn key(&self) -> u32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: you should consider adding a `Default` implementation for `collision::AABB` [INFO] [stderr] --> src/collision/mod.rs:133:5 [INFO] [stderr] | [INFO] [stderr] 133 | / pub fn new() -> AABB { [INFO] [stderr] 134 | | AABB { [INFO] [stderr] 135 | | lower: Vec2 { x: 0., y: 0. }, [INFO] [stderr] 136 | | upper: Vec2 { x: 0., y: 0. }, [INFO] [stderr] 137 | | } [INFO] [stderr] 138 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 132 | impl Default for collision::AABB { [INFO] [stderr] 133 | fn default() -> Self { [INFO] [stderr] 134 | Self::new() [INFO] [stderr] 135 | } [INFO] [stderr] 136 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:40:37 [INFO] [stderr] | [INFO] [stderr] 40 | mem::transmute::<&mut F, _>(&mut *filter), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *filter as *mut F as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut F`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:53:18 [INFO] [stderr] | [INFO] [stderr] 53 | let filter = mem::transmute::<_, &mut F>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut F)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:101:39 [INFO] [stderr] | [INFO] [stderr] 101 | mem::transmute::<&mut L, _>(&mut *listener), cll_begin_contact::, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *listener as *mut L as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:114:20 [INFO] [stderr] | [INFO] [stderr] 114 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:122:20 [INFO] [stderr] | [INFO] [stderr] 122 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:132:20 [INFO] [stderr] | [INFO] [stderr] 132 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:142:20 [INFO] [stderr] | [INFO] [stderr] 142 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:289:37 [INFO] [stderr] | [INFO] [stderr] 289 | mem::transmute(callback), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `callback as *mut C as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut C`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:298:20 [INFO] [stderr] | [INFO] [stderr] 298 | let callback = mem::transmute::<_, &mut C>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut C)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world_callbacks.rs:313:26 [INFO] [stderr] | [INFO] [stderr] 313 | p: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world_callbacks.rs:314:31 [INFO] [stderr] | [INFO] [stderr] 314 | normal: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:342:39 [INFO] [stderr] | [INFO] [stderr] 342 | mem::transmute(callback), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `callback as *mut C as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut C`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:355:20 [INFO] [stderr] | [INFO] [stderr] 355 | let callback = mem::transmute::<_, &mut C>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut C)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:47:25 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn new(gravity: &Vec2) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:178:70 [INFO] [stderr] | [INFO] [stderr] 178 | pub fn ray_cast(&self, callback: &mut C, p1: &Vec2, p2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:178:81 [INFO] [stderr] | [INFO] [stderr] 178 | pub fn ray_cast(&self, callback: &mut C, p1: &Vec2, p2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:260:44 [INFO] [stderr] | [INFO] [stderr] 260 | pub fn set_gravity(&mut self, gravity: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:280:44 [INFO] [stderr] | [INFO] [stderr] 280 | pub fn shift_origin(&mut self, origin: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/world.rs:284:5 [INFO] [stderr] | [INFO] [stderr] 284 | / pub fn profile<'a>(&'a self) -> &'a Profile { [INFO] [stderr] 285 | | unsafe { [INFO] [stderr] 286 | | &*ffi::World_get_profile(self.ptr()) // Comes from a C++ & [INFO] [stderr] 287 | | } [INFO] [stderr] 288 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `dynamics::body::BodyDef` [INFO] [stderr] --> src/dynamics/body.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | / pub fn new() -> BodyDef { [INFO] [stderr] 47 | | BodyDef { [INFO] [stderr] 48 | | body_type: BodyType::Static, [INFO] [stderr] 49 | | position: Vec2 { x: 0., y: 0. }, [INFO] [stderr] ... | [INFO] [stderr] 62 | | } [INFO] [stderr] 63 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 45 | impl Default for dynamics::body::BodyDef { [INFO] [stderr] 46 | fn default() -> Self { [INFO] [stderr] 47 | Self::new() [INFO] [stderr] 48 | } [INFO] [stderr] 49 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | / pub fn transform<'a>(&'a self) -> &'a Transform { [INFO] [stderr] 195 | | unsafe { [INFO] [stderr] 196 | | &*ffi::Body_get_transform(self.ptr()) // Comes from a C++ & [INFO] [stderr] 197 | | } [INFO] [stderr] 198 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | / pub fn position<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 201 | | unsafe { [INFO] [stderr] 202 | | &*ffi::Body_get_position(self.ptr()) // Comes from a C++ & [INFO] [stderr] 203 | | } [INFO] [stderr] 204 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:210:5 [INFO] [stderr] | [INFO] [stderr] 210 | / pub fn world_center<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 211 | | unsafe { [INFO] [stderr] 212 | | &*ffi::Body_get_world_center(self.ptr()) // Comes from a C++ & [INFO] [stderr] 213 | | } [INFO] [stderr] 214 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:216:5 [INFO] [stderr] | [INFO] [stderr] 216 | / pub fn local_center<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 217 | | unsafe { [INFO] [stderr] 218 | | &*ffi::Body_get_local_center(self.ptr()) // Comes from a C++ & [INFO] [stderr] 219 | | } [INFO] [stderr] 220 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:222:5 [INFO] [stderr] | [INFO] [stderr] 222 | / pub fn linear_velocity<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 223 | | unsafe { [INFO] [stderr] 224 | | &*ffi::Body_get_linear_velocity(self.ptr()) // Comes from a C++ & [INFO] [stderr] 225 | | } [INFO] [stderr] 226 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:248:38 [INFO] [stderr] | [INFO] [stderr] 248 | pub fn world_point(&self, local: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:252:39 [INFO] [stderr] | [INFO] [stderr] 252 | pub fn world_vector(&self, local: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:256:38 [INFO] [stderr] | [INFO] [stderr] 256 | pub fn local_point(&self, world: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:260:39 [INFO] [stderr] | [INFO] [stderr] 260 | pub fn local_vector(&self, world: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:264:59 [INFO] [stderr] | [INFO] [stderr] 264 | pub fn linear_velocity_from_world_point(&self, world: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:268:59 [INFO] [stderr] | [INFO] [stderr] 268 | pub fn linear_velocity_from_local_point(&self, local: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:315:42 [INFO] [stderr] | [INFO] [stderr] 315 | pub fn set_transform(&mut self, pos: &Vec2, angle: f32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:319:46 [INFO] [stderr] | [INFO] [stderr] 319 | pub fn set_linear_velocity(&mut self, v: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:327:42 [INFO] [stderr] | [INFO] [stderr] 327 | pub fn apply_force(&mut self, force: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:327:56 [INFO] [stderr] | [INFO] [stderr] 327 | pub fn apply_force(&mut self, force: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:331:52 [INFO] [stderr] | [INFO] [stderr] 331 | pub fn apply_force_to_center(&mut self, force: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:339:53 [INFO] [stderr] | [INFO] [stderr] 339 | pub fn apply_linear_impulse(&mut self, impulse: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:339:67 [INFO] [stderr] | [INFO] [stderr] 339 | pub fn apply_linear_impulse(&mut self, impulse: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you should consider deriving a `Default` implementation for `dynamics::fixture::Filter` [INFO] [stderr] --> src/dynamics/fixture.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn new() -> Filter { [INFO] [stderr] 23 | | Filter { [INFO] [stderr] 24 | | category_bits: 0x0001, [INFO] [stderr] 25 | | mask_bits: 0xFFFF, [INFO] [stderr] 26 | | group_index: 0, [INFO] [stderr] 27 | | } [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 15 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `dynamics::fixture::FixtureDef` [INFO] [stderr] --> src/dynamics/fixture.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | / pub fn new() -> FixtureDef { [INFO] [stderr] 47 | | FixtureDef { [INFO] [stderr] 48 | | shape: ptr::null(), // needs to be specified later [INFO] [stderr] 49 | | user_data: ptr::null_mut(), [INFO] [stderr] ... | [INFO] [stderr] 55 | | } [INFO] [stderr] 56 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 45 | impl Default for dynamics::fixture::FixtureDef { [INFO] [stderr] 46 | fn default() -> Self { [INFO] [stderr] 47 | Self::new() [INFO] [stderr] 48 | } [INFO] [stderr] 49 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:121:5 [INFO] [stderr] | [INFO] [stderr] 121 | / pub fn filter_data<'a>(&'a self) -> &'a Filter { [INFO] [stderr] 122 | | unsafe { [INFO] [stderr] 123 | | &*ffi::Fixture_get_filter_data(self.ptr()) // Comes from a C++ & [INFO] [stderr] 124 | | } [INFO] [stderr] 125 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/fixture.rs:131:37 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn test_point(&self, point: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:163:5 [INFO] [stderr] | [INFO] [stderr] 163 | / pub fn aabb<'a>(&'a self, child_index: i32) -> &'a AABB { [INFO] [stderr] 164 | | unsafe { [INFO] [stderr] 165 | | &*ffi::Fixture_get_aabb(self.ptr(), child_index) // Comes from a C++ & [INFO] [stderr] 166 | | } [INFO] [stderr] 167 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:169:5 [INFO] [stderr] | [INFO] [stderr] 169 | / pub fn shape_mut<'a>(&'a mut self) -> WrappedRefMut<'a, UnknownShape> { [INFO] [stderr] 170 | | unsafe { [INFO] [stderr] 171 | | WrappedRefMut::new(UnknownShape::from_ffi(ffi::Fixture_get_shape(self.mut_ptr()))) [INFO] [stderr] 172 | | } [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:175:5 [INFO] [stderr] | [INFO] [stderr] 175 | / pub fn shape<'a>(&'a self) -> WrappedRef<'a, UnknownShape> { [INFO] [stderr] 176 | | unsafe { [INFO] [stderr] 177 | | WrappedRef::new(UnknownShape::from_ffi( [INFO] [stderr] 178 | | ffi::Fixture_get_shape_const(self.ptr()) as *mut ffi::Shape [INFO] [stderr] 179 | | )) [INFO] [stderr] 180 | | } [INFO] [stderr] 181 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/distance.rs:36:45 [INFO] [stderr] | [INFO] [stderr] 36 | anchor_a: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/distance.rs:37:45 [INFO] [stderr] | [INFO] [stderr] 37 | anchor_b: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/distance.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 76 | | unsafe { [INFO] [stderr] 77 | | &*ffi::DistanceJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 78 | | } [INFO] [stderr] 79 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/distance.rs:81:5 [INFO] [stderr] | [INFO] [stderr] 81 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 82 | | unsafe { [INFO] [stderr] 83 | | &*ffi::DistanceJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 84 | | } [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_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/friction.rs:34:43 [INFO] [stderr] | [INFO] [stderr] 34 | anchor: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/friction.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 71 | | unsafe { [INFO] [stderr] 72 | | &*ffi::FrictionJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 73 | | } [INFO] [stderr] 74 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/friction.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 77 | | unsafe { [INFO] [stderr] 78 | | &*ffi::FrictionJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 79 | | } [INFO] [stderr] 80 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/motor.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | / pub fn linear_offset<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 73 | | unsafe { [INFO] [stderr] 74 | | &*ffi::MotorJoint_get_linear_offset(self.ptr()) // Comes from a C++ & [INFO] [stderr] 75 | | } [INFO] [stderr] 76 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/motor.rs:94:49 [INFO] [stderr] | [INFO] [stderr] 94 | pub fn set_linear_offset(&mut self, offset: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/mouse.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | / pub fn target<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 58 | | unsafe { [INFO] [stderr] 59 | | &*ffi::MouseJoint_get_target(self.ptr()) // Comes from a C++ & [INFO] [stderr] 60 | | } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/mouse.rs:75:42 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn set_target(&mut self, target: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:46:43 [INFO] [stderr] | [INFO] [stderr] 46 | anchor: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:47:41 [INFO] [stderr] | [INFO] [stderr] 47 | axis: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 92 | | unsafe { [INFO] [stderr] 93 | | &*ffi::PrismaticJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 94 | | } [INFO] [stderr] 95 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:97:5 [INFO] [stderr] | [INFO] [stderr] 97 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 98 | | unsafe { [INFO] [stderr] 99 | | &*ffi::PrismaticJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 100 | | } [INFO] [stderr] 101 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:103:5 [INFO] [stderr] | [INFO] [stderr] 103 | / pub fn local_axis_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 104 | | unsafe { [INFO] [stderr] 105 | | &*ffi::PrismaticJoint_get_local_axis_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/dynamics/joints/pulley.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | / pub fn init(&mut self, [INFO] [stderr] 37 | | body_a: BodyHandle, [INFO] [stderr] 38 | | body_b: BodyHandle, [INFO] [stderr] 39 | | ground_a: Vec2, [INFO] [stderr] ... | [INFO] [stderr] 51 | | self.ratio = ratio; [INFO] [stderr] 52 | | } [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/pulley.rs:41:27 [INFO] [stderr] | [INFO] [stderr] 41 | anchor_a: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/pulley.rs:42:27 [INFO] [stderr] | [INFO] [stderr] 42 | anchor_b: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/revolute.rs:44:43 [INFO] [stderr] | [INFO] [stderr] 44 | anchor: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/revolute.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 87 | | unsafe { [INFO] [stderr] 88 | | &*ffi::RevoluteJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 89 | | } [INFO] [stderr] 90 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/revolute.rs:92:5 [INFO] [stderr] | [INFO] [stderr] 92 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 93 | | unsafe { [INFO] [stderr] 94 | | &*ffi::RevoluteJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 95 | | } [INFO] [stderr] 96 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/rope.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 55 | | unsafe { [INFO] [stderr] 56 | | &*ffi::RopeJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 57 | | } [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_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/rope.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 61 | | unsafe { [INFO] [stderr] 62 | | &*ffi::RopeJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 63 | | } [INFO] [stderr] 64 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/weld.rs:36:43 [INFO] [stderr] | [INFO] [stderr] 36 | anchor: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/weld.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 75 | | unsafe { [INFO] [stderr] 76 | | &*ffi::WeldJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 77 | | } [INFO] [stderr] 78 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/weld.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 81 | | unsafe { [INFO] [stderr] 82 | | &*ffi::WeldJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 83 | | } [INFO] [stderr] 84 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/wheel.rs:42:43 [INFO] [stderr] | [INFO] [stderr] 42 | anchor: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/wheel.rs:43:41 [INFO] [stderr] | [INFO] [stderr] 43 | axis: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/wheel.rs:84:5 [INFO] [stderr] | [INFO] [stderr] 84 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 85 | | unsafe { [INFO] [stderr] 86 | | &*ffi::WheelJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 87 | | } [INFO] [stderr] 88 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/wheel.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 91 | | unsafe { [INFO] [stderr] 92 | | &*ffi::WheelJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 93 | | } [INFO] [stderr] 94 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/wheel.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | / pub fn local_axis_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 97 | | unsafe { [INFO] [stderr] 98 | | &*ffi::WheelJoint_get_local_axis_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 99 | | } [INFO] [stderr] 100 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/mod.rs:176:40 [INFO] [stderr] | [INFO] [stderr] 176 | fn shift_origin(&mut self, origin: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/dynamics/joints/mod.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | / match self { [INFO] [stderr] 209 | | &Distance(ref x) => x.base_ptr(), [INFO] [stderr] 210 | | &Friction(ref x) => x.base_ptr(), [INFO] [stderr] 211 | | &Gear(ref x) => x.base_ptr(), [INFO] [stderr] ... | [INFO] [stderr] 220 | | _ => panic!("Truly unknown joint"), [INFO] [stderr] 221 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 208 | match *self { [INFO] [stderr] 209 | Distance(ref x) => x.base_ptr(), [INFO] [stderr] 210 | Friction(ref x) => x.base_ptr(), [INFO] [stderr] 211 | Gear(ref x) => x.base_ptr(), [INFO] [stderr] 212 | Motor(ref x) => x.base_ptr(), [INFO] [stderr] 213 | Mouse(ref x) => x.base_ptr(), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/dynamics/joints/mod.rs:226:9 [INFO] [stderr] | [INFO] [stderr] 226 | / match self { [INFO] [stderr] 227 | | &mut Distance(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 228 | | &mut Friction(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 229 | | &mut Gear(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] ... | [INFO] [stderr] 238 | | _ => panic!("Truly unknown joint"), [INFO] [stderr] 239 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 226 | match *self { [INFO] [stderr] 227 | Distance(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 228 | Friction(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 229 | Gear(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 230 | Motor(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 231 | Mouse(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/contacts.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn manifold<'a>(&'a self) -> &'a Manifold { [INFO] [stderr] 23 | | unsafe { &*ffi::Contact_get_manifold_const(self.ptr()) } [INFO] [stderr] 24 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/contacts.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn manifold_mut<'a>(&'a mut self) -> &'a mut Manifold { [INFO] [stderr] 27 | | unsafe { &mut *ffi::Contact_get_manifold(self.mut_ptr()) } [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/contacts.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | / pub fn world_manifold<'a>(&'a self) -> WorldManifold { [INFO] [stderr] 31 | | unsafe { [INFO] [stderr] 32 | | let mut m = mem::uninitialized(); [INFO] [stderr] 33 | | ffi::Contact_get_world_manifold(self.ptr(), &mut m); [INFO] [stderr] 34 | | m [INFO] [stderr] 35 | | } [INFO] [stderr] 36 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `wrapped2d`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: type alias is never used: `ConstAny` [INFO] [stderr] --> src/ffi.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub type ConstAny = *const c_void; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/wrap.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | / fn deref<'b>(&'b self) -> &'b T { [INFO] [stderr] 136 | | self.object.as_ref().unwrap() [INFO] [stderr] 137 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/wrap.rs:141:5 [INFO] [stderr] | [INFO] [stderr] 141 | / fn deref_mut<'b>(&'b mut self) -> &'b mut T { [INFO] [stderr] 142 | | self.object.as_mut().unwrap() [INFO] [stderr] 143 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/wrap.rs:170:5 [INFO] [stderr] | [INFO] [stderr] 170 | / fn deref<'b>(&'b self) -> &'b T { [INFO] [stderr] 171 | | self.object.as_ref().unwrap() [INFO] [stderr] 172 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `handle::HandleMap` [INFO] [stderr] --> src/handle.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | / pub fn new() -> HandleMap { [INFO] [stderr] 87 | | HandleMap { [INFO] [stderr] 88 | | next_index: 0, [INFO] [stderr] 89 | | availables: Vec::new(), [INFO] [stderr] ... | [INFO] [stderr] 92 | | } [INFO] [stderr] 93 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 78 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/handle.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | / pub fn iter<'a>(&'a self) -> HandleIter<'a, T, E> { [INFO] [stderr] 187 | | HandleIter { [INFO] [stderr] 188 | | iter: self.entries.iter(), [INFO] [stderr] 189 | | phantom: PhantomData, [INFO] [stderr] 190 | | } [INFO] [stderr] 191 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:47:21 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn sqr_norm(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:51:17 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn norm(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:55:17 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn sqew(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:65:18 [INFO] [stderr] | [INFO] [stderr] 65 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&*(self as *const common::math::Vec2 as *const [f32; 2])` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ptr)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:69:18 [INFO] [stderr] | [INFO] [stderr] 69 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(self as *mut common::math::Vec2 as *mut [f32; 2])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:73:18 [INFO] [stderr] | [INFO] [stderr] 73 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&*(array as *const [f32; 2] as *const common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/math.rs:77:18 [INFO] [stderr] | [INFO] [stderr] 77 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(array as *mut [f32; 2] as *mut common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:256:19 [INFO] [stderr] | [INFO] [stderr] 256 | pub fn x_axis(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:263:19 [INFO] [stderr] | [INFO] [stderr] 263 | pub fn y_axis(&self) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/math.rs:270:18 [INFO] [stderr] | [INFO] [stderr] 270 | pub fn angle(&self) -> f32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: float has excessive precision [INFO] [stderr] --> src/common/settings.rs:1:21 [INFO] [stderr] | [INFO] [stderr] 1 | pub const PI: f32 = 3.14159265359; [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `3.141_592_7` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] error: approximate value of `f{32, 64}::consts::PI` found. Consider using it directly [INFO] [stderr] --> src/common/settings.rs:1:21 [INFO] [stderr] | [INFO] [stderr] 1 | pub const PI: f32 = 3.14159265359; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::approx_constant)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#approx_constant [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:18:18 [INFO] [stderr] | [INFO] [stderr] 18 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&*(self as *const common::Color as *const [f32; 4])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:22:18 [INFO] [stderr] | [INFO] [stderr] 22 | unsafe { mem::transmute(self) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(self as *mut common::Color as *mut [f32; 4])` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:26:18 [INFO] [stderr] | [INFO] [stderr] 26 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&*(array as *const [f32; 4] as *const common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a reference [INFO] [stderr] --> src/common/mod.rs:30:18 [INFO] [stderr] | [INFO] [stderr] 30 | unsafe { mem::transmute(array) } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(array as *mut [f32; 4] as *mut common::math::Vec2)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ptr [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:48:39 [INFO] [stderr] | [INFO] [stderr] 48 | fn draw_circle(&mut self, center: &Vec2, radius: f32, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:49:45 [INFO] [stderr] | [INFO] [stderr] 49 | fn draw_solid_circle(&mut self, center: &Vec2, radius: f32, axis: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:49:71 [INFO] [stderr] | [INFO] [stderr] 49 | fn draw_solid_circle(&mut self, center: &Vec2, radius: f32, axis: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:50:36 [INFO] [stderr] | [INFO] [stderr] 50 | fn draw_segment(&mut self, p1: &Vec2, p2: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/common/mod.rs:50:47 [INFO] [stderr] | [INFO] [stderr] 50 | fn draw_segment(&mut self, p1: &Vec2, p2: &Vec2, color: &Color); [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:59:16 [INFO] [stderr] | [INFO] [stderr] 59 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::transmute_ptr_to_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:69:16 [INFO] [stderr] | [INFO] [stderr] 69 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:79:16 [INFO] [stderr] | [INFO] [stderr] 79 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:89:16 [INFO] [stderr] | [INFO] [stderr] 89 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:98:16 [INFO] [stderr] | [INFO] [stderr] 98 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut D`) [INFO] [stderr] --> src/common/mod.rs:104:16 [INFO] [stderr] | [INFO] [stderr] 104 | let draw = mem::transmute::<_, &mut D>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut D)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/common/mod.rs:124:28 [INFO] [stderr] | [INFO] [stderr] 124 | mem::transmute(draw), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try: `draw as *mut D as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_transmute)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `collision::shapes::chain::ChainShape` [INFO] [stderr] --> src/collision/shapes/chain.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | / pub fn new() -> Self { [INFO] [stderr] 17 | | unsafe { ChainShape::from_ffi(ffi::ChainShape_new()) } [INFO] [stderr] 18 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 15 | impl Default for collision::shapes::chain::ChainShape { [INFO] [stderr] 16 | fn default() -> Self { [INFO] [stderr] 17 | Self::new() [INFO] [stderr] 18 | } [INFO] [stderr] 19 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `collision::shapes::edge::EdgeShape` [INFO] [stderr] --> src/collision/shapes/edge.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | / pub fn new() -> Self { [INFO] [stderr] 16 | | unsafe { EdgeShape::from_ffi(ffi::EdgeShape_new()) } [INFO] [stderr] 17 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 14 | impl Default for collision::shapes::edge::EdgeShape { [INFO] [stderr] 15 | fn default() -> Self { [INFO] [stderr] 16 | Self::new() [INFO] [stderr] 17 | } [INFO] [stderr] 18 | } [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/collision/shapes/edge.rs:19:25 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_with(v1: &Vec2, v2: &Vec2) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/edge.rs:19:36 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn new_with(v1: &Vec2, v2: &Vec2) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/edge.rs:25:31 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn set(&mut self, v1: &Vec2, v2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/edge.rs:25:42 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn set(&mut self, v1: &Vec2, v2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you should consider adding a `Default` implementation for `collision::shapes::circle::CircleShape` [INFO] [stderr] --> src/collision/shapes/circle.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / pub fn new() -> Self { [INFO] [stderr] 13 | | unsafe { CircleShape::from_ffi(ffi::CircleShape_new()) } [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 11 | impl Default for collision::shapes::circle::CircleShape { [INFO] [stderr] 12 | fn default() -> Self { [INFO] [stderr] 13 | Self::new() [INFO] [stderr] 14 | } [INFO] [stderr] 15 | } [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/collision/shapes/circle.rs:23:32 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn support(&self, dir: &Vec2) -> i32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/collision/shapes/circle.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | / pub fn vertex<'a>(&'a self, index: i32) -> &'a Vec2 { [INFO] [stderr] 38 | | unsafe { [INFO] [stderr] 39 | | &*ffi::CircleShape_get_vertex(self.ptr(), index) // Comes from a C++ & [INFO] [stderr] 40 | | } [INFO] [stderr] 41 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `collision::shapes::polygon::PolygonShape` [INFO] [stderr] --> src/collision/shapes/polygon.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | / pub fn new() -> Self { [INFO] [stderr] 13 | | unsafe { PolygonShape::from_ffi(ffi::PolygonShape_new()) } [INFO] [stderr] 14 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 11 | impl Default for collision::shapes::polygon::PolygonShape { [INFO] [stderr] 12 | fn default() -> Self { [INFO] [stderr] 13 | Self::new() [INFO] [stderr] 14 | } [INFO] [stderr] 15 | } [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/collision/shapes/polygon.rs:24:69 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn set_as_oriented_box(&mut self, hw: f32, hh: f32, center: &Vec2, angle: f32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/polygon.rs:40:55 [INFO] [stderr] | [INFO] [stderr] 40 | pub fn new_oriented_box(hw: f32, hh: f32, center: &Vec2, angle: f32) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/collision/shapes/polygon.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | / pub fn vertex<'a>(&'a self, index: i32) -> &'a Vec2 { [INFO] [stderr] 51 | | unsafe { [INFO] [stderr] 52 | | &*ffi::PolygonShape_get_vertex(self.ptr(), index) // Comes from a C++ & [INFO] [stderr] 53 | | } [INFO] [stderr] 54 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/shapes/mod.rs:59:45 [INFO] [stderr] | [INFO] [stderr] 59 | fn test_point(&self, xf: &Transform, p: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/collision/shapes/mod.rs:107:9 [INFO] [stderr] | [INFO] [stderr] 107 | / match self { [INFO] [stderr] 108 | | &Circle(ref x) => x.base_ptr(), [INFO] [stderr] 109 | | &Edge(ref x) => x.base_ptr(), [INFO] [stderr] 110 | | &Polygon(ref x) => x.base_ptr(), [INFO] [stderr] 111 | | &Chain(ref x) => x.base_ptr(), [INFO] [stderr] 112 | | _ => panic!("Truly unknown shape"), [INFO] [stderr] 113 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 107 | match *self { [INFO] [stderr] 108 | Circle(ref x) => x.base_ptr(), [INFO] [stderr] 109 | Edge(ref x) => x.base_ptr(), [INFO] [stderr] 110 | Polygon(ref x) => x.base_ptr(), [INFO] [stderr] 111 | Chain(ref x) => x.base_ptr(), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/collision/shapes/mod.rs:118:9 [INFO] [stderr] | [INFO] [stderr] 118 | / match self { [INFO] [stderr] 119 | | &mut Circle(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 120 | | &mut Edge(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 121 | | &mut Polygon(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 122 | | &mut Chain(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 123 | | _ => panic!("Truly unknown shape"), [INFO] [stderr] 124 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 118 | match *self { [INFO] [stderr] 119 | Circle(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 120 | Edge(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 121 | Polygon(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 122 | Chain(ref mut x) => x.mut_base_ptr(), [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/collision/mod.rs:31:20 [INFO] [stderr] | [INFO] [stderr] 31 | pub fn feature(&self) -> ContactFeature { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/collision/mod.rs:35:16 [INFO] [stderr] | [INFO] [stderr] 35 | pub fn key(&self) -> u32 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [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: you should consider adding a `Default` implementation for `collision::AABB` [INFO] [stderr] --> src/collision/mod.rs:133:5 [INFO] [stderr] | [INFO] [stderr] 133 | / pub fn new() -> AABB { [INFO] [stderr] 134 | | AABB { [INFO] [stderr] 135 | | lower: Vec2 { x: 0., y: 0. }, [INFO] [stderr] 136 | | upper: Vec2 { x: 0., y: 0. }, [INFO] [stderr] 137 | | } [INFO] [stderr] 138 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 132 | impl Default for collision::AABB { [INFO] [stderr] 133 | fn default() -> Self { [INFO] [stderr] 134 | Self::new() [INFO] [stderr] 135 | } [INFO] [stderr] 136 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:40:37 [INFO] [stderr] | [INFO] [stderr] 40 | mem::transmute::<&mut F, _>(&mut *filter), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *filter as *mut F as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut F`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:53:18 [INFO] [stderr] | [INFO] [stderr] 53 | let filter = mem::transmute::<_, &mut F>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut F)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:101:39 [INFO] [stderr] | [INFO] [stderr] 101 | mem::transmute::<&mut L, _>(&mut *listener), cll_begin_contact::, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *listener as *mut L as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:114:20 [INFO] [stderr] | [INFO] [stderr] 114 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:122:20 [INFO] [stderr] | [INFO] [stderr] 122 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:132:20 [INFO] [stderr] | [INFO] [stderr] 132 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut L`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:142:20 [INFO] [stderr] | [INFO] [stderr] 142 | let listener = mem::transmute::<_, &mut L>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut L)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:289:37 [INFO] [stderr] | [INFO] [stderr] 289 | mem::transmute(callback), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `callback as *mut C as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut C`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:298:20 [INFO] [stderr] | [INFO] [stderr] 298 | let callback = mem::transmute::<_, &mut C>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut C)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world_callbacks.rs:313:26 [INFO] [stderr] | [INFO] [stderr] 313 | p: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world_callbacks.rs:314:31 [INFO] [stderr] | [INFO] [stderr] 314 | normal: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: transmute from a reference to a pointer [INFO] [stderr] --> src/dynamics/world_callbacks.rs:342:39 [INFO] [stderr] | [INFO] [stderr] 342 | mem::transmute(callback), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `callback as *mut C as *mut libc::c_void` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_transmute [INFO] [stderr] [INFO] [stderr] warning: transmute from a pointer type (`*mut libc::c_void`) to a reference type (`&mut C`) [INFO] [stderr] --> src/dynamics/world_callbacks.rs:355:20 [INFO] [stderr] | [INFO] [stderr] 355 | let callback = mem::transmute::<_, &mut C>(object); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `&mut *(object as *mut C)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#transmute_ptr_to_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:47:25 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn new(gravity: &Vec2) -> Self { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:178:70 [INFO] [stderr] | [INFO] [stderr] 178 | pub fn ray_cast(&self, callback: &mut C, p1: &Vec2, p2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:178:81 [INFO] [stderr] | [INFO] [stderr] 178 | pub fn ray_cast(&self, callback: &mut C, p1: &Vec2, p2: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:260:44 [INFO] [stderr] | [INFO] [stderr] 260 | pub fn set_gravity(&mut self, gravity: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/world.rs:280:44 [INFO] [stderr] | [INFO] [stderr] 280 | pub fn shift_origin(&mut self, origin: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/world.rs:284:5 [INFO] [stderr] | [INFO] [stderr] 284 | / pub fn profile<'a>(&'a self) -> &'a Profile { [INFO] [stderr] 285 | | unsafe { [INFO] [stderr] 286 | | &*ffi::World_get_profile(self.ptr()) // Comes from a C++ & [INFO] [stderr] 287 | | } [INFO] [stderr] 288 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `dynamics::body::BodyDef` [INFO] [stderr] --> src/dynamics/body.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | / pub fn new() -> BodyDef { [INFO] [stderr] 47 | | BodyDef { [INFO] [stderr] 48 | | body_type: BodyType::Static, [INFO] [stderr] 49 | | position: Vec2 { x: 0., y: 0. }, [INFO] [stderr] ... | [INFO] [stderr] 62 | | } [INFO] [stderr] 63 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 45 | impl Default for dynamics::body::BodyDef { [INFO] [stderr] 46 | fn default() -> Self { [INFO] [stderr] 47 | Self::new() [INFO] [stderr] 48 | } [INFO] [stderr] 49 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:194:5 [INFO] [stderr] | [INFO] [stderr] 194 | / pub fn transform<'a>(&'a self) -> &'a Transform { [INFO] [stderr] 195 | | unsafe { [INFO] [stderr] 196 | | &*ffi::Body_get_transform(self.ptr()) // Comes from a C++ & [INFO] [stderr] 197 | | } [INFO] [stderr] 198 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:200:5 [INFO] [stderr] | [INFO] [stderr] 200 | / pub fn position<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 201 | | unsafe { [INFO] [stderr] 202 | | &*ffi::Body_get_position(self.ptr()) // Comes from a C++ & [INFO] [stderr] 203 | | } [INFO] [stderr] 204 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:210:5 [INFO] [stderr] | [INFO] [stderr] 210 | / pub fn world_center<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 211 | | unsafe { [INFO] [stderr] 212 | | &*ffi::Body_get_world_center(self.ptr()) // Comes from a C++ & [INFO] [stderr] 213 | | } [INFO] [stderr] 214 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:216:5 [INFO] [stderr] | [INFO] [stderr] 216 | / pub fn local_center<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 217 | | unsafe { [INFO] [stderr] 218 | | &*ffi::Body_get_local_center(self.ptr()) // Comes from a C++ & [INFO] [stderr] 219 | | } [INFO] [stderr] 220 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/body.rs:222:5 [INFO] [stderr] | [INFO] [stderr] 222 | / pub fn linear_velocity<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 223 | | unsafe { [INFO] [stderr] 224 | | &*ffi::Body_get_linear_velocity(self.ptr()) // Comes from a C++ & [INFO] [stderr] 225 | | } [INFO] [stderr] 226 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:248:38 [INFO] [stderr] | [INFO] [stderr] 248 | pub fn world_point(&self, local: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:252:39 [INFO] [stderr] | [INFO] [stderr] 252 | pub fn world_vector(&self, local: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:256:38 [INFO] [stderr] | [INFO] [stderr] 256 | pub fn local_point(&self, world: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:260:39 [INFO] [stderr] | [INFO] [stderr] 260 | pub fn local_vector(&self, world: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:264:59 [INFO] [stderr] | [INFO] [stderr] 264 | pub fn linear_velocity_from_world_point(&self, world: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:268:59 [INFO] [stderr] | [INFO] [stderr] 268 | pub fn linear_velocity_from_local_point(&self, local: &Vec2) -> Vec2 { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:315:42 [INFO] [stderr] | [INFO] [stderr] 315 | pub fn set_transform(&mut self, pos: &Vec2, angle: f32) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:319:46 [INFO] [stderr] | [INFO] [stderr] 319 | pub fn set_linear_velocity(&mut self, v: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:327:42 [INFO] [stderr] | [INFO] [stderr] 327 | pub fn apply_force(&mut self, force: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:327:56 [INFO] [stderr] | [INFO] [stderr] 327 | pub fn apply_force(&mut self, force: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:331:52 [INFO] [stderr] | [INFO] [stderr] 331 | pub fn apply_force_to_center(&mut self, force: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:339:53 [INFO] [stderr] | [INFO] [stderr] 339 | pub fn apply_linear_impulse(&mut self, impulse: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/body.rs:339:67 [INFO] [stderr] | [INFO] [stderr] 339 | pub fn apply_linear_impulse(&mut self, impulse: &Vec2, point: &Vec2, wake: bool) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you should consider deriving a `Default` implementation for `dynamics::fixture::Filter` [INFO] [stderr] --> src/dynamics/fixture.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn new() -> Filter { [INFO] [stderr] 23 | | Filter { [INFO] [stderr] 24 | | category_bits: 0x0001, [INFO] [stderr] 25 | | mask_bits: 0xFFFF, [INFO] [stderr] 26 | | group_index: 0, [INFO] [stderr] 27 | | } [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 15 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `dynamics::fixture::FixtureDef` [INFO] [stderr] --> src/dynamics/fixture.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | / pub fn new() -> FixtureDef { [INFO] [stderr] 47 | | FixtureDef { [INFO] [stderr] 48 | | shape: ptr::null(), // needs to be specified later [INFO] [stderr] 49 | | user_data: ptr::null_mut(), [INFO] [stderr] ... | [INFO] [stderr] 55 | | } [INFO] [stderr] 56 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 45 | impl Default for dynamics::fixture::FixtureDef { [INFO] [stderr] 46 | fn default() -> Self { [INFO] [stderr] 47 | Self::new() [INFO] [stderr] 48 | } [INFO] [stderr] 49 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:121:5 [INFO] [stderr] | [INFO] [stderr] 121 | / pub fn filter_data<'a>(&'a self) -> &'a Filter { [INFO] [stderr] 122 | | unsafe { [INFO] [stderr] 123 | | &*ffi::Fixture_get_filter_data(self.ptr()) // Comes from a C++ & [INFO] [stderr] 124 | | } [INFO] [stderr] 125 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/fixture.rs:131:37 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn test_point(&self, point: &Vec2) -> bool { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:163:5 [INFO] [stderr] | [INFO] [stderr] 163 | / pub fn aabb<'a>(&'a self, child_index: i32) -> &'a AABB { [INFO] [stderr] 164 | | unsafe { [INFO] [stderr] 165 | | &*ffi::Fixture_get_aabb(self.ptr(), child_index) // Comes from a C++ & [INFO] [stderr] 166 | | } [INFO] [stderr] 167 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:169:5 [INFO] [stderr] | [INFO] [stderr] 169 | / pub fn shape_mut<'a>(&'a mut self) -> WrappedRefMut<'a, UnknownShape> { [INFO] [stderr] 170 | | unsafe { [INFO] [stderr] 171 | | WrappedRefMut::new(UnknownShape::from_ffi(ffi::Fixture_get_shape(self.mut_ptr()))) [INFO] [stderr] 172 | | } [INFO] [stderr] 173 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/fixture.rs:175:5 [INFO] [stderr] | [INFO] [stderr] 175 | / pub fn shape<'a>(&'a self) -> WrappedRef<'a, UnknownShape> { [INFO] [stderr] 176 | | unsafe { [INFO] [stderr] 177 | | WrappedRef::new(UnknownShape::from_ffi( [INFO] [stderr] 178 | | ffi::Fixture_get_shape_const(self.ptr()) as *mut ffi::Shape [INFO] [stderr] 179 | | )) [INFO] [stderr] 180 | | } [INFO] [stderr] 181 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/distance.rs:36:45 [INFO] [stderr] | [INFO] [stderr] 36 | anchor_a: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/distance.rs:37:45 [INFO] [stderr] | [INFO] [stderr] 37 | anchor_b: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/distance.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 76 | | unsafe { [INFO] [stderr] 77 | | &*ffi::DistanceJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 78 | | } [INFO] [stderr] 79 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/distance.rs:81:5 [INFO] [stderr] | [INFO] [stderr] 81 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 82 | | unsafe { [INFO] [stderr] 83 | | &*ffi::DistanceJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 84 | | } [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_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/friction.rs:34:43 [INFO] [stderr] | [INFO] [stderr] 34 | anchor: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/friction.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 70 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 71 | | unsafe { [INFO] [stderr] 72 | | &*ffi::FrictionJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 73 | | } [INFO] [stderr] 74 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/friction.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 77 | | unsafe { [INFO] [stderr] 78 | | &*ffi::FrictionJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 79 | | } [INFO] [stderr] 80 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/motor.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | / pub fn linear_offset<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 73 | | unsafe { [INFO] [stderr] 74 | | &*ffi::MotorJoint_get_linear_offset(self.ptr()) // Comes from a C++ & [INFO] [stderr] 75 | | } [INFO] [stderr] 76 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/motor.rs:94:49 [INFO] [stderr] | [INFO] [stderr] 94 | pub fn set_linear_offset(&mut self, offset: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/mouse.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | / pub fn target<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 58 | | unsafe { [INFO] [stderr] 59 | | &*ffi::MouseJoint_get_target(self.ptr()) // Comes from a C++ & [INFO] [stderr] 60 | | } [INFO] [stderr] 61 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/mouse.rs:75:42 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn set_target(&mut self, target: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:46:43 [INFO] [stderr] | [INFO] [stderr] 46 | anchor: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:47:41 [INFO] [stderr] | [INFO] [stderr] 47 | axis: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 92 | | unsafe { [INFO] [stderr] 93 | | &*ffi::PrismaticJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 94 | | } [INFO] [stderr] 95 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:97:5 [INFO] [stderr] | [INFO] [stderr] 97 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 98 | | unsafe { [INFO] [stderr] 99 | | &*ffi::PrismaticJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 100 | | } [INFO] [stderr] 101 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/prismatic.rs:103:5 [INFO] [stderr] | [INFO] [stderr] 103 | / pub fn local_axis_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 104 | | unsafe { [INFO] [stderr] 105 | | &*ffi::PrismaticJoint_get_local_axis_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 106 | | } [INFO] [stderr] 107 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this function has too many arguments (8/7) [INFO] [stderr] --> src/dynamics/joints/pulley.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | / pub fn init(&mut self, [INFO] [stderr] 37 | | body_a: BodyHandle, [INFO] [stderr] 38 | | body_b: BodyHandle, [INFO] [stderr] 39 | | ground_a: Vec2, [INFO] [stderr] ... | [INFO] [stderr] 51 | | self.ratio = ratio; [INFO] [stderr] 52 | | } [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/pulley.rs:41:27 [INFO] [stderr] | [INFO] [stderr] 41 | anchor_a: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/pulley.rs:42:27 [INFO] [stderr] | [INFO] [stderr] 42 | anchor_b: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/revolute.rs:44:43 [INFO] [stderr] | [INFO] [stderr] 44 | anchor: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/revolute.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 87 | | unsafe { [INFO] [stderr] 88 | | &*ffi::RevoluteJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 89 | | } [INFO] [stderr] 90 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/revolute.rs:92:5 [INFO] [stderr] | [INFO] [stderr] 92 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 93 | | unsafe { [INFO] [stderr] 94 | | &*ffi::RevoluteJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 95 | | } [INFO] [stderr] 96 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/rope.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 55 | | unsafe { [INFO] [stderr] 56 | | &*ffi::RopeJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 57 | | } [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_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/rope.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 61 | | unsafe { [INFO] [stderr] 62 | | &*ffi::RopeJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 63 | | } [INFO] [stderr] 64 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/weld.rs:36:43 [INFO] [stderr] | [INFO] [stderr] 36 | anchor: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/weld.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 75 | | unsafe { [INFO] [stderr] 76 | | &*ffi::WeldJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 77 | | } [INFO] [stderr] 78 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/weld.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 81 | | unsafe { [INFO] [stderr] 82 | | &*ffi::WeldJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 83 | | } [INFO] [stderr] 84 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/wheel.rs:42:43 [INFO] [stderr] | [INFO] [stderr] 42 | anchor: &Vec2, [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/wheel.rs:43:41 [INFO] [stderr] | [INFO] [stderr] 43 | axis: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/wheel.rs:84:5 [INFO] [stderr] | [INFO] [stderr] 84 | / pub fn local_anchor_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 85 | | unsafe { [INFO] [stderr] 86 | | &*ffi::WheelJoint_get_local_anchor_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 87 | | } [INFO] [stderr] 88 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/wheel.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | / pub fn local_anchor_b<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 91 | | unsafe { [INFO] [stderr] 92 | | &*ffi::WheelJoint_get_local_anchor_b(self.ptr()) // Comes from a C++ & [INFO] [stderr] 93 | | } [INFO] [stderr] 94 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/joints/wheel.rs:96:5 [INFO] [stderr] | [INFO] [stderr] 96 | / pub fn local_axis_a<'a>(&'a self) -> &'a Vec2 { [INFO] [stderr] 97 | | unsafe { [INFO] [stderr] 98 | | &*ffi::WheelJoint_get_local_axis_a(self.ptr()) // Comes from a C++ & [INFO] [stderr] 99 | | } [INFO] [stderr] 100 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/dynamics/joints/mod.rs:176:40 [INFO] [stderr] | [INFO] [stderr] 176 | fn shift_origin(&mut self, origin: &Vec2) { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `Vec2` [INFO] [stderr] | [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: you don't need to add `&` to all patterns [INFO] [stderr] --> src/dynamics/joints/mod.rs:208:9 [INFO] [stderr] | [INFO] [stderr] 208 | / match self { [INFO] [stderr] 209 | | &Distance(ref x) => x.base_ptr(), [INFO] [stderr] 210 | | &Friction(ref x) => x.base_ptr(), [INFO] [stderr] 211 | | &Gear(ref x) => x.base_ptr(), [INFO] [stderr] ... | [INFO] [stderr] 220 | | _ => panic!("Truly unknown joint"), [INFO] [stderr] 221 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 208 | match *self { [INFO] [stderr] 209 | Distance(ref x) => x.base_ptr(), [INFO] [stderr] 210 | Friction(ref x) => x.base_ptr(), [INFO] [stderr] 211 | Gear(ref x) => x.base_ptr(), [INFO] [stderr] 212 | Motor(ref x) => x.base_ptr(), [INFO] [stderr] 213 | Mouse(ref x) => x.base_ptr(), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/dynamics/joints/mod.rs:226:9 [INFO] [stderr] | [INFO] [stderr] 226 | / match self { [INFO] [stderr] 227 | | &mut Distance(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 228 | | &mut Friction(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 229 | | &mut Gear(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] ... | [INFO] [stderr] 238 | | _ => panic!("Truly unknown joint"), [INFO] [stderr] 239 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 226 | match *self { [INFO] [stderr] 227 | Distance(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 228 | Friction(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 229 | Gear(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 230 | Motor(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] 231 | Mouse(ref mut x) => x.mut_base_ptr(), [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/contacts.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | / pub fn manifold<'a>(&'a self) -> &'a Manifold { [INFO] [stderr] 23 | | unsafe { &*ffi::Contact_get_manifold_const(self.ptr()) } [INFO] [stderr] 24 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/contacts.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | / pub fn manifold_mut<'a>(&'a mut self) -> &'a mut Manifold { [INFO] [stderr] 27 | | unsafe { &mut *ffi::Contact_get_manifold(self.mut_ptr()) } [INFO] [stderr] 28 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/dynamics/contacts.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | / pub fn world_manifold<'a>(&'a self) -> WorldManifold { [INFO] [stderr] 31 | | unsafe { [INFO] [stderr] 32 | | let mut m = mem::uninitialized(); [INFO] [stderr] 33 | | ffi::Contact_get_world_manifold(self.ptr(), &mut m); [INFO] [stderr] 34 | | m [INFO] [stderr] 35 | | } [INFO] [stderr] 36 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `wrapped2d`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "e959f931077feee8e6331123c042f010662beb9950c1cba71dbd6ec3fa5253e4"` [INFO] running `"docker" "rm" "-f" "e959f931077feee8e6331123c042f010662beb9950c1cba71dbd6ec3fa5253e4"` [INFO] [stdout] e959f931077feee8e6331123c042f010662beb9950c1cba71dbd6ec3fa5253e4