[INFO] fetching crate quicklog 0.1.18... [INFO] testing quicklog-0.1.18 against 1.79.0 for beta-1.80-4 [INFO] extracting crate quicklog 0.1.18 into /workspace/builds/worker-5-tc1/source [INFO] validating manifest of crates.io crate quicklog 0.1.18 on toolchain 1.79.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.79.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate quicklog 0.1.18 [INFO] finished tweaking crates.io crate quicklog 0.1.18 [INFO] tweaked toml for crates.io crate quicklog 0.1.18 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate crates.io crate quicklog 0.1.18 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" "+1.79.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tracing-log v0.1.3 [INFO] [stderr] Downloaded nu-ansi-term v0.46.0 [INFO] [stderr] Downloaded tracing-appender v0.2.2 [INFO] [stderr] Downloaded overload v0.1.1 [INFO] [stderr] Downloaded thread_local v1.1.7 [INFO] [stderr] Downloaded valuable v0.1.0 [INFO] [stderr] Downloaded ciborium-io v0.2.1 [INFO] [stderr] Downloaded ciborium-ll v0.2.1 [INFO] [stderr] Downloaded ciborium v0.2.1 [INFO] [stderr] Downloaded raw-cpuid v10.7.0 [INFO] [stderr] Downloaded os_str_bytes v6.5.0 [INFO] [stderr] Downloaded clap v3.2.25 [INFO] [stderr] Downloaded plotters v0.3.4 [INFO] [stderr] Downloaded rayon v1.7.0 [INFO] [stderr] Downloaded regex v1.8.2 [INFO] [stderr] Downloaded chrono v0.4.24 [INFO] [stderr] Downloaded syn v2.0.16 [INFO] [stderr] Downloaded tracing-subscriber v0.3.17 [INFO] [stderr] Downloaded textwrap v0.16.0 [INFO] [stderr] Downloaded rayon-core v1.11.0 [INFO] [stderr] Downloaded criterion v0.4.0 [INFO] [stderr] Downloaded heapless v0.7.16 [INFO] [stderr] Downloaded quicklog-flush v0.1.3 [INFO] [stderr] Downloaded crossbeam-channel v0.5.8 [INFO] [stderr] Downloaded crossbeam-deque v0.8.3 [INFO] [stderr] Downloaded walkdir v2.3.3 [INFO] [stderr] Downloaded delog v0.1.6 [INFO] [stderr] Downloaded critical-section v1.1.1 [INFO] [stderr] Downloaded hash32 v0.2.1 [INFO] [stderr] Downloaded spin v0.9.8 [INFO] [stderr] Downloaded stable_deref_trait v1.2.0 [INFO] [stderr] Downloaded lazy_format v2.0.0 [INFO] [stderr] Downloaded iana-time-zone v0.1.56 [INFO] [stderr] Downloaded time v0.1.43 [INFO] [stderr] Downloaded wasi v0.10.2+wasi-snapshot-preview1 [INFO] [stderr] Downloaded quanta v0.10.1 [INFO] [stderr] Downloaded tracing-attributes v0.1.24 [INFO] [stderr] Downloaded proc-macro2 v1.0.58 [INFO] [stderr] Downloaded half v1.8.2 [INFO] [stderr] Downloaded clap_lex v0.2.4 [INFO] [stderr] Downloaded plotters-backend v0.3.4 [INFO] [stderr] Downloaded plotters-svg v0.3.3 [INFO] [stderr] Downloaded atomic-polyfill v0.1.11 [INFO] [stderr] Downloaded mach v0.3.2 [INFO] [stderr] Downloaded quicklog-clock v0.1.3 [INFO] [stderr] Downloaded sharded-slab v0.1.4 [INFO] [stderr] Downloaded windows v0.48.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+1.79.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a3f225e8a612f70e10ef059d664f49fab95ee25479611f5029c9eacf08315e82 [INFO] running `Command { std: "docker" "start" "-a" "a3f225e8a612f70e10ef059d664f49fab95ee25479611f5029c9eacf08315e82", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a3f225e8a612f70e10ef059d664f49fab95ee25479611f5029c9eacf08315e82", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a3f225e8a612f70e10ef059d664f49fab95ee25479611f5029c9eacf08315e82", kill_on_drop: false }` [INFO] [stdout] a3f225e8a612f70e10ef059d664f49fab95ee25479611f5029c9eacf08315e82 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+1.79.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 32fb6eb62b89c5c994512fec17572c3b106fa12e679dada257deef4060130275 [INFO] running `Command { std: "docker" "start" "-a" "32fb6eb62b89c5c994512fec17572c3b106fa12e679dada257deef4060130275", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling semver v1.0.17 [INFO] [stderr] Compiling libc v0.2.144 [INFO] [stderr] Compiling crossbeam-utils v0.8.15 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling raw-cpuid v10.7.0 [INFO] [stderr] Compiling paste v1.0.12 [INFO] [stderr] Compiling iana-time-zone v0.1.56 [INFO] [stderr] Compiling once_cell v1.17.1 [INFO] [stderr] Compiling hash32 v0.2.1 [INFO] [stderr] Compiling quicklog v0.1.18 (/opt/rustwide/workdir) [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling lock_api v0.4.9 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] warning: quicklog@0.1.18: Read-only file system (os error 30) [INFO] [stderr] Compiling lazy_format v2.0.0 [INFO] [stderr] Compiling quicklog-flush v0.1.3 [INFO] [stderr] Compiling heapless v0.7.16 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling time v0.1.43 [INFO] [stderr] Compiling quanta v0.10.1 [INFO] [stderr] Compiling chrono v0.4.24 [INFO] [stderr] Compiling quicklog-clock v0.1.3 [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:272:14 [INFO] [stdout] | [INFO] [stdout] 272 | unsafe { &mut LOGGER } [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 272 | unsafe { addr_of_mut!(LOGGER) } [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.73s [INFO] running `Command { std: "docker" "inspect" "32fb6eb62b89c5c994512fec17572c3b106fa12e679dada257deef4060130275", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32fb6eb62b89c5c994512fec17572c3b106fa12e679dada257deef4060130275", kill_on_drop: false }` [INFO] [stdout] 32fb6eb62b89c5c994512fec17572c3b106fa12e679dada257deef4060130275 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+1.79.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e4f9a594a66a47f0e5006fc80354910e8071dd619f2b65d1ca4c33fed436b192 [INFO] running `Command { std: "docker" "start" "-a" "e4f9a594a66a47f0e5006fc80354910e8071dd619f2b65d1ca4c33fed436b192", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.58 [INFO] [stderr] Compiling unicode-ident v1.0.9 [INFO] [stderr] Compiling quote v1.0.27 [INFO] [stderr] Compiling memoffset v0.8.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.14 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling serde v1.0.163 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling itoa v1.0.6 [INFO] [stderr] Compiling crossbeam-channel v0.5.8 [INFO] [stderr] Compiling tracing-core v0.1.31 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling serde_json v1.0.96 [INFO] [stderr] Compiling either v1.8.1 [INFO] [stderr] Compiling rayon-core v1.11.0 [INFO] [stderr] Compiling num_cpus v1.15.0 [INFO] [stderr] Compiling ryu v1.0.13 [INFO] [stderr] Compiling crossbeam-deque v0.8.3 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling half v1.8.2 [INFO] [stderr] Compiling ciborium-io v0.2.1 [INFO] [stderr] Compiling os_str_bytes v6.5.0 [INFO] [stderr] Compiling plotters-backend v0.3.4 [INFO] [stderr] Compiling clap_lex v0.2.4 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling syn v2.0.16 [INFO] [stderr] Compiling plotters-svg v0.3.3 [INFO] [stderr] Compiling ciborium-ll v0.2.1 [INFO] [stderr] Compiling tracing-log v0.1.3 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling sharded-slab v0.1.4 [INFO] [stderr] Compiling thread_local v1.1.7 [INFO] [stderr] Compiling textwrap v0.16.0 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling smallvec v1.10.0 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling delog v0.1.6 [INFO] [stderr] Compiling time-core v0.1.1 [INFO] [stderr] Compiling regex-syntax v0.7.2 [INFO] [stderr] Compiling time v0.3.21 [INFO] [stderr] Compiling clap v3.2.25 [INFO] [stderr] Compiling rayon v1.7.0 [INFO] [stderr] Compiling tracing-subscriber v0.3.17 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] warning: quicklog@0.1.18: Read-only file system (os error 30) [INFO] [stderr] Compiling walkdir v2.3.3 [INFO] [stderr] Compiling regex v1.8.2 [INFO] [stderr] Compiling plotters v0.3.4 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling oorandom v11.1.3 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling pin-project-lite v0.2.9 [INFO] [stderr] Compiling tracing-appender v0.2.2 [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:272:14 [INFO] [stdout] | [INFO] [stdout] 272 | unsafe { &mut LOGGER } [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 272 | unsafe { addr_of_mut!(LOGGER) } [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling serde_derive v1.0.163 [INFO] [stderr] Compiling tracing-attributes v0.1.24 [INFO] [stderr] Compiling tracing v0.1.37 [INFO] [stderr] Compiling ciborium v0.2.1 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling criterion v0.4.0 [INFO] [stderr] Compiling quicklog v0.1.18 (/opt/rustwide/workdir) [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:272:14 [INFO] [stdout] | [INFO] [stdout] 272 | unsafe { &mut LOGGER } [INFO] [stdout] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 272 | unsafe { addr_of_mut!(LOGGER) } [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 473 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 475 | / assert_message_with_level_equal!( [INFO] [stdout] 476 | | trace!("Hello world {}", "Another"), [INFO] [stdout] 477 | | format!("[TRACE]\tHello world {}", "Another") [INFO] [stdout] 478 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 479 | / assert_message_with_level_equal!( [INFO] [stdout] 480 | | debug!("Hello world {}", "Another"), [INFO] [stdout] 481 | | format!("[DEBUG]\tHello world {}", "Another") [INFO] [stdout] 482 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 483 | / assert_message_with_level_equal!( [INFO] [stdout] 484 | | info!("Hello world {}", "Another"), [INFO] [stdout] 485 | | format!("[INFO]\tHello world {}", "Another") [INFO] [stdout] 486 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 487 | / assert_message_with_level_equal!( [INFO] [stdout] 488 | | warn!("Hello world {}", "Another"), [INFO] [stdout] 489 | | format!("[WARN]\tHello world {}", "Another") [INFO] [stdout] 490 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 491 | / assert_message_with_level_equal!( [INFO] [stdout] 492 | | error!("Hello world {}", "Another"), [INFO] [stdout] 493 | | format!("[ERROR]\tHello world {}", "Another") [INFO] [stdout] 494 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 499 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 509 | / assert_message_equal!( [INFO] [stdout] 510 | | info!("Hello world {} {:?}", s1, s2), [INFO] [stdout] 511 | | format!("Hello world {} {:?}", s1, s2) [INFO] [stdout] 512 | | ); [INFO] [stdout] | |_____________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 520 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 534 | / assert_message_equal!( [INFO] [stdout] 535 | | info!("log one attr {}", nested.thing.some_str), [INFO] [stdout] 536 | | format!("log one attr {}", nested.thing.some_str) [INFO] [stdout] 537 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 538 | / assert_message_equal!( [INFO] [stdout] 539 | | info!("hello world {} {:?}", s1.some_str, s2.some_str), [INFO] [stdout] 540 | | format!("hello world {} {:?}", s1.some_str, s2.some_str) [INFO] [stdout] 541 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 546 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 555 | / assert_message_equal!( [INFO] [stdout] 556 | | info!("log single box ref {}", s1.as_ref()), [INFO] [stdout] 557 | | format!("log single box ref {}", s1.as_ref()) [INFO] [stdout] 558 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 559 | / assert_message_equal!( [INFO] [stdout] 560 | | info!("log multi box ref {} {:?}", s1.as_ref(), s2.as_ref()), [INFO] [stdout] 561 | | format!("log multi box ref {} {:?}", s1.as_ref(), s2.as_ref()) [INFO] [stdout] 562 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 567 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 579 | / assert_message_equal!( [INFO] [stdout] 580 | | info!("log multi move {} {:?}", s1, s2), [INFO] [stdout] 581 | | format!("log multi move {} {:?}", s1, s2) [INFO] [stdout] 582 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 583 | / assert_message_equal!( [INFO] [stdout] 584 | | info!("log single move {}", s3), [INFO] [stdout] 585 | | format!("log single move {}", s3) [INFO] [stdout] 586 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 591 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 600 | / assert_message_equal!( [INFO] [stdout] 601 | | info!("log single ref: {}", &s1), [INFO] [stdout] 602 | | format!("log single ref: {}", &s1) [INFO] [stdout] 603 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 604 | / assert_message_equal!( [INFO] [stdout] 605 | | info!("log multi ref: {} {:?}", &s1, &s2), [INFO] [stdout] 606 | | format!("log multi ref: {} {:?}", &s1, &s2) [INFO] [stdout] 607 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 620 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 629 | assert_message_equal!(log_ref_helper(&s1), format!("log single ref: {}", &s1)); [INFO] [stdout] | ------------------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 630 | / assert_message_equal!( [INFO] [stdout] 631 | | log_multi_ref_helper(&s2, &s1), [INFO] [stdout] 632 | | format!("log multi ref {} {:?}", &s2, &s1) [INFO] [stdout] 633 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 659 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 667 | / assert_message_equal!( [INFO] [stdout] 668 | | info!( [INFO] [stdout] 669 | | "A: price: {} symbol: {} exch_id: {}", [INFO] [stdout] 670 | | a.get_price(), [INFO] [stdout] ... | [INFO] [stdout] 679 | | ) [INFO] [stdout] 680 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 681 | / assert_message_equal!( [INFO] [stdout] 682 | | info!("single call {}", a.get_price()), [INFO] [stdout] 683 | | format!("single call {}", a.get_price()) [INFO] [stdout] 684 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 693 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 703 | / assert_message_equal!( [INFO] [stdout] 704 | | log_ref_and_move(s1, &s2), [INFO] [stdout] 705 | | format!("Hello world {} {:?}", s1_clone, &s2) [INFO] [stdout] 706 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 714 | / assert_message_equal!( [INFO] [stdout] 715 | | info!("ref: {:?}, move: {}", &s2, s3), [INFO] [stdout] 716 | | format!("ref: {:?}, move: {}", &s2, s3) [INFO] [stdout] 717 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 718 | assert_message_equal!(info!("single ref: {}", &s2), format!("single ref: {}", &s2)); [INFO] [stdout] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 719 | assert_message_equal!(info!("single move: {}", s4), format!("single move: {}", s4)); [INFO] [stdout] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 724 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 734 | / assert_message_equal!( [INFO] [stdout] 735 | | info!("display {}; eager debug {}; eager display {}, eager display inner field {}", some_str, ?s2, %s1, %s1.some_str), [INFO] [stdout] 736 | | format!( [INFO] [stdout] 737 | | "display {}; eager debug {:?}; eager display {}, eager display inner field {}", [INFO] [stdout] 738 | | some_str, s2, s1, s1.some_str [INFO] [stdout] 739 | | ) [INFO] [stdout] 740 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 741 | / assert_message_equal!( [INFO] [stdout] 742 | | info!("single eager display: {}", %s2), [INFO] [stdout] 743 | | format!("single eager display: {}", s2) [INFO] [stdout] 744 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 749 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 762 | / assert_message_equal!( [INFO] [stdout] 763 | | info!("pass by ref {}", some_struct.field1.innerfield.inner = &s1), [INFO] [stdout] 764 | | format!("pass by ref some_struct.field1.innerfield.inner={}", &s1) [INFO] [stdout] 765 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 766 | / assert_message_equal!( [INFO] [stdout] 767 | | info!("pass by move {}", some.inner.field = s3), [INFO] [stdout] 768 | | format!("pass by move some.inner.field={}", s3_clone) [INFO] [stdout] 769 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | ... unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 770 | / ... assert_message_equal!( [INFO] [stdout] 771 | | ... info!( [INFO] [stdout] 772 | | ... "non-nested field: {}, nested field: {}, pure lit: {}", [INFO] [stdout] 773 | | ... borrow_s2_field = %s2, [INFO] [stdout] ... | [INFO] [stdout] 777 | | ... format!("non-nested field: borrow_s2_field={}, nested field: some_inner_field.inner.field.inner.arg=hello world, pure lit: pure... [INFO] [stdout] 778 | | ... ); [INFO] [stdout] | |_______- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | ... unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 779 | / ... assert_message_equal!( [INFO] [stdout] 780 | | ... info!( [INFO] [stdout] 781 | | ... "pure lit: {}, reuse debug: {}, nested field: {}, able to reuse after pass by ref: {}", [INFO] [stdout] 782 | | ... "pure lit arg" = "another lit arg", [INFO] [stdout] ... | [INFO] [stdout] 787 | | ... format!("pure lit: pure lit arg=another lit arg, reuse debug: able to reuse s1={:?}, nested field: some_inner_field.some.field.... [INFO] [stdout] 788 | | ... ); [INFO] [stdout] | |_______- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:428:56 [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stdout] | ^^^^^^^^ mutable reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 847 | setup!(); [INFO] [stdout] | -------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 857 | assert_message_equal!(info!("s: {} {}", ^s, ^s), "s: Hello Hello"); [INFO] [stdout] | ------------------------------------------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static is discouraged [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stdout] | ^^^^ shared reference to mutable static [INFO] [stdout] ... [INFO] [stdout] 858 | / assert_message_equal!( [INFO] [stdout] 859 | | info!("bs: {}", ^bs), [INFO] [stdout] 860 | | format!( [INFO] [stdout] 861 | | "bs: vec: {:?}, str: {}", [INFO] [stdout] ... | [INFO] [stdout] 864 | | ) [INFO] [stdout] 865 | | ); [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #114447 [INFO] [stdout] = note: this will be a hard error in the 2024 edition [INFO] [stdout] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stdout] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: use `addr_of!` instead to create a raw pointer [INFO] [stdout] | [INFO] [stdout] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 43 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 04s [INFO] running `Command { std: "docker" "inspect" "e4f9a594a66a47f0e5006fc80354910e8071dd619f2b65d1ca4c33fed436b192", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e4f9a594a66a47f0e5006fc80354910e8071dd619f2b65d1ca4c33fed436b192", kill_on_drop: false }` [INFO] [stdout] e4f9a594a66a47f0e5006fc80354910e8071dd619f2b65d1ca4c33fed436b192 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+1.79.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] bc7d82fe0f6898ef66c60fcac484d105eb9724ca13c2148003acdce8ec4e9998 [INFO] running `Command { std: "docker" "start" "-a" "bc7d82fe0f6898ef66c60fcac484d105eb9724ca13c2148003acdce8ec4e9998", kill_on_drop: false }` [INFO] [stderr] warning: quicklog@0.1.18: Read-only file system (os error 30) [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:272:14 [INFO] [stderr] | [INFO] [stderr] 272 | unsafe { &mut LOGGER } [INFO] [stderr] | ^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 272 | unsafe { addr_of_mut!(LOGGER) } [INFO] [stderr] | ~~~~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: `quicklog` (lib) generated 1 warning [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 473 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 475 | / assert_message_with_level_equal!( [INFO] [stderr] 476 | | trace!("Hello world {}", "Another"), [INFO] [stderr] 477 | | format!("[TRACE]\tHello world {}", "Another") [INFO] [stderr] 478 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 479 | / assert_message_with_level_equal!( [INFO] [stderr] 480 | | debug!("Hello world {}", "Another"), [INFO] [stderr] 481 | | format!("[DEBUG]\tHello world {}", "Another") [INFO] [stderr] 482 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 483 | / assert_message_with_level_equal!( [INFO] [stderr] 484 | | info!("Hello world {}", "Another"), [INFO] [stderr] 485 | | format!("[INFO]\tHello world {}", "Another") [INFO] [stderr] 486 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 487 | / assert_message_with_level_equal!( [INFO] [stderr] 488 | | warn!("Hello world {}", "Another"), [INFO] [stderr] 489 | | format!("[WARN]\tHello world {}", "Another") [INFO] [stderr] 490 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 491 | / assert_message_with_level_equal!( [INFO] [stderr] 492 | | error!("Hello world {}", "Another"), [INFO] [stderr] 493 | | format!("[ERROR]\tHello world {}", "Another") [INFO] [stderr] 494 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_with_level_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 499 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 509 | / assert_message_equal!( [INFO] [stderr] 510 | | info!("Hello world {} {:?}", s1, s2), [INFO] [stderr] 511 | | format!("Hello world {} {:?}", s1, s2) [INFO] [stderr] 512 | | ); [INFO] [stderr] | |_____________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 520 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 534 | / assert_message_equal!( [INFO] [stderr] 535 | | info!("log one attr {}", nested.thing.some_str), [INFO] [stderr] 536 | | format!("log one attr {}", nested.thing.some_str) [INFO] [stderr] 537 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 538 | / assert_message_equal!( [INFO] [stderr] 539 | | info!("hello world {} {:?}", s1.some_str, s2.some_str), [INFO] [stderr] 540 | | format!("hello world {} {:?}", s1.some_str, s2.some_str) [INFO] [stderr] 541 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 546 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 555 | / assert_message_equal!( [INFO] [stderr] 556 | | info!("log single box ref {}", s1.as_ref()), [INFO] [stderr] 557 | | format!("log single box ref {}", s1.as_ref()) [INFO] [stderr] 558 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 559 | / assert_message_equal!( [INFO] [stderr] 560 | | info!("log multi box ref {} {:?}", s1.as_ref(), s2.as_ref()), [INFO] [stderr] 561 | | format!("log multi box ref {} {:?}", s1.as_ref(), s2.as_ref()) [INFO] [stderr] 562 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 567 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 579 | / assert_message_equal!( [INFO] [stderr] 580 | | info!("log multi move {} {:?}", s1, s2), [INFO] [stderr] 581 | | format!("log multi move {} {:?}", s1, s2) [INFO] [stderr] 582 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 583 | / assert_message_equal!( [INFO] [stderr] 584 | | info!("log single move {}", s3), [INFO] [stderr] 585 | | format!("log single move {}", s3) [INFO] [stderr] 586 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 591 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 600 | / assert_message_equal!( [INFO] [stderr] 601 | | info!("log single ref: {}", &s1), [INFO] [stderr] 602 | | format!("log single ref: {}", &s1) [INFO] [stderr] 603 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 604 | / assert_message_equal!( [INFO] [stderr] 605 | | info!("log multi ref: {} {:?}", &s1, &s2), [INFO] [stderr] 606 | | format!("log multi ref: {} {:?}", &s1, &s2) [INFO] [stderr] 607 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 620 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 629 | assert_message_equal!(log_ref_helper(&s1), format!("log single ref: {}", &s1)); [INFO] [stderr] | ------------------------------------------------------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 630 | / assert_message_equal!( [INFO] [stderr] 631 | | log_multi_ref_helper(&s2, &s1), [INFO] [stderr] 632 | | format!("log multi ref {} {:?}", &s2, &s1) [INFO] [stderr] 633 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 659 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 667 | / assert_message_equal!( [INFO] [stderr] 668 | | info!( [INFO] [stderr] 669 | | "A: price: {} symbol: {} exch_id: {}", [INFO] [stderr] 670 | | a.get_price(), [INFO] [stderr] ... | [INFO] [stderr] 679 | | ) [INFO] [stderr] 680 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 681 | / assert_message_equal!( [INFO] [stderr] 682 | | info!("single call {}", a.get_price()), [INFO] [stderr] 683 | | format!("single call {}", a.get_price()) [INFO] [stderr] 684 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 693 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 703 | / assert_message_equal!( [INFO] [stderr] 704 | | log_ref_and_move(s1, &s2), [INFO] [stderr] 705 | | format!("Hello world {} {:?}", s1_clone, &s2) [INFO] [stderr] 706 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 714 | / assert_message_equal!( [INFO] [stderr] 715 | | info!("ref: {:?}, move: {}", &s2, s3), [INFO] [stderr] 716 | | format!("ref: {:?}, move: {}", &s2, s3) [INFO] [stderr] 717 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 718 | assert_message_equal!(info!("single ref: {}", &s2), format!("single ref: {}", &s2)); [INFO] [stderr] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 719 | assert_message_equal!(info!("single move: {}", s4), format!("single move: {}", s4)); [INFO] [stderr] | ----------------------------------------------------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 724 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 734 | / assert_message_equal!( [INFO] [stderr] 735 | | info!("display {}; eager debug {}; eager display {}, eager display inner field {}", some_str, ?s2, %s1, %s1.some_str), [INFO] [stderr] 736 | | format!( [INFO] [stderr] 737 | | "display {}; eager debug {:?}; eager display {}, eager display inner field {}", [INFO] [stderr] 738 | | some_str, s2, s1, s1.some_str [INFO] [stderr] 739 | | ) [INFO] [stderr] 740 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 741 | / assert_message_equal!( [INFO] [stderr] 742 | | info!("single eager display: {}", %s2), [INFO] [stderr] 743 | | format!("single eager display: {}", s2) [INFO] [stderr] 744 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 749 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 762 | / assert_message_equal!( [INFO] [stderr] 763 | | info!("pass by ref {}", some_struct.field1.innerfield.inner = &s1), [INFO] [stderr] 764 | | format!("pass by ref some_struct.field1.innerfield.inner={}", &s1) [INFO] [stderr] 765 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 766 | / assert_message_equal!( [INFO] [stderr] 767 | | info!("pass by move {}", some.inner.field = s3), [INFO] [stderr] 768 | | format!("pass by move some.inner.field={}", s3_clone) [INFO] [stderr] 769 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | ... unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 770 | / ... assert_message_equal!( [INFO] [stderr] 771 | | ... info!( [INFO] [stderr] 772 | | ... "non-nested field: {}, nested field: {}, pure lit: {}", [INFO] [stderr] 773 | | ... borrow_s2_field = %s2, [INFO] [stderr] ... | [INFO] [stderr] 777 | | ... format!("non-nested field: borrow_s2_field={}, nested field: some_inner_field.inner.field.inner.arg=hello world, pure lit: pure... [INFO] [stderr] 778 | | ... ); [INFO] [stderr] | |_______- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | ... unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 779 | / ... assert_message_equal!( [INFO] [stderr] 780 | | ... info!( [INFO] [stderr] 781 | | ... "pure lit: {}, reuse debug: {}, nested field: {}, able to reuse after pass by ref: {}", [INFO] [stderr] 782 | | ... "pure lit arg" = "another lit arg", [INFO] [stderr] ... | [INFO] [stderr] 787 | | ... format!("pure lit: pure lit arg=another lit arg, reuse debug: able to reuse s1={:?}, nested field: some_inner_field.some.field.... [INFO] [stderr] 788 | | ... ); [INFO] [stderr] | |_______- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:428:56 [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(&mut VEC) }; [INFO] [stderr] | ^^^^^^^^ mutable reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 847 | setup!(); [INFO] [stderr] | -------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `setup` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of_mut!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 428 | let vec_flusher = unsafe { VecFlusher::new(addr_of_mut!(VEC)) }; [INFO] [stderr] | ~~~~~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 857 | assert_message_equal!(info!("s: {} {}", ^s, ^s), "s: Hello Hello"); [INFO] [stderr] | ------------------------------------------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static is discouraged [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(&VEC, $check_f) }, [INFO] [stderr] | ^^^^ shared reference to mutable static [INFO] [stderr] ... [INFO] [stderr] 858 | / assert_message_equal!( [INFO] [stderr] 859 | | info!("bs: {}", ^bs), [INFO] [stderr] 860 | | format!( [INFO] [stderr] 861 | | "bs: vec: {:?}, str: {}", [INFO] [stderr] ... | [INFO] [stderr] 864 | | ) [INFO] [stderr] 865 | | ); [INFO] [stderr] | |_________- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: for more information, see issue #114447 [INFO] [stderr] = note: this will be a hard error in the 2024 edition [INFO] [stderr] = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior [INFO] [stderr] = note: this warning originates in the macro `helper_assert` which comes from the expansion of the macro `assert_message_equal` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] help: use `addr_of!` instead to create a raw pointer [INFO] [stderr] | [INFO] [stderr] 443 | unsafe { from_log_lines(addr_of!(VEC), $check_f) }, [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: `quicklog` (lib test) generated 43 warnings (1 duplicate) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/quicklog-18b81c3ec1f0b2e9) [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test tests::works_with_fn_return_val ... ok [INFO] [stdout] test tests::works_with_fields ... ok [INFO] [stdout] test level::tests::compare_level_and_filters ... ok [INFO] [stdout] test tests::has_all_levels ... ok [INFO] [stdout] test tests::works_in_closure ... ok [INFO] [stdout] test tests::works_with_attributes ... ok [INFO] [stdout] test tests::works_with_eager_debug_display_hints ... ok [INFO] [stdout] test tests::works_with_box_ref ... ok [INFO] [stdout] test tests::works_with_move ... ok [INFO] [stdout] test tests::works_with_ref_and_move ... ok [INFO] [stdout] test tests::works_with_serialize ... ok [INFO] [stdout] test tests::works_with_ref_lifetime_inside_fn ... ok [INFO] [stdout] test tests::works_with_references ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Doc-tests quicklog [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test src/lib.rs - (line 165) ... ignored [INFO] [stdout] test src/lib.rs - (line 87) ... ignored [INFO] [stdout] test src/lib.rs - (line 190) ... ok [INFO] [stdout] test src/lib.rs - (line 109) ... ok [INFO] [stdout] test src/lib.rs - (line 132) ... ok [INFO] [stdout] test src/lib.rs - (line 34) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 1.70s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "bc7d82fe0f6898ef66c60fcac484d105eb9724ca13c2148003acdce8ec4e9998", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bc7d82fe0f6898ef66c60fcac484d105eb9724ca13c2148003acdce8ec4e9998", kill_on_drop: false }` [INFO] [stdout] bc7d82fe0f6898ef66c60fcac484d105eb9724ca13c2148003acdce8ec4e9998