[INFO] fetching crate rlbot 0.5.0... [INFO] testing rlbot-0.5.0 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate rlbot 0.5.0 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate rlbot 0.5.0 [INFO] finished tweaking crates.io crate rlbot 0.5.0 [INFO] tweaked toml for crates.io crate rlbot 0.5.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate rlbot 0.5.0 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 67 packages to latest compatible versions [INFO] [stderr] Adding flatbuffers v0.5.0 (available: v25.2.10) [INFO] [stderr] Adding libloading v0.5.2 (available: v0.8.8) [INFO] [stderr] Adding nalgebra v0.18.1 (available: v0.33.2) [INFO] [stderr] Adding rand v0.6.5 (available: v0.9.1) [INFO] [stderr] Adding ratelimit v0.4.4 (available: v0.10.0) [INFO] [stderr] Adding smallvec v0.6.14 (available: v1.15.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded flatbuffers v0.5.0 [INFO] [stderr] Downloaded ratelimit v0.4.4 [INFO] [stderr] Downloaded winproc v0.6.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c8f86157c5a3d0c21cf37ff7fe607c014a1a86aa4fc2e8e010d0c29bee12458e [INFO] running `Command { std: "docker" "start" "-a" "c8f86157c5a3d0c21cf37ff7fe607c014a1a86aa4fc2e8e010d0c29bee12458e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c8f86157c5a3d0c21cf37ff7fe607c014a1a86aa4fc2e8e010d0c29bee12458e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c8f86157c5a3d0c21cf37ff7fe607c014a1a86aa4fc2e8e010d0c29bee12458e", kill_on_drop: false }` [INFO] [stdout] c8f86157c5a3d0c21cf37ff7fe607c014a1a86aa4fc2e8e010d0c29bee12458e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] aa358bb06f11d5c669f2f3407fb35708c43a8e624db0a5854b265488fbb22aa6 [INFO] running `Command { std: "docker" "start" "-a" "aa358bb06f11d5c669f2f3407fb35708c43a8e624db0a5854b265488fbb22aa6", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.8 [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling num-complex v0.2.4 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling num-rational v0.2.4 [INFO] [stderr] Compiling libloading v0.5.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling matrixmultiply v0.2.4 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling ratelimit v0.4.4 [INFO] [stderr] Compiling flatbuffers v0.5.0 [INFO] [stderr] Compiling approx v0.3.2 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling alga v0.9.3 [INFO] [stderr] Compiling nalgebra v0.18.1 [INFO] [stderr] Compiling rlbot v0.5.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stdout] --> src/lib.rs:128:10 [INFO] [stdout] | [INFO] [stdout] 128 | #![allow(intra_doc_link_resolution_failure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Vector3Partial { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Vector3Partial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:125:73 [INFO] [stdout] | [INFO] [stdout] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(dead_code)]` implied by `#[warn(unused)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct RotatorPartial { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 70 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RotatorPartial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct DesiredPhysics { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 124 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredPhysics` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 173 | pub struct DesiredBallState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 176 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredBallState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 204 | pub struct DesiredCarState { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 213 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredCarState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 265 | pub struct DesiredBoostState { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 268 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredBoostState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:302:5 [INFO] [stdout] | [INFO] [stdout] 297 | pub struct DesiredGameInfoState { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 302 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredGameInfoState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 343 | pub struct DesiredGameState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 352 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredGameState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pFieldInfo` should have a snake case name [INFO] [stdout] --> src/dll.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | type UpdateFieldInfo = extern "C" fn(pFieldInfo: *mut FieldInfo) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `p_field_info` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pLiveData` should have a snake case name [INFO] [stdout] --> src/dll.rs:13:43 [INFO] [stdout] | [INFO] [stdout] 13 | type UpdateLiveDataPacket = extern "C" fn(pLiveData: *mut LiveDataPacket) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `p_live_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `rigidBodyTick` should have a snake case name [INFO] [stdout] --> src/dll.rs:15:42 [INFO] [stdout] | [INFO] [stdout] 15 | type UpdateRigidBodyTick = extern "C" fn(rigidBodyTick: *mut RigidBodyTick) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rigid_body_tick` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `gameStateData` should have a snake case name [INFO] [stdout] --> src/dll.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | gameStateData: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `game_state_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `matchSettings` should have a snake case name [INFO] [stdout] --> src/dll.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | matchSettings: MatchSettings, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `match_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pID` should have a snake case name [INFO] [stdout] --> src/dll.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pID: *mut ::std::os::raw::c_uint, [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `startMatchSettings` should have a snake case name [INFO] [stdout] --> src/dll.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | startMatchSettings: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `start_match_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `quickChatMessage` should have a snake case name [INFO] [stdout] --> src/dll.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | quickChatMessage: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `protoSize` should have a snake case name [INFO] [stdout] --> src/dll.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | protoSize: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `quickChatPreset` should have a snake case name [INFO] [stdout] --> src/dll.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | quickChatPreset: QuickChatPreset, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_preset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerIndex` should have a snake case name [INFO] [stdout] --> src/dll.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | playerIndex: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bTeam` should have a snake case name [INFO] [stdout] --> src/dll.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | bTeam: bool, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `b_team` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pID` should have a snake case name [INFO] [stdout] --> src/dll.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | pID: *mut ::std::os::raw::c_uint, [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerInput` should have a snake case name [INFO] [stdout] --> src/dll.rs:42:19 [INFO] [stdout] | [INFO] [stdout] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerIndex` should have a snake case name [INFO] [stdout] --> src/dll.rs:42:45 [INFO] [stdout] | [INFO] [stdout] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerInput` should have a snake case name [INFO] [stdout] --> src/dll.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | playerInput: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `renderGroup` should have a snake case name [INFO] [stdout] --> src/dll.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | renderGroup: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `render_group` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `protoSize` should have a snake case name [INFO] [stdout] --> src/dll.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | protoSize: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pBallPrediction` should have a snake case name [INFO] [stdout] --> src/dll.rs:54:19 [INFO] [stdout] | [INFO] [stdout] 54 | extern "C" fn(pBallPrediction: *mut BallPredictionPacket) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `p_ball_prediction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `ffi::LiveDataPacket` does not permit being left uninitialized [INFO] [stdout] --> src/packeteer.rs:81:35 [INFO] [stdout] | [INFO] [stdout] 81 | let mut packet = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:151:5 [INFO] [stdout] | [INFO] [stdout] 151 | pub GameCars: [PlayerInfo; 10usize], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | pub Physics: Physics, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | pub Location: Vector3, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: floats must be initialized (in this struct field) [INFO] [stdout] --> src/ffi.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub X: f32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `ffi::RigidBodyTick` does not permit being left uninitialized [INFO] [stdout] --> src/physicist.rs:58:35 [INFO] [stdout] | [INFO] [stdout] 58 | let mut result = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:574:5 [INFO] [stdout] | [INFO] [stdout] 574 | pub Ball: BallRigidBodyState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:569:5 [INFO] [stdout] | [INFO] [stdout] 569 | pub State: RigidBodyState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: integers must be initialized (in this struct field) [INFO] [stdout] --> src/ffi.rs:554:5 [INFO] [stdout] | [INFO] [stdout] 554 | pub Frame: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2153:45 [INFO] [stdout] | [INFO] [stdout] 2153 | pub struct ControllerStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:125:55 [INFO] [stdout] | [INFO] [stdout] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(explicit_outlives_requirements)]` implied by `#[warn(rust_2018_idioms)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2282:41 [INFO] [stdout] | [INFO] [stdout] 2282 | pub struct PlayerInputBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2417:35 [INFO] [stdout] | [INFO] [stdout] 2417 | pub struct TouchBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2568:39 [INFO] [stdout] | [INFO] [stdout] 2568 | pub struct ScoreInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2704:37 [INFO] [stdout] | [INFO] [stdout] 2704 | pub struct PhysicsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2906:40 [INFO] [stdout] | [INFO] [stdout] 2906 | pub struct PlayerInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3060:46 [INFO] [stdout] | [INFO] [stdout] 3060 | pub struct DropShotBallInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3179:38 [INFO] [stdout] | [INFO] [stdout] 3179 | pub struct BallInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3294:43 [INFO] [stdout] | [INFO] [stdout] 3294 | pub struct BoostPadStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3380:42 [INFO] [stdout] | [INFO] [stdout] 3380 | pub struct DropshotTileBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3554:38 [INFO] [stdout] | [INFO] [stdout] 3554 | pub struct GameInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3683:38 [INFO] [stdout] | [INFO] [stdout] 3683 | pub struct TeamInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3859:44 [INFO] [stdout] | [INFO] [stdout] 3859 | pub struct GameTickPacketBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4042:44 [INFO] [stdout] | [INFO] [stdout] 4042 | pub struct RigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4165:50 [INFO] [stdout] | [INFO] [stdout] 4165 | pub struct PlayerRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4259:48 [INFO] [stdout] | [INFO] [stdout] 4259 | pub struct BallRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4367:43 [INFO] [stdout] | [INFO] [stdout] 4367 | pub struct RigidBodyTickBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4480:38 [INFO] [stdout] | [INFO] [stdout] 4480 | pub struct GoalInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4579:38 [INFO] [stdout] | [INFO] [stdout] 4579 | pub struct BoostPadBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4692:39 [INFO] [stdout] | [INFO] [stdout] 4692 | pub struct FieldInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4809:44 [INFO] [stdout] | [INFO] [stdout] 4809 | pub struct Vector3PartialBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4919:44 [INFO] [stdout] | [INFO] [stdout] 4919 | pub struct RotatorPartialBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5055:44 [INFO] [stdout] | [INFO] [stdout] 5055 | pub struct DesiredPhysicsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5167:46 [INFO] [stdout] | [INFO] [stdout] 5167 | pub struct DesiredBallStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5286:45 [INFO] [stdout] | [INFO] [stdout] 5286 | pub struct DesiredCarStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5383:47 [INFO] [stdout] | [INFO] [stdout] 5383 | pub struct DesiredBoostStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5475:50 [INFO] [stdout] | [INFO] [stdout] 5475 | pub struct DesiredGameInfoStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5618:46 [INFO] [stdout] | [INFO] [stdout] 5618 | pub struct DesiredGameStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5761:35 [INFO] [stdout] | [INFO] [stdout] 5761 | pub struct ColorBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5929:43 [INFO] [stdout] | [INFO] [stdout] 5929 | pub struct RenderMessageBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6068:41 [INFO] [stdout] | [INFO] [stdout] 6068 | pub struct RenderGroupBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6184:39 [INFO] [stdout] | [INFO] [stdout] 6184 | pub struct QuickChatBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6335:40 [INFO] [stdout] | [INFO] [stdout] 6335 | pub struct TinyPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6455:38 [INFO] [stdout] | [INFO] [stdout] 6455 | pub struct TinyBallBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6562:40 [INFO] [stdout] | [INFO] [stdout] 6562 | pub struct TinyPacketBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6671:45 [INFO] [stdout] | [INFO] [stdout] 6671 | pub struct PredictionSliceBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6770:44 [INFO] [stdout] | [INFO] [stdout] 6770 | pub struct BallPredictionBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6844:41 [INFO] [stdout] | [INFO] [stdout] 6844 | pub struct RLBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6906:41 [INFO] [stdout] | [INFO] [stdout] 6906 | pub struct HumanPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6980:46 [INFO] [stdout] | [INFO] [stdout] 6980 | pub struct PsyonixBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7049:50 [INFO] [stdout] | [INFO] [stdout] 7049 | pub struct PartyMemberBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7260:43 [INFO] [stdout] | [INFO] [stdout] 7260 | pub struct PlayerLoadoutBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7482:42 [INFO] [stdout] | [INFO] [stdout] 7482 | pub struct LoadoutPaintBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7633:45 [INFO] [stdout] | [INFO] [stdout] 7633 | pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7633 - pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] 7633 + pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7643:45 [INFO] [stdout] | [INFO] [stdout] 7643 | pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7643 - pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] 7643 + pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7653:51 [INFO] [stdout] | [INFO] [stdout] 7653 | pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7653 - pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] 7653 + pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7664:18 [INFO] [stdout] | [INFO] [stdout] 7664 | &'a self, [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] 7665 | ) -> Option> { [INFO] [stdout] | -- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7665 - ) -> Option> { [INFO] [stdout] 7665 + ) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7694:49 [INFO] [stdout] | [INFO] [stdout] 7694 | pub struct PlayerConfigurationBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7999:45 [INFO] [stdout] | [INFO] [stdout] 7999 | pub struct MutatorSettingsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:8266:43 [INFO] [stdout] | [INFO] [stdout] 8266 | pub struct MatchSettingsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/utils.rs:12:29 [INFO] [stdout] | [INFO] [stdout] 12 | xs: flatbuffers::Vector<'a, flatbuffers::ForwardsUOffset>, [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] 13 | ) -> impl Iterator>::Inner> { [INFO] [stdout] | -- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 13 - ) -> impl Iterator>::Inner> { [INFO] [stdout] 13 + ) -> impl Iterator>::Inner> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.25s [INFO] running `Command { std: "docker" "inspect" "aa358bb06f11d5c669f2f3407fb35708c43a8e624db0a5854b265488fbb22aa6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aa358bb06f11d5c669f2f3407fb35708c43a8e624db0a5854b265488fbb22aa6", kill_on_drop: false }` [INFO] [stdout] aa358bb06f11d5c669f2f3407fb35708c43a8e624db0a5854b265488fbb22aa6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] b4fb9cb60243b697bd752fba7d307149b5715a60dcd26e5926291eff8b4f8582 [INFO] running `Command { std: "docker" "start" "-a" "b4fb9cb60243b697bd752fba7d307149b5715a60dcd26e5926291eff8b4f8582", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling winapi v0.3.9 [INFO] [stderr] Compiling widestring v0.4.3 [INFO] [stdout] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stdout] --> src/lib.rs:128:10 [INFO] [stdout] | [INFO] [stdout] 128 | #![allow(intra_doc_link_resolution_failure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Vector3Partial { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Vector3Partial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:125:73 [INFO] [stdout] | [INFO] [stdout] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(dead_code)]` implied by `#[warn(unused)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct RotatorPartial { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 70 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RotatorPartial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct DesiredPhysics { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 124 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredPhysics` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 173 | pub struct DesiredBallState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 176 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredBallState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 204 | pub struct DesiredCarState { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 213 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredCarState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 265 | pub struct DesiredBoostState { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 268 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredBoostState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:302:5 [INFO] [stdout] | [INFO] [stdout] 297 | pub struct DesiredGameInfoState { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 302 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredGameInfoState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 343 | pub struct DesiredGameState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 352 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredGameState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pFieldInfo` should have a snake case name [INFO] [stdout] --> src/dll.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | type UpdateFieldInfo = extern "C" fn(pFieldInfo: *mut FieldInfo) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `p_field_info` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pLiveData` should have a snake case name [INFO] [stdout] --> src/dll.rs:13:43 [INFO] [stdout] | [INFO] [stdout] 13 | type UpdateLiveDataPacket = extern "C" fn(pLiveData: *mut LiveDataPacket) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `p_live_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `rigidBodyTick` should have a snake case name [INFO] [stdout] --> src/dll.rs:15:42 [INFO] [stdout] | [INFO] [stdout] 15 | type UpdateRigidBodyTick = extern "C" fn(rigidBodyTick: *mut RigidBodyTick) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rigid_body_tick` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `gameStateData` should have a snake case name [INFO] [stdout] --> src/dll.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | gameStateData: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `game_state_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `matchSettings` should have a snake case name [INFO] [stdout] --> src/dll.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | matchSettings: MatchSettings, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `match_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pID` should have a snake case name [INFO] [stdout] --> src/dll.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pID: *mut ::std::os::raw::c_uint, [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `startMatchSettings` should have a snake case name [INFO] [stdout] --> src/dll.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | startMatchSettings: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `start_match_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `quickChatMessage` should have a snake case name [INFO] [stdout] --> src/dll.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | quickChatMessage: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `protoSize` should have a snake case name [INFO] [stdout] --> src/dll.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | protoSize: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `quickChatPreset` should have a snake case name [INFO] [stdout] --> src/dll.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | quickChatPreset: QuickChatPreset, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_preset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerIndex` should have a snake case name [INFO] [stdout] --> src/dll.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | playerIndex: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bTeam` should have a snake case name [INFO] [stdout] --> src/dll.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | bTeam: bool, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `b_team` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pID` should have a snake case name [INFO] [stdout] --> src/dll.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | pID: *mut ::std::os::raw::c_uint, [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerInput` should have a snake case name [INFO] [stdout] --> src/dll.rs:42:19 [INFO] [stdout] | [INFO] [stdout] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerIndex` should have a snake case name [INFO] [stdout] --> src/dll.rs:42:45 [INFO] [stdout] | [INFO] [stdout] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerInput` should have a snake case name [INFO] [stdout] --> src/dll.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | playerInput: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `renderGroup` should have a snake case name [INFO] [stdout] --> src/dll.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | renderGroup: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `render_group` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `protoSize` should have a snake case name [INFO] [stdout] --> src/dll.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | protoSize: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pBallPrediction` should have a snake case name [INFO] [stdout] --> src/dll.rs:54:19 [INFO] [stdout] | [INFO] [stdout] 54 | extern "C" fn(pBallPrediction: *mut BallPredictionPacket) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `p_ball_prediction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `ffi::LiveDataPacket` does not permit being left uninitialized [INFO] [stdout] --> src/packeteer.rs:81:35 [INFO] [stdout] | [INFO] [stdout] 81 | let mut packet = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:151:5 [INFO] [stdout] | [INFO] [stdout] 151 | pub GameCars: [PlayerInfo; 10usize], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | pub Physics: Physics, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | pub Location: Vector3, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: floats must be initialized (in this struct field) [INFO] [stdout] --> src/ffi.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub X: f32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `ffi::RigidBodyTick` does not permit being left uninitialized [INFO] [stdout] --> src/physicist.rs:58:35 [INFO] [stdout] | [INFO] [stdout] 58 | let mut result = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:574:5 [INFO] [stdout] | [INFO] [stdout] 574 | pub Ball: BallRigidBodyState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:569:5 [INFO] [stdout] | [INFO] [stdout] 569 | pub State: RigidBodyState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: integers must be initialized (in this struct field) [INFO] [stdout] --> src/ffi.rs:554:5 [INFO] [stdout] | [INFO] [stdout] 554 | pub Frame: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2153:45 [INFO] [stdout] | [INFO] [stdout] 2153 | pub struct ControllerStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:125:55 [INFO] [stdout] | [INFO] [stdout] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(explicit_outlives_requirements)]` implied by `#[warn(rust_2018_idioms)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2282:41 [INFO] [stdout] | [INFO] [stdout] 2282 | pub struct PlayerInputBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2417:35 [INFO] [stdout] | [INFO] [stdout] 2417 | pub struct TouchBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2568:39 [INFO] [stdout] | [INFO] [stdout] 2568 | pub struct ScoreInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2704:37 [INFO] [stdout] | [INFO] [stdout] 2704 | pub struct PhysicsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2906:40 [INFO] [stdout] | [INFO] [stdout] 2906 | pub struct PlayerInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3060:46 [INFO] [stdout] | [INFO] [stdout] 3060 | pub struct DropShotBallInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3179:38 [INFO] [stdout] | [INFO] [stdout] 3179 | pub struct BallInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3294:43 [INFO] [stdout] | [INFO] [stdout] 3294 | pub struct BoostPadStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3380:42 [INFO] [stdout] | [INFO] [stdout] 3380 | pub struct DropshotTileBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3554:38 [INFO] [stdout] | [INFO] [stdout] 3554 | pub struct GameInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3683:38 [INFO] [stdout] | [INFO] [stdout] 3683 | pub struct TeamInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3859:44 [INFO] [stdout] | [INFO] [stdout] 3859 | pub struct GameTickPacketBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4042:44 [INFO] [stdout] | [INFO] [stdout] 4042 | pub struct RigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4165:50 [INFO] [stdout] | [INFO] [stdout] 4165 | pub struct PlayerRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4259:48 [INFO] [stdout] | [INFO] [stdout] 4259 | pub struct BallRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4367:43 [INFO] [stdout] | [INFO] [stdout] 4367 | pub struct RigidBodyTickBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4480:38 [INFO] [stdout] | [INFO] [stdout] 4480 | pub struct GoalInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4579:38 [INFO] [stdout] | [INFO] [stdout] 4579 | pub struct BoostPadBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4692:39 [INFO] [stdout] | [INFO] [stdout] 4692 | pub struct FieldInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4809:44 [INFO] [stdout] | [INFO] [stdout] 4809 | pub struct Vector3PartialBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4919:44 [INFO] [stdout] | [INFO] [stdout] 4919 | pub struct RotatorPartialBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5055:44 [INFO] [stdout] | [INFO] [stdout] 5055 | pub struct DesiredPhysicsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5167:46 [INFO] [stdout] | [INFO] [stdout] 5167 | pub struct DesiredBallStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5286:45 [INFO] [stdout] | [INFO] [stdout] 5286 | pub struct DesiredCarStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5383:47 [INFO] [stdout] | [INFO] [stdout] 5383 | pub struct DesiredBoostStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5475:50 [INFO] [stdout] | [INFO] [stdout] 5475 | pub struct DesiredGameInfoStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5618:46 [INFO] [stdout] | [INFO] [stdout] 5618 | pub struct DesiredGameStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5761:35 [INFO] [stdout] | [INFO] [stdout] 5761 | pub struct ColorBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5929:43 [INFO] [stdout] | [INFO] [stdout] 5929 | pub struct RenderMessageBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6068:41 [INFO] [stdout] | [INFO] [stdout] 6068 | pub struct RenderGroupBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6184:39 [INFO] [stdout] | [INFO] [stdout] 6184 | pub struct QuickChatBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6335:40 [INFO] [stdout] | [INFO] [stdout] 6335 | pub struct TinyPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6455:38 [INFO] [stdout] | [INFO] [stdout] 6455 | pub struct TinyBallBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6562:40 [INFO] [stdout] | [INFO] [stdout] 6562 | pub struct TinyPacketBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6671:45 [INFO] [stdout] | [INFO] [stdout] 6671 | pub struct PredictionSliceBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6770:44 [INFO] [stdout] | [INFO] [stdout] 6770 | pub struct BallPredictionBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6844:41 [INFO] [stdout] | [INFO] [stdout] 6844 | pub struct RLBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6906:41 [INFO] [stdout] | [INFO] [stdout] 6906 | pub struct HumanPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6980:46 [INFO] [stdout] | [INFO] [stdout] 6980 | pub struct PsyonixBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7049:50 [INFO] [stdout] | [INFO] [stdout] 7049 | pub struct PartyMemberBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7260:43 [INFO] [stdout] | [INFO] [stdout] 7260 | pub struct PlayerLoadoutBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7482:42 [INFO] [stdout] | [INFO] [stdout] 7482 | pub struct LoadoutPaintBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7633:45 [INFO] [stdout] | [INFO] [stdout] 7633 | pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7633 - pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] 7633 + pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7643:45 [INFO] [stdout] | [INFO] [stdout] 7643 | pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7643 - pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] 7643 + pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7653:51 [INFO] [stdout] | [INFO] [stdout] 7653 | pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7653 - pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] 7653 + pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7664:18 [INFO] [stdout] | [INFO] [stdout] 7664 | &'a self, [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] 7665 | ) -> Option> { [INFO] [stdout] | -- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7665 - ) -> Option> { [INFO] [stdout] 7665 + ) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7694:49 [INFO] [stdout] | [INFO] [stdout] 7694 | pub struct PlayerConfigurationBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7999:45 [INFO] [stdout] | [INFO] [stdout] 7999 | pub struct MutatorSettingsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:8266:43 [INFO] [stdout] | [INFO] [stdout] 8266 | pub struct MatchSettingsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/utils.rs:12:29 [INFO] [stdout] | [INFO] [stdout] 12 | xs: flatbuffers::Vector<'a, flatbuffers::ForwardsUOffset>, [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] 13 | ) -> impl Iterator>::Inner> { [INFO] [stdout] | -- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 13 - ) -> impl Iterator>::Inner> { [INFO] [stdout] 13 + ) -> impl Iterator>::Inner> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling backtrace v0.3.75 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling winproc v0.6.4 [INFO] [stderr] Compiling rlbot v0.5.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stdout] --> src/lib.rs:128:10 [INFO] [stdout] | [INFO] [stdout] 128 | #![allow(intra_doc_link_resolution_failure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/interface.rs:205:55 [INFO] [stdout] | [INFO] [stdout] 205 | let interface: RLBotInterface = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/rlbot.rs:125:42 [INFO] [stdout] | [INFO] [stdout] 125 | let rlbot: RLBot = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Vector3Partial { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Vector3Partial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:125:73 [INFO] [stdout] | [INFO] [stdout] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(dead_code)]` implied by `#[warn(unused)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:70:5 [INFO] [stdout] | [INFO] [stdout] 63 | pub struct RotatorPartial { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 70 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RotatorPartial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct DesiredPhysics { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 124 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredPhysics` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:176:5 [INFO] [stdout] | [INFO] [stdout] 173 | pub struct DesiredBallState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 176 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredBallState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:213:5 [INFO] [stdout] | [INFO] [stdout] 204 | pub struct DesiredCarState { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 213 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredCarState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 265 | pub struct DesiredBoostState { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 268 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredBoostState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:302:5 [INFO] [stdout] | [INFO] [stdout] 297 | pub struct DesiredGameInfoState { [INFO] [stdout] | -------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 302 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredGameInfoState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `non_exhaustive` is never read [INFO] [stdout] --> src/state.rs:352:5 [INFO] [stdout] | [INFO] [stdout] 343 | pub struct DesiredGameState { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 352 | non_exhaustive: (), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DesiredGameState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pFieldInfo` should have a snake case name [INFO] [stdout] --> src/dll.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | type UpdateFieldInfo = extern "C" fn(pFieldInfo: *mut FieldInfo) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `p_field_info` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pLiveData` should have a snake case name [INFO] [stdout] --> src/dll.rs:13:43 [INFO] [stdout] | [INFO] [stdout] 13 | type UpdateLiveDataPacket = extern "C" fn(pLiveData: *mut LiveDataPacket) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `p_live_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `rigidBodyTick` should have a snake case name [INFO] [stdout] --> src/dll.rs:15:42 [INFO] [stdout] | [INFO] [stdout] 15 | type UpdateRigidBodyTick = extern "C" fn(rigidBodyTick: *mut RigidBodyTick) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rigid_body_tick` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `gameStateData` should have a snake case name [INFO] [stdout] --> src/dll.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | gameStateData: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `game_state_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `matchSettings` should have a snake case name [INFO] [stdout] --> src/dll.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | matchSettings: MatchSettings, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `match_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pID` should have a snake case name [INFO] [stdout] --> src/dll.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pID: *mut ::std::os::raw::c_uint, [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `startMatchSettings` should have a snake case name [INFO] [stdout] --> src/dll.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | startMatchSettings: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `start_match_settings` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `quickChatMessage` should have a snake case name [INFO] [stdout] --> src/dll.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | quickChatMessage: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_message` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `protoSize` should have a snake case name [INFO] [stdout] --> src/dll.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | protoSize: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `quickChatPreset` should have a snake case name [INFO] [stdout] --> src/dll.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | quickChatPreset: QuickChatPreset, [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_preset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerIndex` should have a snake case name [INFO] [stdout] --> src/dll.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | playerIndex: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `bTeam` should have a snake case name [INFO] [stdout] --> src/dll.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | bTeam: bool, [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `b_team` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pID` should have a snake case name [INFO] [stdout] --> src/dll.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | pID: *mut ::std::os::raw::c_uint, [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerInput` should have a snake case name [INFO] [stdout] --> src/dll.rs:42:19 [INFO] [stdout] | [INFO] [stdout] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerIndex` should have a snake case name [INFO] [stdout] --> src/dll.rs:42:45 [INFO] [stdout] | [INFO] [stdout] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `playerInput` should have a snake case name [INFO] [stdout] --> src/dll.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | playerInput: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `renderGroup` should have a snake case name [INFO] [stdout] --> src/dll.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | renderGroup: *mut ::std::os::raw::c_void, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `render_group` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `protoSize` should have a snake case name [INFO] [stdout] --> src/dll.rs:49:5 [INFO] [stdout] | [INFO] [stdout] 49 | protoSize: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `pBallPrediction` should have a snake case name [INFO] [stdout] --> src/dll.rs:54:19 [INFO] [stdout] | [INFO] [stdout] 54 | extern "C" fn(pBallPrediction: *mut BallPredictionPacket) -> RLBotCoreStatus; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `p_ball_prediction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `RLBotInterface` does not permit being left uninitialized [INFO] [stdout] --> src/interface.rs:205:50 [INFO] [stdout] | [INFO] [stdout] 205 | let interface: RLBotInterface = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/interface.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | dll: RLBotCoreInterface, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: function pointers must be non-null (in this struct field) [INFO] [stdout] --> src/dll.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | pub update_field_info_flatbuffer: UpdateFieldInfoFlatbuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `ffi::LiveDataPacket` does not permit being left uninitialized [INFO] [stdout] --> src/packeteer.rs:81:35 [INFO] [stdout] | [INFO] [stdout] 81 | let mut packet = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:151:5 [INFO] [stdout] | [INFO] [stdout] 151 | pub GameCars: [PlayerInfo; 10usize], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | pub Physics: Physics, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | pub Location: Vector3, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: floats must be initialized (in this struct field) [INFO] [stdout] --> src/ffi.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub X: f32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `ffi::RigidBodyTick` does not permit being left uninitialized [INFO] [stdout] --> src/physicist.rs:58:35 [INFO] [stdout] | [INFO] [stdout] 58 | let mut result = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:574:5 [INFO] [stdout] | [INFO] [stdout] 574 | pub Ball: BallRigidBodyState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/ffi.rs:569:5 [INFO] [stdout] | [INFO] [stdout] 569 | pub State: RigidBodyState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: integers must be initialized (in this struct field) [INFO] [stdout] --> src/ffi.rs:554:5 [INFO] [stdout] | [INFO] [stdout] 554 | pub Frame: ::std::os::raw::c_int, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `RLBot` does not permit being left uninitialized [INFO] [stdout] --> src/rlbot.rs:125:37 [INFO] [stdout] | [INFO] [stdout] 125 | let rlbot: RLBot = unsafe { mem::uninitialized() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/rlbot.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | interface: RLBotInterface, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: in this struct field [INFO] [stdout] --> src/interface.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | dll: RLBotCoreInterface, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] note: function pointers must be non-null (in this struct field) [INFO] [stdout] --> src/dll.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | pub update_field_info_flatbuffer: UpdateFieldInfoFlatbuffer, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2153:45 [INFO] [stdout] | [INFO] [stdout] 2153 | pub struct ControllerStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:125:55 [INFO] [stdout] | [INFO] [stdout] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(explicit_outlives_requirements)]` implied by `#[warn(rust_2018_idioms)]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2282:41 [INFO] [stdout] | [INFO] [stdout] 2282 | pub struct PlayerInputBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2417:35 [INFO] [stdout] | [INFO] [stdout] 2417 | pub struct TouchBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2568:39 [INFO] [stdout] | [INFO] [stdout] 2568 | pub struct ScoreInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2704:37 [INFO] [stdout] | [INFO] [stdout] 2704 | pub struct PhysicsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:2906:40 [INFO] [stdout] | [INFO] [stdout] 2906 | pub struct PlayerInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3060:46 [INFO] [stdout] | [INFO] [stdout] 3060 | pub struct DropShotBallInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3179:38 [INFO] [stdout] | [INFO] [stdout] 3179 | pub struct BallInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3294:43 [INFO] [stdout] | [INFO] [stdout] 3294 | pub struct BoostPadStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3380:42 [INFO] [stdout] | [INFO] [stdout] 3380 | pub struct DropshotTileBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3554:38 [INFO] [stdout] | [INFO] [stdout] 3554 | pub struct GameInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3683:38 [INFO] [stdout] | [INFO] [stdout] 3683 | pub struct TeamInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:3859:44 [INFO] [stdout] | [INFO] [stdout] 3859 | pub struct GameTickPacketBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4042:44 [INFO] [stdout] | [INFO] [stdout] 4042 | pub struct RigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4165:50 [INFO] [stdout] | [INFO] [stdout] 4165 | pub struct PlayerRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4259:48 [INFO] [stdout] | [INFO] [stdout] 4259 | pub struct BallRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4367:43 [INFO] [stdout] | [INFO] [stdout] 4367 | pub struct RigidBodyTickBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4480:38 [INFO] [stdout] | [INFO] [stdout] 4480 | pub struct GoalInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4579:38 [INFO] [stdout] | [INFO] [stdout] 4579 | pub struct BoostPadBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4692:39 [INFO] [stdout] | [INFO] [stdout] 4692 | pub struct FieldInfoBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4809:44 [INFO] [stdout] | [INFO] [stdout] 4809 | pub struct Vector3PartialBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:4919:44 [INFO] [stdout] | [INFO] [stdout] 4919 | pub struct RotatorPartialBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5055:44 [INFO] [stdout] | [INFO] [stdout] 5055 | pub struct DesiredPhysicsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5167:46 [INFO] [stdout] | [INFO] [stdout] 5167 | pub struct DesiredBallStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5286:45 [INFO] [stdout] | [INFO] [stdout] 5286 | pub struct DesiredCarStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5383:47 [INFO] [stdout] | [INFO] [stdout] 5383 | pub struct DesiredBoostStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5475:50 [INFO] [stdout] | [INFO] [stdout] 5475 | pub struct DesiredGameInfoStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5618:46 [INFO] [stdout] | [INFO] [stdout] 5618 | pub struct DesiredGameStateBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5761:35 [INFO] [stdout] | [INFO] [stdout] 5761 | pub struct ColorBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:5929:43 [INFO] [stdout] | [INFO] [stdout] 5929 | pub struct RenderMessageBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6068:41 [INFO] [stdout] | [INFO] [stdout] 6068 | pub struct RenderGroupBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6184:39 [INFO] [stdout] | [INFO] [stdout] 6184 | pub struct QuickChatBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6335:40 [INFO] [stdout] | [INFO] [stdout] 6335 | pub struct TinyPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6455:38 [INFO] [stdout] | [INFO] [stdout] 6455 | pub struct TinyBallBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6562:40 [INFO] [stdout] | [INFO] [stdout] 6562 | pub struct TinyPacketBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6671:45 [INFO] [stdout] | [INFO] [stdout] 6671 | pub struct PredictionSliceBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6770:44 [INFO] [stdout] | [INFO] [stdout] 6770 | pub struct BallPredictionBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6844:41 [INFO] [stdout] | [INFO] [stdout] 6844 | pub struct RLBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6906:41 [INFO] [stdout] | [INFO] [stdout] 6906 | pub struct HumanPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:6980:46 [INFO] [stdout] | [INFO] [stdout] 6980 | pub struct PsyonixBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7049:50 [INFO] [stdout] | [INFO] [stdout] 7049 | pub struct PartyMemberBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7260:43 [INFO] [stdout] | [INFO] [stdout] 7260 | pub struct PlayerLoadoutBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7482:42 [INFO] [stdout] | [INFO] [stdout] 7482 | pub struct LoadoutPaintBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7633:45 [INFO] [stdout] | [INFO] [stdout] 7633 | pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7633 - pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] 7633 + pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7643:45 [INFO] [stdout] | [INFO] [stdout] 7643 | pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7643 - pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] 7643 + pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7653:51 [INFO] [stdout] | [INFO] [stdout] 7653 | pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7653 - pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] 7653 + pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/rlbot_generated.rs:7664:18 [INFO] [stdout] | [INFO] [stdout] 7664 | &'a self, [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] 7665 | ) -> Option> { [INFO] [stdout] | -- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 7665 - ) -> Option> { [INFO] [stdout] 7665 + ) -> Option> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7694:49 [INFO] [stdout] | [INFO] [stdout] 7694 | pub struct PlayerConfigurationBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:7999:45 [INFO] [stdout] | [INFO] [stdout] 7999 | pub struct MutatorSettingsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: outlives requirements can be inferred [INFO] [stdout] --> src/rlbot_generated.rs:8266:43 [INFO] [stdout] | [INFO] [stdout] 8266 | pub struct MatchSettingsBuilder<'a: 'b, 'b> { [INFO] [stdout] | ^^^^ help: remove this bound [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/utils.rs:12:29 [INFO] [stdout] | [INFO] [stdout] 12 | xs: flatbuffers::Vector<'a, flatbuffers::ForwardsUOffset>, [INFO] [stdout] | ^^ this lifetime flows to the output [INFO] [stdout] 13 | ) -> impl Iterator>::Inner> { [INFO] [stdout] | -- the lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 13 - ) -> impl Iterator>::Inner> { [INFO] [stdout] 13 + ) -> impl Iterator>::Inner> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.77s [INFO] running `Command { std: "docker" "inspect" "b4fb9cb60243b697bd752fba7d307149b5715a60dcd26e5926291eff8b4f8582", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b4fb9cb60243b697bd752fba7d307149b5715a60dcd26e5926291eff8b4f8582", kill_on_drop: false }` [INFO] [stdout] b4fb9cb60243b697bd752fba7d307149b5715a60dcd26e5926291eff8b4f8582 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 454f4cae790f291ee3d2c42e8f0b8fed05d8be1297b66423f559078dc9b7fbdf [INFO] running `Command { std: "docker" "start" "-a" "454f4cae790f291ee3d2c42e8f0b8fed05d8be1297b66423f559078dc9b7fbdf", kill_on_drop: false }` [INFO] [stderr] warning: lint `intra_doc_link_resolution_failure` has been removed: use `rustdoc::broken_intra_doc_links` instead [INFO] [stderr] --> src/lib.rs:128:10 [INFO] [stderr] | [INFO] [stderr] 128 | #![allow(intra_doc_link_resolution_failure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct Vector3Partial { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 18 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Vector3Partial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:125:73 [INFO] [stderr] | [INFO] [stderr] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] = note: `#[warn(dead_code)]` implied by `#[warn(unused)]` [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:70:5 [INFO] [stderr] | [INFO] [stderr] 63 | pub struct RotatorPartial { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 70 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `RotatorPartial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 115 | pub struct DesiredPhysics { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 124 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DesiredPhysics` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:176:5 [INFO] [stderr] | [INFO] [stderr] 173 | pub struct DesiredBallState { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 176 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DesiredBallState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:213:5 [INFO] [stderr] | [INFO] [stderr] 204 | pub struct DesiredCarState { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 213 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DesiredCarState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 265 | pub struct DesiredBoostState { [INFO] [stderr] | ----------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 268 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DesiredBoostState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:302:5 [INFO] [stderr] | [INFO] [stderr] 297 | pub struct DesiredGameInfoState { [INFO] [stderr] | -------------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 302 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DesiredGameInfoState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `non_exhaustive` is never read [INFO] [stderr] --> src/state.rs:352:5 [INFO] [stderr] | [INFO] [stderr] 343 | pub struct DesiredGameState { [INFO] [stderr] | ---------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 352 | non_exhaustive: (), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DesiredGameState` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variable `pFieldInfo` should have a snake case name [INFO] [stderr] --> src/dll.rs:11:38 [INFO] [stderr] | [INFO] [stderr] 11 | type UpdateFieldInfo = extern "C" fn(pFieldInfo: *mut FieldInfo) -> RLBotCoreStatus; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `p_field_info` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `pLiveData` should have a snake case name [INFO] [stderr] --> src/dll.rs:13:43 [INFO] [stderr] | [INFO] [stderr] 13 | type UpdateLiveDataPacket = extern "C" fn(pLiveData: *mut LiveDataPacket) -> RLBotCoreStatus; [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `p_live_data` [INFO] [stderr] [INFO] [stderr] warning: variable `rigidBodyTick` should have a snake case name [INFO] [stderr] --> src/dll.rs:15:42 [INFO] [stderr] | [INFO] [stderr] 15 | type UpdateRigidBodyTick = extern "C" fn(rigidBodyTick: *mut RigidBodyTick) -> RLBotCoreStatus; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `rigid_body_tick` [INFO] [stderr] [INFO] [stderr] warning: variable `gameStateData` should have a snake case name [INFO] [stderr] --> src/dll.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | gameStateData: *mut ::std::os::raw::c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `game_state_data` [INFO] [stderr] [INFO] [stderr] warning: variable `matchSettings` should have a snake case name [INFO] [stderr] --> src/dll.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | matchSettings: MatchSettings, [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `match_settings` [INFO] [stderr] [INFO] [stderr] warning: variable `pID` should have a snake case name [INFO] [stderr] --> src/dll.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | pID: *mut ::std::os::raw::c_uint, [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stderr] [INFO] [stderr] warning: variable `startMatchSettings` should have a snake case name [INFO] [stderr] --> src/dll.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | startMatchSettings: *mut ::std::os::raw::c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `start_match_settings` [INFO] [stderr] [INFO] [stderr] warning: variable `quickChatMessage` should have a snake case name [INFO] [stderr] --> src/dll.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | quickChatMessage: *mut ::std::os::raw::c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_message` [INFO] [stderr] [INFO] [stderr] warning: variable `protoSize` should have a snake case name [INFO] [stderr] --> src/dll.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | protoSize: ::std::os::raw::c_int, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stderr] [INFO] [stderr] warning: variable `quickChatPreset` should have a snake case name [INFO] [stderr] --> src/dll.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | quickChatPreset: QuickChatPreset, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `quick_chat_preset` [INFO] [stderr] [INFO] [stderr] warning: variable `playerIndex` should have a snake case name [INFO] [stderr] --> src/dll.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | playerIndex: ::std::os::raw::c_int, [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stderr] [INFO] [stderr] warning: variable `bTeam` should have a snake case name [INFO] [stderr] --> src/dll.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | bTeam: bool, [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `b_team` [INFO] [stderr] [INFO] [stderr] warning: variable `pID` should have a snake case name [INFO] [stderr] --> src/dll.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | pID: *mut ::std::os::raw::c_uint, [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `p_id` [INFO] [stderr] [INFO] [stderr] warning: variable `playerInput` should have a snake case name [INFO] [stderr] --> src/dll.rs:42:19 [INFO] [stderr] | [INFO] [stderr] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stderr] [INFO] [stderr] warning: variable `playerIndex` should have a snake case name [INFO] [stderr] --> src/dll.rs:42:45 [INFO] [stderr] | [INFO] [stderr] 42 | extern "C" fn(playerInput: PlayerInput, playerIndex: ::std::os::raw::c_int) -> RLBotCoreStatus; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_index` [INFO] [stderr] [INFO] [stderr] warning: variable `playerInput` should have a snake case name [INFO] [stderr] --> src/dll.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | playerInput: *mut ::std::os::raw::c_void, [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `player_input` [INFO] [stderr] [INFO] [stderr] warning: variable `renderGroup` should have a snake case name [INFO] [stderr] --> src/dll.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | renderGroup: *mut ::std::os::raw::c_void, [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `render_group` [INFO] [stderr] [INFO] [stderr] warning: variable `protoSize` should have a snake case name [INFO] [stderr] --> src/dll.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | protoSize: ::std::os::raw::c_int, [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `proto_size` [INFO] [stderr] [INFO] [stderr] warning: variable `pBallPrediction` should have a snake case name [INFO] [stderr] --> src/dll.rs:54:19 [INFO] [stderr] | [INFO] [stderr] 54 | extern "C" fn(pBallPrediction: *mut BallPredictionPacket) -> RLBotCoreStatus; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `p_ball_prediction` [INFO] [stderr] [INFO] [stderr] warning: the type `ffi::LiveDataPacket` does not permit being left uninitialized [INFO] [stderr] --> src/packeteer.rs:81:35 [INFO] [stderr] | [INFO] [stderr] 81 | let mut packet = unsafe { mem::uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:151:5 [INFO] [stderr] | [INFO] [stderr] 151 | pub GameCars: [PlayerInfo; 10usize], [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | pub Physics: Physics, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | pub Location: Vector3, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: floats must be initialized (in this struct field) [INFO] [stderr] --> src/ffi.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | pub X: f32, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] [INFO] [stderr] warning: the type `ffi::RigidBodyTick` does not permit being left uninitialized [INFO] [stderr] --> src/physicist.rs:58:35 [INFO] [stderr] | [INFO] [stderr] 58 | let mut result = unsafe { mem::uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:574:5 [INFO] [stderr] | [INFO] [stderr] 574 | pub Ball: BallRigidBodyState, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:569:5 [INFO] [stderr] | [INFO] [stderr] 569 | pub State: RigidBodyState, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: integers must be initialized (in this struct field) [INFO] [stderr] --> src/ffi.rs:554:5 [INFO] [stderr] | [INFO] [stderr] 554 | pub Frame: ::std::os::raw::c_int, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:2153:45 [INFO] [stderr] | [INFO] [stderr] 2153 | pub struct ControllerStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> src/lib.rs:125:55 [INFO] [stderr] | [INFO] [stderr] 125 | #![warn(future_incompatible, rust_2018_compatibility, rust_2018_idioms, unused)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(explicit_outlives_requirements)]` implied by `#[warn(rust_2018_idioms)]` [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:2282:41 [INFO] [stderr] | [INFO] [stderr] 2282 | pub struct PlayerInputBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:2417:35 [INFO] [stderr] | [INFO] [stderr] 2417 | pub struct TouchBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:2568:39 [INFO] [stderr] | [INFO] [stderr] 2568 | pub struct ScoreInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:2704:37 [INFO] [stderr] | [INFO] [stderr] 2704 | pub struct PhysicsBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:2906:40 [INFO] [stderr] | [INFO] [stderr] 2906 | pub struct PlayerInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:3060:46 [INFO] [stderr] | [INFO] [stderr] 3060 | pub struct DropShotBallInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:3179:38 [INFO] [stderr] | [INFO] [stderr] 3179 | pub struct BallInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:3294:43 [INFO] [stderr] | [INFO] [stderr] 3294 | pub struct BoostPadStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:3380:42 [INFO] [stderr] | [INFO] [stderr] 3380 | pub struct DropshotTileBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:3554:38 [INFO] [stderr] | [INFO] [stderr] 3554 | pub struct GameInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:3683:38 [INFO] [stderr] | [INFO] [stderr] 3683 | pub struct TeamInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:3859:44 [INFO] [stderr] | [INFO] [stderr] 3859 | pub struct GameTickPacketBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4042:44 [INFO] [stderr] | [INFO] [stderr] 4042 | pub struct RigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4165:50 [INFO] [stderr] | [INFO] [stderr] 4165 | pub struct PlayerRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4259:48 [INFO] [stderr] | [INFO] [stderr] 4259 | pub struct BallRigidBodyStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4367:43 [INFO] [stderr] | [INFO] [stderr] 4367 | pub struct RigidBodyTickBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4480:38 [INFO] [stderr] | [INFO] [stderr] 4480 | pub struct GoalInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4579:38 [INFO] [stderr] | [INFO] [stderr] 4579 | pub struct BoostPadBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4692:39 [INFO] [stderr] | [INFO] [stderr] 4692 | pub struct FieldInfoBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4809:44 [INFO] [stderr] | [INFO] [stderr] 4809 | pub struct Vector3PartialBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:4919:44 [INFO] [stderr] | [INFO] [stderr] 4919 | pub struct RotatorPartialBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5055:44 [INFO] [stderr] | [INFO] [stderr] 5055 | pub struct DesiredPhysicsBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5167:46 [INFO] [stderr] | [INFO] [stderr] 5167 | pub struct DesiredBallStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5286:45 [INFO] [stderr] | [INFO] [stderr] 5286 | pub struct DesiredCarStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5383:47 [INFO] [stderr] | [INFO] [stderr] 5383 | pub struct DesiredBoostStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5475:50 [INFO] [stderr] | [INFO] [stderr] 5475 | pub struct DesiredGameInfoStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5618:46 [INFO] [stderr] | [INFO] [stderr] 5618 | pub struct DesiredGameStateBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5761:35 [INFO] [stderr] | [INFO] [stderr] 5761 | pub struct ColorBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:5929:43 [INFO] [stderr] | [INFO] [stderr] 5929 | pub struct RenderMessageBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6068:41 [INFO] [stderr] | [INFO] [stderr] 6068 | pub struct RenderGroupBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6184:39 [INFO] [stderr] | [INFO] [stderr] 6184 | pub struct QuickChatBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6335:40 [INFO] [stderr] | [INFO] [stderr] 6335 | pub struct TinyPlayerBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6455:38 [INFO] [stderr] | [INFO] [stderr] 6455 | pub struct TinyBallBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6562:40 [INFO] [stderr] | [INFO] [stderr] 6562 | pub struct TinyPacketBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6671:45 [INFO] [stderr] | [INFO] [stderr] 6671 | pub struct PredictionSliceBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6770:44 [INFO] [stderr] | [INFO] [stderr] 6770 | pub struct BallPredictionBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6844:41 [INFO] [stderr] | [INFO] [stderr] 6844 | pub struct RLBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6906:41 [INFO] [stderr] | [INFO] [stderr] 6906 | pub struct HumanPlayerBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:6980:46 [INFO] [stderr] | [INFO] [stderr] 6980 | pub struct PsyonixBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:7049:50 [INFO] [stderr] | [INFO] [stderr] 7049 | pub struct PartyMemberBotPlayerBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:7260:43 [INFO] [stderr] | [INFO] [stderr] 7260 | pub struct PlayerLoadoutBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:7482:42 [INFO] [stderr] | [INFO] [stderr] 7482 | pub struct LoadoutPaintBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/rlbot_generated.rs:7633:45 [INFO] [stderr] | [INFO] [stderr] 7633 | pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stderr] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 7633 - pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stderr] 7633 + pub fn variety_as_rlbot_player(&'a self) -> Option> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/rlbot_generated.rs:7643:45 [INFO] [stderr] | [INFO] [stderr] 7643 | pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stderr] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 7643 - pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stderr] 7643 + pub fn variety_as_human_player(&'a self) -> Option> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/rlbot_generated.rs:7653:51 [INFO] [stderr] | [INFO] [stderr] 7653 | pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stderr] | ^^ -- the lifetime gets resolved as `'a` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 7653 - pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stderr] 7653 + pub fn variety_as_psyonix_bot_player(&'a self) -> Option> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/rlbot_generated.rs:7664:18 [INFO] [stderr] | [INFO] [stderr] 7664 | &'a self, [INFO] [stderr] | ^^ this lifetime flows to the output [INFO] [stderr] 7665 | ) -> Option> { [INFO] [stderr] | -- the lifetime gets resolved as `'a` [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 7665 - ) -> Option> { [INFO] [stderr] 7665 + ) -> Option> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:7694:49 [INFO] [stderr] | [INFO] [stderr] 7694 | pub struct PlayerConfigurationBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:7999:45 [INFO] [stderr] | [INFO] [stderr] 7999 | pub struct MutatorSettingsBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: outlives requirements can be inferred [INFO] [stderr] --> src/rlbot_generated.rs:8266:43 [INFO] [stderr] | [INFO] [stderr] 8266 | pub struct MatchSettingsBuilder<'a: 'b, 'b> { [INFO] [stderr] | ^^^^ help: remove this bound [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/utils.rs:12:29 [INFO] [stderr] | [INFO] [stderr] 12 | xs: flatbuffers::Vector<'a, flatbuffers::ForwardsUOffset>, [INFO] [stderr] | ^^ this lifetime flows to the output [INFO] [stderr] 13 | ) -> impl Iterator>::Inner> { [INFO] [stderr] | -- the lifetime gets resolved as `'a` [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 13 - ) -> impl Iterator>::Inner> { [INFO] [stderr] 13 + ) -> impl Iterator>::Inner> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `rlbot` (lib) generated 81 warnings (run `cargo fix --lib -p rlbot` to apply 51 suggestions) [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/interface.rs:205:55 [INFO] [stderr] | [INFO] [stderr] 205 | let interface: RLBotInterface = unsafe { mem::uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stderr] --> src/rlbot.rs:125:42 [INFO] [stderr] | [INFO] [stderr] 125 | let rlbot: RLBot = unsafe { mem::uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `RLBotInterface` does not permit being left uninitialized [INFO] [stderr] --> src/interface.rs:205:50 [INFO] [stderr] | [INFO] [stderr] 205 | let interface: RLBotInterface = unsafe { mem::uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/interface.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | dll: RLBotCoreInterface, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: function pointers must be non-null (in this struct field) [INFO] [stderr] --> src/dll.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | pub update_field_info_flatbuffer: UpdateFieldInfoFlatbuffer, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(invalid_value)]` on by default [INFO] [stderr] [INFO] [stderr] warning: the type `ffi::LiveDataPacket` does not permit being left uninitialized [INFO] [stderr] --> src/packeteer.rs:81:35 [INFO] [stderr] | [INFO] [stderr] 81 | let mut packet = unsafe { mem::uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:151:5 [INFO] [stderr] | [INFO] [stderr] 151 | pub GameCars: [PlayerInfo; 10usize], [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 66 | pub Physics: Physics, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/ffi.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | pub Location: Vector3, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: floats must be initialized (in this struct field) [INFO] [stderr] --> src/ffi.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | pub X: f32, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the type `RLBot` does not permit being left uninitialized [INFO] [stderr] --> src/rlbot.rs:125:37 [INFO] [stderr] | [INFO] [stderr] 125 | let rlbot: RLBot = unsafe { mem::uninitialized() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | this code causes undefined behavior when executed [INFO] [stderr] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stderr] | [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/rlbot.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | interface: RLBotInterface, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: in this struct field [INFO] [stderr] --> src/interface.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | dll: RLBotCoreInterface, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] note: function pointers must be non-null (in this struct field) [INFO] [stderr] --> src/dll.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | pub update_field_info_flatbuffer: UpdateFieldInfoFlatbuffer, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `rlbot` (lib test) generated 85 warnings (80 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/rlbot-a0cb7a551d950529) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test framework::tests::parse_empty_command_line ... ok [INFO] [stdout] test framework::tests::parse_error ... ok [INFO] [stdout] test interface::tests::game_data_is_send ... ignored, compile-only test [INFO] [stdout] test rlbot::tests::game_data_is_send ... ignored, compile-only test [INFO] [stdout] test framework::tests::parse_non_matching_command_line ... ok [INFO] [stdout] test framework::tests::parse_framework_args ... ok [INFO] [stdout] test state::tests::test_nalgebra_arguments ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/init_twice.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/init_twice-9f5895c0ea220a14) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/packeteer_error_when_no_packets.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/packeteer_error_when_no_packets-cb947c717bf54636) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/packeteer_happy.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/packeteer_happy-0b2ceb0b36b4eabd) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/physicist_flat_happy.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/physicist_flat_happy-491701919bb3a8ea) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/player_input.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/player_input-a4df154c5d242b5b) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/set_game_state.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/set_game_state-9ce8efafabbb3618) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "454f4cae790f291ee3d2c42e8f0b8fed05d8be1297b66423f559078dc9b7fbdf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "454f4cae790f291ee3d2c42e8f0b8fed05d8be1297b66423f559078dc9b7fbdf", kill_on_drop: false }` [INFO] [stdout] 454f4cae790f291ee3d2c42e8f0b8fed05d8be1297b66423f559078dc9b7fbdf