[INFO] fetching crate my-ecs 0.0.1... [INFO] checking my-ecs-0.0.1 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate my-ecs 0.0.1 into /workspace/builds/worker-4-tc2/source [INFO] validating manifest of crates.io crate my-ecs 0.0.1 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate my-ecs 0.0.1 [INFO] removed 1 missing examples [INFO] finished tweaking crates.io crate my-ecs 0.0.1 [INFO] tweaked toml for crates.io crate my-ecs 0.0.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate crates.io crate my-ecs 0.0.1 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5c992bae46195986ca9426647caf371a397b48e60cf5bdc9e1c0f6ee097366fe [INFO] running `Command { std: "docker" "start" "-a" "5c992bae46195986ca9426647caf371a397b48e60cf5bdc9e1c0f6ee097366fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5c992bae46195986ca9426647caf371a397b48e60cf5bdc9e1c0f6ee097366fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c992bae46195986ca9426647caf371a397b48e60cf5bdc9e1c0f6ee097366fe", kill_on_drop: false }` [INFO] [stdout] 5c992bae46195986ca9426647caf371a397b48e60cf5bdc9e1c0f6ee097366fe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6031ba513f045467411e2fad312198996f186b4d80746bee9eea03cd46b1a9e5 [INFO] running `Command { std: "docker" "start" "-a" "6031ba513f045467411e2fad312198996f186b4d80746bee9eea03cd46b1a9e5", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.78 [INFO] [stderr] Compiling thiserror v1.0.57 [INFO] [stderr] Compiling paste v1.0.14 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling syn v2.0.52 [INFO] [stderr] Compiling thiserror-impl v1.0.57 [INFO] [stderr] Compiling my-ecs-macros v0.0.1 [INFO] [stderr] Checking my-ecs v0.0.1 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `my_ecs` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/ds/vec/any_vec.rs [INFO] [stderr] * src/ds/vec/chunk_any_vec.rs [INFO] [stderr] * src/ecs/entity.rs [INFO] [stderr] * src/ecs/filter.rs [INFO] [stderr] * src/ecs/query.rs [INFO] [stderr] * src/util/mod.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/filter.rs:202:6 [INFO] [stderr] | [INFO] [stderr] 202 | ($n:expr_2021, $($id:ident),+) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:359:6 [INFO] [stderr] | [INFO] [stderr] 359 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:359:22 [INFO] [stderr] | [INFO] [stderr] 359 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:455:6 [INFO] [stderr] | [INFO] [stderr] 455 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:455:22 [INFO] [stderr] | [INFO] [stderr] 455 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:555:6 [INFO] [stderr] | [INFO] [stderr] 555 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:555:22 [INFO] [stderr] | [INFO] [stderr] 555 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/util/mod.rs:10:6 [INFO] [stderr] | [INFO] [stderr] 10 | ($f:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ds/vec/any_vec.rs:187:9 [INFO] [stderr] | [INFO] [stderr] 178 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 187 | unsafe { self.set_len(self.len().checked_add(1).unwrap()) }; [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ds/vec/chunk_any_vec.rs:176:9 [INFO] [stderr] | [INFO] [stderr] 169 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 176 | unsafe { self.set_len(self.len().checked_add(1).unwrap()) }; [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ds/vec/chunk_any_vec.rs:251:9 [INFO] [stderr] | [INFO] [stderr] 244 | unsafe fn _pop(&mut self) -> &mut AnyVec { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 251 | unsafe { self.chunks.get_unchecked_mut(ci) } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ecs/entity.rs:600:9 [INFO] [stderr] | [INFO] [stderr] 596 | ) -> Self { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 600 | unsafe { ptr::copy_nonoverlapping(borrowed as *const _, uninit.as_mut_ptr(), 1) }; [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] error: aborting due to 8 previous errors; 4 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | gen: u64, [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | gen: 0, [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn gen(&self) -> u64 { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | self.gen [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:39:18 [INFO] [stdout] | [INFO] [stdout] 39 | self.gen += 1; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:123:40 [INFO] [stdout] | [INFO] [stdout] 123 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:145:40 [INFO] [stdout] | [INFO] [stdout] 145 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:167:44 [INFO] [stdout] | [INFO] [stdout] 167 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:228:40 [INFO] [stdout] | [INFO] [stdout] 228 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:304:33 [INFO] [stdout] | [INFO] [stdout] 304 | return self.gen() + (self.len() - 1) as u64; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:309:14 [INFO] [stdout] | [INFO] [stdout] 309 | self.gen() + (self.len() - 1) as u64 [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/filter.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | ($n:expr, $($id:ident),+) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 202 | ($n:expr_2021, $($id:ident),+) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:359:9 [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr_2021, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:359:20 [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr, $($i:expr_2021),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:455:9 [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr_2021, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:455:20 [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr, $($i:expr_2021),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:555:9 [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr_2021, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:555:20 [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr, $($i:expr_2021),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/util/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | ($f:expr) => {{ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 10 | ($f:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | (self.fn_get)(self.me, index) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub unsafe fn get_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:82:19 [INFO] [stdout] | [INFO] [stdout] 82 | let ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:81:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_ref` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | ptr.as_ref() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | let mut ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | ptr.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::GetterIterMut::<'a, T>::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:124:14 [INFO] [stdout] | [INFO] [stdout] 124 | Self(GetterIterMut::new(getter)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub const unsafe fn new(getter: RawGetter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:233:28 [INFO] [stdout] | [INFO] [stdout] 233 | let cur_node = self.nodes.get_unchecked(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | pub unsafe fn get_next_unchecked(&self, cur: ListPos) -> Option<(ListPos, &V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:246:28 [INFO] [stdout] | [INFO] [stdout] 246 | let cur_node = self.nodes.get_unchecked_mut(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | pub unsafe fn get_next_unchecked_mut(&mut self, cur: ListPos) -> Option<(ListPos, &mut V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:263:24 [INFO] [stdout] | [INFO] [stdout] 263 | let node = self.nodes.get_unchecked(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | unsafe fn get_value(&self, index: usize) -> Option<&V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:275:24 [INFO] [stdout] | [INFO] [stdout] 275 | let node = self.nodes.get_unchecked_mut(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:273:5 [INFO] [stdout] | [INFO] [stdout] 273 | unsafe fn get_value_mut(&mut self, index: usize) -> Option<&mut V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::drop_in_place` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | (ptr as *mut T).drop_in_place(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | unsafe fn drop(ptr: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:80:29 [INFO] [stdout] | [INFO] [stdout] 80 | let src_clone = (*src).clone(); [INFO] [stdout] | ^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | unsafe fn clone(src: *const u8, dst: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | ptr::copy_nonoverlapping(src_ptr, dst, 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:167:19 [INFO] [stdout] | [INFO] [stdout] 167 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 166 | pub unsafe fn set_raw_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | (self.fn_drop())(dst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | self.update_unchecked(self.len(), ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:209:19 [INFO] [stdout] | [INFO] [stdout] 209 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:210:9 [INFO] [stdout] | [INFO] [stdout] 210 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:223:23 [INFO] [stdout] | [INFO] [stdout] 223 | let ptr = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | ptr::copy_nonoverlapping(ptr, buf, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:255:5 [INFO] [stdout] | [INFO] [stdout] 255 | unsafe fn _pop(&mut self) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:260:9 [INFO] [stdout] | [INFO] [stdout] 260 | self.get_ptr(self.len()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:32 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:328:9 [INFO] [stdout] | [INFO] [stdout] 328 | self.ptr.as_ptr().add(offset) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:326:5 [INFO] [stdout] | [INFO] [stdout] 326 | pub const unsafe fn get_ptr(&self, index: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | self.chunks[ci].push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | self.chunks[ci].update_unchecked(ii, ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:212:25 [INFO] [stdout] | [INFO] [stdout] 212 | let chunk = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:207:5 [INFO] [stdout] | [INFO] [stdout] 207 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | chunk.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:246:9 [INFO] [stdout] | [INFO] [stdout] 246 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | unsafe fn _pop(&mut self) -> &mut AnyVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 263 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_raw_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:312:9 [INFO] [stdout] | [INFO] [stdout] 312 | self.chunks[ci].get_raw_unchecked(ii) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] 119 | | .as_mut() [INFO] [stdout] 120 | | .unwrap_unchecked() [INFO] [stdout] | |_______________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] | |_____________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ecs::entity::TypedEntityContainer::::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:9 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/entity.rs:594:5 [INFO] [stdout] | [INFO] [stdout] 594 | / pub(crate) unsafe fn new_copy( [INFO] [stdout] 595 | | borrowed: &Borrowed, AtomicI32>, [INFO] [stdout] 596 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::MaybeUninit::::assume_init` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:19 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/sparse_set.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | col.push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/sparse_set.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | unsafe fn add_value(&mut self, ci: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::list::SetList::::get_next_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/system.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | / self.active [INFO] [stdout] 244 | | .get_next_unchecked_mut(pos) [INFO] [stdout] | |________________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/system.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub(crate) unsafe fn iter_value_at(&mut self, pos: ListPos) -> Option<&mut SystemData> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/default/worker.rs:58:23 [INFO] [stdout] | [INFO] [stdout] 58 | while let Some(job) = rx.recv().unwrap() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/default/worker.rs:60:17 [INFO] [stdout] | [INFO] [stdout] 60 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/list.rs:416:12 [INFO] [stdout] | [INFO] [stdout] 416 | if let Some(&after_index) = self.map.get(after) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/list.rs:441:9 [INFO] [stdout] | [INFO] [stdout] 441 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 416 ~ match self.map.get(after) { Some(&after_index) => { [INFO] [stdout] 417 | // Creates a new node. [INFO] [stdout] ... [INFO] [stdout] 440 | true [INFO] [stdout] 441 ~ } _ => { [INFO] [stdout] 442 | false [INFO] [stdout] 443 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/list.rs:454:12 [INFO] [stdout] | [INFO] [stdout] 454 | if let Some((key, value)) = self.remove_entry(key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/list.rs:456:9 [INFO] [stdout] | [INFO] [stdout] 456 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 454 ~ match self.remove_entry(key) { Some((key, value)) => { [INFO] [stdout] 455 | self.insert(key, value, after) [INFO] [stdout] 456 ~ } _ => { [INFO] [stdout] 457 | false [INFO] [stdout] 458 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/list.rs:468:12 [INFO] [stdout] | [INFO] [stdout] 468 | if let Some((key, value)) = self.remove_entry(key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/list.rs:471:9 [INFO] [stdout] | [INFO] [stdout] 471 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 468 ~ match self.remove_entry(key) { Some((key, value)) => { [INFO] [stdout] 469 | self.push_front(key, value); [INFO] [stdout] 470 | true [INFO] [stdout] 471 ~ } _ => { [INFO] [stdout] 472 | false [INFO] [stdout] 473 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/map.rs:173:20 [INFO] [stdout] | [INFO] [stdout] 173 | if let Some(index) = self.items.get_index(&key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/map.rs:175:17 [INFO] [stdout] | [INFO] [stdout] 175 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 173 ~ match self.items.get_index(&key) { Some(index) => { [INFO] [stdout] 174 | index [INFO] [stdout] 175 ~ } _ => { [INFO] [stdout] 176 | self.items.insert(key, (item, HashSet::default())).0 [INFO] [stdout] 177 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/vec/opt_vec.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 140 | if let Some(index) = self.vacancies.iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/vec/opt_vec.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 140 ~ match self.vacancies.iter().next() { Some(index) => { [INFO] [stdout] 141 | let index = *index; [INFO] [stdout] ... [INFO] [stdout] 144 | index [INFO] [stdout] 145 ~ } _ => { [INFO] [stdout] 146 | self.values.push(Some(value)); [INFO] [stdout] 147 | self.values.len() - 1 [INFO] [stdout] 148 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/entity.rs:615:12 [INFO] [stdout] | [INFO] [stdout] 615 | if let Ok(borrowed) = self.as_ref().borrow_column(ci) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/entity.rs:618:9 [INFO] [stdout] | [INFO] [stdout] 618 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 615 ~ match self.as_ref().borrow_column(ci) { Ok(borrowed) => { [INFO] [stdout] 616 | // Safety: We got the column index from the type, so the type is correct. [INFO] [stdout] 617 | Some(borrowed.map(|raw_getter| unsafe { Getter::new(raw_getter) })) [INFO] [stdout] 618 ~ } _ => { [INFO] [stdout] 619 | None [INFO] [stdout] 620 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | if let Some(cont) = self [INFO] [stdout] | _____________^ - [INFO] [stdout] | | _____________________________| [INFO] [stdout] 133 | || .entities [INFO] [stdout] | ||_____________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 134 | | .get_entity_container_mut(EntityKey::Index(enti)) [INFO] [stdout] | |______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 132 ~ match self [INFO] [stdout] 133 | .entities [INFO] [stdout] 134 | .get_entity_container_mut(EntityKey::Index(enti)) [INFO] [stdout] 135 ~ { Some(cont) => { [INFO] [stdout] 136 | let index = value.move_to(&mut **cont); [INFO] [stdout] 137 | Ok(EntityId::new(enti, index)) [INFO] [stdout] 138 ~ } _ => { [INFO] [stdout] 139 | let errmsg = debug_format!("{}", any::type_name::()); [INFO] [stdout] 140 | Err(EcsError::UnknownEntity(errmsg)) [INFO] [stdout] 141 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 333 | if let Some(handlers) = self.cmd_handlers.get(cmd_ty) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^-----------------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 333 ~ match self.cmd_handlers.get(cmd_ty) { Some(handlers) => { [INFO] [stdout] 334 | for sid in handlers.iter() { [INFO] [stdout] ... [INFO] [stdout] 338 | } [INFO] [stdout] 339 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:424:20 [INFO] [stdout] | [INFO] [stdout] 424 | if let Some(index) = self.resources.get_index(rkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:426:17 [INFO] [stdout] | [INFO] [stdout] 426 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 424 ~ match self.resources.get_index(rkey) { Some(index) => { [INFO] [stdout] 425 | waits.push(index); [INFO] [stdout] 426 ~ } _ => { [INFO] [stdout] 427 | let errmsg = [INFO] [stdout] 428 | debug_format!("some resources are not registered yet: `{}`", rqinfo.name()); [INFO] [stdout] 429 | return Err(EcsError::UnknownResource(errmsg)); [INFO] [stdout] 430 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:446:20 [INFO] [stdout] | [INFO] [stdout] 446 | if let Some(ekey) = self [INFO] [stdout] | _____________________^ - [INFO] [stdout] | | _____________________________________| [INFO] [stdout] 447 | || .entities [INFO] [stdout] | ||_____________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 448 | | .convert_entity_key(ekey.clone(), EntityKeyKind::Index) [INFO] [stdout] | |____________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:451:17 [INFO] [stdout] | [INFO] [stdout] 451 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 446 ~ match self [INFO] [stdout] 447 | .entities [INFO] [stdout] 448 | .convert_entity_key(ekey.clone(), EntityKeyKind::Index) [INFO] [stdout] 449 ~ { Some(ekey) => { [INFO] [stdout] 450 | waits.push(ekey.index()); [INFO] [stdout] 451 ~ } _ => { [INFO] [stdout] 452 | let errmsg = [INFO] [stdout] 453 | debug_format!("some entities are not registered yet: `{}`", eqinfo.name()); [INFO] [stdout] 454 | return Err(EcsError::UnknownEntity(errmsg)); [INFO] [stdout] 455 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:525:16 [INFO] [stdout] | [INFO] [stdout] 525 | if let Some(rkeys) = self.cache_noti.get(&WaitNotifyType::Comp(*ckey)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^---------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:533:13 [INFO] [stdout] | [INFO] [stdout] 533 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 525 ~ match self.cache_noti.get(&WaitNotifyType::Comp(*ckey)) { Some(rkeys) => { [INFO] [stdout] 526 | // Then, for the requests which was waiting for the column. [INFO] [stdout] ... [INFO] [stdout] 532 | } [INFO] [stdout] 533 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | if let Some(holder) = self.ptrs.get(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 68 ~ match self.ptrs.get(index) { Some(holder) => { [INFO] [stdout] 69 | holder.borrow() [INFO] [stdout] 70 ~ } _ => { [INFO] [stdout] 71 | Err(BorrowError::OutOfBound) [INFO] [stdout] 72 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | if let Some(holder) = self.ptrs.get_mut(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 79 ~ match self.ptrs.get_mut(index) { Some(holder) => { [INFO] [stdout] 80 | holder.borrow_mut() [INFO] [stdout] 81 ~ } _ => { [INFO] [stdout] 82 | Err(BorrowError::OutOfBound) [INFO] [stdout] 83 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:192:12 [INFO] [stdout] | [INFO] [stdout] 192 | if let Some(col) = self.cols.get(ci) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^---------^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:208:9 [INFO] [stdout] | [INFO] [stdout] 208 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 192 ~ match self.cols.get(ci) { Some(col) => { [INFO] [stdout] 193 | let borrowed = col.borrow(); [INFO] [stdout] ... [INFO] [stdout] 207 | borrowed [INFO] [stdout] 208 ~ } _ => { [INFO] [stdout] 209 | Err(BorrowError::OutOfBound) [INFO] [stdout] 210 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:198:20 [INFO] [stdout] | [INFO] [stdout] 198 | if let Ok(borrowed) = borrowed.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:204:17 [INFO] [stdout] | [INFO] [stdout] 204 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 198 ~ match borrowed.as_ref() { Ok(borrowed) => { [INFO] [stdout] 199 | assert_eq!( [INFO] [stdout] ... [INFO] [stdout] 203 | ); [INFO] [stdout] 204 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 217 | if let Some(col) = self.cols.get_mut(ci) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 217 ~ match self.cols.get_mut(ci) { Some(col) => { [INFO] [stdout] 218 | let borrowed = col.borrow_mut(); [INFO] [stdout] ... [INFO] [stdout] 232 | borrowed [INFO] [stdout] 233 ~ } _ => { [INFO] [stdout] 234 | Err(BorrowError::OutOfBound) [INFO] [stdout] 235 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:223:20 [INFO] [stdout] | [INFO] [stdout] 223 | if let Ok(borrowed) = borrowed.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 223 ~ match borrowed.as_ref() { Ok(borrowed) => { [INFO] [stdout] 224 | assert_eq!( [INFO] [stdout] ... [INFO] [stdout] 228 | ); [INFO] [stdout] 229 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:277:12 [INFO] [stdout] | [INFO] [stdout] 277 | if let Some(index) = self.sparse.take(key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:280:9 [INFO] [stdout] | [INFO] [stdout] 280 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 277 ~ match self.sparse.take(key) { Some(index) => { [INFO] [stdout] 278 | self.remove_row_by_inner_index(index); [INFO] [stdout] 279 | true [INFO] [stdout] 280 ~ } _ => { [INFO] [stdout] 281 | false [INFO] [stdout] 282 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:216:12 [INFO] [stdout] | [INFO] [stdout] 216 | if let Some(expired_sids) = self.lifetime.tick() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 216 ~ match self.lifetime.tick() { Some(expired_sids) => { [INFO] [stdout] 217 | while let Some(sid) = expired_sids.pop() { [INFO] [stdout] ... [INFO] [stdout] 222 | } [INFO] [stdout] 223 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:298:24 [INFO] [stdout] | [INFO] [stdout] 298 | let index = if let Some(index) = self.lives.get(&end) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:300:9 [INFO] [stdout] | [INFO] [stdout] 300 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 298 ~ let index = match self.lives.get(&end) { Some(index) => { [INFO] [stdout] 299 | *index [INFO] [stdout] 300 ~ } _ => { [INFO] [stdout] 301 | let index = self.pool.request(); [INFO] [stdout] 302 | self.lives.insert(end, index); [INFO] [stdout] 303 | index [INFO] [stdout] 304 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 866 | _impl!((o , o , o , o , o ), ((), (), (), (), ())); [INFO] [stdout] | -------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 866 | _impl!((o , o , o , o , o ), ((), (), (), (), ())); [INFO] [stdout] | -------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 867 | _impl!((R, o , o , o , o ), (R, (), (), (), ()), r=R); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 867 | _impl!((R, o , o , o , o ), (R, (), (), (), ()), r=R); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 868 | _impl!((o , W, o , o , o ), ((), W, (), (), ()), w=W); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 868 | _impl!((o , W, o , o , o ), ((), W, (), (), ()), w=W); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 869 | _impl!((R, W, o , o , o ), (R, W, (), (), ()), r=R, w=W); [INFO] [stdout] | ------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 869 | _impl!((R, W, o , o , o ), (R, W, (), (), ()), r=R, w=W); [INFO] [stdout] | ------------------------------------------------------------ in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 870 | _impl!((o , o , RR, o , o ), ((), (), RR, (), ()), rr=RR); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 870 | _impl!((o , o , RR, o , o ), ((), (), RR, (), ()), rr=RR); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 871 | _impl!((R, o , RR, o , o ), (R, (), RR, (), ()), r=R, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 871 | _impl!((R, o , RR, o , o ), (R, (), RR, (), ()), r=R, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 872 | _impl!((o , W, RR, o , o ), ((), W, RR, (), ()), w=W, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 872 | _impl!((o , W, RR, o , o ), ((), W, RR, (), ()), w=W, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 873 | _impl!((R, W, RR, o , o ), (R, W, RR, (), ()), r=R, w=W, rr=RR); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 873 | _impl!((R, W, RR, o , o ), (R, W, RR, (), ()), r=R, w=W, rr=RR); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 874 | _impl!((o , o , o , RW, o ), ((), (), (), RW, ()), rw=RW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 874 | _impl!((o , o , o , RW, o ), ((), (), (), RW, ()), rw=RW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 875 | _impl!((R, o , o , RW, o ), (R, (), (), RW, ()), r=R, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 875 | _impl!((R, o , o , RW, o ), (R, (), (), RW, ()), r=R, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 876 | _impl!((o , W, o , RW, o ), ((), W, (), RW, ()), w=W, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 876 | _impl!((o , W, o , RW, o ), ((), W, (), RW, ()), w=W, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 877 | _impl!((R, W, o , RW, o ), (R, W, (), RW, ()), r=R, w=W, rw=RW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 877 | _impl!((R, W, o , RW, o ), (R, W, (), RW, ()), r=R, w=W, rw=RW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 878 | _impl!((o , o , RR, RW, o ), ((), (), RR, RW, ()), rr=RR, rw=RW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 878 | _impl!((o , o , RR, RW, o ), ((), (), RR, RW, ()), rr=RR, rw=RW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 879 | _impl!((R, o , RR, RW, o ), (R, (), RR, RW, ()), r=R, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 879 | _impl!((R, o , RR, RW, o ), (R, (), RR, RW, ()), r=R, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 880 | _impl!((o , W, RR, RW, o ), ((), W, RR, RW, ()), w=W, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 880 | _impl!((o , W, RR, RW, o ), ((), W, RR, RW, ()), w=W, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 881 | _impl!((R, W, RR, RW, o ), (R, W, RR, RW, ()), r=R, w=W, rr=RR, rw=RW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 881 | _impl!((R, W, RR, RW, o ), (R, W, RR, RW, ()), r=R, w=W, rr=RR, rw=RW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 883 | _impl!((o , o , o , o , EW), ((), (), (), (), EW), ew=EW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 883 | _impl!((o , o , o , o , EW), ((), (), (), (), EW), ew=EW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 884 | _impl!((R, o , o , o , EW), (R, (), (), (), EW), r=R, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 884 | _impl!((R, o , o , o , EW), (R, (), (), (), EW), r=R, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 885 | _impl!((o , W, o , o , EW), ((), W, (), (), EW), w=W, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 885 | _impl!((o , W, o , o , EW), ((), W, (), (), EW), w=W, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 886 | _impl!((R, W, o , o , EW), (R, W, (), (), EW), r=R, w=W, ew=EW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 886 | _impl!((R, W, o , o , EW), (R, W, (), (), EW), r=R, w=W, ew=EW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 887 | _impl!((o , o , RR, o , EW), ((), (), RR, (), EW), rr=RR, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 887 | _impl!((o , o , RR, o , EW), ((), (), RR, (), EW), rr=RR, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 888 | _impl!((R, o , RR, o , EW), (R, (), RR, (), EW), r=R, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 888 | _impl!((R, o , RR, o , EW), (R, (), RR, (), EW), r=R, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 889 | _impl!((o , W, RR, o , EW), ((), W, RR, (), EW), w=W, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 889 | _impl!((o , W, RR, o , EW), ((), W, RR, (), EW), w=W, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 890 | _impl!((R, W, RR, o , EW), (R, W, RR, (), EW), r=R, w=W, rr=RR, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 890 | _impl!((R, W, RR, o , EW), (R, W, RR, (), EW), r=R, w=W, rr=RR, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 891 | _impl!((o , o , o , RW, EW), ((), (), (), RW, EW), rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 891 | _impl!((o , o , o , RW, EW), ((), (), (), RW, EW), rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 892 | _impl!((R, o , o , RW, EW), (R, (), (), RW, EW), r=R, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 892 | _impl!((R, o , o , RW, EW), (R, (), (), RW, EW), r=R, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 893 | _impl!((o , W, o , RW, EW), ((), W, (), RW, EW), w=W, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 893 | _impl!((o , W, o , RW, EW), ((), W, (), RW, EW), w=W, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 894 | _impl!((R, W, o , RW, EW), (R, W, (), RW, EW), r=R, w=W, rw=RW, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 894 | _impl!((R, W, o , RW, EW), (R, W, (), RW, EW), r=R, w=W, rw=RW, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 895 | _impl!((o , o , RR, RW, EW), ((), (), RR, RW, EW), rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 895 | _impl!((o , o , RR, RW, EW), ((), (), RR, RW, EW), rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 896 | _impl!((R, o , RR, RW, EW), (R, (), RR, RW, EW), r=R, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 896 | _impl!((R, o , RR, RW, EW), (R, (), RR, RW, EW), r=R, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 897 | _impl!((o , W, RR, RW, EW), ((), W, RR, RW, EW), w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 897 | _impl!((o , W, RR, RW, EW), ((), W, RR, RW, EW), w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 898 | _impl!((R, W, RR, RW, EW), (R, W, RR, RW, EW), r=R, w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 898 | _impl!((R, W, RR, RW, EW), (R, W, RR, RW, EW), r=R, w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/worker.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | while let Ok(msg) = self.ch.recv() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/worker.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 116 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Migrating examples/hello/main.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `my_ecs` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/ds/vec/any_vec.rs [INFO] [stderr] * src/ds/vec/chunk_any_vec.rs [INFO] [stderr] * src/ecs/entity.rs [INFO] [stderr] * src/ecs/filter.rs [INFO] [stderr] * src/ecs/query.rs [INFO] [stderr] * src/util/mod.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/filter.rs:202:6 [INFO] [stderr] | [INFO] [stderr] 202 | ($n:expr_2021, $($id:ident),+) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:359:6 [INFO] [stderr] | [INFO] [stderr] 359 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:359:22 [INFO] [stderr] | [INFO] [stderr] 359 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:455:6 [INFO] [stderr] | [INFO] [stderr] 455 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:455:22 [INFO] [stderr] | [INFO] [stderr] 455 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:555:6 [INFO] [stderr] | [INFO] [stderr] 555 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/ecs/query.rs:555:22 [INFO] [stderr] | [INFO] [stderr] 555 | ($n:expr_2021, $($i:expr_2021),*) => {const _: () = { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/util/mod.rs:10:6 [INFO] [stderr] | [INFO] [stderr] 10 | ($f:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ds/vec/any_vec.rs:187:9 [INFO] [stderr] | [INFO] [stderr] 178 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 187 | unsafe { self.set_len(self.len().checked_add(1).unwrap()) }; [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | gen: u64, [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ds/vec/chunk_any_vec.rs:176:9 [INFO] [stderr] | [INFO] [stderr] 169 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | gen: 0, [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stderr] 176 | unsafe { self.set_len(self.len().checked_add(1).unwrap()) }; [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn gen(&self) -> u64 { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | self.gen [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ds/generational.rs:39:18 [INFO] [stdout] | [INFO] [stdout] 39 | self.gen += 1; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/ds/vec/chunk_any_vec.rs:251:9 [INFO] [stderr] | [INFO] [stderr] 244 | unsafe fn _pop(&mut self) -> &mut AnyVec { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 251 | unsafe { self.chunks.get_unchecked_mut(ci) } [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/ecs/entity.rs:600:9 [INFO] [stderr] | [INFO] [stderr] 596 | ) -> Self { unsafe { [INFO] [stderr] | ------ because it's nested under this `unsafe` block [INFO] [stderr] ... [INFO] [stderr] 600 | unsafe { ptr::copy_nonoverlapping(borrowed as *const _, uninit.as_mut_ptr(), 1) }; [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:123:40 [INFO] [stdout] | [INFO] [stdout] 123 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:145:40 [INFO] [stdout] | [INFO] [stdout] 145 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stderr] error: aborting due to 8 previous errors; 4 warnings emitted [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:167:44 [INFO] [stdout] | [INFO] [stdout] 167 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:228:40 [INFO] [stdout] | [INFO] [stdout] 228 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:304:33 [INFO] [stdout] | [INFO] [stdout] 304 | return self.gen() + (self.len() - 1) as u64; [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/ecs/wait.rs:309:14 [INFO] [stdout] | [INFO] [stdout] 309 | self.gen() + (self.len() - 1) as u64 [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/filter.rs:202:9 [INFO] [stdout] | [INFO] [stdout] 202 | ($n:expr, $($id:ident),+) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 202 | ($n:expr_2021, $($id:ident),+) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:359:9 [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr_2021, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:359:20 [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 359 | ($n:expr, $($i:expr_2021),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:455:9 [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr_2021, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:455:20 [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 455 | ($n:expr, $($i:expr_2021),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:555:9 [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr_2021, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ecs/query.rs:555:20 [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr, $($i:expr),*) => {const _: () = { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 555 | ($n:expr, $($i:expr_2021),*) => {const _: () = { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/util/mod.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | ($f:expr) => {{ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 10 | ($f:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | (self.fn_get)(self.me, index) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub unsafe fn get_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:82:19 [INFO] [stdout] | [INFO] [stdout] 82 | let ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:81:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_ref` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | ptr.as_ref() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | let mut ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | ptr.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::GetterIterMut::<'a, T>::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:124:14 [INFO] [stdout] | [INFO] [stdout] 124 | Self(GetterIterMut::new(getter)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub const unsafe fn new(getter: RawGetter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:233:28 [INFO] [stdout] | [INFO] [stdout] 233 | let cur_node = self.nodes.get_unchecked(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | pub unsafe fn get_next_unchecked(&self, cur: ListPos) -> Option<(ListPos, &V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:246:28 [INFO] [stdout] | [INFO] [stdout] 246 | let cur_node = self.nodes.get_unchecked_mut(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | pub unsafe fn get_next_unchecked_mut(&mut self, cur: ListPos) -> Option<(ListPos, &mut V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:263:24 [INFO] [stdout] | [INFO] [stdout] 263 | let node = self.nodes.get_unchecked(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | unsafe fn get_value(&self, index: usize) -> Option<&V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:275:24 [INFO] [stdout] | [INFO] [stdout] 275 | let node = self.nodes.get_unchecked_mut(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:273:5 [INFO] [stdout] | [INFO] [stdout] 273 | unsafe fn get_value_mut(&mut self, index: usize) -> Option<&mut V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::drop_in_place` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | (ptr as *mut T).drop_in_place(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | unsafe fn drop(ptr: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:80:29 [INFO] [stdout] | [INFO] [stdout] 80 | let src_clone = (*src).clone(); [INFO] [stdout] | ^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | unsafe fn clone(src: *const u8, dst: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | ptr::copy_nonoverlapping(src_ptr, dst, 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:167:19 [INFO] [stdout] | [INFO] [stdout] 167 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 166 | pub unsafe fn set_raw_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | (self.fn_drop())(dst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | self.update_unchecked(self.len(), ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:209:19 [INFO] [stdout] | [INFO] [stdout] 209 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:210:9 [INFO] [stdout] | [INFO] [stdout] 210 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:223:23 [INFO] [stdout] | [INFO] [stdout] 223 | let ptr = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | ptr::copy_nonoverlapping(ptr, buf, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:255:5 [INFO] [stdout] | [INFO] [stdout] 255 | unsafe fn _pop(&mut self) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:260:9 [INFO] [stdout] | [INFO] [stdout] 260 | self.get_ptr(self.len()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:32 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:328:9 [INFO] [stdout] | [INFO] [stdout] 328 | self.ptr.as_ptr().add(offset) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:326:5 [INFO] [stdout] | [INFO] [stdout] 326 | pub const unsafe fn get_ptr(&self, index: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | self.chunks[ci].push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | self.chunks[ci].update_unchecked(ii, ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:212:25 [INFO] [stdout] | [INFO] [stdout] 212 | let chunk = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:207:5 [INFO] [stdout] | [INFO] [stdout] 207 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | chunk.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:246:9 [INFO] [stdout] | [INFO] [stdout] 246 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | unsafe fn _pop(&mut self) -> &mut AnyVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 263 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_raw_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:312:9 [INFO] [stdout] | [INFO] [stdout] 312 | self.chunks[ci].get_raw_unchecked(ii) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] 119 | | .as_mut() [INFO] [stdout] 120 | | .unwrap_unchecked() [INFO] [stdout] | |_______________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] | |_____________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ecs::entity::TypedEntityContainer::::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:9 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/entity.rs:594:5 [INFO] [stdout] | [INFO] [stdout] 594 | / pub(crate) unsafe fn new_copy( [INFO] [stdout] 595 | | borrowed: &Borrowed, AtomicI32>, [INFO] [stdout] 596 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::MaybeUninit::::assume_init` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:19 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/sparse_set.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | col.push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/sparse_set.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | unsafe fn add_value(&mut self, ci: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::list::SetList::::get_next_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/system.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | / self.active [INFO] [stdout] 244 | | .get_next_unchecked_mut(pos) [INFO] [stdout] | |________________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/system.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub(crate) unsafe fn iter_value_at(&mut self, pos: ListPos) -> Option<&mut SystemData> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/default/worker.rs:58:23 [INFO] [stdout] | [INFO] [stdout] 58 | while let Some(job) = rx.recv().unwrap() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/default/worker.rs:60:17 [INFO] [stdout] | [INFO] [stdout] 60 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/list.rs:416:12 [INFO] [stdout] | [INFO] [stdout] 416 | if let Some(&after_index) = self.map.get(after) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/list.rs:441:9 [INFO] [stdout] | [INFO] [stdout] 441 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 416 ~ match self.map.get(after) { Some(&after_index) => { [INFO] [stdout] 417 | // Creates a new node. [INFO] [stdout] ... [INFO] [stdout] 440 | true [INFO] [stdout] 441 ~ } _ => { [INFO] [stdout] 442 | false [INFO] [stdout] 443 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/list.rs:454:12 [INFO] [stdout] | [INFO] [stdout] 454 | if let Some((key, value)) = self.remove_entry(key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/list.rs:456:9 [INFO] [stdout] | [INFO] [stdout] 456 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 454 ~ match self.remove_entry(key) { Some((key, value)) => { [INFO] [stdout] 455 | self.insert(key, value, after) [INFO] [stdout] 456 ~ } _ => { [INFO] [stdout] 457 | false [INFO] [stdout] 458 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/list.rs:468:12 [INFO] [stdout] | [INFO] [stdout] 468 | if let Some((key, value)) = self.remove_entry(key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/list.rs:471:9 [INFO] [stdout] | [INFO] [stdout] 471 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 468 ~ match self.remove_entry(key) { Some((key, value)) => { [INFO] [stdout] 469 | self.push_front(key, value); [INFO] [stdout] 470 | true [INFO] [stdout] 471 ~ } _ => { [INFO] [stdout] 472 | false [INFO] [stdout] 473 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/map.rs:173:20 [INFO] [stdout] | [INFO] [stdout] 173 | if let Some(index) = self.items.get_index(&key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/map.rs:175:17 [INFO] [stdout] | [INFO] [stdout] 175 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 173 ~ match self.items.get_index(&key) { Some(index) => { [INFO] [stdout] 174 | index [INFO] [stdout] 175 ~ } _ => { [INFO] [stdout] 176 | self.items.insert(key, (item, HashSet::default())).0 [INFO] [stdout] 177 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ds/vec/opt_vec.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 140 | if let Some(index) = self.vacancies.iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ds/vec/opt_vec.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 140 ~ match self.vacancies.iter().next() { Some(index) => { [INFO] [stdout] 141 | let index = *index; [INFO] [stdout] ... [INFO] [stdout] 144 | index [INFO] [stdout] 145 ~ } _ => { [INFO] [stdout] 146 | self.values.push(Some(value)); [INFO] [stdout] 147 | self.values.len() - 1 [INFO] [stdout] 148 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/entity.rs:615:12 [INFO] [stdout] | [INFO] [stdout] 615 | if let Ok(borrowed) = self.as_ref().borrow_column(ci) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/entity.rs:618:9 [INFO] [stdout] | [INFO] [stdout] 618 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 615 ~ match self.as_ref().borrow_column(ci) { Ok(borrowed) => { [INFO] [stdout] 616 | // Safety: We got the column index from the type, so the type is correct. [INFO] [stdout] 617 | Some(borrowed.map(|raw_getter| unsafe { Getter::new(raw_getter) })) [INFO] [stdout] 618 ~ } _ => { [INFO] [stdout] 619 | None [INFO] [stdout] 620 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | if let Some(cont) = self [INFO] [stdout] | _____________^ - [INFO] [stdout] | | _____________________________| [INFO] [stdout] 133 | || .entities [INFO] [stdout] | ||_____________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 134 | | .get_entity_container_mut(EntityKey::Index(enti)) [INFO] [stdout] | |______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:138:9 [INFO] [stdout] | [INFO] [stdout] 138 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 132 ~ match self [INFO] [stdout] 133 | .entities [INFO] [stdout] 134 | .get_entity_container_mut(EntityKey::Index(enti)) [INFO] [stdout] 135 ~ { Some(cont) => { [INFO] [stdout] 136 | let index = value.move_to(&mut **cont); [INFO] [stdout] 137 | Ok(EntityId::new(enti, index)) [INFO] [stdout] 138 ~ } _ => { [INFO] [stdout] 139 | let errmsg = debug_format!("{}", any::type_name::()); [INFO] [stdout] 140 | Err(EcsError::UnknownEntity(errmsg)) [INFO] [stdout] 141 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:333:12 [INFO] [stdout] | [INFO] [stdout] 333 | if let Some(handlers) = self.cmd_handlers.get(cmd_ty) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^-----------------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 333 ~ match self.cmd_handlers.get(cmd_ty) { Some(handlers) => { [INFO] [stdout] 334 | for sid in handlers.iter() { [INFO] [stdout] ... [INFO] [stdout] 338 | } [INFO] [stdout] 339 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:424:20 [INFO] [stdout] | [INFO] [stdout] 424 | if let Some(index) = self.resources.get_index(rkey) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:426:17 [INFO] [stdout] | [INFO] [stdout] 426 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 424 ~ match self.resources.get_index(rkey) { Some(index) => { [INFO] [stdout] 425 | waits.push(index); [INFO] [stdout] 426 ~ } _ => { [INFO] [stdout] 427 | let errmsg = [INFO] [stdout] 428 | debug_format!("some resources are not registered yet: `{}`", rqinfo.name()); [INFO] [stdout] 429 | return Err(EcsError::UnknownResource(errmsg)); [INFO] [stdout] 430 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:446:20 [INFO] [stdout] | [INFO] [stdout] 446 | if let Some(ekey) = self [INFO] [stdout] | _____________________^ - [INFO] [stdout] | | _____________________________________| [INFO] [stdout] 447 | || .entities [INFO] [stdout] | ||_____________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 448 | | .convert_entity_key(ekey.clone(), EntityKeyKind::Index) [INFO] [stdout] | |____________________________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:451:17 [INFO] [stdout] | [INFO] [stdout] 451 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 446 ~ match self [INFO] [stdout] 447 | .entities [INFO] [stdout] 448 | .convert_entity_key(ekey.clone(), EntityKeyKind::Index) [INFO] [stdout] 449 ~ { Some(ekey) => { [INFO] [stdout] 450 | waits.push(ekey.index()); [INFO] [stdout] 451 ~ } _ => { [INFO] [stdout] 452 | let errmsg = [INFO] [stdout] 453 | debug_format!("some entities are not registered yet: `{}`", eqinfo.name()); [INFO] [stdout] 454 | return Err(EcsError::UnknownEntity(errmsg)); [INFO] [stdout] 455 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:525:16 [INFO] [stdout] | [INFO] [stdout] 525 | if let Some(rkeys) = self.cache_noti.get(&WaitNotifyType::Comp(*ckey)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^---------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/manager.rs:533:13 [INFO] [stdout] | [INFO] [stdout] 533 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 525 ~ match self.cache_noti.get(&WaitNotifyType::Comp(*ckey)) { Some(rkeys) => { [INFO] [stdout] 526 | // Then, for the requests which was waiting for the column. [INFO] [stdout] ... [INFO] [stdout] 532 | } [INFO] [stdout] 533 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | if let Some(holder) = self.ptrs.get(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 68 ~ match self.ptrs.get(index) { Some(holder) => { [INFO] [stdout] 69 | holder.borrow() [INFO] [stdout] 70 ~ } _ => { [INFO] [stdout] 71 | Err(BorrowError::OutOfBound) [INFO] [stdout] 72 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | if let Some(holder) = self.ptrs.get_mut(index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/resource.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 79 ~ match self.ptrs.get_mut(index) { Some(holder) => { [INFO] [stdout] 80 | holder.borrow_mut() [INFO] [stdout] 81 ~ } _ => { [INFO] [stdout] 82 | Err(BorrowError::OutOfBound) [INFO] [stdout] 83 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:192:12 [INFO] [stdout] | [INFO] [stdout] 192 | if let Some(col) = self.cols.get(ci) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^---------^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:208:9 [INFO] [stdout] | [INFO] [stdout] 208 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 192 ~ match self.cols.get(ci) { Some(col) => { [INFO] [stdout] 193 | let borrowed = col.borrow(); [INFO] [stdout] ... [INFO] [stdout] 207 | borrowed [INFO] [stdout] 208 ~ } _ => { [INFO] [stdout] 209 | Err(BorrowError::OutOfBound) [INFO] [stdout] 210 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:198:20 [INFO] [stdout] | [INFO] [stdout] 198 | if let Ok(borrowed) = borrowed.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:204:17 [INFO] [stdout] | [INFO] [stdout] 204 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 198 ~ match borrowed.as_ref() { Ok(borrowed) => { [INFO] [stdout] 199 | assert_eq!( [INFO] [stdout] ... [INFO] [stdout] 203 | ); [INFO] [stdout] 204 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:217:12 [INFO] [stdout] | [INFO] [stdout] 217 | if let Some(col) = self.cols.get_mut(ci) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^---------^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 217 ~ match self.cols.get_mut(ci) { Some(col) => { [INFO] [stdout] 218 | let borrowed = col.borrow_mut(); [INFO] [stdout] ... [INFO] [stdout] 232 | borrowed [INFO] [stdout] 233 ~ } _ => { [INFO] [stdout] 234 | Err(BorrowError::OutOfBound) [INFO] [stdout] 235 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:223:20 [INFO] [stdout] | [INFO] [stdout] 223 | if let Ok(borrowed) = borrowed.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 223 ~ match borrowed.as_ref() { Ok(borrowed) => { [INFO] [stdout] 224 | assert_eq!( [INFO] [stdout] ... [INFO] [stdout] 228 | ); [INFO] [stdout] 229 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:277:12 [INFO] [stdout] | [INFO] [stdout] 277 | if let Some(index) = self.sparse.take(key) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^-----------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/sparse_set.rs:280:9 [INFO] [stdout] | [INFO] [stdout] 280 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 277 ~ match self.sparse.take(key) { Some(index) => { [INFO] [stdout] 278 | self.remove_row_by_inner_index(index); [INFO] [stdout] 279 | true [INFO] [stdout] 280 ~ } _ => { [INFO] [stdout] 281 | false [INFO] [stdout] 282 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:216:12 [INFO] [stdout] | [INFO] [stdout] 216 | if let Some(expired_sids) = self.lifetime.tick() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^-------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:223:9 [INFO] [stdout] | [INFO] [stdout] 223 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 216 ~ match self.lifetime.tick() { Some(expired_sids) => { [INFO] [stdout] 217 | while let Some(sid) = expired_sids.pop() { [INFO] [stdout] ... [INFO] [stdout] 222 | } [INFO] [stdout] 223 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:298:24 [INFO] [stdout] | [INFO] [stdout] 298 | let index = if let Some(index) = self.lives.get(&end) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----------^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:300:9 [INFO] [stdout] | [INFO] [stdout] 300 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 298 ~ let index = match self.lives.get(&end) { Some(index) => { [INFO] [stdout] 299 | *index [INFO] [stdout] 300 ~ } _ => { [INFO] [stdout] 301 | let index = self.pool.request(); [INFO] [stdout] 302 | self.lives.insert(end, index); [INFO] [stdout] 303 | index [INFO] [stdout] 304 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 866 | _impl!((o , o , o , o , o ), ((), (), (), (), ())); [INFO] [stdout] | -------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 866 | _impl!((o , o , o , o , o ), ((), (), (), (), ())); [INFO] [stdout] | -------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 867 | _impl!((R, o , o , o , o ), (R, (), (), (), ()), r=R); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 867 | _impl!((R, o , o , o , o ), (R, (), (), (), ()), r=R); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 868 | _impl!((o , W, o , o , o ), ((), W, (), (), ()), w=W); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 868 | _impl!((o , W, o , o , o ), ((), W, (), (), ()), w=W); [INFO] [stdout] | ------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 869 | _impl!((R, W, o , o , o ), (R, W, (), (), ()), r=R, w=W); [INFO] [stdout] | ------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 869 | _impl!((R, W, o , o , o ), (R, W, (), (), ()), r=R, w=W); [INFO] [stdout] | ------------------------------------------------------------ in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 870 | _impl!((o , o , RR, o , o ), ((), (), RR, (), ()), rr=RR); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 870 | _impl!((o , o , RR, o , o ), ((), (), RR, (), ()), rr=RR); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 871 | _impl!((R, o , RR, o , o ), (R, (), RR, (), ()), r=R, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 871 | _impl!((R, o , RR, o , o ), (R, (), RR, (), ()), r=R, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 872 | _impl!((o , W, RR, o , o ), ((), W, RR, (), ()), w=W, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 872 | _impl!((o , W, RR, o , o ), ((), W, RR, (), ()), w=W, rr=RR); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 873 | _impl!((R, W, RR, o , o ), (R, W, RR, (), ()), r=R, w=W, rr=RR); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 873 | _impl!((R, W, RR, o , o ), (R, W, RR, (), ()), r=R, w=W, rr=RR); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 874 | _impl!((o , o , o , RW, o ), ((), (), (), RW, ()), rw=RW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 874 | _impl!((o , o , o , RW, o ), ((), (), (), RW, ()), rw=RW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 875 | _impl!((R, o , o , RW, o ), (R, (), (), RW, ()), r=R, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 875 | _impl!((R, o , o , RW, o ), (R, (), (), RW, ()), r=R, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 876 | _impl!((o , W, o , RW, o ), ((), W, (), RW, ()), w=W, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 876 | _impl!((o , W, o , RW, o ), ((), W, (), RW, ()), w=W, rw=RW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 877 | _impl!((R, W, o , RW, o ), (R, W, (), RW, ()), r=R, w=W, rw=RW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 877 | _impl!((R, W, o , RW, o ), (R, W, (), RW, ()), r=R, w=W, rw=RW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 878 | _impl!((o , o , RR, RW, o ), ((), (), RR, RW, ()), rr=RR, rw=RW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 878 | _impl!((o , o , RR, RW, o ), ((), (), RR, RW, ()), rr=RR, rw=RW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 879 | _impl!((R, o , RR, RW, o ), (R, (), RR, RW, ()), r=R, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 879 | _impl!((R, o , RR, RW, o ), (R, (), RR, RW, ()), r=R, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 880 | _impl!((o , W, RR, RW, o ), ((), W, RR, RW, ()), w=W, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 880 | _impl!((o , W, RR, RW, o ), ((), W, RR, RW, ()), w=W, rr=RR, rw=RW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 881 | _impl!((R, W, RR, RW, o ), (R, W, RR, RW, ()), r=R, w=W, rr=RR, rw=RW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 881 | _impl!((R, W, RR, RW, o ), (R, W, RR, RW, ()), r=R, w=W, rr=RR, rw=RW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 883 | _impl!((o , o , o , o , EW), ((), (), (), (), EW), ew=EW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 883 | _impl!((o , o , o , o , EW), ((), (), (), (), EW), ew=EW); [INFO] [stdout] | --------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 884 | _impl!((R, o , o , o , EW), (R, (), (), (), EW), r=R, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 884 | _impl!((R, o , o , o , EW), (R, (), (), (), EW), r=R, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 885 | _impl!((o , W, o , o , EW), ((), W, (), (), EW), w=W, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 885 | _impl!((o , W, o , o , EW), ((), W, (), (), EW), w=W, ew=EW); [INFO] [stdout] | -------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 886 | _impl!((R, W, o , o , EW), (R, W, (), (), EW), r=R, w=W, ew=EW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 886 | _impl!((R, W, o , o , EW), (R, W, (), (), EW), r=R, w=W, ew=EW); [INFO] [stdout] | ------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 887 | _impl!((o , o , RR, o , EW), ((), (), RR, (), EW), rr=RR, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 887 | _impl!((o , o , RR, o , EW), ((), (), RR, (), EW), rr=RR, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 888 | _impl!((R, o , RR, o , EW), (R, (), RR, (), EW), r=R, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 888 | _impl!((R, o , RR, o , EW), (R, (), RR, (), EW), r=R, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 889 | _impl!((o , W, RR, o , EW), ((), W, RR, (), EW), w=W, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 889 | _impl!((o , W, RR, o , EW), ((), W, RR, (), EW), w=W, rr=RR, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 890 | _impl!((R, W, RR, o , EW), (R, W, RR, (), EW), r=R, w=W, rr=RR, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 890 | _impl!((R, W, RR, o , EW), (R, W, RR, (), EW), r=R, w=W, rr=RR, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 891 | _impl!((o , o , o , RW, EW), ((), (), (), RW, EW), rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 891 | _impl!((o , o , o , RW, EW), ((), (), (), RW, EW), rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 892 | _impl!((R, o , o , RW, EW), (R, (), (), RW, EW), r=R, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 892 | _impl!((R, o , o , RW, EW), (R, (), (), RW, EW), r=R, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 893 | _impl!((o , W, o , RW, EW), ((), W, (), RW, EW), w=W, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 893 | _impl!((o , W, o , RW, EW), ((), W, (), RW, EW), w=W, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 894 | _impl!((R, W, o , RW, EW), (R, W, (), RW, EW), r=R, w=W, rw=RW, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 894 | _impl!((R, W, o , RW, EW), (R, W, (), RW, EW), r=R, w=W, rw=RW, ew=EW); [INFO] [stdout] | -------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 895 | _impl!((o , o , RR, RW, EW), ((), (), RR, RW, EW), rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 895 | _impl!((o , o , RR, RW, EW), ((), (), RR, RW, EW), rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ----------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 896 | _impl!((R, o , RR, RW, EW), (R, (), RR, RW, EW), r=R, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 896 | _impl!((R, o , RR, RW, EW), (R, (), RR, RW, EW), r=R, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 897 | _impl!((o , W, RR, RW, EW), ((), W, RR, RW, EW), w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 897 | _impl!((o , W, RR, RW, EW), ((), W, RR, RW, EW), w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | ---------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:821:28 [INFO] [stdout] | [INFO] [stdout] 821 | if let Some(f) = f.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 898 | _impl!((R, W, RR, RW, EW), (R, W, RR, RW, EW), r=R, w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/system.rs:824:25 [INFO] [stdout] | [INFO] [stdout] 824 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 898 | _impl!((R, W, RR, RW, EW), (R, W, RR, RW, EW), r=R, w=W, rr=RR, rw=RW, ew=EW); [INFO] [stdout] | --------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `_impl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ecs/worker.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | while let Ok(msg) = self.ch.recv() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/ecs/worker.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 116 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.95s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking my-ecs v0.0.1 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct GenQueue { [INFO] [stdout] | -------- while parsing this struct [INFO] [stdout] 7 | queue: VecDeque, [INFO] [stdout] 8 | gen: u64, [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 8 | r#gen: u64, [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct GenQueue { [INFO] [stdout] | -------- while parsing this struct [INFO] [stdout] 7 | queue: VecDeque, [INFO] [stdout] 8 | gen: u64, [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 8 | r#gen: u64, [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | gen: 0, [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 15 | r#gen: 0, [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | gen: 0, [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 15 | r#gen: 0, [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn gen(&self) -> u64 { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 19 | pub fn r#gen(&self) -> u64 { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn gen(&self) -> u64 { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 19 | pub fn r#gen(&self) -> u64 { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | self.gen [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 20 | self.r#gen [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | self.gen [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 20 | self.r#gen [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:39:18 [INFO] [stdout] | [INFO] [stdout] 39 | self.gen += 1; [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ds/generational.rs:39:18 [INFO] [stdout] | [INFO] [stdout] 39 | self.gen += 1; [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:123:40 [INFO] [stdout] | [INFO] [stdout] 123 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 123 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:145:40 [INFO] [stdout] | [INFO] [stdout] 145 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 145 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:123:40 [INFO] [stdout] | [INFO] [stdout] 123 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 123 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:167:44 [INFO] [stdout] | [INFO] [stdout] 167 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 167 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:145:40 [INFO] [stdout] | [INFO] [stdout] 145 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 145 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:228:40 [INFO] [stdout] | [INFO] [stdout] 228 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 228 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:167:44 [INFO] [stdout] | [INFO] [stdout] 167 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 167 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 246 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:228:40 [INFO] [stdout] | [INFO] [stdout] 228 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 228 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | if target_gen != queue.gen() { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 246 | if target_gen != queue.r#gen() { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:304:33 [INFO] [stdout] | [INFO] [stdout] 304 | return self.gen() + (self.len() - 1) as u64; [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 304 | return self.r#gen() + (self.len() - 1) as u64; [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:304:33 [INFO] [stdout] | [INFO] [stdout] 304 | return self.gen() + (self.len() - 1) as u64; [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 304 | return self.r#gen() + (self.len() - 1) as u64; [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:309:14 [INFO] [stdout] | [INFO] [stdout] 309 | self.gen() + (self.len() - 1) as u64 [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 309 | self.r#gen() + (self.len() - 1) as u64 [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/ecs/wait.rs:309:14 [INFO] [stdout] | [INFO] [stdout] 309 | self.gen() + (self.len() - 1) as u64 [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 309 | self.r#gen() + (self.len() - 1) as u64 [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | (self.fn_get)(self.me, index) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub unsafe fn get_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:82:19 [INFO] [stdout] | [INFO] [stdout] 82 | let ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:81:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_ref` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | ptr.as_ref() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | let mut ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | ptr.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::GetterIterMut::<'a, T>::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:124:14 [INFO] [stdout] | [INFO] [stdout] 124 | Self(GetterIterMut::new(getter)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub const unsafe fn new(getter: RawGetter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:233:28 [INFO] [stdout] | [INFO] [stdout] 233 | let cur_node = self.nodes.get_unchecked(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | pub unsafe fn get_next_unchecked(&self, cur: ListPos) -> Option<(ListPos, &V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:246:28 [INFO] [stdout] | [INFO] [stdout] 246 | let cur_node = self.nodes.get_unchecked_mut(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | pub unsafe fn get_next_unchecked_mut(&mut self, cur: ListPos) -> Option<(ListPos, &mut V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:263:24 [INFO] [stdout] | [INFO] [stdout] 263 | let node = self.nodes.get_unchecked(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | unsafe fn get_value(&self, index: usize) -> Option<&V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:275:24 [INFO] [stdout] | [INFO] [stdout] 275 | let node = self.nodes.get_unchecked_mut(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:273:5 [INFO] [stdout] | [INFO] [stdout] 273 | unsafe fn get_value_mut(&mut self, index: usize) -> Option<&mut V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | (self.fn_get)(self.me, index) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub unsafe fn get_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:82:19 [INFO] [stdout] | [INFO] [stdout] 82 | let ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:81:5 [INFO] [stdout] | [INFO] [stdout] 81 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_ref` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | ptr.as_ref() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::RawGetter::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:99:23 [INFO] [stdout] | [INFO] [stdout] 99 | let mut ptr = self.raw_getter.get_unchecked(index).cast(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::as_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 100 | ptr.as_mut() [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::get::GetterIterMut::<'a, T>::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/get.rs:124:14 [INFO] [stdout] | [INFO] [stdout] 124 | Self(GetterIterMut::new(getter)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/get.rs:123:5 [INFO] [stdout] | [INFO] [stdout] 123 | pub const unsafe fn new(getter: RawGetter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:233:28 [INFO] [stdout] | [INFO] [stdout] 233 | let cur_node = self.nodes.get_unchecked(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:231:5 [INFO] [stdout] | [INFO] [stdout] 231 | pub unsafe fn get_next_unchecked(&self, cur: ListPos) -> Option<(ListPos, &V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:246:28 [INFO] [stdout] | [INFO] [stdout] 246 | let cur_node = self.nodes.get_unchecked_mut(cur.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | pub unsafe fn get_next_unchecked_mut(&mut self, cur: ListPos) -> Option<(ListPos, &mut V)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:263:24 [INFO] [stdout] | [INFO] [stdout] 263 | let node = self.nodes.get_unchecked(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | unsafe fn get_value(&self, index: usize) -> Option<&V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::opt_vec::OptVec::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/list.rs:275:24 [INFO] [stdout] | [INFO] [stdout] 275 | let node = self.nodes.get_unchecked_mut(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/list.rs:273:5 [INFO] [stdout] | [INFO] [stdout] 273 | unsafe fn get_value_mut(&mut self, index: usize) -> Option<&mut V> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::drop_in_place` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | (ptr as *mut T).drop_in_place(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | unsafe fn drop(ptr: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:80:29 [INFO] [stdout] | [INFO] [stdout] 80 | let src_clone = (*src).clone(); [INFO] [stdout] | ^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | unsafe fn clone(src: *const u8, dst: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | ptr::copy_nonoverlapping(src_ptr, dst, 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:167:19 [INFO] [stdout] | [INFO] [stdout] 167 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 166 | pub unsafe fn set_raw_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | (self.fn_drop())(dst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | self.update_unchecked(self.len(), ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:209:19 [INFO] [stdout] | [INFO] [stdout] 209 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:210:9 [INFO] [stdout] | [INFO] [stdout] 210 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:223:23 [INFO] [stdout] | [INFO] [stdout] 223 | let ptr = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | ptr::copy_nonoverlapping(ptr, buf, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:255:5 [INFO] [stdout] | [INFO] [stdout] 255 | unsafe fn _pop(&mut self) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:260:9 [INFO] [stdout] | [INFO] [stdout] 260 | self.get_ptr(self.len()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:32 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:328:9 [INFO] [stdout] | [INFO] [stdout] 328 | self.ptr.as_ptr().add(offset) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:326:5 [INFO] [stdout] | [INFO] [stdout] 326 | pub const unsafe fn get_ptr(&self, index: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | self.chunks[ci].push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | self.chunks[ci].update_unchecked(ii, ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:212:25 [INFO] [stdout] | [INFO] [stdout] 212 | let chunk = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:207:5 [INFO] [stdout] | [INFO] [stdout] 207 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | chunk.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:246:9 [INFO] [stdout] | [INFO] [stdout] 246 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | unsafe fn _pop(&mut self) -> &mut AnyVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 263 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_raw_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:312:9 [INFO] [stdout] | [INFO] [stdout] 312 | self.chunks[ci].get_raw_unchecked(ii) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] 119 | | .as_mut() [INFO] [stdout] 120 | | .unwrap_unchecked() [INFO] [stdout] | |_______________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] | |_____________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::drop_in_place` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:39:13 [INFO] [stdout] | [INFO] [stdout] 39 | (ptr as *mut T).drop_in_place(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | unsafe fn drop(ptr: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:80:29 [INFO] [stdout] | [INFO] [stdout] 80 | let src_clone = (*src).clone(); [INFO] [stdout] | ^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/types.rs:76:9 [INFO] [stdout] | [INFO] [stdout] 76 | unsafe fn clone(src: *const u8, dst: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/types.rs:82:13 [INFO] [stdout] | [INFO] [stdout] 82 | ptr::copy_nonoverlapping(src_ptr, dst, 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:167:19 [INFO] [stdout] | [INFO] [stdout] 167 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:166:5 [INFO] [stdout] | [INFO] [stdout] 166 | pub unsafe fn set_raw_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | (self.fn_drop())(dst); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | self.update_unchecked(self.len(), ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:178:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:209:19 [INFO] [stdout] | [INFO] [stdout] 209 | let dst = self.get_ptr(index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:210:9 [INFO] [stdout] | [INFO] [stdout] 210 | ptr::copy_nonoverlapping(ptr.as_ptr(), dst, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:223:23 [INFO] [stdout] | [INFO] [stdout] 223 | let ptr = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::copy_nonoverlapping` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:224:13 [INFO] [stdout] | [INFO] [stdout] 224 | ptr::copy_nonoverlapping(ptr, buf, self.item_size()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:255:5 [INFO] [stdout] | [INFO] [stdout] 255 | unsafe fn _pop(&mut self) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:260:9 [INFO] [stdout] | [INFO] [stdout] 260 | self.get_ptr(self.len()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:275:9 [INFO] [stdout] | [INFO] [stdout] 275 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 272 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_ptr` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:318:32 [INFO] [stdout] | [INFO] [stdout] 318 | NonNull::new_unchecked(self.get_ptr(index)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/any_vec.rs:328:9 [INFO] [stdout] | [INFO] [stdout] 328 | self.ptr.as_ptr().add(offset) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/any_vec.rs:326:5 [INFO] [stdout] | [INFO] [stdout] 326 | pub const unsafe fn get_ptr(&self, index: usize) -> *mut u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ecs::entity::TypedEntityContainer::::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:9 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/entity.rs:594:5 [INFO] [stdout] | [INFO] [stdout] 594 | / pub(crate) unsafe fn new_copy( [INFO] [stdout] 595 | | borrowed: &Borrowed, AtomicI32>, [INFO] [stdout] 596 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::MaybeUninit::::assume_init` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:19 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:173:9 [INFO] [stdout] | [INFO] [stdout] 173 | self.chunks[ci].push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 169 | pub unsafe fn push_raw(&mut self, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::update_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:199:9 [INFO] [stdout] | [INFO] [stdout] 199 | self.chunks[ci].update_unchecked(ii, ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:197:5 [INFO] [stdout] | [INFO] [stdout] 197 | pub unsafe fn update_unchecked(&mut self, index: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::_pop` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:212:25 [INFO] [stdout] | [INFO] [stdout] 212 | let chunk = self._pop(); [INFO] [stdout] | ^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:207:5 [INFO] [stdout] | [INFO] [stdout] 207 | pub unsafe fn pop_raw(&mut self, buf: *mut u8) -> Option<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | chunk.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::set_len` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:246:9 [INFO] [stdout] | [INFO] [stdout] 246 | self.set_len(self.len() - 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:244:5 [INFO] [stdout] | [INFO] [stdout] 244 | unsafe fn _pop(&mut self) -> &mut AnyVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::pop_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | self.pop_raw(buf); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:263:5 [INFO] [stdout] | [INFO] [stdout] 263 | pub unsafe fn swap_remove_raw(&mut self, index: usize, buf: *mut u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::any_vec::AnyVec::get_raw_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:312:9 [INFO] [stdout] | [INFO] [stdout] 312 | self.chunks[ci].get_raw_unchecked(ii) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/chunk_any_vec.rs:310:5 [INFO] [stdout] | [INFO] [stdout] 310 | pub unsafe fn get_raw_unchecked(&self, index: usize) -> NonNull { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:103:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub unsafe fn get_unchecked(&self, index: usize) -> &T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | self.values.get_unchecked(index).as_ref().unwrap_unchecked() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::option::Option::::unwrap_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] 119 | | .as_mut() [INFO] [stdout] 120 | | .unwrap_unchecked() [INFO] [stdout] | |_______________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ds/vec/opt_vec.rs:116:5 [INFO] [stdout] | [INFO] [stdout] 116 | pub unsafe fn get_unchecked_mut(&mut self, index: usize) -> &mut T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ds/vec/opt_vec.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | / self.values [INFO] [stdout] 118 | | .get_unchecked_mut(index) [INFO] [stdout] | |_____________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ecs::entity::TypedEntityContainer::::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:9 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/entity.rs:594:5 [INFO] [stdout] | [INFO] [stdout] 594 | / pub(crate) unsafe fn new_copy( [INFO] [stdout] 595 | | borrowed: &Borrowed, AtomicI32>, [INFO] [stdout] 596 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::MaybeUninit::::assume_init` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/entity.rs:601:19 [INFO] [stdout] | [INFO] [stdout] 601 | Self::new(uninit.assume_init()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/sparse_set.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | col.push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/sparse_set.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | unsafe fn add_value(&mut self, ci: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::list::SetList::::get_next_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/system.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | / self.active [INFO] [stdout] 244 | | .get_next_unchecked_mut(pos) [INFO] [stdout] | |________________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/system.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub(crate) unsafe fn iter_value_at(&mut self, pos: ListPos) -> Option<&mut SystemData> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::vec::chunk_any_vec::ChunkAnyVec::push_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/sparse_set.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | col.push_raw(ptr); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/sparse_set.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | unsafe fn add_value(&mut self, ci: usize, ptr: NonNull) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `ds::list::SetList::::get_next_unchecked_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/ecs/system.rs:243:9 [INFO] [stdout] | [INFO] [stdout] 243 | / self.active [INFO] [stdout] 244 | | .get_next_unchecked_mut(pos) [INFO] [stdout] | |________________________________________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/ecs/system.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | pub(crate) unsafe fn iter_value_at(&mut self, pos: ListPos) -> Option<&mut SystemData> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 12 previous errors; 42 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] error: could not compile `my-ecs` (lib) due to 13 previous errors; 42 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 12 previous errors; 42 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] error: could not compile `my-ecs` (lib test) due to 13 previous errors; 42 warnings emitted [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "6031ba513f045467411e2fad312198996f186b4d80746bee9eea03cd46b1a9e5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6031ba513f045467411e2fad312198996f186b4d80746bee9eea03cd46b1a9e5", kill_on_drop: false }` [INFO] [stdout] 6031ba513f045467411e2fad312198996f186b4d80746bee9eea03cd46b1a9e5