[INFO] fetching crate glommio 0.9.0... [INFO] checking glommio-0.9.0 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate glommio 0.9.0 into /workspace/builds/worker-0-tc2/source [INFO] validating manifest of crates.io crate glommio 0.9.0 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 glommio 0.9.0 [INFO] finished tweaking crates.io crate glommio 0.9.0 [INFO] tweaked toml for crates.io crate glommio 0.9.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 138 packages to latest compatible versions [INFO] [stderr] Adding ahash v0.7.8 (available: v0.8.11) [INFO] [stderr] Adding base64 v0.21.7 (available: v0.22.1) [INFO] [stderr] Adding buddy-alloc v0.4.2 (available: v0.5.1) [INFO] [stderr] Adding concurrent-queue v1.2.4 (available: v2.5.0) [INFO] [stderr] Adding env_logger v0.10.2 (available: v0.11.5) [INFO] [stderr] Adding fastrand v1.9.0 (available: v2.1.1) [INFO] [stderr] Adding flume v0.10.14 (available: v0.11.0) [INFO] [stderr] Adding futures-lite v1.13.0 (available: v2.3.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (available: v0.4.0) [INFO] [stderr] Adding matchers v0.1.0 (available: v0.2.0) [INFO] [stderr] Adding nix v0.27.1 (available: v0.29.0) [INFO] [stderr] Adding nu-ansi-term v0.46.0 (available: v0.50.1) [INFO] [stderr] Adding regex-automata v0.1.10 (available: v0.4.7) [INFO] [stderr] Adding regex-syntax v0.6.29 (available: v0.8.4) [INFO] [stderr] Adding rlimit v0.6.2 (available: v0.10.2) [INFO] [stderr] Adding sketches-ddsketch v0.1.3 (available: v0.3.0) [INFO] [stderr] Adding socket2 v0.4.10 (available: v0.5.7) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [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-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 24e2611f32053d34c278d65ee41dbe6ba5df5cdda2a1ef5684b2b3a9238953c9 [INFO] running `Command { std: "docker" "start" "-a" "24e2611f32053d34c278d65ee41dbe6ba5df5cdda2a1ef5684b2b3a9238953c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "24e2611f32053d34c278d65ee41dbe6ba5df5cdda2a1ef5684b2b3a9238953c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "24e2611f32053d34c278d65ee41dbe6ba5df5cdda2a1ef5684b2b3a9238953c9", kill_on_drop: false }` [INFO] [stdout] 24e2611f32053d34c278d65ee41dbe6ba5df5cdda2a1ef5684b2b3a9238953c9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 6067181388a4a97de715f17c90c2fd5fab9554a9487448d12fae0df676aba893 [INFO] running `Command { std: "docker" "start" "-a" "6067181388a4a97de715f17c90c2fd5fab9554a9487448d12fae0df676aba893", 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 libc v0.2.159 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Checking regex-syntax v0.8.4 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Checking adler2 v2.0.0 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Checking miniz_oxide v0.8.0 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling ahash v0.7.8 [INFO] [stderr] Compiling cc v1.1.21 [INFO] [stderr] Checking crossbeam-channel v0.5.13 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Checking regex-syntax v0.6.29 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Checking lazy_static v1.5.0 [INFO] [stderr] Checking gimli v0.31.0 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Checking crossbeam-queue v0.3.11 [INFO] [stderr] Checking object v0.36.4 [INFO] [stderr] Checking crc32fast v1.4.2 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking is-terminal v0.4.13 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking nanorand v0.7.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking cache-padded v1.3.0 [INFO] [stderr] Checking overload v0.1.1 [INFO] [stderr] Checking fastrand v1.9.0 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Compiling glommio v0.9.0 (/tmp/fixit) [INFO] [stderr] Checking waker-fn v1.2.0 [INFO] [stderr] Migrating build.rs from 2021 edition to 2024 [INFO] [stderr] Checking rustc-demangle v0.1.24 [INFO] [stderr] Checking owned-alloc v0.2.0 [INFO] [stderr] Checking lockfree v0.5.1 [INFO] [stderr] Checking futures-lite v1.13.0 [INFO] [stderr] Checking regex-automata v0.1.10 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking addr2line v0.24.1 [INFO] [stderr] Checking matchers v0.1.0 [INFO] [stderr] Checking nu-ansi-term v0.46.0 [INFO] [stderr] Checking regex v1.10.6 [INFO] [stderr] Checking concurrent-queue v1.2.4 [INFO] [stderr] Checking nix v0.27.1 [INFO] [stderr] Checking env_logger v0.10.2 [INFO] [stderr] Checking rlimit v0.6.2 [INFO] [stderr] Checking socket2 v0.5.7 [INFO] [stderr] Checking socket2 v0.4.10 [INFO] [stderr] Checking mio v1.0.2 [INFO] [stderr] Checking flate2 v1.0.33 [INFO] [stderr] Checking crossbeam v0.8.4 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Checking intrusive-collections v0.9.7 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking thread_local v1.1.8 [INFO] [stderr] Checking bitmaps v3.2.1 [INFO] [stderr] Checking bytes v1.7.2 [INFO] [stderr] Checking enclose v1.2.0 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Checking scoped-tls v1.0.1 [INFO] [stderr] Checking buddy-alloc v0.4.2 [INFO] [stderr] Checking sketches-ddsketch v0.1.3 [INFO] [stderr] Checking pretty_env_logger v0.5.0 [INFO] [stderr] Checking backtrace v0.3.74 [INFO] [stderr] Checking hdrhistogram v7.5.4 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Checking tokio v1.40.0 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking pin-project v1.1.5 [INFO] [stderr] Checking flume v0.10.14 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `glommio` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/io/buffered_file_stream.rs [INFO] [stderr] * src/io/dma_file_stream.rs [INFO] [stderr] * src/io/mod.rs [INFO] [stderr] * src/lib.rs [INFO] [stderr] * src/sys/blocking.rs [INFO] [stderr] * src/sys/membarrier.rs [INFO] [stderr] * src/sys/sysfs.rs [INFO] [stderr] * src/sys/uring.rs [INFO] [stderr] * src/task/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/lib.rs:275:6 [INFO] [stderr] | [INFO] [stderr] 275 | ($waker: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/blocking.rs:49:7 [INFO] [stderr] | [INFO] [stderr] 49 | ( $path: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/membarrier.rs:4:6 [INFO] [stderr] | [INFO] [stderr] 4 | ($cond: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:54:7 [INFO] [stderr] | [INFO] [stderr] 54 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:54:37 [INFO] [stderr] | [INFO] [stderr] 54 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:54:55 [INFO] [stderr] | [INFO] [stderr] 54 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:7 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:37 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:55 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:73 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1253:11 [INFO] [stderr] | [INFO] [stderr] 1253 | (into $woke:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1253:31 [INFO] [stderr] | [INFO] [stderr] 1253 | (into $woke:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1262:11 [INFO] [stderr] | [INFO] [stderr] 1262 | (into $output:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1262:33 [INFO] [stderr] | [INFO] [stderr] 1262 | (into $output:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1270:9 [INFO] [stderr] | [INFO] [stderr] 1270 | ($( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/task/mod.rs:67:6 [INFO] [stderr] | [INFO] [stderr] 67 | ($ptr:expr_2021, $name:tt, $($body:tt)*) => {{ [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/lib.rs:307:6 [INFO] [stderr] | [INFO] [stderr] 307 | ($e: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:320:6 [INFO] [stderr] | [INFO] [stderr] 320 | ($e: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:331:6 [INFO] [stderr] | [INFO] [stderr] 331 | ($e: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/mod.rs:105:6 [INFO] [stderr] | [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/mod.rs:105:23 [INFO] [stderr] | [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/mod.rs:105:38 [INFO] [stderr] | [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/mod.rs:105:55 [INFO] [stderr] | [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/mod.rs:119:6 [INFO] [stderr] | [INFO] [stderr] 119 | ($expr:expr_2021, $op:expr_2021, $obj: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/mod.rs:119:23 [INFO] [stderr] | [INFO] [stderr] 119 | ($expr:expr_2021, $op:expr_2021, $obj: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/mod.rs:119:38 [INFO] [stderr] | [INFO] [stderr] 119 | ($expr:expr_2021, $op:expr_2021, $obj: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:7 [INFO] [stderr] | [INFO] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:24 [INFO] [stderr] | [INFO] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:43 [INFO] [stderr] | [INFO] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:63 [INFO] [stderr] | [INFO] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:78 [INFO] [stderr] | [INFO] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/dma_file_stream.rs:33:7 [INFO] [stderr] | [INFO] [stderr] 33 | ( $state: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/dma_file_stream.rs:346:7 [INFO] [stderr] | [INFO] [stderr] 346 | ( $state:expr_2021, $res: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/dma_file_stream.rs:346:25 [INFO] [stderr] | [INFO] [stderr] 346 | ( $state:expr_2021, $res: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/io/dma_file_stream.rs:818:7 [INFO] [stderr] | [INFO] [stderr] 818 | ( $file: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] error: aborting due to 35 previous errors [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/executor/placement/mod.rs:1107:17 [INFO] [stdout] | [INFO] [stdout] 1107 | let mut gen = CpuSetGenerator::pool(p).unwrap(); [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/executor/placement/mod.rs:1110:21 [INFO] [stdout] | [INFO] [stdout] 1110 | let v = 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: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | ($waker: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] = 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] 275 | ($waker:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/blocking.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | ( $path: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] 49 | ( $path:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/membarrier.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | ($cond: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] 4 | ($cond:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | ( $map:expr, $property:tt, $major:expr, $minor: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] 54 | ( $map:expr_2021, $property:tt, $major:expr, $minor:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:54:39 [INFO] [stdout] | [INFO] [stdout] 54 | ( $map:expr, $property:tt, $major:expr, $minor: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] 54 | ( $map:expr, $property:tt, $major:expr_2021, $minor:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:54:52 [INFO] [stdout] | [INFO] [stdout] 54 | ( $map:expr, $property:tt, $major:expr, $minor: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] 54 | ( $map:expr, $property:tt, $major:expr, $minor:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr_2021, $property:tt, $major:expr, $minor:expr, $value:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:39 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr, $property:tt, $major:expr_2021, $minor:expr, $value:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:52 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr_2021, $value:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:65 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1253:17 [INFO] [stdout] | [INFO] [stdout] 1253 | (into $woke:expr; $( $ring: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] 1253 | (into $woke:expr_2021; $( $ring:expr ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1253:32 [INFO] [stdout] | [INFO] [stdout] 1253 | (into $woke:expr; $( $ring: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] 1253 | (into $woke:expr; $( $ring:expr_2021 ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1262:19 [INFO] [stdout] | [INFO] [stdout] 1262 | (into $output:expr; $( $ring: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] 1262 | (into $output:expr_2021; $( $ring:expr ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1262:34 [INFO] [stdout] | [INFO] [stdout] 1262 | (into $output:expr; $( $ring: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] 1262 | (into $output:expr; $( $ring:expr_2021 ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1270:15 [INFO] [stdout] | [INFO] [stdout] 1270 | ($( $ring: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] 1270 | ($( $ring:expr_2021 ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/task/mod.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | ($ptr:expr, $name:tt, $($body:tt)*) => {{ [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] 67 | ($ptr:expr_2021, $name:tt, $($body:tt)*) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/uring_sys/mod.rs:288:1 [INFO] [stdout] | [INFO] [stdout] 288 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 289 | | pub fn io_uring_queue_init( [INFO] [stdout] 290 | | entries: libc::c_uint, [INFO] [stdout] 291 | | ring: *mut io_uring, [INFO] [stdout] ... | [INFO] [stdout] 380 | | pub fn io_uring_unregister_personality(ring: *mut io_uring, id: libc::c_int) -> libc::c_int; [INFO] [stdout] 381 | | } [INFO] [stdout] | |_^ [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 #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/uring_sys/mod.rs:384:1 [INFO] [stdout] | [INFO] [stdout] 384 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 385 | | #[link_name = "rust_io_uring_opcode_supported"] [INFO] [stdout] 386 | | pub fn io_uring_opcode_supported(p: *mut io_uring_probe, op: libc::c_int) -> libc::c_int; [INFO] [stdout] ... | [INFO] [stdout] 688 | | pub fn io_uring_wait_cqe(ring: *mut io_uring, cqe_ptr: *mut *mut io_uring_cqe) -> libc::c_int; [INFO] [stdout] 689 | | } [INFO] [stdout] | |_^ [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:307:9 [INFO] [stdout] | [INFO] [stdout] 307 | ($e: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] 307 | ($e:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:320:9 [INFO] [stdout] | [INFO] [stdout] 320 | ($e: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] 320 | ($e:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | ($e: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] 331 | ($e:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr_2021, $op:expr, $path:expr, $fd:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:22 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr, $op:expr_2021, $path:expr, $fd:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:34 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr, $op:expr, $path:expr_2021, $fd:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:44 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr, $op:expr, $path:expr, $fd:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | ($expr:expr, $op:expr, $obj: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] 119 | ($expr:expr_2021, $op:expr, $obj:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:119:22 [INFO] [stdout] | [INFO] [stdout] 119 | ($expr:expr, $op:expr, $obj: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] 119 | ($expr:expr, $op:expr_2021, $obj:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:119:33 [INFO] [stdout] | [INFO] [stdout] 119 | ($expr:expr, $op:expr, $obj: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] 119 | ($expr:expr, $op:expr, $obj:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:13 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr_2021, $source:expr, $fileobj:expr, $cx:expr, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:27 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr_2021, $fileobj:expr, $cx:expr, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:42 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr, $fileobj:expr_2021, $cx:expr, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:52 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr_2021, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:63 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:33:14 [INFO] [stdout] | [INFO] [stdout] 33 | ( $state: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] 33 | ( $state:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:346:14 [INFO] [stdout] | [INFO] [stdout] 346 | ( $state:expr, $res: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] 346 | ( $state:expr_2021, $res:expr ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:346:25 [INFO] [stdout] | [INFO] [stdout] 346 | ( $state:expr, $res: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] 346 | ( $state:expr, $res:expr_2021 ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:818:13 [INFO] [stdout] | [INFO] [stdout] 818 | ( $file: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] 818 | ( $file:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::registrar::registered::UringReadBuf::prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | buf.prep_read(fd, self, 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/iou/sqe.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub unsafe fn prep_read(&mut self, fd: impl UringFd, buf: impl UringReadBuf, offset: u64) { [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 `uring_sys::io_uring_prep_readv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | uring_sys::io_uring_prep_readv(self.sqe, fd.as_raw_fd(), addr as _, len as _, offset as _); [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/iou/sqe.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / pub unsafe fn prep_read_vectored( [INFO] [stdout] 111 | | &mut self, [INFO] [stdout] 112 | | fd: impl UringFd, [INFO] [stdout] 113 | | bufs: &mut [io::IoSliceMut<'_>], [INFO] [stdout] 114 | | offset: u64, [INFO] [stdout] 115 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_read_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:133:9 [INFO] [stdout] | [INFO] [stdout] 133 | / uring_sys::io_uring_prep_read_fixed( [INFO] [stdout] 134 | | self.sqe, [INFO] [stdout] 135 | | fd.as_raw_fd(), [INFO] [stdout] 136 | | addr as _, [INFO] [stdout] ... | [INFO] [stdout] 139 | | buf_index as _, [INFO] [stdout] 140 | | ); [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/iou/sqe.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 124 | / pub unsafe fn prep_read_fixed( [INFO] [stdout] 125 | | &mut self, [INFO] [stdout] 126 | | fd: impl UringFd, [INFO] [stdout] 127 | | buf: &mut [u8], [INFO] [stdout] 128 | | offset: u64, [INFO] [stdout] 129 | | buf_index: u32, [INFO] [stdout] 130 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::registrar::registered::UringWriteBuf::prep_write` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 150 | buf.prep_write(fd, self, 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/iou/sqe.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | pub unsafe fn prep_write(&mut self, fd: impl UringFd, buf: impl UringWriteBuf, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_writev` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 163 | uring_sys::io_uring_prep_writev(self.sqe, fd.as_raw_fd(), addr as _, len as _, offset as _); [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/iou/sqe.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | / pub unsafe fn prep_write_vectored( [INFO] [stdout] 156 | | &mut self, [INFO] [stdout] 157 | | fd: impl UringFd, [INFO] [stdout] 158 | | bufs: &[io::IoSlice<'_>], [INFO] [stdout] 159 | | offset: u64, [INFO] [stdout] 160 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_write_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | / uring_sys::io_uring_prep_write_fixed( [INFO] [stdout] 180 | | self.sqe, [INFO] [stdout] 181 | | fd.as_raw_fd(), [INFO] [stdout] 182 | | addr as _, [INFO] [stdout] ... | [INFO] [stdout] 185 | | buf_index as _, [INFO] [stdout] 186 | | ); [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/iou/sqe.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | / pub unsafe fn prep_write_fixed( [INFO] [stdout] 171 | | &mut self, [INFO] [stdout] 172 | | fd: impl UringFd, [INFO] [stdout] 173 | | buf: &[u8], [INFO] [stdout] 174 | | offset: u64, [INFO] [stdout] 175 | | buf_index: usize, [INFO] [stdout] 176 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_fsync` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:193:9 [INFO] [stdout] | [INFO] [stdout] 193 | uring_sys::io_uring_prep_fsync(self.sqe, fd.as_raw_fd(), flags.bits() as _); [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/iou/sqe.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | pub unsafe fn prep_fsync(&mut self, fd: impl UringFd, flags: FsyncFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_splice` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:208:9 [INFO] [stdout] | [INFO] [stdout] 208 | / uring_sys::io_uring_prep_splice( [INFO] [stdout] 209 | | self.sqe, [INFO] [stdout] 210 | | fd_in, [INFO] [stdout] 211 | | off_in, [INFO] [stdout] ... | [INFO] [stdout] 215 | | flags.bits(), [INFO] [stdout] 216 | | ); [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/iou/sqe.rs:199:5 [INFO] [stdout] | [INFO] [stdout] 199 | / pub unsafe fn prep_splice( [INFO] [stdout] 200 | | &mut self, [INFO] [stdout] 201 | | fd_in: RawFd, [INFO] [stdout] 202 | | off_in: i64, [INFO] [stdout] ... | [INFO] [stdout] 206 | | flags: SpliceFlags, [INFO] [stdout] 207 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_recv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | uring_sys::io_uring_prep_recv(self.sqe, fd.as_raw_fd(), data, len, flags.bits()); [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/iou/sqe.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | pub unsafe fn prep_recv(&mut self, fd: impl UringFd, buf: &mut [u8], flags: MsgFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_send` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | uring_sys::io_uring_prep_send(self.sqe, fd.as_raw_fd(), data, len, flags.bits()); [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/iou/sqe.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 230 | pub unsafe fn prep_send(&mut self, fd: impl UringFd, buf: &[u8], flags: MsgFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_recvmsg` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:244:9 [INFO] [stdout] | [INFO] [stdout] 244 | uring_sys::io_uring_prep_recvmsg(self.sqe, fd.as_raw_fd(), msg, flags.bits() as _); [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/iou/sqe.rs:238:5 [INFO] [stdout] | [INFO] [stdout] 238 | / pub unsafe fn prep_recvmsg( [INFO] [stdout] 239 | | &mut self, [INFO] [stdout] 240 | | fd: impl UringFd, [INFO] [stdout] 241 | | msg: *mut libc::msghdr, [INFO] [stdout] 242 | | flags: MsgFlags, [INFO] [stdout] 243 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_sendmsg` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:255:9 [INFO] [stdout] | [INFO] [stdout] 255 | uring_sys::io_uring_prep_sendmsg(self.sqe, fd.as_raw_fd(), msg, flags.bits() as _); [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/iou/sqe.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | / pub unsafe fn prep_sendmsg( [INFO] [stdout] 250 | | &mut self, [INFO] [stdout] 251 | | fd: impl UringFd, [INFO] [stdout] 252 | | msg: *mut libc::msghdr, [INFO] [stdout] 253 | | flags: MsgFlags, [INFO] [stdout] 254 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_fallocate` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:268:9 [INFO] [stdout] | [INFO] [stdout] 268 | / uring_sys::io_uring_prep_fallocate( [INFO] [stdout] 269 | | self.sqe, [INFO] [stdout] 270 | | fd.as_raw_fd(), [INFO] [stdout] 271 | | flags.bits() as _, [INFO] [stdout] 272 | | offset as _, [INFO] [stdout] 273 | | size as _, [INFO] [stdout] 274 | | ); [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/iou/sqe.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | / pub unsafe fn prep_fallocate( [INFO] [stdout] 262 | | &mut self, [INFO] [stdout] 263 | | fd: impl UringFd, [INFO] [stdout] 264 | | offset: u64, [INFO] [stdout] 265 | | size: u64, [INFO] [stdout] 266 | | flags: FallocateFlags, [INFO] [stdout] 267 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_statx` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:288:9 [INFO] [stdout] | [INFO] [stdout] 288 | / uring_sys::io_uring_prep_statx( [INFO] [stdout] 289 | | self.sqe, [INFO] [stdout] 290 | | dirfd.as_raw_fd(), [INFO] [stdout] 291 | | path.as_ptr() as _, [INFO] [stdout] ... | [INFO] [stdout] 294 | | buf as _, [INFO] [stdout] 295 | | ); [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/iou/sqe.rs:280:5 [INFO] [stdout] | [INFO] [stdout] 280 | / pub unsafe fn prep_statx( [INFO] [stdout] 281 | | &mut self, [INFO] [stdout] 282 | | dirfd: impl UringFd, [INFO] [stdout] 283 | | path: &CStr, [INFO] [stdout] ... | [INFO] [stdout] 286 | | buf: &mut Statx, [INFO] [stdout] 287 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_openat` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:301:9 [INFO] [stdout] | [INFO] [stdout] 301 | / uring_sys::io_uring_prep_openat( [INFO] [stdout] 302 | | self.sqe, [INFO] [stdout] 303 | | fd.as_raw_fd(), [INFO] [stdout] 304 | | path.as_ptr() as _, [INFO] [stdout] 305 | | flags.bits(), [INFO] [stdout] 306 | | mode.bits(), [INFO] [stdout] 307 | | ); [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/iou/sqe.rs:300:5 [INFO] [stdout] | [INFO] [stdout] 300 | pub unsafe fn prep_openat(&mut self, fd: impl UringFd, path: &CStr, flags: OFlag, mode: Mode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_close` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 315 | uring_sys::io_uring_prep_close(self.sqe, fd.as_raw_fd()); [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/iou/sqe.rs:314:5 [INFO] [stdout] | [INFO] [stdout] 314 | pub unsafe fn prep_close(&mut self, fd: impl UringFd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_timeout` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:326:9 [INFO] [stdout] | [INFO] [stdout] 326 | / uring_sys::io_uring_prep_timeout( [INFO] [stdout] 327 | | self.sqe, [INFO] [stdout] 328 | | ts as *const _ as *mut _, [INFO] [stdout] 329 | | events as _, [INFO] [stdout] 330 | | flags.bits() as _, [INFO] [stdout] 331 | | ); [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/iou/sqe.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | / pub unsafe fn prep_timeout( [INFO] [stdout] 321 | | &mut self, [INFO] [stdout] 322 | | ts: &uring_sys::__kernel_timespec, [INFO] [stdout] 323 | | events: u32, [INFO] [stdout] 324 | | flags: TimeoutFlags, [INFO] [stdout] 325 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_timeout_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:336:9 [INFO] [stdout] | [INFO] [stdout] 336 | uring_sys::io_uring_prep_timeout_remove(self.sqe, user_data as _, 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/iou/sqe.rs:335:5 [INFO] [stdout] | [INFO] [stdout] 335 | pub unsafe fn prep_timeout_remove(&mut self, user_data: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_link_timeout` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:341:9 [INFO] [stdout] | [INFO] [stdout] 341 | uring_sys::io_uring_prep_link_timeout(self.sqe, ts as *const _ as *mut _, 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/iou/sqe.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | pub unsafe fn prep_link_timeout(&mut self, ts: &uring_sys::__kernel_timespec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_poll_add` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:346:9 [INFO] [stdout] | [INFO] [stdout] 346 | uring_sys::io_uring_prep_poll_add(self.sqe, fd.as_raw_fd(), poll_flags.bits()); [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/iou/sqe.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | pub unsafe fn prep_poll_add(&mut self, fd: impl UringFd, poll_flags: PollFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_poll_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:352:9 [INFO] [stdout] | [INFO] [stdout] 352 | uring_sys::io_uring_prep_poll_remove(self.sqe, user_data as _) [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/iou/sqe.rs:351:5 [INFO] [stdout] | [INFO] [stdout] 351 | pub unsafe fn prep_poll_remove(&mut self, user_data: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_connect` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:359:9 [INFO] [stdout] | [INFO] [stdout] 359 | uring_sys::io_uring_prep_connect(self.sqe, fd.as_raw_fd(), addr as *mut _, 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] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/iou/sqe.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | pub unsafe fn prep_connect(&mut self, fd: impl UringFd, socket_addr: &SockaddrStorage) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_accept` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:377:9 [INFO] [stdout] | [INFO] [stdout] 377 | uring_sys::io_uring_prep_accept(self.sqe, fd.as_raw_fd(), addr, len, flags.bits()); [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/iou/sqe.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | / pub unsafe fn prep_accept( [INFO] [stdout] 365 | | &mut self, [INFO] [stdout] 366 | | fd: impl UringFd, [INFO] [stdout] 367 | | accept: Option<&mut SockAddrStorage>, [INFO] [stdout] 368 | | flags: SockFlag, [INFO] [stdout] 369 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_fadvise` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:399:9 [INFO] [stdout] | [INFO] [stdout] 399 | uring_sys::io_uring_prep_fadvise(self.sqe, fd.as_raw_fd(), off as _, len as _, advice); [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/iou/sqe.rs:382:5 [INFO] [stdout] | [INFO] [stdout] 382 | / pub unsafe fn prep_fadvise( [INFO] [stdout] 383 | | &mut self, [INFO] [stdout] 384 | | fd: impl UringFd, [INFO] [stdout] 385 | | off: u64, [INFO] [stdout] 386 | | len: u64, [INFO] [stdout] 387 | | advice: PosixFadviseAdvice, [INFO] [stdout] 388 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_madvise` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:426:9 [INFO] [stdout] | [INFO] [stdout] 426 | / uring_sys::io_uring_prep_madvise( [INFO] [stdout] 427 | | self.sqe, [INFO] [stdout] 428 | | data.as_mut_ptr() as *mut _, [INFO] [stdout] 429 | | data.len() as _, [INFO] [stdout] 430 | | advice, [INFO] [stdout] 431 | | ); [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/iou/sqe.rs:404:5 [INFO] [stdout] | [INFO] [stdout] 404 | pub unsafe fn prep_madvise(&mut self, data: &mut [u8], advice: MmapAdvise) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_epoll_ctl` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 449 | uring_sys::io_uring_prep_epoll_ctl(self.sqe, epoll_fd, fd, op, event); [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/iou/sqe.rs:435:5 [INFO] [stdout] | [INFO] [stdout] 435 | / pub unsafe fn prep_epoll_ctl( [INFO] [stdout] 436 | | &mut self, [INFO] [stdout] 437 | | epoll_fd: RawFd, [INFO] [stdout] 438 | | op: EpollOp, [INFO] [stdout] 439 | | fd: RawFd, [INFO] [stdout] 440 | | event: Option<&mut EpollEvent>, [INFO] [stdout] 441 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_files_update` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:456:9 [INFO] [stdout] | [INFO] [stdout] 456 | uring_sys::io_uring_prep_files_update(self.sqe, addr, len, offset as _); [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/iou/sqe.rs:453:5 [INFO] [stdout] | [INFO] [stdout] 453 | pub unsafe fn prep_files_update(&mut self, files: &[RawFd], offset: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_provide_buffers` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:468:9 [INFO] [stdout] | [INFO] [stdout] 468 | / uring_sys::io_uring_prep_provide_buffers( [INFO] [stdout] 469 | | self.sqe, [INFO] [stdout] 470 | | addr, [INFO] [stdout] 471 | | len as _, [INFO] [stdout] ... | [INFO] [stdout] 474 | | index as _, [INFO] [stdout] 475 | | ); [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/iou/sqe.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | / pub unsafe fn prep_provide_buffers( [INFO] [stdout] 460 | | &mut self, [INFO] [stdout] 461 | | buffers: &mut [u8], [INFO] [stdout] 462 | | count: u32, [INFO] [stdout] 463 | | group: BufferGroupId, [INFO] [stdout] 464 | | index: u32, [INFO] [stdout] 465 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_remove_buffers` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:479:9 [INFO] [stdout] | [INFO] [stdout] 479 | uring_sys::io_uring_prep_remove_buffers(self.sqe, count as _, id.id as _); [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/iou/sqe.rs:478:5 [INFO] [stdout] | [INFO] [stdout] 478 | pub unsafe fn prep_remove_buffers(&mut self, count: u32, id: BufferGroupId) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_cancel` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:484:9 [INFO] [stdout] | [INFO] [stdout] 484 | uring_sys::io_uring_prep_cancel(self.sqe, user_data as _, flags); [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/iou/sqe.rs:483:5 [INFO] [stdout] | [INFO] [stdout] 483 | pub unsafe fn prep_cancel(&mut self, user_data: u64, flags: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_nop` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:490:9 [INFO] [stdout] | [INFO] [stdout] 490 | uring_sys::io_uring_prep_nop(self.sqe); [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/iou/sqe.rs:489:5 [INFO] [stdout] | [INFO] [stdout] 489 | pub unsafe fn prep_nop(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_read_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 225 | / uring_sys::io_uring_prep_read_fixed( [INFO] [stdout] 226 | | sqe.raw_mut(), [INFO] [stdout] 227 | | fd.as_raw_fd(), [INFO] [stdout] 228 | | self.data.as_mut_ptr() as _, [INFO] [stdout] ... | [INFO] [stdout] 231 | | self.index() as _, [INFO] [stdout] 232 | | ); [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/iou/registrar/registered.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 224 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | sqe.raw_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 `uring_sys::io_uring_prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:239:9 [INFO] [stdout] | [INFO] [stdout] 239 | / uring_sys::io_uring_prep_read( [INFO] [stdout] 240 | | sqe.raw_mut(), [INFO] [stdout] 241 | | fd.as_raw_fd(), [INFO] [stdout] 242 | | self.as_mut_ptr() as _, [INFO] [stdout] 243 | | self.len() as _, [INFO] [stdout] 244 | | offset as _, [INFO] [stdout] 245 | | ); [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/iou/registrar/registered.rs:238:5 [INFO] [stdout] | [INFO] [stdout] 238 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:240:13 [INFO] [stdout] | [INFO] [stdout] 240 | sqe.raw_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 `uring_sys::io_uring_prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:252:9 [INFO] [stdout] | [INFO] [stdout] 252 | / uring_sys::io_uring_prep_read( [INFO] [stdout] 253 | | sqe.raw_mut(), [INFO] [stdout] 254 | | fd.as_raw_fd(), [INFO] [stdout] 255 | | self as *mut _ as _, [INFO] [stdout] 256 | | 8, [INFO] [stdout] 257 | | offset as _, [INFO] [stdout] 258 | | ); [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/iou/registrar/registered.rs:251:5 [INFO] [stdout] | [INFO] [stdout] 251 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:253:13 [INFO] [stdout] | [INFO] [stdout] 253 | sqe.raw_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 `uring_sys::io_uring_prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:265:9 [INFO] [stdout] | [INFO] [stdout] 265 | / uring_sys::io_uring_prep_read( [INFO] [stdout] 266 | | sqe.raw_mut(), [INFO] [stdout] 267 | | fd.as_raw_fd(), [INFO] [stdout] 268 | | self.as_mut_ptr() as _, [INFO] [stdout] 269 | | self.len() as _, [INFO] [stdout] 270 | | offset as _, [INFO] [stdout] 271 | | ); [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/iou/registrar/registered.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn prep_read(mut self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:266:13 [INFO] [stdout] | [INFO] [stdout] 266 | sqe.raw_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 `uring_sys::io_uring_prep_readv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:278:9 [INFO] [stdout] | [INFO] [stdout] 278 | / uring_sys::io_uring_prep_readv( [INFO] [stdout] 279 | | sqe.raw_mut(), [INFO] [stdout] 280 | | fd.as_raw_fd(), [INFO] [stdout] 281 | | self.as_mut_ptr() as _, [INFO] [stdout] 282 | | self.len() as _, [INFO] [stdout] 283 | | offset as _, [INFO] [stdout] 284 | | ); [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/iou/registrar/registered.rs:277:5 [INFO] [stdout] | [INFO] [stdout] 277 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:279:13 [INFO] [stdout] | [INFO] [stdout] 279 | sqe.raw_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 `uring_sys::io_uring_prep_readv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:291:9 [INFO] [stdout] | [INFO] [stdout] 291 | / uring_sys::io_uring_prep_readv( [INFO] [stdout] 292 | | sqe.raw_mut(), [INFO] [stdout] 293 | | fd.as_raw_fd(), [INFO] [stdout] 294 | | self.as_mut_ptr() as _, [INFO] [stdout] 295 | | self.len() as _, [INFO] [stdout] 296 | | offset as _, [INFO] [stdout] 297 | | ); [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/iou/registrar/registered.rs:290:5 [INFO] [stdout] | [INFO] [stdout] 290 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:292:13 [INFO] [stdout] | [INFO] [stdout] 292 | sqe.raw_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 `uring_sys::io_uring_prep_write_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:304:9 [INFO] [stdout] | [INFO] [stdout] 304 | / uring_sys::io_uring_prep_write_fixed( [INFO] [stdout] 305 | | sqe.raw_mut(), [INFO] [stdout] 306 | | fd.as_raw_fd(), [INFO] [stdout] 307 | | self.data.as_ptr() as _, [INFO] [stdout] ... | [INFO] [stdout] 310 | | self.index() as _, [INFO] [stdout] 311 | | ); [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/iou/registrar/registered.rs:303:5 [INFO] [stdout] | [INFO] [stdout] 303 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:305:13 [INFO] [stdout] | [INFO] [stdout] 305 | sqe.raw_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 `uring_sys::io_uring_prep_write` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | / uring_sys::io_uring_prep_write( [INFO] [stdout] 319 | | sqe.raw_mut(), [INFO] [stdout] 320 | | fd.as_raw_fd(), [INFO] [stdout] 321 | | self.as_ptr() as _, [INFO] [stdout] 322 | | self.len() as _, [INFO] [stdout] 323 | | offset as _, [INFO] [stdout] 324 | | ); [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/iou/registrar/registered.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:319:13 [INFO] [stdout] | [INFO] [stdout] 319 | sqe.raw_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 `uring_sys::io_uring_prep_write` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | / uring_sys::io_uring_prep_write( [INFO] [stdout] 332 | | sqe.raw_mut(), [INFO] [stdout] 333 | | fd.as_raw_fd(), [INFO] [stdout] 334 | | self.as_ptr() as _, [INFO] [stdout] 335 | | self.len() as _, [INFO] [stdout] 336 | | offset as _, [INFO] [stdout] 337 | | ); [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/iou/registrar/registered.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 330 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:332:13 [INFO] [stdout] | [INFO] [stdout] 332 | sqe.raw_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 `uring_sys::io_uring_prep_writev` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | / uring_sys::io_uring_prep_writev( [INFO] [stdout] 345 | | sqe.raw_mut(), [INFO] [stdout] 346 | | fd.as_raw_fd(), [INFO] [stdout] 347 | | self.as_ptr() as _, [INFO] [stdout] 348 | | self.len() as _, [INFO] [stdout] 349 | | offset as _, [INFO] [stdout] 350 | | ); [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/iou/registrar/registered.rs:343:5 [INFO] [stdout] | [INFO] [stdout] 343 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:345:13 [INFO] [stdout] | [INFO] [stdout] 345 | sqe.raw_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 `uring_sys::io_uring_prep_writev` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:357:9 [INFO] [stdout] | [INFO] [stdout] 357 | / uring_sys::io_uring_prep_writev( [INFO] [stdout] 358 | | sqe.raw_mut(), [INFO] [stdout] 359 | | fd.as_raw_fd(), [INFO] [stdout] 360 | | self.as_ptr() as _, [INFO] [stdout] 361 | | self.len() as _, [INFO] [stdout] 362 | | offset as _, [INFO] [stdout] 363 | | ); [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/iou/registrar/registered.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:358:13 [INFO] [stdout] | [INFO] [stdout] 358 | sqe.raw_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 `nix::sys::socket::SockaddrLike::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/sys/mod.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | Ok(T::from_raw(addr.as_ptr() as *const _, Some(addr.len())).unwrap()) [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/sys/mod.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / pub(crate) unsafe fn ssptr_to_sockaddr( [INFO] [stdout] 110 | | ss: MaybeUninit, [INFO] [stdout] 111 | | len: usize, [INFO] [stdout] 112 | | ) -> io::Result { [INFO] [stdout] | |__________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `nix::sys::socket::SockaddrLike::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/sys/mod.rs:121:12 [INFO] [stdout] | [INFO] [stdout] 121 | Ok(T::from_raw(ss.as_ptr() as *const _, Some(len as _)).unwrap()) [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 `task::raw::RawTask::::notifier` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | self.notifier().id() [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/task/raw.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | unsafe fn my_id(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:169:10 [INFO] [stdout] | [INFO] [stdout] 169 | &(*self.header).notifier [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/task/raw.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | unsafe fn notifier(&self) -> &sys::SleepNotifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::my_id` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:225:38 [INFO] [stdout] | [INFO] [stdout] 225 | if Self::thread_id() != Some(raw.my_id()) { [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/task/raw.rs:223:5 [INFO] [stdout] | [INFO] [stdout] 223 | unsafe fn do_wake(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::notifier` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:227:32 [INFO] [stdout] | [INFO] [stdout] 227 | let notifier = raw.notifier(); [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::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:229:21 [INFO] [stdout] | [INFO] [stdout] 229 | Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::clone_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:229:37 [INFO] [stdout] | [INFO] [stdout] 229 | Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:230:21 [INFO] [stdout] | [INFO] [stdout] 230 | (*raw.header).latency_matters, [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:234:25 [INFO] [stdout] | [INFO] [stdout] 234 | let state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:241:21 [INFO] [stdout] | [INFO] [stdout] 241 | (*(raw.header as *mut Header)).state = state | SCHEDULED; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::schedule` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:244:25 [INFO] [stdout] | [INFO] [stdout] 244 | Self::schedule(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::do_wake` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:254:13 [INFO] [stdout] | [INFO] [stdout] 254 | Self::do_wake(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/task/raw.rs:252:5 [INFO] [stdout] | [INFO] [stdout] 252 | unsafe fn wake(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | Self::drop_waker(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::do_wake` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:262:13 [INFO] [stdout] | [INFO] [stdout] 262 | Self::do_wake(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/task/raw.rs:260:5 [INFO] [stdout] | [INFO] [stdout] 260 | unsafe fn wake_by_ref(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:270:41 [INFO] [stdout] | [INFO] [stdout] 270 | Self::increment_references(&*(raw.header as *mut Header)); [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/task/raw.rs:267:5 [INFO] [stdout] | [INFO] [stdout] 267 | unsafe fn clone_waker(ptr: *const ()) -> RawWaker { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::my_id` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:301:42 [INFO] [stdout] | [INFO] [stdout] 301 | if Self::thread_id() != Some(raw.my_id()) { [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/task/raw.rs:297:5 [INFO] [stdout] | [INFO] [stdout] 297 | unsafe fn drop_waker(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:306:52 [INFO] [stdout] | [INFO] [stdout] 306 | if Self::decrement_references(&*(raw.header as *mut Header)) == 0 { [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::notifier` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:307:40 [INFO] [stdout] | [INFO] [stdout] 307 | let notifier = raw.notifier(); [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::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:309:29 [INFO] [stdout] | [INFO] [stdout] 309 | ... Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::clone_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:309:45 [INFO] [stdout] | [INFO] [stdout] 309 | ... Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:310:29 [INFO] [stdout] | [INFO] [stdout] 310 | ... (*raw.header).latency_matters, [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:317:52 [INFO] [stdout] | [INFO] [stdout] 317 | let refs = Self::decrement_references(&*(raw.header as *mut Header)); [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:319:25 [INFO] [stdout] | [INFO] [stdout] 319 | let state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::schedule` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:329:25 [INFO] [stdout] | [INFO] [stdout] 329 | Self::schedule(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:331:21 [INFO] [stdout] | [INFO] [stdout] 331 | (*(raw.header as *mut Header)).state = SCHEDULED | CLOSED; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::destroy` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | Self::destroy(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:351:52 [INFO] [stdout] | [INFO] [stdout] 351 | let refs = Self::decrement_references(&*(raw.header as *mut Header)); [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/task/raw.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | unsafe fn drop_task(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:353:25 [INFO] [stdout] | [INFO] [stdout] 353 | let state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::destroy` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:358:17 [INFO] [stdout] | [INFO] [stdout] 358 | Self::destroy(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:370:41 [INFO] [stdout] | [INFO] [stdout] 370 | Self::increment_references(&*(raw.header as *mut Header)); [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/task/raw.rs:367:5 [INFO] [stdout] | [INFO] [stdout] 367 | unsafe fn schedule(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:377:22 [INFO] [stdout] | [INFO] [stdout] 377 | Some(Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::clone_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:377:38 [INFO] [stdout] | [INFO] [stdout] 377 | Some(Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:383:27 [INFO] [stdout] | [INFO] [stdout] 383 | raw_task: NonNull::new_unchecked(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]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:386:13 [INFO] [stdout] | [INFO] [stdout] 386 | (*raw.schedule)(task); [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] [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/task/raw.rs:398:13 [INFO] [stdout] | [INFO] [stdout] 398 | raw.future.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/task/raw.rs:393:5 [INFO] [stdout] | [INFO] [stdout] 393 | unsafe fn drop_future(ptr: *const ()) { [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/task/raw.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | (raw.schedule as *mut S).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/task/raw.rs:413:5 [INFO] [stdout] | [INFO] [stdout] 413 | unsafe fn destroy(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:428:13 [INFO] [stdout] | [INFO] [stdout] 428 | alloc::alloc::dealloc(ptr as *mut u8, task_layout.layout); [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/task/raw.rs:413:5 [INFO] [stdout] | [INFO] [stdout] 413 | unsafe fn destroy(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:439:25 [INFO] [stdout] | [INFO] [stdout] 439 | let mut state = (*raw.header).state; [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/task/raw.rs:436:5 [INFO] [stdout] | [INFO] [stdout] 436 | unsafe fn run(ptr: *const ()) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_future` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:445:13 [INFO] [stdout] | [INFO] [stdout] 445 | Self::drop_future(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | (*(raw.header as *mut Header)).state &= !SCHEDULED; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | (*(raw.header as *mut Header)).notify(None); [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_task` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:454:13 [INFO] [stdout] | [INFO] [stdout] 454 | Self::drop_task(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:459:9 [INFO] [stdout] | [INFO] [stdout] 459 | (*(raw.header as *mut Header)).state = state; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:463:39 [INFO] [stdout] | [INFO] [stdout] 463 | let waker = ManuallyDrop::new(Waker::from_raw(RawWaker::new(ptr, &Self::RAW_WAKER_VTABLE))); [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::pin::Pin::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:469:40 [INFO] [stdout] | [INFO] [stdout] 469 | let poll = ::poll(Pin::new_unchecked(&mut *raw.future), cx); [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]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:469:64 [INFO] [stdout] | [INFO] [stdout] 469 | let poll = ::poll(Pin::new_unchecked(&mut *raw.future), cx); [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:473:17 [INFO] [stdout] | [INFO] [stdout] 473 | state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_future` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | Self::drop_future(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::write` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:481:17 [INFO] [stdout] | [INFO] [stdout] 481 | raw.output.write(out); [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]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | (*(raw.header as *mut Header)).state = new; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::read` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:500:35 [INFO] [stdout] | [INFO] [stdout] 500 | output = Some(raw.output.read()); [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]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:504:17 [INFO] [stdout] | [INFO] [stdout] 504 | (*(raw.header as *mut Header)).notify(None); [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_future` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:520:21 [INFO] [stdout] | [INFO] [stdout] 520 | Self::drop_future(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:523:17 [INFO] [stdout] | [INFO] [stdout] 523 | (*(raw.header as *mut Header)).state = new; [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:530:21 [INFO] [stdout] | [INFO] [stdout] 530 | (*(raw.header as *mut Header)).notify(None); [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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::schedule` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:534:21 [INFO] [stdout] | [INFO] [stdout] 534 | Self::schedule(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_task` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:539:9 [INFO] [stdout] | [INFO] [stdout] 539 | Self::drop_task(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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `libc::syscall` is unsafe and requires unsafe block [INFO] [stdout] --> src/uring_sys/syscalls.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | libc::syscall(__NR_io_uring_register, fd, opcode, arg, nr_args) as libc::c_int [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/uring_sys/syscalls.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / pub unsafe fn io_uring_register( [INFO] [stdout] 12 | | fd: libc::c_int, [INFO] [stdout] 13 | | opcode: libc::c_uint, [INFO] [stdout] 14 | | arg: *const libc::c_void, [INFO] [stdout] 15 | | nr_args: libc::c_uint, [INFO] [stdout] 16 | | ) -> libc::c_int { [INFO] [stdout] | |________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `libc::syscall` is unsafe and requires unsafe block [INFO] [stdout] --> src/uring_sys/syscalls.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | libc::syscall(__NR_io_uring_setup, entries, p) as libc::c_int [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/uring_sys/syscalls.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | pub unsafe fn io_uring_setup(entries: libc::c_uint, p: *mut io_uring_params) -> libc::c_int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `libc::syscall` is unsafe and requires unsafe block [INFO] [stdout] --> src/uring_sys/syscalls.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | / libc::syscall( [INFO] [stdout] 32 | | __NR_io_uring_enter, [INFO] [stdout] 33 | | fd, [INFO] [stdout] 34 | | to_submit, [INFO] [stdout] ... | [INFO] [stdout] 38 | | core::mem::size_of::(), [INFO] [stdout] 39 | | ) as libc::c_int [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/uring_sys/syscalls.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | / pub unsafe fn io_uring_enter( [INFO] [stdout] 25 | | fd: libc::c_int, [INFO] [stdout] 26 | | to_submit: libc::c_uint, [INFO] [stdout] 27 | | min_complete: libc::c_uint, [INFO] [stdout] 28 | | flags: libc::c_uint, [INFO] [stdout] 29 | | sig: *const libc::sigset_t, [INFO] [stdout] 30 | | ) -> libc::c_int { [INFO] [stdout] | |________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/channels/local_channel.rs:275:19 [INFO] [stdout] | [INFO] [stdout] 275 | let ptr = (value as *const u8).add(offset_of!(WaiterNode, link)); [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/channels/local_channel.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 268 | / unsafe fn get_link( [INFO] [stdout] 269 | | &self, [INFO] [stdout] 270 | | value: *const ::Value, [INFO] [stdout] 271 | | ) -> ::LinkPtr { [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/channels/local_channel.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | core::ptr::NonNull::new_unchecked(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 `executor::ExecutorProxy::spawn_scoped_local` is unsafe and requires unsafe block [INFO] [stdout] --> src/executor/mod.rs:2033:5 [INFO] [stdout] | [INFO] [stdout] 2033 | executor().spawn_scoped_local(future) [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/executor/mod.rs:2032:1 [INFO] [stdout] | [INFO] [stdout] 2032 | pub unsafe fn spawn_scoped_local<'a, T>(future: impl Future + 'a) -> ScopedTask<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `executor::ExecutorProxy::spawn_scoped_local_into` is unsafe and requires unsafe block [INFO] [stdout] --> src/executor/mod.rs:2074:5 [INFO] [stdout] | [INFO] [stdout] 2074 | executor().spawn_scoped_local_into(future, handle) [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/executor/mod.rs:2070:1 [INFO] [stdout] | [INFO] [stdout] 2070 | / pub unsafe fn spawn_scoped_local_into<'a, T>( [INFO] [stdout] 2071 | | future: impl Future + 'a, [INFO] [stdout] 2072 | | handle: TaskQueueHandle, [INFO] [stdout] 2073 | | ) -> Result> { [INFO] [stdout] | |______________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/buffered_file.rs:42:19 [INFO] [stdout] | [INFO] [stdout] 42 | file: GlommioFile::from_raw_fd(fd), [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/io/buffered_file.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `io::read_result::ReadResultInner::slice_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/read_result.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | ReadResultInner::slice_unchecked(this.0.as_ref().unwrap(), extra_offset, 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] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/io/read_result.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | pub unsafe fn slice_unchecked(this: &Self, extra_offset: usize, len: usize) -> Self { [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/io/read_result.rs:143:18 [INFO] [stdout] | [INFO] [stdout] 143 | mem: NonNull::new_unchecked(this.mem.as_ptr().add(extra_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/io/read_result.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 126 | unsafe fn slice_unchecked(this: &Self, extra_offset: usize, len: NonZeroUsize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [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/io/read_result.rs:143:41 [INFO] [stdout] | [INFO] [stdout] 143 | mem: NonNull::new_unchecked(this.mem.as_ptr().add(extra_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] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/sched.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | / std::slice::from_raw_parts( [INFO] [stdout] 210 | | self.inner [INFO] [stdout] 211 | | .source [INFO] [stdout] 212 | | .buffer() [INFO] [stdout] ... | [INFO] [stdout] 215 | | (self.offseted_range.end - self.offseted_range.start) as usize, [INFO] [stdout] 216 | | ) [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/io/sched.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | pub(crate) unsafe fn as_bytes(&self) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/sched.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | / self.inner [INFO] [stdout] 211 | | .source [INFO] [stdout] 212 | | .buffer() [INFO] [stdout] 213 | | .as_ptr() [INFO] [stdout] 214 | | .add(self.offseted_range.start as usize), [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::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/datagram.rs:67:22 [INFO] [stdout] | [INFO] [stdout] 67 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/datagram.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/stream.rs:392:22 [INFO] [stdout] | [INFO] [stdout] 392 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/stream.rs:391:5 [INFO] [stdout] | [INFO] [stdout] 391 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/tcp_socket.rs:83:18 [INFO] [stdout] | [INFO] [stdout] 83 | let sk = Socket::from_raw_fd(fd); [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/net/tcp_socket.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/tcp_socket.rs:391:22 [INFO] [stdout] | [INFO] [stdout] 391 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/tcp_socket.rs:390:5 [INFO] [stdout] | [INFO] [stdout] 390 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/udp_socket.rs:40:22 [INFO] [stdout] | [INFO] [stdout] 40 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/udp_socket.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/unix.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | stream: GlommioStream::from_raw_fd(fd as _), [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/net/unix.rs:283:5 [INFO] [stdout] | [INFO] [stdout] 283 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/sync/rwlock.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | let ptr = (value as *const u8).add(offset_of!(WaiterNode, link)); [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/sync/rwlock.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | / unsafe fn get_link( [INFO] [stdout] 122 | | &self, [INFO] [stdout] 123 | | value: *const ::Value, [INFO] [stdout] 124 | | ) -> ::LinkPtr { [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/sync/rwlock.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | core::ptr::NonNull::new_unchecked(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 `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/sync/semaphore.rs:87:19 [INFO] [stdout] | [INFO] [stdout] 87 | let ptr = (value as *const u8).add(offset_of!(WaiterNode, link)); [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/sync/semaphore.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | / unsafe fn get_link( [INFO] [stdout] 80 | | &self, [INFO] [stdout] 81 | | value: *const ::Value, [INFO] [stdout] 82 | | ) -> ::LinkPtr { [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/sync/semaphore.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | core::ptr::NonNull::new_unchecked(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: method `in_kernel` is never used [INFO] [stdout] --> src/sys/uring.rs:640:8 [INFO] [stdout] | [INFO] [stdout] 636 | pub(crate) trait UringCommon { [INFO] [stdout] | ----------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 640 | fn in_kernel(&self) -> usize; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | ) -> io::Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 53 | ) -> io::Result + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:68:21 [INFO] [stdout] | [INFO] [stdout] 68 | ) -> io::Result> + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 68 | ) -> io::Result> + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:83:21 [INFO] [stdout] | [INFO] [stdout] 83 | ) -> io::Result> + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 83 | ) -> io::Result> + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:117:21 [INFO] [stdout] | [INFO] [stdout] 117 | ) -> io::Result + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 117 | ) -> io::Result + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | ) -> io::Result + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 150 | ) -> io::Result + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:263:33 [INFO] [stdout] | [INFO] [stdout] 263 | let iopoll = if let Err(err) = source.collect_rw().await { [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/reactor.rs:275:17 [INFO] [stdout] | [INFO] [stdout] 275 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 263 ~ let iopoll = match source.collect_rw().await { Err(err) => { [INFO] [stdout] 264 | if let Some(libc::ENOTSUP) = err.raw_os_error() { [INFO] [stdout] ... [INFO] [stdout] 274 | } [INFO] [stdout] 275 ~ } _ => { [INFO] [stdout] 276 | true [INFO] [stdout] 277 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:264:24 [INFO] [stdout] | [INFO] [stdout] 264 | if let Some(libc::ENOTSUP) = err.raw_os_error() { [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/reactor.rs:266:21 [INFO] [stdout] | [INFO] [stdout] 266 | } 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] 264 ~ match err.raw_os_error() { Some(libc::ENOTSUP) => { [INFO] [stdout] 265 | false [INFO] [stdout] 266 ~ } _ => { [INFO] [stdout] 267 | // The IO requests failed, but not because the poll ring doesn't work. [INFO] [stdout] ... [INFO] [stdout] 273 | false [INFO] [stdout] 274 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:357:10 [INFO] [stdout] | [INFO] [stdout] 357 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:351:9 [INFO] [stdout] | [INFO] [stdout] 351 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 357 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:574:16 [INFO] [stdout] | [INFO] [stdout] 574 | if let Some(source) = [INFO] [stdout] | ________________^ [INFO] [stdout] 575 | | scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [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/reactor.rs:578:13 [INFO] [stdout] | [INFO] [stdout] 578 | } 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] 574 ~ match scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [INFO] [stdout] 575 ~ { Some(source) => { [INFO] [stdout] 576 | source [INFO] [stdout] 577 ~ } _ => { [INFO] [stdout] 578 | self.sys.read_dma(&source, pos, size); [INFO] [stdout] 579 | scheduler.schedule(source, pos..pos + size as u64) [INFO] [stdout] 580 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:625:16 [INFO] [stdout] | [INFO] [stdout] 625 | if let Some(source) = [INFO] [stdout] | ________________^ [INFO] [stdout] 626 | | scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [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/reactor.rs:629:13 [INFO] [stdout] | [INFO] [stdout] 629 | } 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] 625 ~ match scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [INFO] [stdout] 626 ~ { Some(source) => { [INFO] [stdout] 627 | source [INFO] [stdout] 628 ~ } _ => { [INFO] [stdout] 629 | self.sys.read_buffered(&source, pos, size); [INFO] [stdout] 630 | scheduler.schedule(source, pos..pos + size as u64) [INFO] [stdout] 631 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:657:61 [INFO] [stdout] | [INFO] [stdout] 657 | pub(crate) fn truncate(&self, raw: RawFd, size: u64) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:657:28 [INFO] [stdout] | [INFO] [stdout] 657 | pub(crate) fn truncate(&self, raw: RawFd, size: u64) -> impl Future { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 657 | pub(crate) fn truncate(&self, raw: RawFd, size: u64) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:667:68 [INFO] [stdout] | [INFO] [stdout] 667 | pub(crate) fn rename(&self, old_path: P, new_path: Q) -> impl Future [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:667:32 [INFO] [stdout] | [INFO] [stdout] 667 | pub(crate) fn rename(&self, old_path: P, new_path: Q) -> impl Future [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 667 | pub(crate) fn rename(&self, old_path: P, new_path: Q) -> impl Future + use [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:685:66 [INFO] [stdout] | [INFO] [stdout] 685 | pub(crate) fn remove_file>(&self, path: P) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:685:47 [INFO] [stdout] | [INFO] [stdout] 685 | pub(crate) fn remove_file>(&self, path: P) -> impl Future { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 685 | pub(crate) fn remove_file>(&self, path: P) -> impl Future + use

{ [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:699:10 [INFO] [stdout] | [INFO] [stdout] 699 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:696:9 [INFO] [stdout] | [INFO] [stdout] 696 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 699 | ) -> impl Future + use

{ [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:712:10 [INFO] [stdout] | [INFO] [stdout] 712 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:710:9 [INFO] [stdout] | [INFO] [stdout] 710 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 712 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/mod.rs:335:15 [INFO] [stdout] | [INFO] [stdout] 335 | while let Ok(waker) = self.foreign_wakes.try_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/sys/mod.rs:338:9 [INFO] [stdout] | [INFO] [stdout] 338 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/blocking.rs:168:19 [INFO] [stdout] | [INFO] [stdout] 168 | while let Ok(el) = rx.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/sys/blocking.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 177 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/blocking.rs:227:10 [INFO] [stdout] | [INFO] [stdout] 227 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/blocking.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 227 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/source.rs:240:16 [INFO] [stdout] | [INFO] [stdout] 240 | if let Some(lat) = inner.wakers.timestamps() { [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/sys/source.rs:261:13 [INFO] [stdout] | [INFO] [stdout] 261 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 240 ~ match inner.wakers.timestamps() { Some(lat) => { [INFO] [stdout] 241 | drop(inner); [INFO] [stdout] ... [INFO] [stdout] 260 | ); [INFO] [stdout] 261 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:447:16 [INFO] [stdout] | [INFO] [stdout] 447 | if let Some(libc::ECANCELED) = x.raw_os_error() { [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/sys/uring.rs:449:13 [INFO] [stdout] | [INFO] [stdout] 449 | } 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] 447 ~ match x.raw_os_error() { Some(libc::ECANCELED) => { [INFO] [stdout] 448 | io::Error::from_raw_os_error(libc::ETIMEDOUT) [INFO] [stdout] 449 ~ } _ => { [INFO] [stdout] 450 | x [INFO] [stdout] 451 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:861:23 [INFO] [stdout] | [INFO] [stdout] 861 | return if let Some(sqes) = self.ring.sq().prepare_sqes(chain.len() as u32) { [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/sys/uring.rs:878:13 [INFO] [stdout] | [INFO] [stdout] 878 | } 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] 861 ~ return match self.ring.sq().prepare_sqes(chain.len() as u32) { Some(sqes) => { [INFO] [stdout] 862 | let ops = extract_one_chain(source_map, queue, chain, now); [INFO] [stdout] ... [INFO] [stdout] 877 | Some(true) [INFO] [stdout] 878 ~ } _ => { [INFO] [stdout] 879 | None [INFO] [stdout] 880 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1002:12 [INFO] [stdout] | [INFO] [stdout] 1002 | if let Some(mut sqe) = self.ring.sq().prepare_sqe() { [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/sys/uring.rs:1042:9 [INFO] [stdout] | [INFO] [stdout] 1042 | } 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] 1002 ~ match self.ring.sq().prepare_sqe() { Some(mut sqe) => { [INFO] [stdout] 1003 | // Now must wait on the `eventfd` in case someone wants to wake us up. [INFO] [stdout] ... [INFO] [stdout] 1041 | } [INFO] [stdout] 1042 ~ } _ => { [INFO] [stdout] 1043 | false [INFO] [stdout] 1044 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1053:12 [INFO] [stdout] | [INFO] [stdout] 1053 | if let Some(mut sqe) = self.ring.sq().prepare_sqe() { [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/sys/uring.rs:1098:9 [INFO] [stdout] | [INFO] [stdout] 1098 | } 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] 1053 ~ match self.ring.sq().prepare_sqe() { Some(mut sqe) => { [INFO] [stdout] 1054 | let sqe_ptr = unsafe { sqe.raw_mut() as *mut _ }; [INFO] [stdout] ... [INFO] [stdout] 1097 | } [INFO] [stdout] 1098 ~ } _ => { [INFO] [stdout] 1099 | // Can't link rings because we ran out of `CQE`s. Just can't sleep. [INFO] [stdout] ... [INFO] [stdout] 1105 | .or_else(Reactor::intr_ok) [INFO] [stdout] 1106 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1193:23 [INFO] [stdout] | [INFO] [stdout] 1193 | return if let Some(sqes) = self.ring.sq().prepare_sqes(chain.len() as u32) { [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/sys/uring.rs:1210:13 [INFO] [stdout] | [INFO] [stdout] 1210 | } 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] 1193 ~ return match self.ring.sq().prepare_sqes(chain.len() as u32) { Some(sqes) => { [INFO] [stdout] 1194 | let ops = extract_one_chain(source_map, queue, chain, now); [INFO] [stdout] ... [INFO] [stdout] 1209 | Some(true) [INFO] [stdout] 1210 ~ } _ => { [INFO] [stdout] 1211 | None [INFO] [stdout] 1212 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1564:10 [INFO] [stdout] | [INFO] [stdout] 1564 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1561:9 [INFO] [stdout] | [INFO] [stdout] 1561 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1564 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1568:66 [INFO] [stdout] | [INFO] [stdout] 1568 | pub(crate) fn truncate(&self, source: &Source, size: u64) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1568:28 [INFO] [stdout] | [INFO] [stdout] 1568 | pub(crate) fn truncate(&self, source: &Source, size: u64) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1568 | pub(crate) fn truncate(&self, source: &Source, size: u64) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1573:53 [INFO] [stdout] | [INFO] [stdout] 1573 | pub(crate) fn rename(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1573:26 [INFO] [stdout] | [INFO] [stdout] 1573 | pub(crate) fn rename(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1573 | pub(crate) fn rename(&self, source: &Source) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1583:72 [INFO] [stdout] | [INFO] [stdout] 1583 | pub(crate) fn copy_file_range(&self, source: &Source, pos: u64) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1583:35 [INFO] [stdout] | [INFO] [stdout] 1583 | pub(crate) fn copy_file_range(&self, source: &Source, pos: u64) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1583 | pub(crate) fn copy_file_range(&self, source: &Source, pos: u64) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1603:10 [INFO] [stdout] | [INFO] [stdout] 1603 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1600:9 [INFO] [stdout] | [INFO] [stdout] 1600 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 1601 | source: &Source, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1603 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1613:58 [INFO] [stdout] | [INFO] [stdout] 1613 | pub(crate) fn remove_file(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1613:31 [INFO] [stdout] | [INFO] [stdout] 1613 | pub(crate) fn remove_file(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1613 | pub(crate) fn remove_file(&self, source: &Source) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1627:10 [INFO] [stdout] | [INFO] [stdout] 1627 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1624:9 [INFO] [stdout] | [INFO] [stdout] 1624 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 1625 | source: &Source, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1627 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:2017:8 [INFO] [stdout] | [INFO] [stdout] 2017 | if let Some(ref ts) = &*source.timeout_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/sys/uring.rs:2024:5 [INFO] [stdout] | [INFO] [stdout] 2024 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2017 ~ match &*source.timeout_ref() { Some(ref ts) => { [INFO] [stdout] 2018 | queue.submissions.push_back(UringDescriptor { [INFO] [stdout] ... [INFO] [stdout] 2023 | }); [INFO] [stdout] 2024 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/task/header.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | if let Some(w) = waker { [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/task/header.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 76 ~ match waker { Some(w) => { [INFO] [stdout] 77 | // We need a safeguard against panics because waking can panic. [INFO] [stdout] ... [INFO] [stdout] 82 | }); [INFO] [stdout] 83 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:314:16 [INFO] [stdout] | [INFO] [stdout] 314 | if let Some(r) = self.reactor.upgrade() { [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/channels/shared_channel.rs:321:13 [INFO] [stdout] | [INFO] [stdout] 321 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 314 ~ match self.reactor.upgrade() { Some(r) => { [INFO] [stdout] 315 | self.notifier.notify(false); [INFO] [stdout] ... [INFO] [stdout] 320 | r.process_shared_channels_by_id(self.id); [INFO] [stdout] 321 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:440:12 [INFO] [stdout] | [INFO] [stdout] 440 | if let Some(state) = self.state.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] = 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/channels/shared_channel.rs:448:9 [INFO] [stdout] | [INFO] [stdout] 448 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 440 ~ match self.state.take() { Some(state) => { [INFO] [stdout] 441 | // Never connected, we must connect ourselves. [INFO] [stdout] ... [INFO] [stdout] 447 | } [INFO] [stdout] 448 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:444:20 [INFO] [stdout] | [INFO] [stdout] 444 | if let Some(notifier) = sys::get_sleep_notifier_for(id) { [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/channels/shared_channel.rs:446:17 [INFO] [stdout] | [INFO] [stdout] 446 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 444 ~ match sys::get_sleep_notifier_for(id) { Some(notifier) => { [INFO] [stdout] 445 | notifier.notify(false); [INFO] [stdout] 446 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:454:12 [INFO] [stdout] | [INFO] [stdout] 454 | if let Some(state) = self.state.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] = 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/channels/shared_channel.rs:462:9 [INFO] [stdout] | [INFO] [stdout] 462 | } [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.state.take() { Some(state) => { [INFO] [stdout] 455 | // Never connected, we must connect ourselves. [INFO] [stdout] ... [INFO] [stdout] 461 | } [INFO] [stdout] 462 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:458:20 [INFO] [stdout] | [INFO] [stdout] 458 | if let Some(notifier) = sys::get_sleep_notifier_for(id) { [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/channels/shared_channel.rs:460:17 [INFO] [stdout] | [INFO] [stdout] 460 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 458 ~ match sys::get_sleep_notifier_for(id) { Some(notifier) => { [INFO] [stdout] 459 | notifier.notify(false); [INFO] [stdout] 460 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:469:16 [INFO] [stdout] | [INFO] [stdout] 469 | if let Some(r) = self.reactor.upgrade() { [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/channels/shared_channel.rs:472:13 [INFO] [stdout] | [INFO] [stdout] 472 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 469 ~ match self.reactor.upgrade() { Some(r) => { [INFO] [stdout] 470 | self.notifier.notify(false); [INFO] [stdout] 471 | r.unregister_shared_channel(self.id); [INFO] [stdout] 472 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:480:16 [INFO] [stdout] | [INFO] [stdout] 480 | if let Some(r) = self.reactor.upgrade() { [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/channels/shared_channel.rs:483:13 [INFO] [stdout] | [INFO] [stdout] 483 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 480 ~ match self.reactor.upgrade() { Some(r) => { [INFO] [stdout] 481 | self.notifier.notify(false); [INFO] [stdout] 482 | r.unregister_shared_channel(self.id) [INFO] [stdout] 483 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:65:23 [INFO] [stdout] | [INFO] [stdout] 65 | while let Some(msg) = stream.recv().await { [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/channels/sharding.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:139:15 [INFO] [stdout] | [INFO] [stdout] 139 | while let Some(consumer) = self.consumers.pop() { [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/channels/sharding.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:145:15 [INFO] [stdout] | [INFO] [stdout] 145 | while let Some(task) = self.forward_tasks.pop() { [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/channels/sharding.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | while let Some(msg) = messages.next().await { [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/channels/sharding.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 163 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/controllers/deadline_queue.rs:415:23 [INFO] [stdout] | [INFO] [stdout] 415 | while let Some(request) = stream.next().await { [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/controllers/deadline_queue.rs:436:17 [INFO] [stdout] | [INFO] [stdout] 436 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 199 | if let Shares::Dynamic(bm) = &self.shares { [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/executor/mod.rs:204:9 [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] 199 ~ match &self.shares { Shares::Dynamic(bm) => { [INFO] [stdout] 200 | if now.saturating_duration_since(self.last_adjustment) > bm.adjustment_period() { [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/executor/mod.rs:1380:20 [INFO] [stdout] | [INFO] [stdout] 1380 | if let Some(r) = queue_ref.get_task() { [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/executor/mod.rs:1384:17 [INFO] [stdout] | [INFO] [stdout] 1384 | } 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] 1380 ~ match queue_ref.get_task() { Some(r) => { [INFO] [stdout] 1381 | drop(queue_ref); [INFO] [stdout] 1382 | r.run(); [INFO] [stdout] 1383 | tasks_executed_this_loop += 1; [INFO] [stdout] 1384 ~ } _ => { [INFO] [stdout] 1385 | break; [INFO] [stdout] 1386 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:1490:24 [INFO] [stdout] | [INFO] [stdout] 1490 | if let Poll::Ready(t) = future.as_mut().poll(cx) { [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/executor/mod.rs:1496:21 [INFO] [stdout] | [INFO] [stdout] 1496 | } 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] 1490 ~ match future.as_mut().poll(cx) { Poll::Ready(t) => { [INFO] [stdout] 1491 | // It may be that we just became ready now that the task queue [INFO] [stdout] ... [INFO] [stdout] 1495 | break t.unwrap(); [INFO] [stdout] 1496 ~ } _ => { [INFO] [stdout] 1497 | while !this.reactor.spin_poll_io().unwrap() { [INFO] [stdout] ... [INFO] [stdout] 1506 | pre_time = Instant::now(); [INFO] [stdout] 1507 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/executor/mod.rs:2797:52 [INFO] [stdout] | [INFO] [stdout] 2797 | pub fn spawn_blocking(&self, func: F) -> impl Future [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/executor/mod.rs:2797:33 [INFO] [stdout] | [INFO] [stdout] 2797 | pub fn spawn_blocking(&self, func: F) -> impl Future [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 2797 | pub fn spawn_blocking(&self, func: F) -> impl Future + use [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/multitask.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | if let Some(handle) = &self.0 { [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/executor/multitask.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 77 ~ match &self.0 { Some(handle) => { [INFO] [stdout] 78 | handle.cancel(); [INFO] [stdout] 79 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/multitask.rs:153:16 [INFO] [stdout] | [INFO] [stdout] 153 | if let Some(tq) = tq { [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/executor/multitask.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 153 ~ match tq { Some(tq) => { [INFO] [stdout] 154 | { [INFO] [stdout] ... [INFO] [stdout] 158 | maybe_activate(tq); [INFO] [stdout] 159 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/placement/pq_tree.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 110 | if let Some(mut c) = self.children.peek_mut() { [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/executor/placement/pq_tree.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 110 ~ match self.children.peek_mut() { Some(mut c) => { [INFO] [stdout] 111 | c.select_cpu_recur(path); [INFO] [stdout] 112 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/stall.rs:264:15 [INFO] [stdout] | [INFO] [stdout] 264 | while let Ok(frame) = self.detector.rx.try_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/executor/stall.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/buffered_file_stream.rs:378:16 [INFO] [stdout] | [INFO] [stdout] 378 | if let IoBuffer::Buffered(mut buffer) = source.extract_buffer() { [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/io/buffered_file_stream.rs:382:13 [INFO] [stdout] | [INFO] [stdout] 382 | } 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] 378 ~ match source.extract_buffer() { IoBuffer::Buffered(mut buffer) => { [INFO] [stdout] 379 | self.file_pos += buffer.len() as u64; [INFO] [stdout] 380 | buffer.truncate(0); [INFO] [stdout] 381 | self.buffer.replace_buffer(buffer); [INFO] [stdout] 382 ~ } _ => { [INFO] [stdout] 383 | unreachable!("expected vec buffer"); [INFO] [stdout] 384 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/buffered_file_stream.rs:613:16 [INFO] [stdout] | [INFO] [stdout] 613 | if let Err(x) = self.consume_flush_result(source) { [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/io/buffered_file_stream.rs:615:13 [INFO] [stdout] | [INFO] [stdout] 615 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 613 ~ match self.consume_flush_result(source) { Err(x) => { [INFO] [stdout] 614 | return Poll::Ready(Err(x)); [INFO] [stdout] 615 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:247:28 [INFO] [stdout] | [INFO] [stdout] 247 | if let Some(merged) = this.merger.as_mut().unwrap().merge(io) { [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/io/bulk_io.rs:249:25 [INFO] [stdout] | [INFO] [stdout] 249 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 247 ~ match this.merger.as_mut().unwrap().merge(io) { Some(merged) => { [INFO] [stdout] 248 | return Poll::Ready(Some(merged)); [INFO] [stdout] 249 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:252:35 [INFO] [stdout] | [INFO] [stdout] 252 | return if let Some(merged) = this.merger.as_mut().unwrap().flush() { [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/io/bulk_io.rs:254:25 [INFO] [stdout] | [INFO] [stdout] 254 | } 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] 252 ~ return match this.merger.as_mut().unwrap().flush() { Some(merged) => { [INFO] [stdout] 253 | Poll::Ready(Some(merged)) [INFO] [stdout] 254 ~ } _ => { [INFO] [stdout] 255 | Poll::Pending [INFO] [stdout] 256 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:264:28 [INFO] [stdout] | [INFO] [stdout] 264 | Poll::Ready(if let Some(mut merger) = this.merger.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] = 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/io/bulk_io.rs:266:13 [INFO] [stdout] | [INFO] [stdout] 266 | } 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] 264 ~ Poll::Ready(match this.merger.take() { Some(mut merger) => { [INFO] [stdout] 265 | merger.flush() [INFO] [stdout] 266 ~ } _ => { [INFO] [stdout] 267 | None [INFO] [stdout] 268 ~ }}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:272:15 [INFO] [stdout] | [INFO] [stdout] 272 | while let Some(mut inner) = ready!(next_inner(this, cx)) { [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/io/bulk_io.rs:287:9 [INFO] [stdout] | [INFO] [stdout] 287 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:280:16 [INFO] [stdout] | [INFO] [stdout] 280 | if let Some(last) = &mut this.last { [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/io/bulk_io.rs:284:13 [INFO] [stdout] | [INFO] [stdout] 284 | } 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] 280 ~ match &mut this.last { Some(last) => { [INFO] [stdout] 281 | if let Some(last) = last.deduplicate(inner) { [INFO] [stdout] 282 | return Poll::Ready(Some(last)); [INFO] [stdout] 283 | } [INFO] [stdout] 284 ~ } _ => { [INFO] [stdout] 285 | this.last = Some(inner); [INFO] [stdout] 286 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:281:20 [INFO] [stdout] | [INFO] [stdout] 281 | if let Some(last) = last.deduplicate(inner) { [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/io/bulk_io.rs:283:17 [INFO] [stdout] | [INFO] [stdout] 283 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 281 ~ match last.deduplicate(inner) { Some(last) => { [INFO] [stdout] 282 | return Poll::Ready(Some(last)); [INFO] [stdout] 283 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:496:16 [INFO] [stdout] | [INFO] [stdout] 496 | if let Some(io) = args.user_reads.pop_front() { [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/io/bulk_io.rs:506:13 [INFO] [stdout] | [INFO] [stdout] 506 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 496 ~ match args.user_reads.pop_front() { Some(io) => { [INFO] [stdout] 497 | let (pos, size) = (io.pos(), io.size()); [INFO] [stdout] ... [INFO] [stdout] 505 | )))); [INFO] [stdout] 506 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Stream)>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/io/dma_file.rs:440:28 [INFO] [stdout] | [INFO] [stdout] 440 | ) -> ReadManyResult)>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/io/dma_file.rs:436:15 [INFO] [stdout] | [INFO] [stdout] 436 | self: &Rc, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 440 | ) -> ReadManyResult)> + use> [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/dma_file_stream.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 199 | if let Some(handle) = self.pending.remove(&id) { [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/io/dma_file_stream.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 199 ~ match self.pending.remove(&id) { Some(handle) => { [INFO] [stdout] 200 | handle.cancel(); [INFO] [stdout] 201 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/dma_file_stream.rs:243:16 [INFO] [stdout] | [INFO] [stdout] 243 | if let Some(w) = wakers.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] = 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/io/dma_file_stream.rs:245:13 [INFO] [stdout] | [INFO] [stdout] 245 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 243 ~ match wakers.take() { Some(w) => { [INFO] [stdout] 244 | w.wake(); [INFO] [stdout] 245 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/dma_file_stream.rs:277:12 [INFO] [stdout] | [INFO] [stdout] 277 | if let Some(buffer) = self.buffermap.get(buffer_id) { [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/io/dma_file_stream.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.buffermap.get(buffer_id) { Some(buffer) => { [INFO] [stdout] 278 | self.cached_buffer = Some((*buffer_id, buffer.clone())); [INFO] [stdout] 279 | Some(buffer) [INFO] [stdout] 280 ~ } _ => { [INFO] [stdout] 281 | None [INFO] [stdout] 282 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/dma_file_stream.rs:742:20 [INFO] [stdout] | [INFO] [stdout] 742 | if let Some(h) = handle.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] = 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/io/dma_file_stream.rs:744:17 [INFO] [stdout] | [INFO] [stdout] 744 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 742 ~ match handle.take() { Some(h) => { [INFO] [stdout] 743 | handles.push(h); [INFO] [stdout] 744 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/dma_file_stream.rs:850:20 [INFO] [stdout] | [INFO] [stdout] 850 | if let Some(waker) = state.waker.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] = 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/io/dma_file_stream.rs:853:17 [INFO] [stdout] | [INFO] [stdout] 853 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 850 ~ match state.waker.take() { Some(waker) => { [INFO] [stdout] 851 | drop(state); [INFO] [stdout] 852 | waker.wake(); [INFO] [stdout] 853 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/dma_file_stream.rs:347:12 [INFO] [stdout] | [INFO] [stdout] 347 | if let Err(x) = $res { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 874 | if collect_error!(state, res) { [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] | 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/io/dma_file_stream.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 350 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 874 | if collect_error!(state, res) { [INFO] [stdout] | -------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `collect_error` (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/io/dma_file_stream.rs:347:12 [INFO] [stdout] | [INFO] [stdout] 347 | if let Err(x) = $res { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 890 | if collect_error!(state, res) { [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] | 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/io/dma_file_stream.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 350 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 890 | if collect_error!(state, res) { [INFO] [stdout] | -------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `collect_error` (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/io/dma_file_stream.rs:347:12 [INFO] [stdout] | [INFO] [stdout] 347 | if let Err(x) = $res { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 900 | collect_error!(state, res); [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] | 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/io/dma_file_stream.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 350 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 900 | collect_error!(state, res); [INFO] [stdout] | -------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `collect_error` (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/io/dma_file_stream.rs:347:12 [INFO] [stdout] | [INFO] [stdout] 347 | if let Err(x) = $res { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 956 | if !collect_error!(state, res) { [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] | 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/io/dma_file_stream.rs:350:9 [INFO] [stdout] | [INFO] [stdout] 350 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 956 | if !collect_error!(state, res) { [INFO] [stdout] | -------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `collect_error` (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/io/dma_file_stream.rs:962:16 [INFO] [stdout] | [INFO] [stdout] 962 | if let FileStatus::Open = state.file_status { [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/io/dma_file_stream.rs:967:13 [INFO] [stdout] | [INFO] [stdout] 967 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 962 ~ match state.file_status { FileStatus::Open => { [INFO] [stdout] 963 | if let Some(waker) = state.waker.take() { [INFO] [stdout] ... [INFO] [stdout] 966 | } [INFO] [stdout] 967 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/dma_file_stream.rs:963:20 [INFO] [stdout] | [INFO] [stdout] 963 | if let Some(waker) = state.waker.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] = 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/io/dma_file_stream.rs:966:17 [INFO] [stdout] | [INFO] [stdout] 966 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 963 ~ match state.waker.take() { Some(waker) => { [INFO] [stdout] 964 | drop(state); [INFO] [stdout] 965 | waker.wake(); [INFO] [stdout] 966 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/glommio_file.rs:60:16 [INFO] [stdout] | [INFO] [stdout] 60 | if let Some(r) = self.reactor.upgrade() { [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/io/glommio_file.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 60 ~ match self.reactor.upgrade() { Some(r) => { [INFO] [stdout] 61 | r.sys.async_close(file); [INFO] [stdout] 62 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Stream)>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/io/immutable_file.rs:400:28 [INFO] [stdout] | [INFO] [stdout] 400 | ) -> ReadManyResult)>> [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/io/immutable_file.rs:396:9 [INFO] [stdout] | [INFO] [stdout] 396 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 400 | ) -> ReadManyResult)> + use> [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/sched.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | let file = if let Some(file) = borrow.find(&identity).clone_pointer() { [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/io/sched.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | } 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] 39 ~ let file = match borrow.find(&identity).clone_pointer() { Some(file) => { [INFO] [stdout] 40 | file [INFO] [stdout] 41 ~ } _ => { [INFO] [stdout] 42 | let file_sched = Rc::new(FileSchedulerInner { [INFO] [stdout] ... [INFO] [stdout] 48 | file_sched [INFO] [stdout] 49 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/sched.rs:102:16 [INFO] [stdout] | [INFO] [stdout] 102 | if let Some(io_sched) = self.io_scheduler.upgrade() { [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/io/sched.rs:106:13 [INFO] [stdout] | [INFO] [stdout] 106 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 102 ~ match self.io_scheduler.upgrade() { Some(io_sched) => { [INFO] [stdout] 103 | // the scheduler owns one Rc to this FileScheduler [INFO] [stdout] 104 | // so if the count is two or less, then we can remove this file scheduler [INFO] [stdout] 105 | io_sched.remove_file(self) [INFO] [stdout] 106 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/sched.rs:127:20 [INFO] [stdout] | [INFO] [stdout] 127 | if let Some(reused) = sched_source [INFO] [stdout] | _____________________^ - [INFO] [stdout] | | _______________________________________| [INFO] [stdout] 128 | || .source [INFO] [stdout] | ||___________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 129 | | .stats_collection() [INFO] [stdout] 130 | | .and_then(|x| x.reused) [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/io/sched.rs:139:17 [INFO] [stdout] | [INFO] [stdout] 139 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 127 ~ match sched_source [INFO] [stdout] 128 | .source [INFO] [stdout] 129 | .stats_collection() [INFO] [stdout] 130 | .and_then(|x| x.reused) [INFO] [stdout] 131 ~ { Some(reused) => { [INFO] [stdout] 132 | let mut ring = sys.ring_for_source(&sched_source.source); [INFO] [stdout] ... [INFO] [stdout] 138 | ); [INFO] [stdout] 139 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/sched.rs:231:16 [INFO] [stdout] | [INFO] [stdout] 231 | if let Some(file) = self.file.upgrade() { [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/io/sched.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 231 ~ match self.file.upgrade() { Some(file) => { [INFO] [stdout] 232 | // the file scheduler owns one Rc to this ScheduledSource [INFO] [stdout] 233 | // so if the count is two or less, then we can remove this source [INFO] [stdout] 234 | file.remove_source(self) [INFO] [stdout] 235 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/net/stream.rs:271:16 [INFO] [stdout] | [INFO] [stdout] 271 | if let Some(result) = super::yolo_recv(self.stream.as_raw_fd(), buf) { [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/net/stream.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 271 ~ match super::yolo_recv(self.stream.as_raw_fd(), buf) { Some(result) => { [INFO] [stdout] 272 | self.source_rx.take(); [INFO] [stdout] ... [INFO] [stdout] 284 | return Poll::Ready(Ok(result)); [INFO] [stdout] 285 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/net/stream.rs:417:16 [INFO] [stdout] | [INFO] [stdout] 417 | if let Some(result) = self.stream.try_peek(&mut buf[pos..]) { [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/net/stream.rs:427:13 [INFO] [stdout] | [INFO] [stdout] 427 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 417 ~ match self.stream.try_peek(&mut buf[pos..]) { Some(result) => { [INFO] [stdout] 418 | match result { [INFO] [stdout] ... [INFO] [stdout] 426 | } [INFO] [stdout] 427 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `into_raw_fd` that must be used [INFO] [stdout] --> src/net/tcp_socket.rs:316:9 [INFO] [stdout] | [INFO] [stdout] 316 | socket.into_raw_fd(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: losing the raw file descriptor may leak resources [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 316 | let _ = socket.into_raw_fd(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sync/gate.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 147 | if let State::Closing(sender) = self.state.replace(State::Closed) { [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/sync/gate.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 149 | } 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] 147 ~ match self.state.replace(State::Closed) { State::Closing(sender) => { [INFO] [stdout] 148 | sender.try_send(true).unwrap(); [INFO] [stdout] 149 ~ } _ => { [INFO] [stdout] 150 | unreachable!("It should not happen!"); [INFO] [stdout] 151 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sync/rwlock.rs:837:20 [INFO] [stdout] | [INFO] [stdout] 837 | if let Some(waker) = waker { [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/sync/rwlock.rs:839:17 [INFO] [stdout] | [INFO] [stdout] 839 | } 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] 837 ~ match waker { Some(waker) => { [INFO] [stdout] 838 | waker.wake(); [INFO] [stdout] 839 ~ } _ => { [INFO] [stdout] 840 | panic!("Future was linked in waiting list without an a waker"); [INFO] [stdout] 841 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sync/rwlock.rs:859:20 [INFO] [stdout] | [INFO] [stdout] 859 | if let Some(waker) = waker { [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/sync/rwlock.rs:861:17 [INFO] [stdout] | [INFO] [stdout] 861 | } 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] 859 ~ match waker { Some(waker) => { [INFO] [stdout] 860 | waker.wake(); [INFO] [stdout] 861 ~ } _ => { [INFO] [stdout] 862 | panic!("Future was linked in waiting list without an a waker"); [INFO] [stdout] 863 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sync/rwlock.rs:880:16 [INFO] [stdout] | [INFO] [stdout] 880 | if let Some(waker) = waker { [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/sync/rwlock.rs:882:13 [INFO] [stdout] | [INFO] [stdout] 882 | } 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] 880 ~ match waker { Some(waker) => { [INFO] [stdout] 881 | waker.wake(); [INFO] [stdout] 882 ~ } _ => { [INFO] [stdout] 883 | panic!("Future was linked in waiting list without an a waker"); [INFO] [stdout] 884 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sync/semaphore.rs:236:16 [INFO] [stdout] | [INFO] [stdout] 236 | if let Some(waker) = waker { [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/sync/semaphore.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | } 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] 236 ~ match waker { Some(waker) => { [INFO] [stdout] 237 | waker.wake(); [INFO] [stdout] 238 ~ } _ => { [INFO] [stdout] 239 | panic!("Future is linked into the waiting list without a waker"); [INFO] [stdout] 240 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sync/semaphore.rs:330:12 [INFO] [stdout] | [INFO] [stdout] 330 | if let Some(waker) = waker { [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/sync/semaphore.rs:333:9 [INFO] [stdout] | [INFO] [stdout] 333 | } 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] 330 ~ match waker { Some(waker) => { [INFO] [stdout] 331 | waker.wake(); [INFO] [stdout] 332 | cursor.remove(); [INFO] [stdout] 333 ~ } _ => { [INFO] [stdout] 334 | cursor.move_next(); [INFO] [stdout] 335 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer/timer_impl.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 42 | if let Some(waker) = waker { [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/timer/timer_impl.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 42 ~ match waker { Some(waker) => { [INFO] [stdout] 43 | // Re-register the timer with the new timeout. [INFO] [stdout] ... [INFO] [stdout] 47 | .insert_timer(self.id, self.when, waker); [INFO] [stdout] 48 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer/timer_impl.rs:155:16 [INFO] [stdout] | [INFO] [stdout] 155 | if let Some(reactor) = inner.reactor.upgrade() { [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/timer/timer_impl.rs:157:13 [INFO] [stdout] | [INFO] [stdout] 157 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 155 ~ match inner.reactor.upgrade() { Some(reactor) => { [INFO] [stdout] 156 | reactor.remove_timer(inner.id); [INFO] [stdout] 157 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/timer/timer_impl.rs:600:23 [INFO] [stdout] | [INFO] [stdout] 600 | while let Some(period) = action_gen().await { [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/timer/timer_impl.rs:602:17 [INFO] [stdout] | [INFO] [stdout] 602 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 266 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Migrating benches/spsc_queue.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `glommio` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/executor/mod.rs [INFO] [stderr] * src/io/buffered_file.rs [INFO] [stderr] * src/io/buffered_file_stream.rs [INFO] [stderr] * src/io/dma_file_stream.rs [INFO] [stderr] * src/io/mod.rs [INFO] [stderr] * src/lib.rs [INFO] [stderr] * src/sys/blocking.rs [INFO] [stderr] * src/sys/membarrier.rs [INFO] [stderr] * src/sys/sysfs.rs [INFO] [stderr] * src/sys/uring.rs [INFO] [stderr] * src/task/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/lib.rs:275:6 [INFO] [stderr] | [INFO] [stderr] 275 | ($waker: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/blocking.rs:49:7 [INFO] [stderr] | [INFO] [stderr] 49 | ( $path: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/membarrier.rs:4:6 [INFO] [stderr] | [INFO] [stderr] 4 | ($cond: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:54:7 [INFO] [stderr] | [INFO] [stderr] 54 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:54:37 [INFO] [stderr] | [INFO] [stderr] 54 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:54:55 [INFO] [stderr] | [INFO] [stderr] 54 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:7 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:37 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:55 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/sysfs.rs:66:73 [INFO] [stderr] | [INFO] [stderr] 66 | ( $map:expr_2021, $property:tt, $major:expr_2021, $minor:expr_2021, $value: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1253:11 [INFO] [stderr] | [INFO] [stderr] 1253 | (into $woke:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1253:31 [INFO] [stderr] | [INFO] [stderr] 1253 | (into $woke:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1262:11 [INFO] [stderr] | [INFO] [stderr] 1262 | (into $output:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1262:33 [INFO] [stderr] | [INFO] [stderr] 1262 | (into $output:expr_2021; $( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/sys/uring.rs:1270:9 [INFO] [stderr] | [INFO] [stderr] 1270 | ($( $ring: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/task/mod.rs:67:6 [INFO] [stderr] | [INFO] [stderr] 67 | ($ptr:expr_2021, $name:tt, $($body:tt)*) => {{ [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/lib.rs:307:6 [INFO] [stderr] | [INFO] [stderr] 307 | ($e: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:320:6 [INFO] [stderr] | [INFO] [stderr] 320 | ($e: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:331:6 [INFO] [stderr] | [INFO] [stderr] 331 | ($e: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:355:9 [INFO] [stderr] | [INFO] [stderr] 355 | ($( $fut: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:384:6 [INFO] [stderr] | [INFO] [stderr] 384 | ($var:expr_2021, $val: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:384:22 [INFO] [stderr] | [INFO] [stderr] 384 | ($var:expr_2021, $val: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:392:6 [INFO] [stderr] | [INFO] [stderr] 392 | ($var:expr_2021, $val:expr_2021, $instantval: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:392:22 [INFO] [stderr] | [INFO] [stderr] 392 | ($var:expr_2021, $val:expr_2021, $instantval: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:392:38 [INFO] [stderr] | [INFO] [stderr] 392 | ($var:expr_2021, $val:expr_2021, $instantval: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:409:6 [INFO] [stderr] | [INFO] [stderr] 409 | ($cond:expr_2021, $val: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:409:23 [INFO] [stderr] | [INFO] [stderr] 409 | ($cond:expr_2021, $val: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] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/lib.rs:416:6 [INFO] [stderr] | [INFO] [stderr] 416 | ($var:expr_2021, $( $name:ident ),+ ) => { [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/lib.rs:424:6 [INFO] [stderr] | [INFO] [stderr] 424 | ($var:expr_2021, $( $name:ident ),+ ) => { [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/executor/mod.rs:3291:11 [INFO] [stderr] | [INFO] [stderr] 3291 | ( $s1:expr_2021, $s2:expr_2021, $work:block ) => { [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/executor/mod.rs:3291:26 [INFO] [stderr] | [INFO] [stderr] 3291 | ( $s1:expr_2021, $s2:expr_2021, $work:block ) => { [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/io/mod.rs:105:6 [INFO] [stderr] | [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd: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] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/executor/placement/mod.rs:1107:17 [INFO] [stdout] | [INFO] [stdout] 1107 | let mut gen = CpuSetGenerator::pool(p).unwrap(); [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] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/executor/placement/mod.rs:1110:21 [INFO] [stdout] | [INFO] [stdout] 1110 | let v = 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] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 275 | ($waker: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] = 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] 275 | ($waker:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/blocking.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | ( $path: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] 49 | ( $path:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/mod.rs:105:23 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/membarrier.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | ($cond: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] 4 | ($cond:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 54 | ( $map:expr, $property:tt, $major:expr, $minor: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] 54 | ( $map:expr_2021, $property:tt, $major:expr, $minor:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd:expr_2021) => {{ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:54:39 [INFO] [stdout] | [INFO] [stdout] 54 | ( $map:expr, $property:tt, $major:expr, $minor: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] 54 | ( $map:expr, $property:tt, $major:expr_2021, $minor:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:54:52 [INFO] [stdout] | [INFO] [stdout] 54 | ( $map:expr, $property:tt, $major:expr, $minor: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] 54 | ( $map:expr, $property:tt, $major:expr, $minor:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr_2021, $property:tt, $major:expr, $minor:expr, $value:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:39 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr, $property:tt, $major:expr_2021, $minor:expr, $value:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:52 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr_2021, $value:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/sysfs.rs:66:65 [INFO] [stdout] | [INFO] [stdout] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value: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] 66 | ( $map:expr, $property:tt, $major:expr, $minor:expr, $value:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1253:17 [INFO] [stdout] | [INFO] [stdout] 1253 | (into $woke:expr; $( $ring: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] 1253 | (into $woke:expr_2021; $( $ring:expr ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1253:32 [INFO] [stdout] | [INFO] [stdout] 1253 | (into $woke:expr; $( $ring: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] 1253 | (into $woke:expr; $( $ring:expr_2021 ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/mod.rs:105:38 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1262:19 [INFO] [stdout] | [INFO] [stdout] 1262 | (into $output:expr; $( $ring: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] 1262 | (into $output:expr_2021; $( $ring:expr ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1262:34 [INFO] [stdout] | [INFO] [stdout] 1262 | (into $output:expr; $( $ring: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] 1262 | (into $output:expr; $( $ring:expr_2021 ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd:expr_2021) => {{ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys/uring.rs:1270:15 [INFO] [stdout] | [INFO] [stdout] 1270 | ($( $ring: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] 1270 | ($( $ring:expr_2021 ),+ ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/task/mod.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | ($ptr:expr, $name:tt, $($body:tt)*) => {{ [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] 67 | ($ptr:expr_2021, $name:tt, $($body:tt)*) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/uring_sys/mod.rs:288:1 [INFO] [stdout] | [INFO] [stdout] 288 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 289 | | pub fn io_uring_queue_init( [INFO] [stdout] 290 | | entries: libc::c_uint, [INFO] [stdout] 291 | | ring: *mut io_uring, [INFO] [stdout] ... | [INFO] [stdout] 380 | | pub fn io_uring_unregister_personality(ring: *mut io_uring, id: libc::c_int) -> libc::c_int; [INFO] [stdout] 381 | | } [INFO] [stdout] | |_^ [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 #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/uring_sys/mod.rs:384:1 [INFO] [stdout] | [INFO] [stdout] 384 | extern "C" { [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | _help: needs `unsafe` before the extern keyword: `unsafe` [INFO] [stdout] | | [INFO] [stdout] 385 | | #[link_name = "rust_io_uring_opcode_supported"] [INFO] [stdout] 386 | | pub fn io_uring_opcode_supported(p: *mut io_uring_probe, op: libc::c_int) -> libc::c_int; [INFO] [stdout] ... | [INFO] [stdout] 688 | | pub fn io_uring_wait_cqe(ring: *mut io_uring, cqe_ptr: *mut *mut io_uring_cqe) -> libc::c_int; [INFO] [stdout] 689 | | } [INFO] [stdout] | |_^ [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:307:9 [INFO] [stdout] | [INFO] [stdout] 307 | ($e: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] 307 | ($e:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:320:9 [INFO] [stdout] | [INFO] [stdout] 320 | ($e: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] 320 | ($e:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | ($e: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] 331 | ($e:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:355:14 [INFO] [stdout] | [INFO] [stdout] 355 | ($( $fut: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] 355 | ($( $fut:expr_2021 ),+ ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/mod.rs:105:55 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:384:11 [INFO] [stdout] | [INFO] [stdout] 384 | ($var:expr, $val: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] 384 | ($var:expr_2021, $val:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:384:22 [INFO] [stdout] | [INFO] [stdout] 384 | ($var:expr, $val: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] 384 | ($var:expr, $val:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 105 | ($expr:expr_2021, $op:expr_2021, $path:expr_2021, $fd:expr_2021) => {{ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:392:11 [INFO] [stdout] | [INFO] [stdout] 392 | ($var:expr, $val:expr, $instantval: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] 392 | ($var:expr_2021, $val:expr, $instantval:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:392:22 [INFO] [stdout] | [INFO] [stdout] 392 | ($var:expr, $val:expr, $instantval: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] 392 | ($var:expr, $val:expr_2021, $instantval:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:392:40 [INFO] [stdout] | [INFO] [stdout] 392 | ($var:expr, $val:expr, $instantval: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] 392 | ($var:expr, $val:expr, $instantval:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:409:12 [INFO] [stdout] | [INFO] [stdout] 409 | ($cond:expr, $val: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] 409 | ($cond:expr_2021, $val:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:409:23 [INFO] [stdout] | [INFO] [stdout] 409 | ($cond:expr, $val: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] 409 | ($cond:expr, $val:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:416:11 [INFO] [stdout] | [INFO] [stdout] 416 | ($var:expr, $( $name:ident ),+ ) => { [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] 416 | ($var:expr_2021, $( $name:ident ),+ ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/lib.rs:424:11 [INFO] [stdout] | [INFO] [stdout] 424 | ($var:expr, $( $name:ident ),+ ) => { [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] 424 | ($var:expr_2021, $( $name:ident ),+ ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/executor/mod.rs:3291:15 [INFO] [stdout] | [INFO] [stdout] 3291 | ( $s1:expr, $s2:expr, $work:block ) => { [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] 3291 | ( $s1:expr_2021, $s2:expr, $work:block ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/mod.rs:119:6 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/executor/mod.rs:3291:25 [INFO] [stdout] | [INFO] [stdout] 3291 | ( $s1:expr, $s2:expr, $work:block ) => { [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] 3291 | ( $s1:expr, $s2:expr_2021, $work:block ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr_2021, $op:expr, $path:expr, $fd:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 119 | ($expr:expr_2021, $op:expr_2021, $obj:expr_2021) => {{ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:22 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr, $op:expr_2021, $path:expr, $fd:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:34 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr, $op:expr, $path:expr_2021, $fd:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:105:44 [INFO] [stdout] | [INFO] [stdout] 105 | ($expr:expr, $op:expr, $path:expr, $fd: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] 105 | ($expr:expr, $op:expr, $path:expr, $fd:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | ($expr:expr, $op:expr, $obj: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] 119 | ($expr:expr_2021, $op:expr, $obj:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:119:22 [INFO] [stdout] | [INFO] [stdout] 119 | ($expr:expr, $op:expr, $obj: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] 119 | ($expr:expr, $op:expr_2021, $obj:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/mod.rs:119:33 [INFO] [stdout] | [INFO] [stdout] 119 | ($expr:expr, $op:expr, $obj: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] 119 | ($expr:expr, $op:expr, $obj:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file.rs:298:16 [INFO] [stdout] | [INFO] [stdout] 298 | ( $buf:expr, $start: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] 298 | ( $buf:expr_2021, $start:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file.rs:298:29 [INFO] [stdout] | [INFO] [stdout] 298 | ( $buf:expr, $start: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] 298 | ( $buf:expr, $start:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/mod.rs:119:23 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:13 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr_2021, $source:expr, $fileobj:expr, $cx:expr, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:27 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr_2021, $fileobj:expr, $cx:expr, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 119 | ($expr:expr_2021, $op:expr_2021, $obj:expr_2021) => {{ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:42 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr, $fileobj:expr_2021, $cx:expr, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:52 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr_2021, $pos:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:488:63 [INFO] [stdout] | [INFO] [stdout] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos: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] 488 | ( $self:expr, $source:expr, $fileobj:expr, $cx:expr, $pos:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:746:16 [INFO] [stdout] | [INFO] [stdout] 746 | ( $buf:expr, $start: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] 746 | ( $buf:expr_2021, $start:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/buffered_file_stream.rs:746:29 [INFO] [stdout] | [INFO] [stdout] 746 | ( $buf:expr, $start: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] 746 | ( $buf:expr, $start:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:33:14 [INFO] [stdout] | [INFO] [stdout] 33 | ( $state: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] 33 | ( $state:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:346:14 [INFO] [stdout] | [INFO] [stdout] 346 | ( $state:expr, $res: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] 346 | ( $state:expr_2021, $res:expr ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:346:25 [INFO] [stdout] | [INFO] [stdout] 346 | ( $state:expr, $res: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] 346 | ( $state:expr, $res:expr_2021 ) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/mod.rs:119:38 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:818:13 [INFO] [stdout] | [INFO] [stdout] 818 | ( $file: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] 818 | ( $file:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:1529:16 [INFO] [stdout] | [INFO] [stdout] 1529 | ( $buf:expr, $start: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] 1529 | ( $buf:expr_2021, $start:expr ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 119 | ($expr:expr_2021, $op:expr_2021, $obj:expr_2021) => {{ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/io/dma_file_stream.rs:1529:29 [INFO] [stdout] | [INFO] [stdout] 1529 | ( $buf:expr, $start: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] 1529 | ( $buf:expr, $start:expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `iou::registrar::registered::UringReadBuf::prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | buf.prep_read(fd, self, 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/iou/sqe.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub unsafe fn prep_read(&mut self, fd: impl UringFd, buf: impl UringReadBuf, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_readv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:118:9 [INFO] [stdout] | [INFO] [stdout] 118 | uring_sys::io_uring_prep_readv(self.sqe, fd.as_raw_fd(), addr as _, len as _, offset as _); [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/iou/sqe.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | / pub unsafe fn prep_read_vectored( [INFO] [stdout] 111 | | &mut self, [INFO] [stdout] 112 | | fd: impl UringFd, [INFO] [stdout] 113 | | bufs: &mut [io::IoSliceMut<'_>], [INFO] [stdout] 114 | | offset: u64, [INFO] [stdout] 115 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_read_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:133:9 [INFO] [stdout] | [INFO] [stdout] 133 | / uring_sys::io_uring_prep_read_fixed( [INFO] [stdout] 134 | | self.sqe, [INFO] [stdout] 135 | | fd.as_raw_fd(), [INFO] [stdout] 136 | | addr as _, [INFO] [stdout] ... | [INFO] [stdout] 139 | | buf_index as _, [INFO] [stdout] 140 | | ); [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/iou/sqe.rs:124:5 [INFO] [stdout] | [INFO] [stdout] 124 | / pub unsafe fn prep_read_fixed( [INFO] [stdout] 125 | | &mut self, [INFO] [stdout] 126 | | fd: impl UringFd, [INFO] [stdout] 127 | | buf: &mut [u8], [INFO] [stdout] 128 | | offset: u64, [INFO] [stdout] 129 | | buf_index: u32, [INFO] [stdout] 130 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `iou::registrar::registered::UringWriteBuf::prep_write` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 150 | buf.prep_write(fd, self, 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/iou/sqe.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | pub unsafe fn prep_write(&mut self, fd: impl UringFd, buf: impl UringWriteBuf, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_writev` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 163 | uring_sys::io_uring_prep_writev(self.sqe, fd.as_raw_fd(), addr as _, len as _, offset as _); [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/iou/sqe.rs:155:5 [INFO] [stdout] | [INFO] [stdout] 155 | / pub unsafe fn prep_write_vectored( [INFO] [stdout] 156 | | &mut self, [INFO] [stdout] 157 | | fd: impl UringFd, [INFO] [stdout] 158 | | bufs: &[io::IoSlice<'_>], [INFO] [stdout] 159 | | offset: u64, [INFO] [stdout] 160 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_write_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | / uring_sys::io_uring_prep_write_fixed( [INFO] [stdout] 180 | | self.sqe, [INFO] [stdout] 181 | | fd.as_raw_fd(), [INFO] [stdout] 182 | | addr as _, [INFO] [stdout] ... | [INFO] [stdout] 185 | | buf_index as _, [INFO] [stdout] 186 | | ); [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/iou/sqe.rs:170:5 [INFO] [stdout] | [INFO] [stdout] 170 | / pub unsafe fn prep_write_fixed( [INFO] [stdout] 171 | | &mut self, [INFO] [stdout] 172 | | fd: impl UringFd, [INFO] [stdout] 173 | | buf: &[u8], [INFO] [stdout] 174 | | offset: u64, [INFO] [stdout] 175 | | buf_index: usize, [INFO] [stdout] 176 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_fsync` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:193:9 [INFO] [stdout] | [INFO] [stdout] 193 | uring_sys::io_uring_prep_fsync(self.sqe, fd.as_raw_fd(), flags.bits() as _); [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/iou/sqe.rs:192:5 [INFO] [stdout] | [INFO] [stdout] 192 | pub unsafe fn prep_fsync(&mut self, fd: impl UringFd, flags: FsyncFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/buffered_file.rs:298:11 [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_splice` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:208:9 [INFO] [stdout] | [INFO] [stdout] 208 | / uring_sys::io_uring_prep_splice( [INFO] [stdout] 209 | | self.sqe, [INFO] [stdout] 210 | | fd_in, [INFO] [stdout] 211 | | off_in, [INFO] [stdout] ... | [INFO] [stdout] 215 | | flags.bits(), [INFO] [stdout] 216 | | ); [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/iou/sqe.rs:199:5 [INFO] [stdout] | [INFO] [stdout] 199 | / pub unsafe fn prep_splice( [INFO] [stdout] 200 | | &mut self, [INFO] [stdout] 201 | | fd_in: RawFd, [INFO] [stdout] 202 | | off_in: i64, [INFO] [stdout] ... | [INFO] [stdout] 206 | | flags: SpliceFlags, [INFO] [stdout] 207 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_recv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | uring_sys::io_uring_prep_recv(self.sqe, fd.as_raw_fd(), data, len, flags.bits()); [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/iou/sqe.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | pub unsafe fn prep_recv(&mut self, fd: impl UringFd, buf: &mut [u8], flags: MsgFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 298 | ( $buf:expr_2021, $start:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_send` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:233:9 [INFO] [stdout] | [INFO] [stdout] 233 | uring_sys::io_uring_prep_send(self.sqe, fd.as_raw_fd(), data, len, flags.bits()); [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/iou/sqe.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 230 | pub unsafe fn prep_send(&mut self, fd: impl UringFd, buf: &[u8], flags: MsgFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_recvmsg` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:244:9 [INFO] [stdout] | [INFO] [stdout] 244 | uring_sys::io_uring_prep_recvmsg(self.sqe, fd.as_raw_fd(), msg, flags.bits() as _); [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/iou/sqe.rs:238:5 [INFO] [stdout] | [INFO] [stdout] 238 | / pub unsafe fn prep_recvmsg( [INFO] [stdout] 239 | | &mut self, [INFO] [stdout] 240 | | fd: impl UringFd, [INFO] [stdout] 241 | | msg: *mut libc::msghdr, [INFO] [stdout] 242 | | flags: MsgFlags, [INFO] [stdout] 243 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_sendmsg` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:255:9 [INFO] [stdout] | [INFO] [stdout] 255 | uring_sys::io_uring_prep_sendmsg(self.sqe, fd.as_raw_fd(), msg, flags.bits() as _); [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/iou/sqe.rs:249:5 [INFO] [stdout] | [INFO] [stdout] 249 | / pub unsafe fn prep_sendmsg( [INFO] [stdout] 250 | | &mut self, [INFO] [stdout] 251 | | fd: impl UringFd, [INFO] [stdout] 252 | | msg: *mut libc::msghdr, [INFO] [stdout] 253 | | flags: MsgFlags, [INFO] [stdout] 254 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_fallocate` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:268:9 [INFO] [stdout] | [INFO] [stdout] 268 | / uring_sys::io_uring_prep_fallocate( [INFO] [stdout] 269 | | self.sqe, [INFO] [stdout] 270 | | fd.as_raw_fd(), [INFO] [stdout] 271 | | flags.bits() as _, [INFO] [stdout] 272 | | offset as _, [INFO] [stdout] 273 | | size as _, [INFO] [stdout] 274 | | ); [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/iou/sqe.rs:261:5 [INFO] [stdout] | [INFO] [stdout] 261 | / pub unsafe fn prep_fallocate( [INFO] [stdout] 262 | | &mut self, [INFO] [stdout] 263 | | fd: impl UringFd, [INFO] [stdout] 264 | | offset: u64, [INFO] [stdout] 265 | | size: u64, [INFO] [stdout] 266 | | flags: FallocateFlags, [INFO] [stdout] 267 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_statx` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:288:9 [INFO] [stdout] | [INFO] [stdout] 288 | / uring_sys::io_uring_prep_statx( [INFO] [stdout] 289 | | self.sqe, [INFO] [stdout] 290 | | dirfd.as_raw_fd(), [INFO] [stdout] 291 | | path.as_ptr() as _, [INFO] [stdout] ... | [INFO] [stdout] 294 | | buf as _, [INFO] [stdout] 295 | | ); [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/iou/sqe.rs:280:5 [INFO] [stdout] | [INFO] [stdout] 280 | / pub unsafe fn prep_statx( [INFO] [stdout] 281 | | &mut self, [INFO] [stdout] 282 | | dirfd: impl UringFd, [INFO] [stdout] 283 | | path: &CStr, [INFO] [stdout] ... | [INFO] [stdout] 286 | | buf: &mut Statx, [INFO] [stdout] 287 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_openat` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:301:9 [INFO] [stdout] | [INFO] [stdout] 301 | / uring_sys::io_uring_prep_openat( [INFO] [stdout] 302 | | self.sqe, [INFO] [stdout] 303 | | fd.as_raw_fd(), [INFO] [stdout] 304 | | path.as_ptr() as _, [INFO] [stdout] 305 | | flags.bits(), [INFO] [stdout] 306 | | mode.bits(), [INFO] [stdout] 307 | | ); [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/iou/sqe.rs:300:5 [INFO] [stdout] | [INFO] [stdout] 300 | pub unsafe fn prep_openat(&mut self, fd: impl UringFd, path: &CStr, flags: OFlag, mode: Mode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_close` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 315 | uring_sys::io_uring_prep_close(self.sqe, fd.as_raw_fd()); [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/iou/sqe.rs:314:5 [INFO] [stdout] | [INFO] [stdout] 314 | pub unsafe fn prep_close(&mut self, fd: impl UringFd) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_timeout` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:326:9 [INFO] [stdout] | [INFO] [stdout] 326 | / uring_sys::io_uring_prep_timeout( [INFO] [stdout] 327 | | self.sqe, [INFO] [stdout] 328 | | ts as *const _ as *mut _, [INFO] [stdout] 329 | | events as _, [INFO] [stdout] 330 | | flags.bits() as _, [INFO] [stdout] 331 | | ); [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/iou/sqe.rs:320:5 [INFO] [stdout] | [INFO] [stdout] 320 | / pub unsafe fn prep_timeout( [INFO] [stdout] 321 | | &mut self, [INFO] [stdout] 322 | | ts: &uring_sys::__kernel_timespec, [INFO] [stdout] 323 | | events: u32, [INFO] [stdout] 324 | | flags: TimeoutFlags, [INFO] [stdout] 325 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/buffered_file.rs:298:27 [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_timeout_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:336:9 [INFO] [stdout] | [INFO] [stdout] 336 | uring_sys::io_uring_prep_timeout_remove(self.sqe, user_data as _, 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/iou/sqe.rs:335:5 [INFO] [stdout] | [INFO] [stdout] 335 | pub unsafe fn prep_timeout_remove(&mut self, user_data: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_link_timeout` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:341:9 [INFO] [stdout] | [INFO] [stdout] 341 | uring_sys::io_uring_prep_link_timeout(self.sqe, ts as *const _ as *mut _, 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/iou/sqe.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 340 | pub unsafe fn prep_link_timeout(&mut self, ts: &uring_sys::__kernel_timespec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 298 | ( $buf:expr_2021, $start:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_poll_add` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:346:9 [INFO] [stdout] | [INFO] [stdout] 346 | uring_sys::io_uring_prep_poll_add(self.sqe, fd.as_raw_fd(), poll_flags.bits()); [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/iou/sqe.rs:345:5 [INFO] [stdout] | [INFO] [stdout] 345 | pub unsafe fn prep_poll_add(&mut self, fd: impl UringFd, poll_flags: PollFlags) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_poll_remove` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:352:9 [INFO] [stdout] | [INFO] [stdout] 352 | uring_sys::io_uring_prep_poll_remove(self.sqe, user_data as _) [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/iou/sqe.rs:351:5 [INFO] [stdout] | [INFO] [stdout] 351 | pub unsafe fn prep_poll_remove(&mut self, user_data: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_connect` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:359:9 [INFO] [stdout] | [INFO] [stdout] 359 | uring_sys::io_uring_prep_connect(self.sqe, fd.as_raw_fd(), addr as *mut _, 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] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/iou/sqe.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | pub unsafe fn prep_connect(&mut self, fd: impl UringFd, socket_addr: &SockaddrStorage) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_accept` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:377:9 [INFO] [stdout] | [INFO] [stdout] 377 | uring_sys::io_uring_prep_accept(self.sqe, fd.as_raw_fd(), addr, len, flags.bits()); [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/iou/sqe.rs:364:5 [INFO] [stdout] | [INFO] [stdout] 364 | / pub unsafe fn prep_accept( [INFO] [stdout] 365 | | &mut self, [INFO] [stdout] 366 | | fd: impl UringFd, [INFO] [stdout] 367 | | accept: Option<&mut SockAddrStorage>, [INFO] [stdout] 368 | | flags: SockFlag, [INFO] [stdout] 369 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_fadvise` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:399:9 [INFO] [stdout] | [INFO] [stdout] 399 | uring_sys::io_uring_prep_fadvise(self.sqe, fd.as_raw_fd(), off as _, len as _, advice); [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/iou/sqe.rs:382:5 [INFO] [stdout] | [INFO] [stdout] 382 | / pub unsafe fn prep_fadvise( [INFO] [stdout] 383 | | &mut self, [INFO] [stdout] 384 | | fd: impl UringFd, [INFO] [stdout] 385 | | off: u64, [INFO] [stdout] 386 | | len: u64, [INFO] [stdout] 387 | | advice: PosixFadviseAdvice, [INFO] [stdout] 388 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_madvise` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:426:9 [INFO] [stdout] | [INFO] [stdout] 426 | / uring_sys::io_uring_prep_madvise( [INFO] [stdout] 427 | | self.sqe, [INFO] [stdout] 428 | | data.as_mut_ptr() as *mut _, [INFO] [stdout] 429 | | data.len() as _, [INFO] [stdout] 430 | | advice, [INFO] [stdout] 431 | | ); [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/iou/sqe.rs:404:5 [INFO] [stdout] | [INFO] [stdout] 404 | pub unsafe fn prep_madvise(&mut self, data: &mut [u8], advice: MmapAdvise) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_epoll_ctl` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:449:9 [INFO] [stdout] | [INFO] [stdout] 449 | uring_sys::io_uring_prep_epoll_ctl(self.sqe, epoll_fd, fd, op, event); [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/iou/sqe.rs:435:5 [INFO] [stdout] | [INFO] [stdout] 435 | / pub unsafe fn prep_epoll_ctl( [INFO] [stdout] 436 | | &mut self, [INFO] [stdout] 437 | | epoll_fd: RawFd, [INFO] [stdout] 438 | | op: EpollOp, [INFO] [stdout] 439 | | fd: RawFd, [INFO] [stdout] 440 | | event: Option<&mut EpollEvent>, [INFO] [stdout] 441 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_files_update` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:456:9 [INFO] [stdout] | [INFO] [stdout] 456 | uring_sys::io_uring_prep_files_update(self.sqe, addr, len, offset as _); [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/iou/sqe.rs:453:5 [INFO] [stdout] | [INFO] [stdout] 453 | pub unsafe fn prep_files_update(&mut self, files: &[RawFd], offset: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:7 [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_provide_buffers` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:468:9 [INFO] [stdout] | [INFO] [stdout] 468 | / uring_sys::io_uring_prep_provide_buffers( [INFO] [stdout] 469 | | self.sqe, [INFO] [stdout] 470 | | addr, [INFO] [stdout] 471 | | len as _, [INFO] [stdout] ... | [INFO] [stdout] 474 | | index as _, [INFO] [stdout] 475 | | ); [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/iou/sqe.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | / pub unsafe fn prep_provide_buffers( [INFO] [stdout] 460 | | &mut self, [INFO] [stdout] 461 | | buffers: &mut [u8], [INFO] [stdout] 462 | | count: u32, [INFO] [stdout] 463 | | group: BufferGroupId, [INFO] [stdout] 464 | | index: u32, [INFO] [stdout] 465 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_remove_buffers` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:479:9 [INFO] [stdout] | [INFO] [stdout] 479 | uring_sys::io_uring_prep_remove_buffers(self.sqe, count as _, id.id as _); [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/iou/sqe.rs:478:5 [INFO] [stdout] | [INFO] [stdout] 478 | pub unsafe fn prep_remove_buffers(&mut self, count: u32, id: BufferGroupId) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_cancel` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:484:9 [INFO] [stdout] | [INFO] [stdout] 484 | uring_sys::io_uring_prep_cancel(self.sqe, user_data as _, flags); [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/iou/sqe.rs:483:5 [INFO] [stdout] | [INFO] [stdout] 483 | pub unsafe fn prep_cancel(&mut self, user_data: u64, flags: i32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_nop` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/sqe.rs:490:9 [INFO] [stdout] | [INFO] [stdout] 490 | uring_sys::io_uring_prep_nop(self.sqe); [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/iou/sqe.rs:489:5 [INFO] [stdout] | [INFO] [stdout] 489 | pub unsafe fn prep_nop(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_read_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:225:9 [INFO] [stdout] | [INFO] [stdout] 225 | / uring_sys::io_uring_prep_read_fixed( [INFO] [stdout] 226 | | sqe.raw_mut(), [INFO] [stdout] 227 | | fd.as_raw_fd(), [INFO] [stdout] 228 | | self.data.as_mut_ptr() as _, [INFO] [stdout] ... | [INFO] [stdout] 231 | | self.index() as _, [INFO] [stdout] 232 | | ); [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/iou/registrar/registered.rs:224:5 [INFO] [stdout] | [INFO] [stdout] 224 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | sqe.raw_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] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:239:9 [INFO] [stdout] | [INFO] [stdout] 239 | / uring_sys::io_uring_prep_read( [INFO] [stdout] 240 | | sqe.raw_mut(), [INFO] [stdout] 241 | | fd.as_raw_fd(), [INFO] [stdout] 242 | | self.as_mut_ptr() as _, [INFO] [stdout] 243 | | self.len() as _, [INFO] [stdout] 244 | | offset as _, [INFO] [stdout] 245 | | ); [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/iou/registrar/registered.rs:238:5 [INFO] [stdout] | [INFO] [stdout] 238 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:240:13 [INFO] [stdout] | [INFO] [stdout] 240 | sqe.raw_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] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:252:9 [INFO] [stdout] | [INFO] [stdout] 252 | / uring_sys::io_uring_prep_read( [INFO] [stdout] 253 | | sqe.raw_mut(), [INFO] [stdout] 254 | | fd.as_raw_fd(), [INFO] [stdout] 255 | | self as *mut _ as _, [INFO] [stdout] 256 | | 8, [INFO] [stdout] 257 | | offset as _, [INFO] [stdout] 258 | | ); [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/iou/registrar/registered.rs:251:5 [INFO] [stdout] | [INFO] [stdout] 251 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:253:13 [INFO] [stdout] | [INFO] [stdout] 253 | sqe.raw_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] [stderr] --> src/io/buffered_file_stream.rs:488:24 [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_read` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:265:9 [INFO] [stdout] | [INFO] [stdout] 265 | / uring_sys::io_uring_prep_read( [INFO] [stdout] 266 | | sqe.raw_mut(), [INFO] [stdout] 267 | | fd.as_raw_fd(), [INFO] [stdout] 268 | | self.as_mut_ptr() as _, [INFO] [stdout] 269 | | self.len() as _, [INFO] [stdout] 270 | | offset as _, [INFO] [stdout] 271 | | ); [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/iou/registrar/registered.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn prep_read(mut self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:266:13 [INFO] [stdout] | [INFO] [stdout] 266 | sqe.raw_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] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_readv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:278:9 [INFO] [stdout] | [INFO] [stdout] 278 | / uring_sys::io_uring_prep_readv( [INFO] [stdout] 279 | | sqe.raw_mut(), [INFO] [stdout] 280 | | fd.as_raw_fd(), [INFO] [stdout] 281 | | self.as_mut_ptr() as _, [INFO] [stdout] 282 | | self.len() as _, [INFO] [stdout] 283 | | offset as _, [INFO] [stdout] 284 | | ); [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/iou/registrar/registered.rs:277:5 [INFO] [stdout] | [INFO] [stdout] 277 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:279:13 [INFO] [stdout] | [INFO] [stdout] 279 | sqe.raw_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] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_readv` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:291:9 [INFO] [stdout] | [INFO] [stdout] 291 | / uring_sys::io_uring_prep_readv( [INFO] [stdout] 292 | | sqe.raw_mut(), [INFO] [stdout] 293 | | fd.as_raw_fd(), [INFO] [stdout] 294 | | self.as_mut_ptr() as _, [INFO] [stdout] 295 | | self.len() as _, [INFO] [stdout] 296 | | offset as _, [INFO] [stdout] 297 | | ); [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/iou/registrar/registered.rs:290:5 [INFO] [stdout] | [INFO] [stdout] 290 | unsafe fn prep_read(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:292:13 [INFO] [stdout] | [INFO] [stdout] 292 | sqe.raw_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] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_write_fixed` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:304:9 [INFO] [stdout] | [INFO] [stdout] 304 | / uring_sys::io_uring_prep_write_fixed( [INFO] [stdout] 305 | | sqe.raw_mut(), [INFO] [stdout] 306 | | fd.as_raw_fd(), [INFO] [stdout] 307 | | self.data.as_ptr() as _, [INFO] [stdout] ... | [INFO] [stdout] 310 | | self.index() as _, [INFO] [stdout] 311 | | ); [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/iou/registrar/registered.rs:303:5 [INFO] [stdout] | [INFO] [stdout] 303 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:305:13 [INFO] [stdout] | [INFO] [stdout] 305 | sqe.raw_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] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_write` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | / uring_sys::io_uring_prep_write( [INFO] [stdout] 319 | | sqe.raw_mut(), [INFO] [stdout] 320 | | fd.as_raw_fd(), [INFO] [stdout] 321 | | self.as_ptr() as _, [INFO] [stdout] 322 | | self.len() as _, [INFO] [stdout] 323 | | offset as _, [INFO] [stdout] 324 | | ); [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/iou/registrar/registered.rs:317:5 [INFO] [stdout] | [INFO] [stdout] 317 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:319:13 [INFO] [stdout] | [INFO] [stdout] 319 | sqe.raw_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] [stderr] --> src/io/buffered_file_stream.rs:488:43 [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_write` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:331:9 [INFO] [stdout] | [INFO] [stdout] 331 | / uring_sys::io_uring_prep_write( [INFO] [stdout] 332 | | sqe.raw_mut(), [INFO] [stdout] 333 | | fd.as_raw_fd(), [INFO] [stdout] 334 | | self.as_ptr() as _, [INFO] [stdout] 335 | | self.len() as _, [INFO] [stdout] 336 | | offset as _, [INFO] [stdout] 337 | | ); [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/iou/registrar/registered.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 330 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:332:13 [INFO] [stdout] | [INFO] [stdout] 332 | sqe.raw_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] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_writev` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | / uring_sys::io_uring_prep_writev( [INFO] [stdout] 345 | | sqe.raw_mut(), [INFO] [stdout] 346 | | fd.as_raw_fd(), [INFO] [stdout] 347 | | self.as_ptr() as _, [INFO] [stdout] 348 | | self.len() as _, [INFO] [stdout] 349 | | offset as _, [INFO] [stdout] 350 | | ); [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/iou/registrar/registered.rs:343:5 [INFO] [stdout] | [INFO] [stdout] 343 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:345:13 [INFO] [stdout] | [INFO] [stdout] 345 | sqe.raw_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] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `uring_sys::io_uring_prep_writev` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:357:9 [INFO] [stdout] | [INFO] [stdout] 357 | / uring_sys::io_uring_prep_writev( [INFO] [stdout] 358 | | sqe.raw_mut(), [INFO] [stdout] 359 | | fd.as_raw_fd(), [INFO] [stdout] 360 | | self.as_ptr() as _, [INFO] [stdout] 361 | | self.len() as _, [INFO] [stdout] 362 | | offset as _, [INFO] [stdout] 363 | | ); [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/iou/registrar/registered.rs:356:5 [INFO] [stdout] | [INFO] [stdout] 356 | unsafe fn prep_write(self, fd: impl UringFd, sqe: &mut SQE<'_>, offset: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `iou::sqe::SQE::<'a>::raw_mut` is unsafe and requires unsafe block [INFO] [stdout] --> src/iou/registrar/registered.rs:358:13 [INFO] [stdout] | [INFO] [stdout] 358 | sqe.raw_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] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `nix::sys::socket::SockaddrLike::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/sys/mod.rs:119:12 [INFO] [stdout] | [INFO] [stdout] 119 | Ok(T::from_raw(addr.as_ptr() as *const _, Some(addr.len())).unwrap()) [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/sys/mod.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / pub(crate) unsafe fn ssptr_to_sockaddr( [INFO] [stdout] 110 | | ss: MaybeUninit, [INFO] [stdout] 111 | | len: usize, [INFO] [stdout] 112 | | ) -> io::Result { [INFO] [stdout] | |__________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `nix::sys::socket::SockaddrLike::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/sys/mod.rs:121:12 [INFO] [stdout] | [INFO] [stdout] 121 | Ok(T::from_raw(ss.as_ptr() as *const _, Some(len as _)).unwrap()) [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] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::notifier` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | self.notifier().id() [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/task/raw.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | unsafe fn my_id(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:169:10 [INFO] [stdout] | [INFO] [stdout] 169 | &(*self.header).notifier [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/task/raw.rs:168:5 [INFO] [stdout] | [INFO] [stdout] 168 | unsafe fn notifier(&self) -> &sys::SleepNotifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:63 [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::my_id` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:225:38 [INFO] [stdout] | [INFO] [stdout] 225 | if Self::thread_id() != Some(raw.my_id()) { [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/task/raw.rs:223:5 [INFO] [stdout] | [INFO] [stdout] 223 | unsafe fn do_wake(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::notifier` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:227:32 [INFO] [stdout] | [INFO] [stdout] 227 | let notifier = raw.notifier(); [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] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `std::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:229:21 [INFO] [stdout] | [INFO] [stdout] 229 | Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::clone_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:229:37 [INFO] [stdout] | [INFO] [stdout] 229 | Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:230:21 [INFO] [stdout] | [INFO] [stdout] 230 | (*raw.header).latency_matters, [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] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:234:25 [INFO] [stdout] | [INFO] [stdout] 234 | let state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:241:21 [INFO] [stdout] | [INFO] [stdout] 241 | (*(raw.header as *mut Header)).state = state | SCHEDULED; [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] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::schedule` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:244:25 [INFO] [stdout] | [INFO] [stdout] 244 | Self::schedule(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] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::do_wake` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:254:13 [INFO] [stdout] | [INFO] [stdout] 254 | Self::do_wake(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/task/raw.rs:252:5 [INFO] [stdout] | [INFO] [stdout] 252 | unsafe fn wake(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:255:13 [INFO] [stdout] | [INFO] [stdout] 255 | Self::drop_waker(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] [INFO] [stdout] [INFO] [stderr] --> src/io/buffered_file_stream.rs:488:78 [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::do_wake` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:262:13 [INFO] [stdout] | [INFO] [stdout] 262 | Self::do_wake(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/task/raw.rs:260:5 [INFO] [stdout] | [INFO] [stdout] 260 | unsafe fn wake_by_ref(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:270:41 [INFO] [stdout] | [INFO] [stdout] 270 | Self::increment_references(&*(raw.header as *mut Header)); [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/task/raw.rs:267:5 [INFO] [stdout] | [INFO] [stdout] 267 | unsafe fn clone_waker(ptr: *const ()) -> RawWaker { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 488 | ( $self:expr_2021, $source:expr_2021, $fileobj:expr_2021, $cx:expr_2021, $pos:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::my_id` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:301:42 [INFO] [stdout] | [INFO] [stdout] 301 | if Self::thread_id() != Some(raw.my_id()) { [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/task/raw.rs:297:5 [INFO] [stdout] | [INFO] [stdout] 297 | unsafe fn drop_waker(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:306:52 [INFO] [stdout] | [INFO] [stdout] 306 | if Self::decrement_references(&*(raw.header as *mut Header)) == 0 { [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] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::notifier` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:307:40 [INFO] [stdout] | [INFO] [stdout] 307 | let notifier = raw.notifier(); [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] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `std::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:309:29 [INFO] [stdout] | [INFO] [stdout] 309 | ... Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::clone_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:309:45 [INFO] [stdout] | [INFO] [stdout] 309 | ... Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:310:29 [INFO] [stdout] | [INFO] [stdout] 310 | ... (*raw.header).latency_matters, [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] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:317:52 [INFO] [stdout] | [INFO] [stdout] 317 | let refs = Self::decrement_references(&*(raw.header as *mut Header)); [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] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:319:25 [INFO] [stdout] | [INFO] [stdout] 319 | let state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stderr] --> src/io/buffered_file_stream.rs:746:11 [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::schedule` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:329:25 [INFO] [stdout] | [INFO] [stdout] 329 | Self::schedule(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] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:331:21 [INFO] [stdout] | [INFO] [stdout] 331 | (*(raw.header as *mut Header)).state = SCHEDULED | CLOSED; [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] [INFO] [stdout] [INFO] [stderr] 746 | ( $buf:expr_2021, $start:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::destroy` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | Self::destroy(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] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:351:52 [INFO] [stdout] | [INFO] [stdout] 351 | let refs = Self::decrement_references(&*(raw.header as *mut Header)); [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/task/raw.rs:346:5 [INFO] [stdout] | [INFO] [stdout] 346 | unsafe fn drop_task(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:353:25 [INFO] [stdout] | [INFO] [stdout] 353 | let state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::destroy` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:358:17 [INFO] [stdout] | [INFO] [stdout] 358 | Self::destroy(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] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:370:41 [INFO] [stdout] | [INFO] [stdout] 370 | Self::increment_references(&*(raw.header as *mut Header)); [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/task/raw.rs:367:5 [INFO] [stdout] | [INFO] [stdout] 367 | unsafe fn schedule(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `std::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:377:22 [INFO] [stdout] | [INFO] [stdout] 377 | Some(Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::clone_waker` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:377:38 [INFO] [stdout] | [INFO] [stdout] 377 | Some(Waker::from_raw(Self::clone_waker(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] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:383:27 [INFO] [stdout] | [INFO] [stdout] 383 | raw_task: NonNull::new_unchecked(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] [stderr] --> src/io/buffered_file_stream.rs:746:27 [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:386:13 [INFO] [stdout] | [INFO] [stdout] 386 | (*raw.schedule)(task); [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] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::drop_in_place` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:398:13 [INFO] [stdout] | [INFO] [stdout] 398 | raw.future.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/task/raw.rs:393:5 [INFO] [stdout] | [INFO] [stdout] 393 | unsafe fn drop_future(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 746 | ( $buf:expr_2021, $start:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::drop_in_place` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | (raw.schedule as *mut S).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/task/raw.rs:413:5 [INFO] [stdout] | [INFO] [stdout] 413 | unsafe fn destroy(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:428:13 [INFO] [stdout] | [INFO] [stdout] 428 | alloc::alloc::dealloc(ptr as *mut u8, task_layout.layout); [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/task/raw.rs:413:5 [INFO] [stdout] | [INFO] [stdout] 413 | unsafe fn destroy(ptr: *const ()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:439:25 [INFO] [stdout] | [INFO] [stdout] 439 | let mut state = (*raw.header).state; [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/task/raw.rs:436:5 [INFO] [stdout] | [INFO] [stdout] 436 | unsafe fn run(ptr: *const ()) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_future` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:445:13 [INFO] [stdout] | [INFO] [stdout] 445 | Self::drop_future(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] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:448:13 [INFO] [stdout] | [INFO] [stdout] 448 | (*(raw.header as *mut Header)).state &= !SCHEDULED; [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] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:451:13 [INFO] [stdout] | [INFO] [stdout] 451 | (*(raw.header as *mut Header)).notify(None); [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] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_task` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:454:13 [INFO] [stdout] | [INFO] [stdout] 454 | Self::drop_task(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] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:459:9 [INFO] [stdout] | [INFO] [stdout] 459 | (*(raw.header as *mut Header)).state = state; [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] [INFO] [stdout] [INFO] [stderr] --> src/io/dma_file_stream.rs:33:7 [INFO] [stdout] warning[E0133]: call to unsafe function `std::task::Waker::from_raw` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:463:39 [INFO] [stdout] | [INFO] [stdout] 463 | let waker = ManuallyDrop::new(Waker::from_raw(RawWaker::new(ptr, &Self::RAW_WAKER_VTABLE))); [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] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `std::pin::Pin::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:469:40 [INFO] [stdout] | [INFO] [stdout] 469 | let poll = ::poll(Pin::new_unchecked(&mut *raw.future), cx); [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] [stderr] 33 | ( $state:expr_2021 ) => { [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:469:64 [INFO] [stdout] | [INFO] [stdout] 469 | let poll = ::poll(Pin::new_unchecked(&mut *raw.future), cx); [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] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:473:17 [INFO] [stdout] | [INFO] [stdout] 473 | state = (*raw.header).state; [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] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_future` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | Self::drop_future(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] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::write` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:481:17 [INFO] [stdout] | [INFO] [stdout] 481 | raw.output.write(out); [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] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | (*(raw.header as *mut Header)).state = new; [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] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::read` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:500:35 [INFO] [stdout] | [INFO] [stdout] 500 | output = Some(raw.output.read()); [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] [stderr] [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:504:17 [INFO] [stdout] | [INFO] [stdout] 504 | (*(raw.header as *mut Header)).notify(None); [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] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_future` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:520:21 [INFO] [stdout] | [INFO] [stdout] 520 | Self::drop_future(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] [INFO] [stdout] [INFO] [stderr] --> src/io/dma_file_stream.rs:346:7 [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:523:17 [INFO] [stdout] | [INFO] [stdout] 523 | (*(raw.header as *mut Header)).state = new; [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] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:530:21 [INFO] [stdout] | [INFO] [stdout] 530 | (*(raw.header as *mut Header)).notify(None); [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] [INFO] [stdout] [INFO] [stderr] 346 | ( $state:expr_2021, $res:expr_2021 ) => {{ [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::schedule` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:534:21 [INFO] [stdout] | [INFO] [stdout] 534 | Self::schedule(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] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `task::raw::RawTask::::drop_task` is unsafe and requires unsafe block [INFO] [stdout] --> src/task/raw.rs:539:9 [INFO] [stdout] | [INFO] [stdout] 539 | Self::drop_task(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] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `libc::syscall` is unsafe and requires unsafe block [INFO] [stdout] --> src/uring_sys/syscalls.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | libc::syscall(__NR_io_uring_register, fd, opcode, arg, nr_args) as libc::c_int [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/uring_sys/syscalls.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / pub unsafe fn io_uring_register( [INFO] [stdout] 12 | | fd: libc::c_int, [INFO] [stdout] 13 | | opcode: libc::c_uint, [INFO] [stdout] 14 | | arg: *const libc::c_void, [INFO] [stdout] 15 | | nr_args: libc::c_uint, [INFO] [stdout] 16 | | ) -> libc::c_int { [INFO] [stdout] | |________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `libc::syscall` is unsafe and requires unsafe block [INFO] [stdout] --> src/uring_sys/syscalls.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | libc::syscall(__NR_io_uring_setup, entries, p) as libc::c_int [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/uring_sys/syscalls.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | pub unsafe fn io_uring_setup(entries: libc::c_uint, p: *mut io_uring_params) -> libc::c_int { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `libc::syscall` is unsafe and requires unsafe block [INFO] [stdout] --> src/uring_sys/syscalls.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | / libc::syscall( [INFO] [stdout] 32 | | __NR_io_uring_enter, [INFO] [stdout] 33 | | fd, [INFO] [stdout] 34 | | to_submit, [INFO] [stdout] ... | [INFO] [stdout] 38 | | core::mem::size_of::(), [INFO] [stdout] 39 | | ) as libc::c_int [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/uring_sys/syscalls.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | / pub unsafe fn io_uring_enter( [INFO] [stdout] 25 | | fd: libc::c_int, [INFO] [stdout] 26 | | to_submit: libc::c_uint, [INFO] [stdout] 27 | | min_complete: libc::c_uint, [INFO] [stdout] 28 | | flags: libc::c_uint, [INFO] [stdout] 29 | | sig: *const libc::sigset_t, [INFO] [stdout] 30 | | ) -> libc::c_int { [INFO] [stdout] | |________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/channels/local_channel.rs:275:19 [INFO] [stdout] | [INFO] [stdout] 275 | let ptr = (value as *const u8).add(offset_of!(WaiterNode, link)); [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/channels/local_channel.rs:268:5 [INFO] [stdout] | [INFO] [stdout] 268 | / unsafe fn get_link( [INFO] [stdout] 269 | | &self, [INFO] [stdout] 270 | | value: *const ::Value, [INFO] [stdout] 271 | | ) -> ::LinkPtr { [INFO] [stdout] | |___________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/channels/local_channel.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | core::ptr::NonNull::new_unchecked(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] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `executor::ExecutorProxy::spawn_scoped_local` is unsafe and requires unsafe block [INFO] [stdout] --> src/executor/mod.rs:2033:5 [INFO] [stdout] | [INFO] [stdout] 2033 | executor().spawn_scoped_local(future) [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/executor/mod.rs:2032:1 [INFO] [stdout] | [INFO] [stdout] 2032 | pub unsafe fn spawn_scoped_local<'a, T>(future: impl Future + 'a) -> ScopedTask<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/dma_file_stream.rs:346:25 [INFO] [stdout] warning[E0133]: call to unsafe function `executor::ExecutorProxy::spawn_scoped_local_into` is unsafe and requires unsafe block [INFO] [stdout] --> src/executor/mod.rs:2074:5 [INFO] [stdout] | [INFO] [stdout] 2074 | executor().spawn_scoped_local_into(future, handle) [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/executor/mod.rs:2070:1 [INFO] [stdout] | [INFO] [stdout] 2070 | / pub unsafe fn spawn_scoped_local_into<'a, T>( [INFO] [stdout] 2071 | | future: impl Future + 'a, [INFO] [stdout] 2072 | | handle: TaskQueueHandle, [INFO] [stdout] 2073 | | ) -> Result> { [INFO] [stdout] | |______________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/buffered_file.rs:42:19 [INFO] [stdout] | [INFO] [stdout] 42 | file: GlommioFile::from_raw_fd(fd), [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/io/buffered_file.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 346 | ( $state:expr_2021, $res:expr_2021 ) => {{ [INFO] [stdout] warning[E0133]: call to unsafe function `io::read_result::ReadResultInner::slice_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/read_result.rs:90:13 [INFO] [stdout] | [INFO] [stdout] 90 | ReadResultInner::slice_unchecked(this.0.as_ref().unwrap(), extra_offset, 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] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/io/read_result.rs:88:5 [INFO] [stdout] | [INFO] [stdout] 88 | pub unsafe fn slice_unchecked(this: &Self, extra_offset: usize, len: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/read_result.rs:143:18 [INFO] [stdout] | [INFO] [stdout] 143 | mem: NonNull::new_unchecked(this.mem.as_ptr().add(extra_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/io/read_result.rs:126:5 [INFO] [stdout] | [INFO] [stdout] 126 | unsafe fn slice_unchecked(this: &Self, extra_offset: usize, len: NonZeroUsize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/read_result.rs:143:41 [INFO] [stdout] | [INFO] [stdout] 143 | mem: NonNull::new_unchecked(this.mem.as_ptr().add(extra_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] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/sched.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | / std::slice::from_raw_parts( [INFO] [stdout] 210 | | self.inner [INFO] [stdout] 211 | | .source [INFO] [stdout] 212 | | .buffer() [INFO] [stdout] ... | [INFO] [stdout] 215 | | (self.offseted_range.end - self.offseted_range.start) as usize, [INFO] [stdout] 216 | | ) [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/io/sched.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | pub(crate) unsafe fn as_bytes(&self) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/io/sched.rs:210:13 [INFO] [stdout] | [INFO] [stdout] 210 | / self.inner [INFO] [stdout] 211 | | .source [INFO] [stdout] 212 | | .buffer() [INFO] [stdout] 213 | | .as_ptr() [INFO] [stdout] 214 | | .add(self.offseted_range.start as usize), [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] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/datagram.rs:67:22 [INFO] [stdout] | [INFO] [stdout] 67 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/datagram.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/stream.rs:392:22 [INFO] [stdout] | [INFO] [stdout] 392 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/stream.rs:391:5 [INFO] [stdout] | [INFO] [stdout] 391 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/tcp_socket.rs:83:18 [INFO] [stdout] | [INFO] [stdout] 83 | let sk = Socket::from_raw_fd(fd); [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/net/tcp_socket.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 82 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/dma_file_stream.rs:818:7 [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/tcp_socket.rs:391:22 [INFO] [stdout] | [INFO] [stdout] 391 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/tcp_socket.rs:390:5 [INFO] [stdout] | [INFO] [stdout] 390 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/udp_socket.rs:40:22 [INFO] [stdout] | [INFO] [stdout] 40 | let socket = socket2::Socket::from_raw_fd(fd); [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/net/udp_socket.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 818 | ( $file:expr_2021 ) => { [INFO] [stdout] warning[E0133]: call to unsafe function `std::os::fd::FromRawFd::from_raw_fd` is unsafe and requires unsafe block [INFO] [stdout] --> src/net/unix.rs:285:21 [INFO] [stdout] | [INFO] [stdout] 285 | stream: GlommioStream::from_raw_fd(fd as _), [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/net/unix.rs:283:5 [INFO] [stdout] | [INFO] [stdout] 283 | unsafe fn from_raw_fd(fd: RawFd) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/sync/rwlock.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | let ptr = (value as *const u8).add(offset_of!(WaiterNode, link)); [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/sync/rwlock.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | / unsafe fn get_link( [INFO] [stdout] 122 | | &self, [INFO] [stdout] 123 | | value: *const ::Value, [INFO] [stdout] 124 | | ) -> ::LinkPtr { [INFO] [stdout] | |___________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/sync/rwlock.rs:131:9 [INFO] [stdout] | [INFO] [stdout] 131 | core::ptr::NonNull::new_unchecked(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] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/sync/semaphore.rs:87:19 [INFO] [stdout] | [INFO] [stdout] 87 | let ptr = (value as *const u8).add(offset_of!(WaiterNode, link)); [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/sync/semaphore.rs:79:5 [INFO] [stdout] | [INFO] [stdout] 79 | / unsafe fn get_link( [INFO] [stdout] 80 | | &self, [INFO] [stdout] 81 | | value: *const ::Value, [INFO] [stdout] 82 | | ) -> ::LinkPtr { [INFO] [stdout] | |___________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::::new_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/sync/semaphore.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | core::ptr::NonNull::new_unchecked(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] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: method `in_kernel` is never used [INFO] [stdout] --> src/sys/uring.rs:640:8 [INFO] [stdout] | [INFO] [stdout] 636 | pub(crate) trait UringCommon { [INFO] [stdout] | ----------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 640 | fn in_kernel(&self) -> usize; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `impl Iterator>>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | ) -> io::Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 53 | ) -> io::Result + use<>> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:68:21 [INFO] [stdout] | [INFO] [stdout] 68 | ) -> io::Result> + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 68 | ) -> io::Result> + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/dma_file_stream.rs:1529:11 [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:83:21 [INFO] [stdout] | [INFO] [stdout] 83 | ) -> io::Result> + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 83 | ) -> io::Result> + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:117:21 [INFO] [stdout] | [INFO] [stdout] 117 | ) -> io::Result + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 115 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 117 | ) -> io::Result + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 1529 | ( $buf:expr_2021, $start:expr_2021 ) => { [INFO] [stdout] warning: `impl Iterator> + 'a` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/iou/registrar/mod.rs:150:21 [INFO] [stdout] | [INFO] [stdout] 150 | ) -> io::Result + 'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/iou/registrar/mod.rs:42:6 [INFO] [stdout] | [INFO] [stdout] 42 | impl<'ring> Registrar<'ring> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | &mut self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 150 | ) -> io::Result + 'a + use<'a>> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:263:33 [INFO] [stdout] | [INFO] [stdout] 263 | let iopoll = if let Err(err) = source.collect_rw().await { [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/reactor.rs:275:17 [INFO] [stdout] | [INFO] [stdout] 275 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 263 ~ let iopoll = match source.collect_rw().await { Err(err) => { [INFO] [stdout] 264 | if let Some(libc::ENOTSUP) = err.raw_os_error() { [INFO] [stdout] ... [INFO] [stdout] 274 | } [INFO] [stdout] 275 ~ } _ => { [INFO] [stdout] 276 | true [INFO] [stdout] 277 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:264:24 [INFO] [stdout] | [INFO] [stdout] 264 | if let Some(libc::ENOTSUP) = err.raw_os_error() { [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/reactor.rs:266:21 [INFO] [stdout] | [INFO] [stdout] 266 | } 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] 264 ~ match err.raw_os_error() { Some(libc::ENOTSUP) => { [INFO] [stdout] 265 | false [INFO] [stdout] 266 ~ } _ => { [INFO] [stdout] 267 | // The IO requests failed, but not because the poll ring doesn't work. [INFO] [stdout] ... [INFO] [stdout] 273 | false [INFO] [stdout] 274 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:357:10 [INFO] [stdout] | [INFO] [stdout] 357 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:351:9 [INFO] [stdout] | [INFO] [stdout] 351 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 357 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:574:16 [INFO] [stdout] | [INFO] [stdout] 574 | if let Some(source) = [INFO] [stdout] | ________________^ [INFO] [stdout] 575 | | scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [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/reactor.rs:578:13 [INFO] [stdout] | [INFO] [stdout] 578 | } 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] 574 ~ match scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [INFO] [stdout] 575 ~ { Some(source) => { [INFO] [stdout] 576 | source [INFO] [stdout] 577 ~ } _ => { [INFO] [stdout] 578 | self.sys.read_dma(&source, pos, size); [INFO] [stdout] 579 | scheduler.schedule(source, pos..pos + size as u64) [INFO] [stdout] 580 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/reactor.rs:625:16 [INFO] [stdout] | [INFO] [stdout] 625 | if let Some(source) = [INFO] [stdout] | ________________^ [INFO] [stdout] 626 | | scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [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/reactor.rs:629:13 [INFO] [stdout] | [INFO] [stdout] 629 | } 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] 625 ~ match scheduler.consume_scheduled(pos..pos + size as u64, Some(&self.sys)) [INFO] [stdout] 626 ~ { Some(source) => { [INFO] [stdout] 627 | source [INFO] [stdout] 628 ~ } _ => { [INFO] [stdout] 629 | self.sys.read_buffered(&source, pos, size); [INFO] [stdout] 630 | scheduler.schedule(source, pos..pos + size as u64) [INFO] [stdout] 631 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:657:61 [INFO] [stdout] | [INFO] [stdout] 657 | pub(crate) fn truncate(&self, raw: RawFd, size: u64) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:657:28 [INFO] [stdout] | [INFO] [stdout] 657 | pub(crate) fn truncate(&self, raw: RawFd, size: u64) -> impl Future { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 657 | pub(crate) fn truncate(&self, raw: RawFd, size: u64) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:667:68 [INFO] [stdout] | [INFO] [stdout] 667 | pub(crate) fn rename(&self, old_path: P, new_path: Q) -> impl Future [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:667:32 [INFO] [stdout] | [INFO] [stdout] 667 | pub(crate) fn rename(&self, old_path: P, new_path: Q) -> impl Future [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 667 | pub(crate) fn rename(&self, old_path: P, new_path: Q) -> impl Future + use [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/io/dma_file_stream.rs:1529:27 [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:685:66 [INFO] [stdout] | [INFO] [stdout] 685 | pub(crate) fn remove_file>(&self, path: P) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:685:47 [INFO] [stdout] | [INFO] [stdout] 685 | pub(crate) fn remove_file>(&self, path: P) -> impl Future { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 685 | pub(crate) fn remove_file>(&self, path: P) -> impl Future + use

{ [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:699:10 [INFO] [stdout] | [INFO] [stdout] 699 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:696:9 [INFO] [stdout] | [INFO] [stdout] 696 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 699 | ) -> impl Future + use

{ [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 1529 | ( $buf:expr_2021, $start:expr_2021 ) => { [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/reactor.rs:712:10 [INFO] [stdout] | [INFO] [stdout] 712 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/reactor.rs:710:9 [INFO] [stdout] | [INFO] [stdout] 710 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 712 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/mod.rs:335:15 [INFO] [stdout] | [INFO] [stdout] 335 | while let Ok(waker) = self.foreign_wakes.try_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/sys/mod.rs:338:9 [INFO] [stdout] | [INFO] [stdout] 338 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/blocking.rs:168:19 [INFO] [stdout] | [INFO] [stdout] 168 | while let Ok(el) = rx.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/sys/blocking.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 177 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/blocking.rs:227:10 [INFO] [stdout] | [INFO] [stdout] 227 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/blocking.rs:224:9 [INFO] [stdout] | [INFO] [stdout] 224 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 227 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/source.rs:240:16 [INFO] [stdout] | [INFO] [stdout] 240 | if let Some(lat) = inner.wakers.timestamps() { [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/sys/source.rs:261:13 [INFO] [stdout] | [INFO] [stdout] 261 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 240 ~ match inner.wakers.timestamps() { Some(lat) => { [INFO] [stdout] 241 | drop(inner); [INFO] [stdout] ... [INFO] [stdout] 260 | ); [INFO] [stdout] 261 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:447:16 [INFO] [stdout] | [INFO] [stdout] 447 | if let Some(libc::ECANCELED) = x.raw_os_error() { [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/sys/uring.rs:449:13 [INFO] [stdout] | [INFO] [stdout] 449 | } 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] 447 ~ match x.raw_os_error() { Some(libc::ECANCELED) => { [INFO] [stdout] 448 | io::Error::from_raw_os_error(libc::ETIMEDOUT) [INFO] [stdout] 449 ~ } _ => { [INFO] [stdout] 450 | x [INFO] [stdout] 451 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:861:23 [INFO] [stdout] | [INFO] [stdout] 861 | return if let Some(sqes) = self.ring.sq().prepare_sqes(chain.len() as u32) { [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/sys/uring.rs:878:13 [INFO] [stdout] | [INFO] [stdout] 878 | } 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] 861 ~ return match self.ring.sq().prepare_sqes(chain.len() as u32) { Some(sqes) => { [INFO] [stdout] 862 | let ops = extract_one_chain(source_map, queue, chain, now); [INFO] [stdout] ... [INFO] [stdout] 877 | Some(true) [INFO] [stdout] 878 ~ } _ => { [INFO] [stdout] 879 | None [INFO] [stdout] 880 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: aborting due to 53 previous errors [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1002:12 [INFO] [stdout] | [INFO] [stdout] 1002 | if let Some(mut sqe) = self.ring.sq().prepare_sqe() { [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/sys/uring.rs:1042:9 [INFO] [stdout] | [INFO] [stdout] 1042 | } 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] 1002 ~ match self.ring.sq().prepare_sqe() { Some(mut sqe) => { [INFO] [stdout] 1003 | // Now must wait on the `eventfd` in case someone wants to wake us up. [INFO] [stdout] ... [INFO] [stdout] 1041 | } [INFO] [stdout] 1042 ~ } _ => { [INFO] [stdout] 1043 | false [INFO] [stdout] 1044 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1053:12 [INFO] [stdout] | [INFO] [stdout] 1053 | if let Some(mut sqe) = self.ring.sq().prepare_sqe() { [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/sys/uring.rs:1098:9 [INFO] [stdout] | [INFO] [stdout] 1098 | } 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] 1053 ~ match self.ring.sq().prepare_sqe() { Some(mut sqe) => { [INFO] [stdout] 1054 | let sqe_ptr = unsafe { sqe.raw_mut() as *mut _ }; [INFO] [stdout] ... [INFO] [stdout] 1097 | } [INFO] [stdout] 1098 ~ } _ => { [INFO] [stdout] 1099 | // Can't link rings because we ran out of `CQE`s. Just can't sleep. [INFO] [stdout] ... [INFO] [stdout] 1105 | .or_else(Reactor::intr_ok) [INFO] [stdout] 1106 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1193:23 [INFO] [stdout] | [INFO] [stdout] 1193 | return if let Some(sqes) = self.ring.sq().prepare_sqes(chain.len() as u32) { [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/sys/uring.rs:1210:13 [INFO] [stdout] | [INFO] [stdout] 1210 | } 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] 1193 ~ return match self.ring.sq().prepare_sqes(chain.len() as u32) { Some(sqes) => { [INFO] [stdout] 1194 | let ops = extract_one_chain(source_map, queue, chain, now); [INFO] [stdout] ... [INFO] [stdout] 1209 | Some(true) [INFO] [stdout] 1210 ~ } _ => { [INFO] [stdout] 1211 | None [INFO] [stdout] 1212 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Original diagnostics will follow. [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1564:10 [INFO] [stdout] | [INFO] [stdout] 1564 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1561:9 [INFO] [stdout] | [INFO] [stdout] 1561 | &self, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1564 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1568:66 [INFO] [stdout] | [INFO] [stdout] 1568 | pub(crate) fn truncate(&self, source: &Source, size: u64) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1568:28 [INFO] [stdout] | [INFO] [stdout] 1568 | pub(crate) fn truncate(&self, source: &Source, size: u64) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1568 | pub(crate) fn truncate(&self, source: &Source, size: u64) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1573:53 [INFO] [stdout] | [INFO] [stdout] 1573 | pub(crate) fn rename(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1573:26 [INFO] [stdout] | [INFO] [stdout] 1573 | pub(crate) fn rename(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1573 | pub(crate) fn rename(&self, source: &Source) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1583:72 [INFO] [stdout] | [INFO] [stdout] 1583 | pub(crate) fn copy_file_range(&self, source: &Source, pos: u64) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1583:35 [INFO] [stdout] | [INFO] [stdout] 1583 | pub(crate) fn copy_file_range(&self, source: &Source, pos: u64) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1583 | pub(crate) fn copy_file_range(&self, source: &Source, pos: u64) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1603:10 [INFO] [stdout] | [INFO] [stdout] 1603 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1600:9 [INFO] [stdout] | [INFO] [stdout] 1600 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 1601 | source: &Source, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1603 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1613:58 [INFO] [stdout] | [INFO] [stdout] 1613 | pub(crate) fn remove_file(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1613:31 [INFO] [stdout] | [INFO] [stdout] 1613 | pub(crate) fn remove_file(&self, source: &Source) -> impl Future { [INFO] [stdout] | ^ ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1613 | pub(crate) fn remove_file(&self, source: &Source) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/sys/uring.rs:1627:10 [INFO] [stdout] | [INFO] [stdout] 1627 | ) -> impl Future { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/sys/uring.rs:1624:9 [INFO] [stdout] | [INFO] [stdout] 1624 | &self, [INFO] [stdout] | ^ [INFO] [stdout] 1625 | source: &Source, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 1627 | ) -> impl Future + use<> { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys/uring.rs:2017:8 [INFO] [stdout] | [INFO] [stdout] 2017 | if let Some(ref ts) = &*source.timeout_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/sys/uring.rs:2024:5 [INFO] [stdout] | [INFO] [stdout] 2024 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2017 ~ match &*source.timeout_ref() { Some(ref ts) => { [INFO] [stdout] 2018 | queue.submissions.push_back(UringDescriptor { [INFO] [stdout] ... [INFO] [stdout] 2023 | }); [INFO] [stdout] 2024 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/task/header.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | if let Some(w) = waker { [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/task/header.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 76 ~ match waker { Some(w) => { [INFO] [stdout] 77 | // We need a safeguard against panics because waking can panic. [INFO] [stdout] ... [INFO] [stdout] 82 | }); [INFO] [stdout] 83 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/spsc_queue.rs:464:20 [INFO] [stdout] | [INFO] [stdout] 464 | if let Some(t) = c.try_pop() { [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/channels/spsc_queue.rs:467:17 [INFO] [stdout] | [INFO] [stdout] 467 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 464 ~ match c.try_pop() { Some(t) => { [INFO] [stdout] 465 | assert!(t == i); [INFO] [stdout] 466 | break; [INFO] [stdout] 467 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:314:16 [INFO] [stdout] | [INFO] [stdout] 314 | if let Some(r) = self.reactor.upgrade() { [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/channels/shared_channel.rs:321:13 [INFO] [stdout] | [INFO] [stdout] 321 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 314 ~ match self.reactor.upgrade() { Some(r) => { [INFO] [stdout] 315 | self.notifier.notify(false); [INFO] [stdout] ... [INFO] [stdout] 320 | r.process_shared_channels_by_id(self.id); [INFO] [stdout] 321 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:440:12 [INFO] [stdout] | [INFO] [stdout] 440 | if let Some(state) = self.state.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] = 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/channels/shared_channel.rs:448:9 [INFO] [stdout] | [INFO] [stdout] 448 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 440 ~ match self.state.take() { Some(state) => { [INFO] [stdout] 441 | // Never connected, we must connect ourselves. [INFO] [stdout] ... [INFO] [stdout] 447 | } [INFO] [stdout] 448 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:444:20 [INFO] [stdout] | [INFO] [stdout] 444 | if let Some(notifier) = sys::get_sleep_notifier_for(id) { [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/channels/shared_channel.rs:446:17 [INFO] [stdout] | [INFO] [stdout] 446 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 444 ~ match sys::get_sleep_notifier_for(id) { Some(notifier) => { [INFO] [stdout] 445 | notifier.notify(false); [INFO] [stdout] 446 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:454:12 [INFO] [stdout] | [INFO] [stdout] 454 | if let Some(state) = self.state.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] = 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/channels/shared_channel.rs:462:9 [INFO] [stdout] | [INFO] [stdout] 462 | } [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.state.take() { Some(state) => { [INFO] [stdout] 455 | // Never connected, we must connect ourselves. [INFO] [stdout] ... [INFO] [stdout] 461 | } [INFO] [stdout] 462 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:458:20 [INFO] [stdout] | [INFO] [stdout] 458 | if let Some(notifier) = sys::get_sleep_notifier_for(id) { [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/channels/shared_channel.rs:460:17 [INFO] [stdout] | [INFO] [stdout] 460 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 458 ~ match sys::get_sleep_notifier_for(id) { Some(notifier) => { [INFO] [stdout] 459 | notifier.notify(false); [INFO] [stdout] 460 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:469:16 [INFO] [stdout] | [INFO] [stdout] 469 | if let Some(r) = self.reactor.upgrade() { [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/channels/shared_channel.rs:472:13 [INFO] [stdout] | [INFO] [stdout] 472 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 469 ~ match self.reactor.upgrade() { Some(r) => { [INFO] [stdout] 470 | self.notifier.notify(false); [INFO] [stdout] 471 | r.unregister_shared_channel(self.id); [INFO] [stdout] 472 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:480:16 [INFO] [stdout] | [INFO] [stdout] 480 | if let Some(r) = self.reactor.upgrade() { [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/channels/shared_channel.rs:483:13 [INFO] [stdout] | [INFO] [stdout] 483 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 480 ~ match self.reactor.upgrade() { Some(r) => { [INFO] [stdout] 481 | self.notifier.notify(false); [INFO] [stdout] 482 | r.unregister_shared_channel(self.id) [INFO] [stdout] 483 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/shared_channel.rs:999:23 [INFO] [stdout] | [INFO] [stdout] 999 | while let Some(v) = receiver.recv().await { [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/channels/shared_channel.rs:1001:17 [INFO] [stdout] | [INFO] [stdout] 1001 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:65:23 [INFO] [stdout] | [INFO] [stdout] 65 | while let Some(msg) = stream.recv().await { [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/channels/sharding.rs:67:17 [INFO] [stdout] | [INFO] [stdout] 67 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:139:15 [INFO] [stdout] | [INFO] [stdout] 139 | while let Some(consumer) = self.consumers.pop() { [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/channels/sharding.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 141 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:145:15 [INFO] [stdout] | [INFO] [stdout] 145 | while let Some(task) = self.forward_tasks.pop() { [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/channels/sharding.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/channels/sharding.rs:161:15 [INFO] [stdout] | [INFO] [stdout] 161 | while let Some(msg) = messages.next().await { [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/channels/sharding.rs:163:9 [INFO] [stdout] | [INFO] [stdout] 163 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/controllers/deadline_queue.rs:415:23 [INFO] [stdout] | [INFO] [stdout] 415 | while let Some(request) = stream.next().await { [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/controllers/deadline_queue.rs:436:17 [INFO] [stdout] | [INFO] [stdout] 436 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 199 | if let Shares::Dynamic(bm) = &self.shares { [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/executor/mod.rs:204:9 [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] 199 ~ match &self.shares { Shares::Dynamic(bm) => { [INFO] [stdout] 200 | if now.saturating_duration_since(self.last_adjustment) > bm.adjustment_period() { [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/executor/mod.rs:1380:20 [INFO] [stdout] | [INFO] [stdout] 1380 | if let Some(r) = queue_ref.get_task() { [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/executor/mod.rs:1384:17 [INFO] [stdout] | [INFO] [stdout] 1384 | } 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] 1380 ~ match queue_ref.get_task() { Some(r) => { [INFO] [stdout] 1381 | drop(queue_ref); [INFO] [stdout] 1382 | r.run(); [INFO] [stdout] 1383 | tasks_executed_this_loop += 1; [INFO] [stdout] 1384 ~ } _ => { [INFO] [stdout] 1385 | break; [INFO] [stdout] 1386 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:1490:24 [INFO] [stdout] | [INFO] [stdout] 1490 | if let Poll::Ready(t) = future.as_mut().poll(cx) { [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/executor/mod.rs:1496:21 [INFO] [stdout] | [INFO] [stdout] 1496 | } 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] 1490 ~ match future.as_mut().poll(cx) { Poll::Ready(t) => { [INFO] [stdout] 1491 | // It may be that we just became ready now that the task queue [INFO] [stdout] ... [INFO] [stdout] 1495 | break t.unwrap(); [INFO] [stdout] 1496 ~ } _ => { [INFO] [stdout] 1497 | while !this.reactor.spin_poll_io().unwrap() { [INFO] [stdout] ... [INFO] [stdout] 1506 | pre_time = Instant::now(); [INFO] [stdout] 1507 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl futures_lite::Future` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/executor/mod.rs:2797:52 [INFO] [stdout] | [INFO] [stdout] 2797 | pub fn spawn_blocking(&self, func: F) -> impl Future [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/executor/mod.rs:2797:33 [INFO] [stdout] | [INFO] [stdout] 2797 | pub fn spawn_blocking(&self, func: F) -> impl Future [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 2797 | pub fn spawn_blocking(&self, func: F) -> impl Future + use [INFO] [stdout] | +++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/multitask.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | if let Some(handle) = &self.0 { [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/executor/multitask.rs:79:9 [INFO] [stdout] | [INFO] [stdout] 79 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 77 ~ match &self.0 { Some(handle) => { [INFO] [stdout] 78 | handle.cancel(); [INFO] [stdout] 79 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/multitask.rs:153:16 [INFO] [stdout] | [INFO] [stdout] 153 | if let Some(tq) = tq { [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/executor/multitask.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 153 ~ match tq { Some(tq) => { [INFO] [stdout] 154 | { [INFO] [stdout] ... [INFO] [stdout] 158 | maybe_activate(tq); [INFO] [stdout] 159 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/placement/pq_tree.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 110 | if let Some(mut c) = self.children.peek_mut() { [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/executor/placement/pq_tree.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 112 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 110 ~ match self.children.peek_mut() { Some(mut c) => { [INFO] [stdout] 111 | c.select_cpu_recur(path); [INFO] [stdout] 112 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/stall.rs:264:15 [INFO] [stdout] | [INFO] [stdout] 264 | while let Ok(frame) = self.detector.rx.try_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/executor/stall.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:2899:12 [INFO] [stdout] | [INFO] [stdout] 2899 | if let Err(x) = LocalExecutorBuilder::new(Placement::Fixed(0)).make() { [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/executor/mod.rs:2901:9 [INFO] [stdout] | [INFO] [stdout] 2901 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2899 ~ match LocalExecutorBuilder::new(Placement::Fixed(0)).make() { Err(x) => { [INFO] [stdout] 2900 | panic!("got error {:?}", x); [INFO] [stdout] 2901 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:3539:24 [INFO] [stdout] | [INFO] [stdout] 3539 | if let Some(ref x) = *w { [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/executor/mod.rs:3542:21 [INFO] [stdout] | [INFO] [stdout] 3542 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 3539 ~ match *w { Some(ref x) => { [INFO] [stdout] 3540 | x.wake_by_ref(); [INFO] [stdout] 3541 | return; [INFO] [stdout] 3542 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:3569:24 [INFO] [stdout] | [INFO] [stdout] 3569 | if let Some(x) = w.clone() { [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/executor/mod.rs:3572:21 [INFO] [stdout] | [INFO] [stdout] 3572 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 3569 ~ match w.clone() { Some(x) => { [INFO] [stdout] 3570 | x.wake(); [INFO] [stdout] 3571 | return; [INFO] [stdout] 3572 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:3601:24 [INFO] [stdout] | [INFO] [stdout] 3601 | if let Some(x) = w.clone() { [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/executor/mod.rs:3604:21 [INFO] [stdout] | [INFO] [stdout] 3604 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 3601 ~ match w.clone() { Some(x) => { [INFO] [stdout] 3602 | x.wake(); [INFO] [stdout] 3603 | return; [INFO] [stdout] 3604 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/executor/mod.rs:3633:24 [INFO] [stdout] | [INFO] [stdout] 3633 | if let Some(ref x) = *w { [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/executor/mod.rs:3636:21 [INFO] [stdout] | [INFO] [stdout] 3636 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 3633 ~ match *w { Some(ref x) => { [INFO] [stdout] 3634 | x.wake_by_ref(); [INFO] [stdout] 3635 | return; [INFO] [stdout] 3636 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/buffered_file_stream.rs:378:16 [INFO] [stdout] | [INFO] [stdout] 378 | if let IoBuffer::Buffered(mut buffer) = source.extract_buffer() { [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/io/buffered_file_stream.rs:382:13 [INFO] [stdout] | [INFO] [stdout] 382 | } 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] 378 ~ match source.extract_buffer() { IoBuffer::Buffered(mut buffer) => { [INFO] [stdout] 379 | self.file_pos += buffer.len() as u64; [INFO] [stdout] 380 | buffer.truncate(0); [INFO] [stdout] 381 | self.buffer.replace_buffer(buffer); [INFO] [stdout] 382 ~ } _ => { [INFO] [stdout] 383 | unreachable!("expected vec buffer"); [INFO] [stdout] 384 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/buffered_file_stream.rs:613:16 [INFO] [stdout] | [INFO] [stdout] 613 | if let Err(x) = self.consume_flush_result(source) { [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/io/buffered_file_stream.rs:615:13 [INFO] [stdout] | [INFO] [stdout] 615 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 613 ~ match self.consume_flush_result(source) { Err(x) => { [INFO] [stdout] 614 | return Poll::Ready(Err(x)); [INFO] [stdout] 615 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/buffered_file_stream.rs:888:15 [INFO] [stdout] | [INFO] [stdout] 888 | while let Some(line) = lines.next().await { [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/io/buffered_file_stream.rs:891:9 [INFO] [stdout] | [INFO] [stdout] 891 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:247:28 [INFO] [stdout] | [INFO] [stdout] 247 | if let Some(merged) = this.merger.as_mut().unwrap().merge(io) { [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/io/bulk_io.rs:249:25 [INFO] [stdout] | [INFO] [stdout] 249 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 247 ~ match this.merger.as_mut().unwrap().merge(io) { Some(merged) => { [INFO] [stdout] 248 | return Poll::Ready(Some(merged)); [INFO] [stdout] 249 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:252:35 [INFO] [stdout] | [INFO] [stdout] 252 | return if let Some(merged) = this.merger.as_mut().unwrap().flush() { [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/io/bulk_io.rs:254:25 [INFO] [stdout] | [INFO] [stdout] 254 | } 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] 252 ~ return match this.merger.as_mut().unwrap().flush() { Some(merged) => { [INFO] [stdout] 253 | Poll::Ready(Some(merged)) [INFO] [stdout] 254 ~ } _ => { [INFO] [stdout] 255 | Poll::Pending [INFO] [stdout] 256 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/io/bulk_io.rs:264:28 [INFO] [stdout] | [INFO] [stdout] 264 | Poll::Ready(if let Some(mut merger) = this.merger.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] = 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/io/bulk_io.rs:266:13 [INFO] [stdout] | [INFO] [stdout] 266 | } 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] 264 ~ Poll::Ready(match this.merger.take() { Some(mut merger) => { [INFO] [stdout] 265 | merger.flush() [INFO] [stdout] 266 ~ } _ => { [INFO] [stdout] 267 | None [INFO] [stdout] 268 ~ }}) [INFO] [stdout] | [INFO] [stdout] [WARN] too many lines in the log, truncating it