[INFO] fetching crate linkle 0.2.11... [INFO] checking linkle-0.2.11 against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] extracting crate linkle 0.2.11 into /workspace/builds/worker-6-tc1/source [INFO] validating manifest of crates.io crate linkle 0.2.11 on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-6-tc1/source/rust-toolchain [INFO] started tweaking crates.io crate linkle 0.2.11 [INFO] finished tweaking crates.io crate linkle 0.2.11 [INFO] tweaked toml for crates.io crate linkle 0.2.11 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate crates.io crate linkle 0.2.11 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded snafu-derive v0.6.9 [INFO] [stderr] Downloaded hermit-abi v0.1.17 [INFO] [stderr] Downloaded block-modes v0.7.0 [INFO] [stderr] Downloaded structopt-derive v0.4.13 [INFO] [stderr] Downloaded cargo_metadata v0.12.0 [INFO] [stderr] Downloaded subtle v2.3.0 [INFO] [stderr] Downloaded blz-nx v1.0.1 [INFO] [stderr] Downloaded toml v0.5.7 [INFO] [stderr] Downloaded cargo-toml2 v1.3.2 [INFO] [stderr] Downloaded cc v1.0.61 [INFO] [stderr] Downloaded derive_more v0.99.11 [INFO] [stderr] Downloaded ahash v0.4.6 [INFO] [stderr] Downloaded aesni v0.10.0 [INFO] [stderr] Downloaded aes-soft v0.6.2 [INFO] [stderr] Downloaded serde_json v1.0.59 [INFO] [stderr] Downloaded aes v0.6.0 [INFO] [stderr] Downloaded goblin v0.2.3 [INFO] [stderr] Downloaded object v0.22.0 [INFO] [stderr] Downloaded serde v1.0.117 [INFO] [stderr] Downloaded syn v1.0.48 [INFO] [stderr] Downloaded backtrace v0.3.54 [INFO] [stderr] Downloaded getrandom v0.1.15 [INFO] [stderr] Downloaded scroll v0.10.2 [INFO] [stderr] Downloaded lz4-sys v1.9.2 [INFO] [stderr] Downloaded serde_derive v1.0.117 [INFO] [stderr] Downloaded dbl v0.3.0 [INFO] [stderr] Downloaded cipher v0.2.1 [INFO] [stderr] Downloaded typenum v1.12.0 [INFO] [stderr] Downloaded snafu v0.6.9 [INFO] [stderr] Downloaded libc v0.2.80 [INFO] [stderr] Downloaded structopt v0.3.20 [INFO] [stderr] Downloaded rust-ini v0.16.0 [INFO] [stderr] Downloaded addr2line v0.14.0 [INFO] [stderr] Downloaded cmac v0.5.1 [INFO] [stderr] Downloaded dirs-sys-next v0.1.1 [INFO] [stderr] Downloaded lz4 v1.23.2 [INFO] [stderr] Downloaded scroll_derive v0.10.4 [INFO] [stderr] Downloaded crypto-mac v0.10.0 [INFO] [stderr] Downloaded ctr v0.6.0 [INFO] [stderr] Downloaded dlv-list v0.2.2 [INFO] [stderr] Downloaded ordered-multimap v0.3.0 [INFO] [stderr] Downloaded semver-parser v0.10.1 [INFO] [stderr] Downloaded sha2 v0.9.1 [INFO] [stderr] Downloaded gimli v0.23.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1884638257ad65e88919e4402360b40bbb4ccbaf3f28ccb8d965346d1f53b8a5 [INFO] running `Command { std: "docker" "start" "-a" "1884638257ad65e88919e4402360b40bbb4ccbaf3f28ccb8d965346d1f53b8a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1884638257ad65e88919e4402360b40bbb4ccbaf3f28ccb8d965346d1f53b8a5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1884638257ad65e88919e4402360b40bbb4ccbaf3f28ccb8d965346d1f53b8a5", kill_on_drop: false }` [INFO] [stdout] 1884638257ad65e88919e4402360b40bbb4ccbaf3f28ccb8d965346d1f53b8a5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6a45bd23c75c34c429fa6a18a45619061e489c2454340cb985079edaa781bc16 [INFO] running `Command { std: "docker" "start" "-a" "6a45bd23c75c34c429fa6a18a45619061e489c2454340cb985079edaa781bc16", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.80 [INFO] [stderr] Compiling typenum v1.12.0 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling getrandom v0.1.15 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.48 [INFO] [stderr] Checking ppv-lite86 v0.2.9 [INFO] [stderr] Compiling cc v1.0.61 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling serde v1.0.117 [INFO] [stderr] Checking ahash v0.4.6 [INFO] [stderr] Checking gimli v0.23.0 [INFO] [stderr] Checking adler v0.2.3 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling serde_derive v1.0.117 [INFO] [stderr] Checking rustc-demangle v0.1.18 [INFO] [stderr] Checking hashbrown v0.9.1 [INFO] [stderr] Checking subtle v2.3.0 [INFO] [stderr] Compiling serde_json v1.0.59 [INFO] [stderr] Checking object v0.22.0 [INFO] [stderr] Checking cpuid-bool v0.1.2 [INFO] [stderr] Compiling generic-array v0.14.4 [INFO] [stderr] Compiling miniz_oxide v0.4.3 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Checking block-padding v0.2.1 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Checking byteorder v0.5.3 [INFO] [stderr] Checking bit_field v0.10.1 [INFO] [stderr] Checking elf v0.0.10 [INFO] [stderr] Checking blz-nx v1.0.1 [INFO] [stderr] Compiling lz4-sys v1.9.2 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking dirs-sys-next v0.1.1 [INFO] [stderr] Checking dirs-next v2.0.0 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking cipher v0.2.1 [INFO] [stderr] Checking dbl v0.3.0 [INFO] [stderr] Checking block-buffer v0.9.0 [INFO] [stderr] Checking digest v0.9.0 [INFO] [stderr] Checking sha2 v0.9.1 [INFO] [stderr] Checking aes-soft v0.6.2 [INFO] [stderr] Checking crypto-mac v0.10.0 [INFO] [stderr] Checking block-modes v0.7.0 [INFO] [stderr] Checking ctr v0.6.0 [INFO] [stderr] Checking cmac v0.5.1 [INFO] [stderr] Checking aes v0.6.0 [INFO] [stderr] Checking addr2line v0.14.0 [INFO] [stderr] Checking dlv-list v0.2.2 [INFO] [stderr] Checking ordered-multimap v0.3.0 [INFO] [stderr] Checking backtrace v0.3.54 [INFO] [stderr] Checking rust-ini v0.16.0 [INFO] [stderr] Compiling snafu-derive v0.6.9 [INFO] [stderr] Compiling derive_more v0.99.11 [INFO] [stderr] Checking snafu v0.6.9 [INFO] [stderr] Checking lz4 v1.23.2 [INFO] [stderr] Checking linkle v0.2.11 (/opt/rustwide/workdir) [INFO] [stdout] warning: fields `nca_hdr_fixed_key_modulus`, `acid_fixed_key_modulus`, and `package2_fixed_key_modulus` are never read [INFO] [stdout] --> src/pki.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct Keys { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | nca_hdr_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 231 | acid_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 232 | package2_fixed_key_modulus: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Keys` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nca_hdr_fixed_key_modulus`, `acid_fixed_key_modulus`, and `package2_fixed_key_modulus` are never read [INFO] [stdout] --> src/pki.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct Keys { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | nca_hdr_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 231 | acid_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 232 | package2_fixed_key_modulus: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Keys` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.26s [INFO] running `Command { std: "docker" "inspect" "6a45bd23c75c34c429fa6a18a45619061e489c2454340cb985079edaa781bc16", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6a45bd23c75c34c429fa6a18a45619061e489c2454340cb985079edaa781bc16", kill_on_drop: false }` [INFO] [stdout] 6a45bd23c75c34c429fa6a18a45619061e489c2454340cb985079edaa781bc16 [INFO] checking linkle-0.2.11 against try#f9935d29d867449445ee008640ccca1bf1ae0889+rustflags=-Dtail_expr_drop_order for crater-rollup-uwu [INFO] extracting crate linkle 0.2.11 into /workspace/builds/worker-6-tc2/source [INFO] validating manifest of crates.io crate linkle 0.2.11 on toolchain f9935d29d867449445ee008640ccca1bf1ae0889 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-6-tc2/source/rust-toolchain [INFO] started tweaking crates.io crate linkle 0.2.11 [INFO] finished tweaking crates.io crate linkle 0.2.11 [INFO] tweaked toml for crates.io crate linkle 0.2.11 written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] crate crates.io crate linkle 0.2.11 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a01f131b1ecd8dcd2d32b5e2f323a682038e3c9ddf9947b2deb458c15a240a58 [INFO] running `Command { std: "docker" "start" "-a" "a01f131b1ecd8dcd2d32b5e2f323a682038e3c9ddf9947b2deb458c15a240a58", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a01f131b1ecd8dcd2d32b5e2f323a682038e3c9ddf9947b2deb458c15a240a58", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a01f131b1ecd8dcd2d32b5e2f323a682038e3c9ddf9947b2deb458c15a240a58", kill_on_drop: false }` [INFO] [stdout] a01f131b1ecd8dcd2d32b5e2f323a682038e3c9ddf9947b2deb458c15a240a58 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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 -Dtail_expr_drop_order" "-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+f9935d29d867449445ee008640ccca1bf1ae0889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e39b536ca9c7a04f09074124e9827377a8a88ef56f9fe4f9c50295fcc93de16f [INFO] running `Command { std: "docker" "start" "-a" "e39b536ca9c7a04f09074124e9827377a8a88ef56f9fe4f9c50295fcc93de16f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.80 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling typenum v1.12.0 [INFO] [stderr] Compiling getrandom v0.1.15 [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.48 [INFO] [stderr] Checking ppv-lite86 v0.2.9 [INFO] [stderr] Compiling cc v1.0.61 [INFO] [stderr] Checking gimli v0.23.0 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Checking ahash v0.4.6 [INFO] [stderr] Checking adler v0.2.3 [INFO] [stderr] Compiling serde v1.0.117 [INFO] [stderr] Checking rustc-demangle v0.1.18 [INFO] [stderr] Compiling serde_derive v1.0.117 [INFO] [stderr] Checking hashbrown v0.9.1 [INFO] [stderr] Checking subtle v2.3.0 [INFO] [stderr] Compiling serde_json v1.0.59 [INFO] [stderr] Checking object v0.22.0 [INFO] [stderr] Compiling generic-array v0.14.4 [INFO] [stderr] Checking byteorder v0.5.3 [INFO] [stderr] Compiling miniz_oxide v0.4.3 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Checking cpuid-bool v0.1.2 [INFO] [stderr] Checking block-padding v0.2.1 [INFO] [stderr] Checking elf v0.0.10 [INFO] [stderr] Checking bit_field v0.10.1 [INFO] [stderr] Checking blz-nx v1.0.1 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling lz4-sys v1.9.2 [INFO] [stderr] Checking dirs-sys-next v0.1.1 [INFO] [stderr] Checking dirs-next v2.0.0 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking cipher v0.2.1 [INFO] [stderr] Checking digest v0.9.0 [INFO] [stderr] Checking dbl v0.3.0 [INFO] [stderr] Checking block-buffer v0.9.0 [INFO] [stderr] Checking sha2 v0.9.1 [INFO] [stderr] Checking aes-soft v0.6.2 [INFO] [stderr] Checking crypto-mac v0.10.0 [INFO] [stderr] Checking block-modes v0.7.0 [INFO] [stderr] Checking ctr v0.6.0 [INFO] [stderr] Checking cmac v0.5.1 [INFO] [stderr] Checking addr2line v0.14.0 [INFO] [stderr] Checking aes v0.6.0 [INFO] [stderr] Checking dlv-list v0.2.2 [INFO] [stderr] Checking ordered-multimap v0.3.0 [INFO] [stderr] Checking backtrace v0.3.54 [INFO] [stderr] Checking rust-ini v0.16.0 [INFO] [stderr] Compiling snafu-derive v0.6.9 [INFO] [stderr] Compiling derive_more v0.99.11 [INFO] [stderr] Checking snafu v0.6.9 [INFO] [stderr] Checking lz4 v1.23.2 [INFO] [stderr] Checking linkle v0.2.11 (/opt/rustwide/workdir) [INFO] [stdout] warning: fields `nca_hdr_fixed_key_modulus`, `acid_fixed_key_modulus`, and `package2_fixed_key_modulus` are never read [INFO] [stdout] --> src/pki.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct Keys { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | nca_hdr_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 231 | acid_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 232 | package2_fixed_key_modulus: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Keys` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/error.rs:89:22 [INFO] [stdout] | [INFO] [stdout] 88 | fn with_path>(self, path: U) -> Result { [INFO] [stdout] | ---- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 89 | self.map_err(|err| err.with_path(path)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/nacp.rs:60:15 [INFO] [stdout] | [INFO] [stdout] 59 | let file = File::open(input)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | match serde_json::from_reader(file) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/nxo.rs:195:12 [INFO] [stdout] | [INFO] [stdout] 131 | let mut file = File::open(path)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 195 | Ok(NxoFile { [INFO] [stdout] | ____________^ [INFO] [stdout] 196 | | file, [INFO] [stdout] 197 | | machine: elf_file.ehdr.machine, [INFO] [stdout] 198 | | text_segment: *text_segment, [INFO] [stdout] ... | [INFO] [stdout] 206 | | eh_frame_hdr_section, [INFO] [stdout] 207 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/pfs0.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 40 | let mut files = Vec::new(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 50 | Ok(Pfs0 { files }) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/pfs0.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn from_reader(f: R) -> Result { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | // Header [INFO] [stdout] 55 | let mut f = std::io::BufReader::new(f); [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | let mut finalfiles = Vec::with_capacity(filecount as usize); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 94 | Ok(Pfs0 { files: finalfiles }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/pfs0.rs:219:46 [INFO] [stdout] | [INFO] [stdout] 219 | File::open(path).map(|v| Box::new(v) as Box) [INFO] [stdout] | - ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:85:17 [INFO] [stdout] | [INFO] [stdout] 78 | fn new(parent: Weak>, path: PathBuf) -> Rc> { [INFO] [stdout] | ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 85 | Rc::new(RefCell::new(RomFsDirEntCtx { [INFO] [stdout] | _________________^ [INFO] [stdout] 86 | | system_path: path, [INFO] [stdout] 87 | | name: filename, [INFO] [stdout] 88 | | entry_offset: 0, [INFO] [stdout] ... | [INFO] [stdout] 91 | | file: vec![], [INFO] [stdout] 92 | | })) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:195:38 [INFO] [stdout] | [INFO] [stdout] 195 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | .find(|v| v.borrow().name == component) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:227:42 [INFO] [stdout] | [INFO] [stdout] 227 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:236:36 [INFO] [stdout] | [INFO] [stdout] 236 | self.files.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:237:35 [INFO] [stdout] | [INFO] [stdout] 237 | self.dirs.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:337:34 [INFO] [stdout] | [INFO] [stdout] 337 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:341:34 [INFO] [stdout] | [INFO] [stdout] 341 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:344:35 [INFO] [stdout] | [INFO] [stdout] 344 | ctx.files.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:345:34 [INFO] [stdout] | [INFO] [stdout] 345 | ctx.dirs.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:410:31 [INFO] [stdout] | [INFO] [stdout] 410 | .map(|window| window[1].borrow().entry_offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:434:32 [INFO] [stdout] | [INFO] [stdout] 434 | .find(|window| window[0].borrow().internal_path() == dir.internal_path()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:435:31 [INFO] [stdout] | [INFO] [stdout] 435 | .map(|window| window[1].borrow().entry_offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:444:30 [INFO] [stdout] | [INFO] [stdout] 444 | .map(|v| v.borrow().entry_offset) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:450:30 [INFO] [stdout] | [INFO] [stdout] 450 | .map(|v| v.borrow().entry_offset) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nca_hdr_fixed_key_modulus`, `acid_fixed_key_modulus`, and `package2_fixed_key_modulus` are never read [INFO] [stdout] --> src/pki.rs:230:5 [INFO] [stdout] | [INFO] [stdout] 180 | pub struct Keys { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 230 | nca_hdr_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 231 | acid_fixed_key_modulus: [Option; 2], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 232 | package2_fixed_key_modulus: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Keys` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/error.rs:89:22 [INFO] [stdout] | [INFO] [stdout] 88 | fn with_path>(self, path: U) -> Result { [INFO] [stdout] | ---- ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 89 | self.map_err(|err| err.with_path(path)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/nacp.rs:60:15 [INFO] [stdout] | [INFO] [stdout] 59 | let file = File::open(input)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | match serde_json::from_reader(file) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/nxo.rs:195:12 [INFO] [stdout] | [INFO] [stdout] 131 | let mut file = File::open(path)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 195 | Ok(NxoFile { [INFO] [stdout] | ____________^ [INFO] [stdout] 196 | | file, [INFO] [stdout] 197 | | machine: elf_file.ehdr.machine, [INFO] [stdout] 198 | | text_segment: *text_segment, [INFO] [stdout] ... | [INFO] [stdout] 206 | | eh_frame_hdr_section, [INFO] [stdout] 207 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/pfs0.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 40 | let mut files = Vec::new(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 50 | Ok(Pfs0 { files }) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/pfs0.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 53 | pub fn from_reader(f: R) -> Result { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | // Header [INFO] [stdout] 55 | let mut f = std::io::BufReader::new(f); [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | let mut finalfiles = Vec::with_capacity(filecount as usize); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 94 | Ok(Pfs0 { files: finalfiles }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/pfs0.rs:219:46 [INFO] [stdout] | [INFO] [stdout] 219 | File::open(path).map(|v| Box::new(v) as Box) [INFO] [stdout] | - ^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:85:17 [INFO] [stdout] | [INFO] [stdout] 78 | fn new(parent: Weak>, path: PathBuf) -> Rc> { [INFO] [stdout] | ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 85 | Rc::new(RefCell::new(RomFsDirEntCtx { [INFO] [stdout] | _________________^ [INFO] [stdout] 86 | | system_path: path, [INFO] [stdout] 87 | | name: filename, [INFO] [stdout] 88 | | entry_offset: 0, [INFO] [stdout] ... | [INFO] [stdout] 91 | | file: vec![], [INFO] [stdout] 92 | | })) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:195:38 [INFO] [stdout] | [INFO] [stdout] 195 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | .find(|v| v.borrow().name == component) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:227:42 [INFO] [stdout] | [INFO] [stdout] 227 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:236:36 [INFO] [stdout] | [INFO] [stdout] 236 | self.files.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:237:35 [INFO] [stdout] | [INFO] [stdout] 237 | self.dirs.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:337:34 [INFO] [stdout] | [INFO] [stdout] 337 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:341:34 [INFO] [stdout] | [INFO] [stdout] 341 | .sort_by_key(|v| v.borrow().name.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:344:35 [INFO] [stdout] | [INFO] [stdout] 344 | ctx.files.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:345:34 [INFO] [stdout] | [INFO] [stdout] 345 | ctx.dirs.sort_by_key(|v| v.borrow().internal_path()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:410:31 [INFO] [stdout] | [INFO] [stdout] 410 | .map(|window| window[1].borrow().entry_offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:434:32 [INFO] [stdout] | [INFO] [stdout] 434 | .find(|window| window[0].borrow().internal_path() == dir.internal_path()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:435:31 [INFO] [stdout] | [INFO] [stdout] 435 | .map(|window| window[1].borrow().entry_offset); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:444:30 [INFO] [stdout] | [INFO] [stdout] 444 | .map(|v| v.borrow().entry_offset) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/format/romfs.rs:450:30 [INFO] [stdout] | [INFO] [stdout] 450 | .map(|v| v.borrow().entry_offset) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 21 previous errors; 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:268:32 [INFO] [stdout] | [INFO] [stdout] 268 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key_xts` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 268 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 268 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `&Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/pki.rs:241:32 [INFO] [stdout] | [INFO] [stdout] 241 | for key in &$self.$keyname { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 937 | keys!(self); [INFO] [stdout] | ----------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `single_key` which comes from the expansion of the macro `keys` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 241 | while let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(key) = &$self.$keyname { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `linkle` (lib) due to 22 previous errors; 31 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 21 previous errors; 31 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `linkle` (lib test) due to 22 previous errors; 31 warnings emitted [INFO] running `Command { std: "docker" "inspect" "e39b536ca9c7a04f09074124e9827377a8a88ef56f9fe4f9c50295fcc93de16f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e39b536ca9c7a04f09074124e9827377a8a88ef56f9fe4f9c50295fcc93de16f", kill_on_drop: false }` [INFO] [stdout] e39b536ca9c7a04f09074124e9827377a8a88ef56f9fe4f9c50295fcc93de16f