[INFO] cloning repository https://github.com/Fuzen-py/RustMacros [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Fuzen-py/RustMacros" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFuzen-py%2FRustMacros", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFuzen-py%2FRustMacros'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3d3b41af18c0959d9ba9b85b2eb5431d685d903f [INFO] testing Fuzen-py/RustMacros against master#5d5ff84130da0d74c6ece368dbe821d8f83fa526 for pr-79296 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFuzen-py%2FRustMacros" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Fuzen-py/RustMacros on toolchain 5d5ff84130da0d74c6ece368dbe821d8f83fa526 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+5d5ff84130da0d74c6ece368dbe821d8f83fa526" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Fuzen-py/RustMacros [INFO] finished tweaking git repo https://github.com/Fuzen-py/RustMacros [INFO] tweaked toml for git repo https://github.com/Fuzen-py/RustMacros written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/Fuzen-py/RustMacros already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+5d5ff84130da0d74c6ece368dbe821d8f83fa526" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+5d5ff84130da0d74c6ece368dbe821d8f83fa526" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7da8a3dfe08c700978f2e653faebb7b3289caf2c13216bfaba348a2a7bd5cec1 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "7da8a3dfe08c700978f2e653faebb7b3289caf2c13216bfaba348a2a7bd5cec1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7da8a3dfe08c700978f2e653faebb7b3289caf2c13216bfaba348a2a7bd5cec1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7da8a3dfe08c700978f2e653faebb7b3289caf2c13216bfaba348a2a7bd5cec1", kill_on_drop: false }` [INFO] [stdout] 7da8a3dfe08c700978f2e653faebb7b3289caf2c13216bfaba348a2a7bd5cec1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+5d5ff84130da0d74c6ece368dbe821d8f83fa526" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 42af2da2fa5866a3c71f73aead3718594b17fbe3ded2b1004eba12b5adbf1a12 [INFO] running `Command { std: "docker" "start" "-a" "42af2da2fa5866a3c71f73aead3718594b17fbe3ded2b1004eba12b5adbf1a12", kill_on_drop: false }` [INFO] [stderr] Compiling fuzen_macros v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.25s [INFO] running `Command { std: "docker" "inspect" "42af2da2fa5866a3c71f73aead3718594b17fbe3ded2b1004eba12b5adbf1a12", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "42af2da2fa5866a3c71f73aead3718594b17fbe3ded2b1004eba12b5adbf1a12", kill_on_drop: false }` [INFO] [stdout] 42af2da2fa5866a3c71f73aead3718594b17fbe3ded2b1004eba12b5adbf1a12 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+5d5ff84130da0d74c6ece368dbe821d8f83fa526" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 2a1969864d14f67967e6bbe1582cf3b7d5a6498df54754c2f3ffee1c3415ee40 [INFO] running `Command { std: "docker" "start" "-a" "2a1969864d14f67967e6bbe1582cf3b7d5a6498df54754c2f3ffee1c3415ee40", kill_on_drop: false }` [INFO] [stderr] Compiling fuzen_macros v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 52 | assert_eq!(pretty_num!(1_000_000_000usize), "1,000,000,000"); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 52 | assert_eq!(pretty_num!(1_000_000_000usize), "1,000,000,000"); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 57 | assert_eq!(pretty_num!(100u8), "100"); [INFO] [stdout] | ------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 57 | assert_eq!(pretty_num!(100u8), "100"); [INFO] [stdout] | ------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 62 | assert_eq!(pretty_num!(1_000u16), "1,000"); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 62 | assert_eq!(pretty_num!(1_000u16), "1,000"); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 67 | assert_eq!(pretty_num!(1_000_000u32), "1,000,000"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 67 | assert_eq!(pretty_num!(1_000_000u32), "1,000,000"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 72 | assert_eq!(pretty_num!(1_000_000_000u64), "1,000,000,000"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 72 | assert_eq!(pretty_num!(1_000_000_000u64), "1,000,000,000"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 77 | assert_eq!(pretty_num!(-1_000_000_000isize), "-1,000,000,000"); [INFO] [stdout] | -------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 77 | assert_eq!(pretty_num!(-1_000_000_000isize), "-1,000,000,000"); [INFO] [stdout] | -------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 78 | assert_eq!(pretty_num!(1_000_000_000isize), "1,000,000,000"); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 78 | assert_eq!(pretty_num!(1_000_000_000isize), "1,000,000,000"); [INFO] [stdout] | ------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 83 | assert_eq!(pretty_num!(-100i8), "-100"); [INFO] [stdout] | ------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 83 | assert_eq!(pretty_num!(-100i8), "-100"); [INFO] [stdout] | ------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 84 | assert_eq!(pretty_num!(100i8), "100"); [INFO] [stdout] | ------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 84 | assert_eq!(pretty_num!(100i8), "100"); [INFO] [stdout] | ------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 89 | assert_eq!(pretty_num!(-1_000i16), "-1,000"); [INFO] [stdout] | ---------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 89 | assert_eq!(pretty_num!(-1_000i16), "-1,000"); [INFO] [stdout] | ---------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 90 | assert_eq!(pretty_num!(1_000i16), "1,000"); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 90 | assert_eq!(pretty_num!(1_000i16), "1,000"); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 95 | assert_eq!(pretty_num!(-1_000_000i32), "-1,000,000"); [INFO] [stdout] | -------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 95 | assert_eq!(pretty_num!(-1_000_000i32), "-1,000,000"); [INFO] [stdout] | -------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 96 | assert_eq!(pretty_num!(1_000_000i32), "1,000,000"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 96 | assert_eq!(pretty_num!(1_000_000i32), "1,000,000"); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 101 | assert_eq!(pretty_num!(-1_000_000_000i64), "-1,000,000,000"); [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 101 | assert_eq!(pretty_num!(-1_000_000_000i64), "-1,000,000,000"); [INFO] [stdout] | ------------------------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 102 | assert_eq!(pretty_num!(1_000_000_000i64), "1,000,000,000"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 102 | assert_eq!(pretty_num!(1_000_000_000i64), "1,000,000,000"); [INFO] [stdout] | ----------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 107 | assert_eq!(pretty_num!(-1_000_000.483329f32), "-1,000,000.5"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 107 | assert_eq!(pretty_num!(-1_000_000.483329f32), "-1,000,000.5"); [INFO] [stdout] | --------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 108 | assert_eq!(pretty_num!(1_000_000.483325f32), "1,000,000.5"); [INFO] [stdout] | -------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 108 | assert_eq!(pretty_num!(1_000_000.483325f32), "1,000,000.5"); [INFO] [stdout] | -------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 114 | pretty_num!(-1_000_000_000.4833299f64), [INFO] [stdout] | -------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 114 | pretty_num!(-1_000_000_000.4833299f64), [INFO] [stdout] | -------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stdout] --> src/lib.rs:14:23 [INFO] [stdout] | [INFO] [stdout] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stdout] ... [INFO] [stdout] 117 | assert_eq!(pretty_num!(1_000_000_000.48332f64), "1,000,000,000.4833"); [INFO] [stdout] | ----------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stdout] --> src/lib.rs:20:33 [INFO] [stdout] | [INFO] [stdout] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stdout] ... [INFO] [stdout] 117 | assert_eq!(pretty_num!(1_000_000_000.48332f64), "1,000,000,000.4833"); [INFO] [stdout] | ----------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.72s [INFO] running `Command { std: "docker" "inspect" "2a1969864d14f67967e6bbe1582cf3b7d5a6498df54754c2f3ffee1c3415ee40", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2a1969864d14f67967e6bbe1582cf3b7d5a6498df54754c2f3ffee1c3415ee40", kill_on_drop: false }` [INFO] [stdout] 2a1969864d14f67967e6bbe1582cf3b7d5a6498df54754c2f3ffee1c3415ee40 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+5d5ff84130da0d74c6ece368dbe821d8f83fa526" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 6b762bf85bf25fac55f921b15cbcec92f764a078889a7e767edf7c1ca3209398 [INFO] running `Command { std: "docker" "start" "-a" "6b762bf85bf25fac55f921b15cbcec92f764a078889a7e767edf7c1ca3209398", kill_on_drop: false }` [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 52 | assert_eq!(pretty_num!(1_000_000_000usize), "1,000,000,000"); [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 52 | assert_eq!(pretty_num!(1_000_000_000usize), "1,000,000,000"); [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 57 | assert_eq!(pretty_num!(100u8), "100"); [INFO] [stderr] | ------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 57 | assert_eq!(pretty_num!(100u8), "100"); [INFO] [stderr] | ------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 62 | assert_eq!(pretty_num!(1_000u16), "1,000"); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 62 | assert_eq!(pretty_num!(1_000u16), "1,000"); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 67 | assert_eq!(pretty_num!(1_000_000u32), "1,000,000"); [INFO] [stderr] | ------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 67 | assert_eq!(pretty_num!(1_000_000u32), "1,000,000"); [INFO] [stderr] | ------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 72 | assert_eq!(pretty_num!(1_000_000_000u64), "1,000,000,000"); [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 72 | assert_eq!(pretty_num!(1_000_000_000u64), "1,000,000,000"); [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 77 | assert_eq!(pretty_num!(-1_000_000_000isize), "-1,000,000,000"); [INFO] [stderr] | -------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 77 | assert_eq!(pretty_num!(-1_000_000_000isize), "-1,000,000,000"); [INFO] [stderr] | -------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 78 | assert_eq!(pretty_num!(1_000_000_000isize), "1,000,000,000"); [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 78 | assert_eq!(pretty_num!(1_000_000_000isize), "1,000,000,000"); [INFO] [stderr] | ------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 83 | assert_eq!(pretty_num!(-100i8), "-100"); [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 83 | assert_eq!(pretty_num!(-100i8), "-100"); [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 84 | assert_eq!(pretty_num!(100i8), "100"); [INFO] [stderr] | ------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 84 | assert_eq!(pretty_num!(100i8), "100"); [INFO] [stderr] | ------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 89 | assert_eq!(pretty_num!(-1_000i16), "-1,000"); [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 89 | assert_eq!(pretty_num!(-1_000i16), "-1,000"); [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 90 | assert_eq!(pretty_num!(1_000i16), "1,000"); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 90 | assert_eq!(pretty_num!(1_000i16), "1,000"); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 95 | assert_eq!(pretty_num!(-1_000_000i32), "-1,000,000"); [INFO] [stderr] | -------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 95 | assert_eq!(pretty_num!(-1_000_000i32), "-1,000,000"); [INFO] [stderr] | -------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 96 | assert_eq!(pretty_num!(1_000_000i32), "1,000,000"); [INFO] [stderr] | ------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 96 | assert_eq!(pretty_num!(1_000_000i32), "1,000,000"); [INFO] [stderr] | ------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 101 | assert_eq!(pretty_num!(-1_000_000_000i64), "-1,000,000,000"); [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 101 | assert_eq!(pretty_num!(-1_000_000_000i64), "-1,000,000,000"); [INFO] [stderr] | ------------------------------ in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 102 | assert_eq!(pretty_num!(1_000_000_000i64), "1,000,000,000"); [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 102 | assert_eq!(pretty_num!(1_000_000_000i64), "1,000,000,000"); [INFO] [stderr] | ----------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 107 | assert_eq!(pretty_num!(-1_000_000.483329f32), "-1,000,000.5"); [INFO] [stderr] | --------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 107 | assert_eq!(pretty_num!(-1_000_000.483329f32), "-1,000,000.5"); [INFO] [stderr] | --------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 108 | assert_eq!(pretty_num!(1_000_000.483325f32), "1,000,000.5"); [INFO] [stderr] | -------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 108 | assert_eq!(pretty_num!(1_000_000.483325f32), "1,000,000.5"); [INFO] [stderr] | -------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 114 | pretty_num!(-1_000_000_000.4833299f64), [INFO] [stderr] | -------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 114 | pretty_num!(-1_000_000_000.4833299f64), [INFO] [stderr] | -------------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_left_matches`: superseded by `trim_start_matches` [INFO] [stderr] --> src/lib.rs:14:23 [INFO] [stderr] | [INFO] [stderr] 14 | let num = num.trim_left_matches('-').to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start_matches` [INFO] [stderr] ... [INFO] [stderr] 117 | assert_eq!(pretty_num!(1_000_000_000.48332f64), "1,000,000,000.4833"); [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `core::str::::trim_right_matches`: superseded by `trim_end_matches` [INFO] [stderr] --> src/lib.rs:20:33 [INFO] [stderr] | [INFO] [stderr] 20 | v.remove(0).trim_right_matches('0').to_string(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end_matches` [INFO] [stderr] ... [INFO] [stderr] 117 | assert_eq!(pretty_num!(1_000_000_000.48332f64), "1,000,000,000.4833"); [INFO] [stderr] | ----------------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: 38 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/fuzen_macros-ca7140f3db7f7c31 [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test test::formatting_f32 ... ok [INFO] [stdout] test test::formatting_i16 ... ok [INFO] [stdout] test test::formatting_i32 ... ok [INFO] [stdout] test test::formatting_isize ... ok [INFO] [stdout] test test::formatting_u32 ... ok [INFO] [stdout] test test::formatting_i8 ... ok [INFO] [stdout] test test::formatting_u64 ... ok [INFO] [stdout] test test::formatting_u8 ... ok [INFO] [stdout] test test::formatting_u16 ... ok [INFO] [stdout] test test::formatting_usize ... ok [INFO] [stderr] Doc-tests fuzen_macros [INFO] [stdout] test test::formatting_f64 ... ok [INFO] [stdout] test test::formatting_i64 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/lib.rs - pretty_num (line 3) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "6b762bf85bf25fac55f921b15cbcec92f764a078889a7e767edf7c1ca3209398", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6b762bf85bf25fac55f921b15cbcec92f764a078889a7e767edf7c1ca3209398", kill_on_drop: false }` [INFO] [stdout] 6b762bf85bf25fac55f921b15cbcec92f764a078889a7e767edf7c1ca3209398