[INFO] cloning repository https://github.com/GlowyDeveloper/tart-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/GlowyDeveloper/tart-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGlowyDeveloper%2Ftart-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGlowyDeveloper%2Ftart-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 76c989ac3bf4beb5b25c17a5659f8121d813e8dc
[INFO] testing GlowyDeveloper/tart-rs against beta-2026-03-05 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGlowyDeveloper%2Ftart-rs" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/GlowyDeveloper/tart-rs
[INFO] finished tweaking git repo https://github.com/GlowyDeveloper/tart-rs
[INFO] tweaked toml for git repo https://github.com/GlowyDeveloper/tart-rs written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/GlowyDeveloper/tart-rs on toolchain beta-2026-03-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/GlowyDeveloper/tart-rs 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" "+beta-2026-03-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0b293abc99895f10162c5a59ecf0446fb2d211dd9af909a8c6656520620ddbac
[INFO] running `Command { std: "docker" "start" "-a" "0b293abc99895f10162c5a59ecf0446fb2d211dd9af909a8c6656520620ddbac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0b293abc99895f10162c5a59ecf0446fb2d211dd9af909a8c6656520620ddbac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0b293abc99895f10162c5a59ecf0446fb2d211dd9af909a8c6656520620ddbac", kill_on_drop: false }`
[INFO] [stdout] 0b293abc99895f10162c5a59ecf0446fb2d211dd9af909a8c6656520620ddbac
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9b5c8d63fa280d1f2e9e95f6f19a3a3e362f5c33ed8ce859cc11f2134e46a838
[INFO] running `Command { std: "docker" "start" "-a" "9b5c8d63fa280d1f2e9e95f6f19a3a3e362f5c33ed8ce859cc11f2134e46a838", kill_on_drop: false }`
[INFO] [stderr]    Compiling tart v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/utils.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         _ => Err(Error::new(ErrorKind::NoLanguageSelected, "No Language Selected"))
[INFO] [stdout]     |         ^--------------------------------------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         matches no values because `Languages` is uninhabited
[INFO] [stdout]     |         help: remove the match arm
[INFO] [stdout]     |
[INFO] [stdout]     = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]     --> src/lib.rs:1032:39
[INFO] [stdout]      |
[INFO] [stdout] 1032 |     fn is_file_extension_valid(&self, file: &Path) -> bool {
[INFO] [stdout]      |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1243:20
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------^
[INFO] [stdout]      |                    |                                               |
[INFO] [stdout]      |                    |                                               any code following this expression is unreachable
[INFO] [stdout]      |                    unreachable expression
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1243:68
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lib_name`
[INFO] [stdout]     --> src/lib.rs:1232:14
[INFO] [stdout]      |
[INFO] [stdout] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stdout]      |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lib_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gnu_lib_name`
[INFO] [stdout]     --> src/lib.rs:1232:24
[INFO] [stdout]      |
[INFO] [stdout] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stdout]      |                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gnu_lib_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dst`
[INFO] [stdout]     --> src/lib.rs:1242:13
[INFO] [stdout]      |
[INFO] [stdout] 1242 |         let dst = self.get_out_dir()?;
[INFO] [stdout]      |             ^^^ help: if this is intentional, prefix it with an underscore: `_dst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lang`
[INFO] [stdout]     --> src/lib.rs:1243:13
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_lang`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1352:13
[INFO] [stdout]      |
[INFO] [stdout] 1352 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1353 | |                 Error::new(
[INFO] [stdout] 1354 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 1355 | |                     "Language does not support compiling object command."
[INFO] [stdout] 1356 | |                 )
[INFO] [stdout] 1357 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1347:15
[INFO] [stdout]      |
[INFO] [stdout] 1347 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1347:15
[INFO] [stdout]      |
[INFO] [stdout] 1347 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obj`
[INFO] [stdout]     --> src/lib.rs:1346:41
[INFO] [stdout]      |
[INFO] [stdout] 1346 |     fn create_compile_object_cmd(&self, obj: &Object) -> Result<Command, Error> {
[INFO] [stdout]      |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1381:13
[INFO] [stdout]      |
[INFO] [stdout] 1381 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1382 | |                 Error::new(
[INFO] [stdout] 1383 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 1384 | |                     "Language does not support getting a base compiler."
[INFO] [stdout] 1385 | |                 )
[INFO] [stdout] 1386 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1376:15
[INFO] [stdout]      |
[INFO] [stdout] 1376 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1376:15
[INFO] [stdout]      |
[INFO] [stdout] 1376 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1995:13
[INFO] [stdout]      |
[INFO] [stdout] 1995 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1996 | |                 Error::new(
[INFO] [stdout] 1997 | |                     ErrorKind::ToolExecError,
[INFO] [stdout] 1998 | |                     "MSVC Macro Assembler doesn't exist for the selected language."
[INFO] [stdout] 1999 | |                 )
[INFO] [stdout] 2000 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1990:15
[INFO] [stdout]      |
[INFO] [stdout] 1990 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1990:15
[INFO] [stdout]      |
[INFO] [stdout] 1990 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:2020:13
[INFO] [stdout]      |
[INFO] [stdout] 2020 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 2021 | |                 Error::new(
[INFO] [stdout] 2022 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 2023 | |                     "Language does not support seeing if a flag iss supported."
[INFO] [stdout] 2024 | |                 )
[INFO] [stdout] 2025 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:2015:15
[INFO] [stdout]      |
[INFO] [stdout] 2015 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:2015:15
[INFO] [stdout]      |
[INFO] [stdout] 2015 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flag`
[INFO] [stdout]     --> src/lib.rs:2011:9
[INFO] [stdout]      |
[INFO] [stdout] 2011 |         flag: &OsStr,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_flag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool`
[INFO] [stdout]     --> src/lib.rs:2012:9
[INFO] [stdout]      |
[INFO] [stdout] 2012 |         tool: &dyn ToolTrait,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]     --> src/lib.rs:2013:9
[INFO] [stdout]      |
[INFO] [stdout] 2013 |         target: &TargetInfo<'_>,
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:2201:13
[INFO] [stdout]      |
[INFO] [stdout] 2201 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 2202 | |                 Error::new(
[INFO] [stdout] 2203 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 2204 | |                     "Language does not support a set archiver."
[INFO] [stdout] 2205 | |                 )
[INFO] [stdout] 2206 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:2196:15
[INFO] [stdout]      |
[INFO] [stdout] 2196 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:2196:15
[INFO] [stdout]      |
[INFO] [stdout] 2196 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]     --> src/lib.rs:2193:9
[INFO] [stdout]      |
[INFO] [stdout] 2193 |         env: &str,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool`
[INFO] [stdout]     --> src/lib.rs:2194:9
[INFO] [stdout]      |
[INFO] [stdout] 2194 |         tool: &str,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Gnu`, `Clang`, and `Msvc` are never constructed
[INFO] [stdout]    --> src/lib.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub(crate) enum ToolFamily {
[INFO] [stdout]     |                 ---------- variants in this enum
[INFO] [stdout] 116 |     Gnu,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 117 |     Clang { zig_cc: bool },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 118 |     Msvc { clang_cl: bool },
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolFamily` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lib.rs:122:19
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl ToolFamily {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 122 |     pub(crate) fn add_debug_flags(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub(crate) fn add_force_frame_pointer(&self, cmd: &mut dyn ToolTrait) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub(crate) fn warnings_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub(crate) fn warnings_suppression_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub(crate) fn extra_warnings_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub(crate) fn warnings_to_errors_flag(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub(crate) fn verbose_stderr(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lib.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub(crate) trait ToolTrait {
[INFO] [stdout]     |                  --------- methods in this trait
[INFO] [stdout] 205 |     fn path(&self) -> &PathBuf;
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 206 |     fn family(&self) -> ToolFamily;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 207 |     fn to_command(&self) -> Command;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 208 |     fn push_cc_arg(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 209 |     fn remove_arg(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 210 |     fn push_opt_unless_duplicate(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 211 |     fn supports_path_delimiter(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 212 |     fn is_like_gnu(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 213 |     fn is_like_clang(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 214 |     fn is_like_msvc(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 215 |     fn is_like_clang_cl(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 216 |     fn is_xctoolchain_clang(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 217 |     fn is_duplicate_opt_arg(&self, flag: &OsString) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 218 |     fn args(&self) -> &[OsString];
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 219 |     fn env(&self) -> &[(OsString, OsString)];
[INFO] [stdout] 220 |     fn env_mut(&mut self) -> &mut Vec<(OsString, OsString)>;
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 221 |     fn args_mut(&mut self) -> &mut Vec<OsString>;
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `src` is never read
[INFO] [stdout]    --> src/lib.rs:225:5
[INFO] [stdout]     |
[INFO] [stdout] 224 | struct Object {
[INFO] [stdout]     |        ------ field in this struct
[INFO] [stdout] 225 |     src: PathBuf,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `apple_sdk_root_cache`, `apple_versions_cache`, `cached_compiler_family`, and `known_flag_support_status_cache` are never read
[INFO] [stdout]    --> src/lib.rs:244:5
[INFO] [stdout]     |
[INFO] [stdout] 242 | struct BuildCache {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 243 |     env_cache: RwLock<HashMap<Box<str>, Option<Arc<OsStr>>>>,
[INFO] [stdout] 244 |     apple_sdk_root_cache: RwLock<HashMap<Box<str>, Arc<OsStr>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 245 |     apple_versions_cache: RwLock<HashMap<Box<str>, Arc<str>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |     cached_compiler_family: RwLock<CompilerFamilyLookupCache>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     known_flag_support_status_cache: RwLock<HashMap<CompilerFlag, bool>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BuildCache` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Discard` and `Capture` are never constructed
[INFO] [stdout]    --> src/lib.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub(crate) enum OutputKind {
[INFO] [stdout]     |                 ---------- variants in this enum
[INFO] [stdout] 320 |     Forward,
[INFO] [stdout] 321 |     Discard,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 322 |     Capture,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OutputKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_warning` is never used
[INFO] [stdout]    --> src/lib.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 325 | impl CargoOutput {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 345 |     pub(crate) fn print_warning(&self, arg: &dyn Display) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flags_supported` is never read
[INFO] [stdout]    --> src/lib.rs:421:5
[INFO] [stdout]     |
[INFO] [stdout] 393 | pub struct Build {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 421 |     flags_supported: Vec<Arc<OsStr>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Build` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/lib.rs:1171:8
[INFO] [stdout]      |
[INFO] [stdout]  960 | impl Build {
[INFO] [stdout]      | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1171 |     fn prefer_clang(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1179 |     pub(crate) fn cargo_output(&mut self, cargo_output: bool) -> &mut Build {
[INFO] [stdout]      |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1361 |     fn which(&self, tool: &Path, path_entries: Option<&OsStr>) -> Option<PathBuf> {
[INFO] [stdout]      |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1390 |     fn find_working_gnu_prefix(&self, prefixes: &[&'static str]) -> Option<&'static str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1411 |     fn prefix_for_target(&self, target: &str) -> Option<Cow<'static, str>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1589 |     fn getenv_with_target_prefixes(&self, env: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1605 |     fn rustc_wrapper_fallback(&self) -> Option<Arc<OsStr>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1619 |     fn get_debug_str(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1626 |     fn get_debug(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1633 |     fn env_tool(&self, name: &str) -> Option<(PathBuf, Option<Arc<OsStr>>, Vec<String>)> {
[INFO] [stdout]      |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1674 |     fn get_opt_level(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1681 |     fn autodetect_wasi_compiler(&self, raw_target: &str, clang: &str) -> PathBuf {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1694 |     fn get_force_frame_pointer(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1698 |     fn apple_deployment_target(&self, target: &TargetInfo<'_>) -> Arc<str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1810 |     fn apple_sdk_root_inner(&self, sdk: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1860 |     fn apple_sdk_root(&self, target: &TargetInfo<'_>) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1882 |     fn get_dwarf_version(&self) -> Option<u32> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1898 |     fn wasm_musl_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1909 |     fn wasi_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1920 |     fn apple_flags(&self, cmd: &mut dyn ToolTrait) -> Result<(), Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1973 |     fn add_inherited_rustflags(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1989 |     fn msvc_macro_assembler(&self) -> Result<Command, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2009 |     pub(crate) fn is_flag_supported_inner(
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2029 |     fn ensure_check_file(&self) -> Result<PathBuf, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2064 |     fn fix_env_for_apple_os(&self, cmd: &mut Command) -> Result<(), Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2133 |     pub(crate) fn get_archiver(&self) -> Option<Command> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2170 |     fn search_programs(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_exe` is never used
[INFO] [stdout]     --> src/lib.rs:2247:4
[INFO] [stdout]      |
[INFO] [stdout] 2247 | fn check_exe(mut exe: PathBuf) -> Option<PathBuf> {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_darwin_target_from_rust_to_compiler_architecture` is never used
[INFO] [stdout]     --> src/lib.rs:2253:4
[INFO] [stdout]      |
[INFO] [stdout] 2253 | fn map_darwin_target_from_rust_to_compiler_architecture<'a>(target: &TargetInfo<'a>) -> &'a str {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_output` is never used
[INFO] [stdout]     --> src/lib.rs:2342:15
[INFO] [stdout]      |
[INFO] [stdout] 2342 | pub(crate) fn run_output(cmd: &mut Command, cargo_output: &CargoOutput) -> Result<Vec<u8>, Error> {
[INFO] [stdout]      |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spawn_and_wait_for_output` is never used
[INFO] [stdout]     --> src/lib.rs:2374:15
[INFO] [stdout]      |
[INFO] [stdout] 2374 | pub(crate) fn spawn_and_wait_for_output(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `llvm_target` is never used
[INFO] [stdout]   --> src/target.rs:25:19
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl TargetInfo<'_> {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 25 |     pub(crate) fn llvm_target(
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `apple_sdk_name` and `apple_version_flag` are never used
[INFO] [stdout]    --> src/target.rs:458:19
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl TargetInfo<'_> {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] 458 |     pub(crate) fn apple_sdk_name(&self) -> &'static str {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 474 |     pub(crate) fn apple_version_flag(&self, min_version: &str) -> String {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LLVM_TARGETS` is never used
[INFO] [stdout]    --> src/target.rs:568:18
[INFO] [stdout]     |
[INFO] [stdout] 568 | pub(crate) const LLVM_TARGETS: &[(&str, &str)] = &[
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RustcCodegenFlags` is never constructed
[INFO] [stdout]  --> src/flags.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) struct RustcCodegenFlags<'a> {
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `parse`, `set_rustc_flag`, and `cc_flags` are never used
[INFO] [stdout]    --> src/flags.rs:26:19
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl<'this> RustcCodegenFlags<'this> {
[INFO] [stdout]     | ------------------------------------ associated items in this implementation
[INFO] [stdout]  26 |     pub(crate) fn parse(rustflags_env: &'this str) -> Result<Self, Error> {
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     fn set_rustc_flag(&mut self, prefix: &str, flag: &'this str) -> Result<(), Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub(crate) fn cc_flags(&self, build: &Build, tool: &mut dyn ToolTrait, target: &TargetInfo<'_>) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_bytes` is never used
[INFO] [stdout]   --> src/shlex.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl<'a> Shlex<'a> {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn from_bytes(bytes: &'a [u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split` is never used
[INFO] [stdout]    --> src/shlex.rs:119:15
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub(crate) fn split(in_bytes: &[u8]) -> Option<Vec<Vec<u8>>> {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rand` is never used
[INFO] [stdout]  --> src/utils.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn rand() -> u64 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tmpname` is never used
[INFO] [stdout]   --> src/utils.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn tmpname(suffix: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_named` is never used
[INFO] [stdout]   --> src/utils.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn create_named(path: &PathBuf) -> std::io::Result<File> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NamedTempfile` is never constructed
[INFO] [stdout]   --> src/utils.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) struct NamedTempfile {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `path`, and `take_file` are never used
[INFO] [stdout]   --> src/utils.rs:35:19
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl NamedTempfile {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 35 |     pub(crate) fn new(base: &Path, suffix: &str) -> std::io::Result<Self> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) fn path(&self) -> &PathBuf {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub(crate) fn take_file(&mut self) -> Option<File> {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmdAddOutputFileArgs` is never constructed
[INFO] [stdout]   --> src/utils.rs:76:19
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub(crate) struct CmdAddOutputFileArgs {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `command_add_output_file` is never used
[INFO] [stdout]   --> src/utils.rs:85:15
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub(crate) fn command_add_output_file(cmd: &mut Command, dst: &PathBuf, args: CmdAddOutputFileArgs) {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_arm` is never used
[INFO] [stdout]   --> src/utils.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub(crate) fn is_arm(target: &TargetInfo<'_>) -> bool {
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AsmFileExt` is never used
[INFO] [stdout]    --> src/utils.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub(crate) enum AsmFileExt {
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_path` is never used
[INFO] [stdout]    --> src/utils.rs:108:19
[INFO] [stdout]     |
[INFO] [stdout] 107 | impl AsmFileExt {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 108 |     pub(crate) fn from_path(file: &Path) -> Option<Self> {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.68s
[INFO] running `Command { std: "docker" "inspect" "9b5c8d63fa280d1f2e9e95f6f19a3a3e362f5c33ed8ce859cc11f2134e46a838", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b5c8d63fa280d1f2e9e95f6f19a3a3e362f5c33ed8ce859cc11f2134e46a838", kill_on_drop: false }`
[INFO] [stdout] 9b5c8d63fa280d1f2e9e95f6f19a3a3e362f5c33ed8ce859cc11f2134e46a838
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ac7a5eff12c939212a6fe89fdf2d87a96076a6a12c6472a922d90cf053a13212
[INFO] running `Command { std: "docker" "start" "-a" "ac7a5eff12c939212a6fe89fdf2d87a96076a6a12c6472a922d90cf053a13212", kill_on_drop: false }`
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/utils.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         _ => Err(Error::new(ErrorKind::NoLanguageSelected, "No Language Selected"))
[INFO] [stdout]     |         ^--------------------------------------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         matches no values because `Languages` is uninhabited
[INFO] [stdout]     |         help: remove the match arm
[INFO] [stdout]     |
[INFO] [stdout]     = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]     --> src/lib.rs:1032:39
[INFO] [stdout]      |
[INFO] [stdout] 1032 |     fn is_file_extension_valid(&self, file: &Path) -> bool {
[INFO] [stdout]      |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1243:20
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------^
[INFO] [stdout]      |                    |                                               |
[INFO] [stdout]      |                    |                                               any code following this expression is unreachable
[INFO] [stdout]      |                    unreachable expression
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1243:68
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lib_name`
[INFO] [stdout]     --> src/lib.rs:1232:14
[INFO] [stdout]      |
[INFO] [stdout] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stdout]      |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lib_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gnu_lib_name`
[INFO] [stdout]     --> src/lib.rs:1232:24
[INFO] [stdout]      |
[INFO] [stdout] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stdout]      |                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gnu_lib_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dst`
[INFO] [stdout]     --> src/lib.rs:1242:13
[INFO] [stdout]      |
[INFO] [stdout] 1242 |         let dst = self.get_out_dir()?;
[INFO] [stdout]      |             ^^^ help: if this is intentional, prefix it with an underscore: `_dst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lang`
[INFO] [stdout]     --> src/lib.rs:1243:13
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_lang`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1352:13
[INFO] [stdout]      |
[INFO] [stdout] 1352 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1353 | |                 Error::new(
[INFO] [stdout] 1354 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 1355 | |                     "Language does not support compiling object command."
[INFO] [stdout] 1356 | |                 )
[INFO] [stdout] 1357 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1347:15
[INFO] [stdout]      |
[INFO] [stdout] 1347 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1347:15
[INFO] [stdout]      |
[INFO] [stdout] 1347 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obj`
[INFO] [stdout]     --> src/lib.rs:1346:41
[INFO] [stdout]      |
[INFO] [stdout] 1346 |     fn create_compile_object_cmd(&self, obj: &Object) -> Result<Command, Error> {
[INFO] [stdout]      |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1381:13
[INFO] [stdout]      |
[INFO] [stdout] 1381 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1382 | |                 Error::new(
[INFO] [stdout] 1383 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 1384 | |                     "Language does not support getting a base compiler."
[INFO] [stdout] 1385 | |                 )
[INFO] [stdout] 1386 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1376:15
[INFO] [stdout]      |
[INFO] [stdout] 1376 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1376:15
[INFO] [stdout]      |
[INFO] [stdout] 1376 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1995:13
[INFO] [stdout]      |
[INFO] [stdout] 1995 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1996 | |                 Error::new(
[INFO] [stdout] 1997 | |                     ErrorKind::ToolExecError,
[INFO] [stdout] 1998 | |                     "MSVC Macro Assembler doesn't exist for the selected language."
[INFO] [stdout] 1999 | |                 )
[INFO] [stdout] 2000 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1990:15
[INFO] [stdout]      |
[INFO] [stdout] 1990 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1990:15
[INFO] [stdout]      |
[INFO] [stdout] 1990 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:2020:13
[INFO] [stdout]      |
[INFO] [stdout] 2020 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 2021 | |                 Error::new(
[INFO] [stdout] 2022 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 2023 | |                     "Language does not support seeing if a flag iss supported."
[INFO] [stdout] 2024 | |                 )
[INFO] [stdout] 2025 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:2015:15
[INFO] [stdout]      |
[INFO] [stdout] 2015 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:2015:15
[INFO] [stdout]      |
[INFO] [stdout] 2015 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flag`
[INFO] [stdout]     --> src/lib.rs:2011:9
[INFO] [stdout]      |
[INFO] [stdout] 2011 |         flag: &OsStr,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_flag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool`
[INFO] [stdout]     --> src/lib.rs:2012:9
[INFO] [stdout]      |
[INFO] [stdout] 2012 |         tool: &dyn ToolTrait,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]     --> src/lib.rs:2013:9
[INFO] [stdout]      |
[INFO] [stdout] 2013 |         target: &TargetInfo<'_>,
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:2201:13
[INFO] [stdout]      |
[INFO] [stdout] 2201 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 2202 | |                 Error::new(
[INFO] [stdout] 2203 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 2204 | |                     "Language does not support a set archiver."
[INFO] [stdout] 2205 | |                 )
[INFO] [stdout] 2206 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:2196:15
[INFO] [stdout]      |
[INFO] [stdout] 2196 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:2196:15
[INFO] [stdout]      |
[INFO] [stdout] 2196 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]     --> src/lib.rs:2193:9
[INFO] [stdout]      |
[INFO] [stdout] 2193 |         env: &str,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool`
[INFO] [stdout]     --> src/lib.rs:2194:9
[INFO] [stdout]      |
[INFO] [stdout] 2194 |         tool: &str,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Gnu`, `Clang`, and `Msvc` are never constructed
[INFO] [stdout]    --> src/lib.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub(crate) enum ToolFamily {
[INFO] [stdout]     |                 ---------- variants in this enum
[INFO] [stdout] 116 |     Gnu,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 117 |     Clang { zig_cc: bool },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 118 |     Msvc { clang_cl: bool },
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolFamily` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lib.rs:122:19
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl ToolFamily {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 122 |     pub(crate) fn add_debug_flags(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub(crate) fn add_force_frame_pointer(&self, cmd: &mut dyn ToolTrait) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub(crate) fn warnings_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub(crate) fn warnings_suppression_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub(crate) fn extra_warnings_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub(crate) fn warnings_to_errors_flag(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub(crate) fn verbose_stderr(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lib.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub(crate) trait ToolTrait {
[INFO] [stdout]     |                  --------- methods in this trait
[INFO] [stdout] 205 |     fn path(&self) -> &PathBuf;
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 206 |     fn family(&self) -> ToolFamily;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 207 |     fn to_command(&self) -> Command;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 208 |     fn push_cc_arg(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 209 |     fn remove_arg(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 210 |     fn push_opt_unless_duplicate(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 211 |     fn supports_path_delimiter(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 212 |     fn is_like_gnu(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 213 |     fn is_like_clang(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 214 |     fn is_like_msvc(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 215 |     fn is_like_clang_cl(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 216 |     fn is_xctoolchain_clang(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 217 |     fn is_duplicate_opt_arg(&self, flag: &OsString) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 218 |     fn args(&self) -> &[OsString];
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 219 |     fn env(&self) -> &[(OsString, OsString)];
[INFO] [stdout] 220 |     fn env_mut(&mut self) -> &mut Vec<(OsString, OsString)>;
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 221 |     fn args_mut(&mut self) -> &mut Vec<OsString>;
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `src` is never read
[INFO] [stdout]    --> src/lib.rs:225:5
[INFO] [stdout]     |
[INFO] [stdout] 224 | struct Object {
[INFO] [stdout]     |        ------ field in this struct
[INFO] [stdout] 225 |     src: PathBuf,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `apple_sdk_root_cache`, `apple_versions_cache`, `cached_compiler_family`, and `known_flag_support_status_cache` are never read
[INFO] [stdout]    --> src/lib.rs:244:5
[INFO] [stdout]     |
[INFO] [stdout] 242 | struct BuildCache {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 243 |     env_cache: RwLock<HashMap<Box<str>, Option<Arc<OsStr>>>>,
[INFO] [stdout] 244 |     apple_sdk_root_cache: RwLock<HashMap<Box<str>, Arc<OsStr>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 245 |     apple_versions_cache: RwLock<HashMap<Box<str>, Arc<str>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |     cached_compiler_family: RwLock<CompilerFamilyLookupCache>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     known_flag_support_status_cache: RwLock<HashMap<CompilerFlag, bool>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BuildCache` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Discard` and `Capture` are never constructed
[INFO] [stdout]    --> src/lib.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub(crate) enum OutputKind {
[INFO] [stdout]     |                 ---------- variants in this enum
[INFO] [stdout] 320 |     Forward,
[INFO] [stdout] 321 |     Discard,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 322 |     Capture,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OutputKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_warning` is never used
[INFO] [stdout]    --> src/lib.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 325 | impl CargoOutput {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 345 |     pub(crate) fn print_warning(&self, arg: &dyn Display) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flags_supported` is never read
[INFO] [stdout]    --> src/lib.rs:421:5
[INFO] [stdout]     |
[INFO] [stdout] 393 | pub struct Build {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 421 |     flags_supported: Vec<Arc<OsStr>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Build` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/lib.rs:1171:8
[INFO] [stdout]      |
[INFO] [stdout]  960 | impl Build {
[INFO] [stdout]      | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1171 |     fn prefer_clang(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1179 |     pub(crate) fn cargo_output(&mut self, cargo_output: bool) -> &mut Build {
[INFO] [stdout]      |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1361 |     fn which(&self, tool: &Path, path_entries: Option<&OsStr>) -> Option<PathBuf> {
[INFO] [stdout]      |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1390 |     fn find_working_gnu_prefix(&self, prefixes: &[&'static str]) -> Option<&'static str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1411 |     fn prefix_for_target(&self, target: &str) -> Option<Cow<'static, str>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1589 |     fn getenv_with_target_prefixes(&self, env: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1605 |     fn rustc_wrapper_fallback(&self) -> Option<Arc<OsStr>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1619 |     fn get_debug_str(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1626 |     fn get_debug(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1633 |     fn env_tool(&self, name: &str) -> Option<(PathBuf, Option<Arc<OsStr>>, Vec<String>)> {
[INFO] [stdout]      |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1674 |     fn get_opt_level(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1681 |     fn autodetect_wasi_compiler(&self, raw_target: &str, clang: &str) -> PathBuf {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1694 |     fn get_force_frame_pointer(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1698 |     fn apple_deployment_target(&self, target: &TargetInfo<'_>) -> Arc<str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1810 |     fn apple_sdk_root_inner(&self, sdk: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1860 |     fn apple_sdk_root(&self, target: &TargetInfo<'_>) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1882 |     fn get_dwarf_version(&self) -> Option<u32> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1898 |     fn wasm_musl_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1909 |     fn wasi_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1920 |     fn apple_flags(&self, cmd: &mut dyn ToolTrait) -> Result<(), Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1973 |     fn add_inherited_rustflags(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1989 |     fn msvc_macro_assembler(&self) -> Result<Command, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2009 |     pub(crate) fn is_flag_supported_inner(
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2029 |     fn ensure_check_file(&self) -> Result<PathBuf, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2064 |     fn fix_env_for_apple_os(&self, cmd: &mut Command) -> Result<(), Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2133 |     pub(crate) fn get_archiver(&self) -> Option<Command> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2170 |     fn search_programs(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_exe` is never used
[INFO] [stdout]     --> src/lib.rs:2247:4
[INFO] [stdout]      |
[INFO] [stdout] 2247 | fn check_exe(mut exe: PathBuf) -> Option<PathBuf> {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_darwin_target_from_rust_to_compiler_architecture` is never used
[INFO] [stdout]     --> src/lib.rs:2253:4
[INFO] [stdout]      |
[INFO] [stdout] 2253 | fn map_darwin_target_from_rust_to_compiler_architecture<'a>(target: &TargetInfo<'a>) -> &'a str {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_output` is never used
[INFO] [stdout]     --> src/lib.rs:2342:15
[INFO] [stdout]      |
[INFO] [stdout] 2342 | pub(crate) fn run_output(cmd: &mut Command, cargo_output: &CargoOutput) -> Result<Vec<u8>, Error> {
[INFO] [stdout]      |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spawn_and_wait_for_output` is never used
[INFO] [stdout]     --> src/lib.rs:2374:15
[INFO] [stdout]      |
[INFO] [stdout] 2374 | pub(crate) fn spawn_and_wait_for_output(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `llvm_target` is never used
[INFO] [stdout]   --> src/target.rs:25:19
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl TargetInfo<'_> {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 25 |     pub(crate) fn llvm_target(
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `apple_sdk_name` and `apple_version_flag` are never used
[INFO] [stdout]    --> src/target.rs:458:19
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl TargetInfo<'_> {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] 458 |     pub(crate) fn apple_sdk_name(&self) -> &'static str {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 474 |     pub(crate) fn apple_version_flag(&self, min_version: &str) -> String {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LLVM_TARGETS` is never used
[INFO] [stdout]    --> src/target.rs:568:18
[INFO] [stdout]     |
[INFO] [stdout] 568 | pub(crate) const LLVM_TARGETS: &[(&str, &str)] = &[
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RustcCodegenFlags` is never constructed
[INFO] [stdout]  --> src/flags.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub(crate) struct RustcCodegenFlags<'a> {
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `parse`, `set_rustc_flag`, and `cc_flags` are never used
[INFO] [stdout]    --> src/flags.rs:26:19
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl<'this> RustcCodegenFlags<'this> {
[INFO] [stdout]     | ------------------------------------ associated items in this implementation
[INFO] [stdout]  26 |     pub(crate) fn parse(rustflags_env: &'this str) -> Result<Self, Error> {
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     fn set_rustc_flag(&mut self, prefix: &str, flag: &'this str) -> Result<(), Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub(crate) fn cc_flags(&self, build: &Build, tool: &mut dyn ToolTrait, target: &TargetInfo<'_>) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_bytes` is never used
[INFO] [stdout]   --> src/shlex.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl<'a> Shlex<'a> {
[INFO] [stdout]    | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn from_bytes(bytes: &'a [u8]) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split` is never used
[INFO] [stdout]    --> src/shlex.rs:119:15
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub(crate) fn split(in_bytes: &[u8]) -> Option<Vec<Vec<u8>>> {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rand` is never used
[INFO] [stdout]  --> src/utils.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn rand() -> u64 {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tmpname` is never used
[INFO] [stdout]   --> src/utils.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn tmpname(suffix: &str) -> String {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_named` is never used
[INFO] [stdout]   --> src/utils.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn create_named(path: &PathBuf) -> std::io::Result<File> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NamedTempfile` is never constructed
[INFO] [stdout]   --> src/utils.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) struct NamedTempfile {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `path`, and `take_file` are never used
[INFO] [stdout]   --> src/utils.rs:35:19
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl NamedTempfile {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 35 |     pub(crate) fn new(base: &Path, suffix: &str) -> std::io::Result<Self> {
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub(crate) fn path(&self) -> &PathBuf {
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub(crate) fn take_file(&mut self) -> Option<File> {
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CmdAddOutputFileArgs` is never constructed
[INFO] [stdout]   --> src/utils.rs:76:19
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub(crate) struct CmdAddOutputFileArgs {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tart v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `command_add_output_file` is never used
[INFO] [stdout]   --> src/utils.rs:85:15
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub(crate) fn command_add_output_file(cmd: &mut Command, dst: &PathBuf, args: CmdAddOutputFileArgs) {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_arm` is never used
[INFO] [stdout]   --> src/utils.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub(crate) fn is_arm(target: &TargetInfo<'_>) -> bool {
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AsmFileExt` is never used
[INFO] [stdout]    --> src/utils.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub(crate) enum AsmFileExt {
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_path` is never used
[INFO] [stdout]    --> src/utils.rs:108:19
[INFO] [stdout]     |
[INFO] [stdout] 107 | impl AsmFileExt {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 108 |     pub(crate) fn from_path(file: &Path) -> Option<Self> {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/utils.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 |         _ => Err(Error::new(ErrorKind::NoLanguageSelected, "No Language Selected"))
[INFO] [stdout]     |         ^--------------------------------------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         matches no values because `Languages` is uninhabited
[INFO] [stdout]     |         help: remove the match arm
[INFO] [stdout]     |
[INFO] [stdout]     = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]     --> src/lib.rs:1032:39
[INFO] [stdout]      |
[INFO] [stdout] 1032 |     fn is_file_extension_valid(&self, file: &Path) -> bool {
[INFO] [stdout]      |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1243:20
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------^
[INFO] [stdout]      |                    |                                               |
[INFO] [stdout]      |                    |                                               any code following this expression is unreachable
[INFO] [stdout]      |                    unreachable expression
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1243:68
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lib_name`
[INFO] [stdout]     --> src/lib.rs:1232:14
[INFO] [stdout]      |
[INFO] [stdout] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stdout]      |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lib_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gnu_lib_name`
[INFO] [stdout]     --> src/lib.rs:1232:24
[INFO] [stdout]      |
[INFO] [stdout] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stdout]      |                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gnu_lib_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dst`
[INFO] [stdout]     --> src/lib.rs:1242:13
[INFO] [stdout]      |
[INFO] [stdout] 1242 |         let dst = self.get_out_dir()?;
[INFO] [stdout]      |             ^^^ help: if this is intentional, prefix it with an underscore: `_dst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lang`
[INFO] [stdout]     --> src/lib.rs:1243:13
[INFO] [stdout]      |
[INFO] [stdout] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_lang`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1352:13
[INFO] [stdout]      |
[INFO] [stdout] 1352 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1353 | |                 Error::new(
[INFO] [stdout] 1354 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 1355 | |                     "Language does not support compiling object command."
[INFO] [stdout] 1356 | |                 )
[INFO] [stdout] 1357 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1347:15
[INFO] [stdout]      |
[INFO] [stdout] 1347 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1347:15
[INFO] [stdout]      |
[INFO] [stdout] 1347 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obj`
[INFO] [stdout]     --> src/lib.rs:1346:41
[INFO] [stdout]      |
[INFO] [stdout] 1346 |     fn create_compile_object_cmd(&self, obj: &Object) -> Result<Command, Error> {
[INFO] [stdout]      |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1381:13
[INFO] [stdout]      |
[INFO] [stdout] 1381 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1382 | |                 Error::new(
[INFO] [stdout] 1383 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 1384 | |                     "Language does not support getting a base compiler."
[INFO] [stdout] 1385 | |                 )
[INFO] [stdout] 1386 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1376:15
[INFO] [stdout]      |
[INFO] [stdout] 1376 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1376:15
[INFO] [stdout]      |
[INFO] [stdout] 1376 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:1995:13
[INFO] [stdout]      |
[INFO] [stdout] 1995 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 1996 | |                 Error::new(
[INFO] [stdout] 1997 | |                     ErrorKind::ToolExecError,
[INFO] [stdout] 1998 | |                     "MSVC Macro Assembler doesn't exist for the selected language."
[INFO] [stdout] 1999 | |                 )
[INFO] [stdout] 2000 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:1990:15
[INFO] [stdout]      |
[INFO] [stdout] 1990 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:1990:15
[INFO] [stdout]      |
[INFO] [stdout] 1990 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:2020:13
[INFO] [stdout]      |
[INFO] [stdout] 2020 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 2021 | |                 Error::new(
[INFO] [stdout] 2022 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 2023 | |                     "Language does not support seeing if a flag iss supported."
[INFO] [stdout] 2024 | |                 )
[INFO] [stdout] 2025 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:2015:15
[INFO] [stdout]      |
[INFO] [stdout] 2015 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:2015:15
[INFO] [stdout]      |
[INFO] [stdout] 2015 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flag`
[INFO] [stdout]     --> src/lib.rs:2011:9
[INFO] [stdout]      |
[INFO] [stdout] 2011 |         flag: &OsStr,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_flag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool`
[INFO] [stdout]     --> src/lib.rs:2012:9
[INFO] [stdout]      |
[INFO] [stdout] 2012 |         tool: &dyn ToolTrait,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]     --> src/lib.rs:2013:9
[INFO] [stdout]      |
[INFO] [stdout] 2013 |         target: &TargetInfo<'_>,
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/lib.rs:2201:13
[INFO] [stdout]      |
[INFO] [stdout] 2201 |               _ => Err(
[INFO] [stdout]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stdout]      |  _____________|
[INFO] [stdout]      | |
[INFO] [stdout] 2202 | |                 Error::new(
[INFO] [stdout] 2203 | |                     ErrorKind::ToolExecError, 
[INFO] [stdout] 2204 | |                     "Language does not support a set archiver."
[INFO] [stdout] 2205 | |                 )
[INFO] [stdout] 2206 | |             )
[INFO] [stdout]      | |_____________- help: remove the match arm
[INFO] [stdout]      |
[INFO] [stdout]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]     --> src/lib.rs:2196:15
[INFO] [stdout]      |
[INFO] [stdout] 2196 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               unreachable expression
[INFO] [stdout]      |               any code following this expression is unreachable
[INFO] [stdout]      |
[INFO] [stdout] note: this expression has type `Languages`, which is uninhabited
[INFO] [stdout]     --> src/lib.rs:2196:15
[INFO] [stdout]      |
[INFO] [stdout] 2196 |         match self.language.clone().unwrap() {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]     --> src/lib.rs:2193:9
[INFO] [stdout]      |
[INFO] [stdout] 2193 |         env: &str,
[INFO] [stdout]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tool`
[INFO] [stdout]     --> src/lib.rs:2194:9
[INFO] [stdout]      |
[INFO] [stdout] 2194 |         tool: &str,
[INFO] [stdout]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Gnu`, `Clang`, and `Msvc` are never constructed
[INFO] [stdout]    --> src/lib.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub(crate) enum ToolFamily {
[INFO] [stdout]     |                 ---------- variants in this enum
[INFO] [stdout] 116 |     Gnu,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 117 |     Clang { zig_cc: bool },
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 118 |     Msvc { clang_cl: bool },
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolFamily` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lib.rs:122:19
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl ToolFamily {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 122 |     pub(crate) fn add_debug_flags(
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub(crate) fn add_force_frame_pointer(&self, cmd: &mut dyn ToolTrait) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     pub(crate) fn warnings_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     pub(crate) fn warnings_suppression_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub(crate) fn extra_warnings_flags(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub(crate) fn warnings_to_errors_flag(&self) -> Option<&'static str> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub(crate) fn verbose_stderr(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/lib.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 204 | pub(crate) trait ToolTrait {
[INFO] [stdout]     |                  --------- methods in this trait
[INFO] [stdout] 205 |     fn path(&self) -> &PathBuf;
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 206 |     fn family(&self) -> ToolFamily;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 207 |     fn to_command(&self) -> Command;
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 208 |     fn push_cc_arg(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 209 |     fn remove_arg(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 210 |     fn push_opt_unless_duplicate(&mut self, flag: OsString);
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 211 |     fn supports_path_delimiter(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 212 |     fn is_like_gnu(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 213 |     fn is_like_clang(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 214 |     fn is_like_msvc(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 215 |     fn is_like_clang_cl(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 216 |     fn is_xctoolchain_clang(&self) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 217 |     fn is_duplicate_opt_arg(&self, flag: &OsString) -> bool;
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 218 |     fn args(&self) -> &[OsString];
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 219 |     fn env(&self) -> &[(OsString, OsString)];
[INFO] [stdout] 220 |     fn env_mut(&mut self) -> &mut Vec<(OsString, OsString)>;
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 221 |     fn args_mut(&mut self) -> &mut Vec<OsString>;
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `src` is never read
[INFO] [stdout]    --> src/lib.rs:225:5
[INFO] [stdout]     |
[INFO] [stdout] 224 | struct Object {
[INFO] [stdout]     |        ------ field in this struct
[INFO] [stdout] 225 |     src: PathBuf,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `apple_sdk_root_cache`, `apple_versions_cache`, `cached_compiler_family`, and `known_flag_support_status_cache` are never read
[INFO] [stdout]    --> src/lib.rs:244:5
[INFO] [stdout]     |
[INFO] [stdout] 242 | struct BuildCache {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 243 |     env_cache: RwLock<HashMap<Box<str>, Option<Arc<OsStr>>>>,
[INFO] [stdout] 244 |     apple_sdk_root_cache: RwLock<HashMap<Box<str>, Arc<OsStr>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 245 |     apple_versions_cache: RwLock<HashMap<Box<str>, Arc<str>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |     cached_compiler_family: RwLock<CompilerFamilyLookupCache>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     known_flag_support_status_cache: RwLock<HashMap<CompilerFlag, bool>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BuildCache` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Discard` and `Capture` are never constructed
[INFO] [stdout]    --> src/lib.rs:321:5
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub(crate) enum OutputKind {
[INFO] [stdout]     |                 ---------- variants in this enum
[INFO] [stdout] 320 |     Forward,
[INFO] [stdout] 321 |     Discard,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 322 |     Capture,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OutputKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_warning` is never used
[INFO] [stdout]    --> src/lib.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 325 | impl CargoOutput {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 345 |     pub(crate) fn print_warning(&self, arg: &dyn Display) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `flags_supported` is never read
[INFO] [stdout]    --> src/lib.rs:421:5
[INFO] [stdout]     |
[INFO] [stdout] 393 | pub struct Build {
[INFO] [stdout]     |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 421 |     flags_supported: Vec<Arc<OsStr>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Build` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]     --> src/lib.rs:1171:8
[INFO] [stdout]      |
[INFO] [stdout]  960 | impl Build {
[INFO] [stdout]      | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1171 |     fn prefer_clang(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1179 |     pub(crate) fn cargo_output(&mut self, cargo_output: bool) -> &mut Build {
[INFO] [stdout]      |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1361 |     fn which(&self, tool: &Path, path_entries: Option<&OsStr>) -> Option<PathBuf> {
[INFO] [stdout]      |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1390 |     fn find_working_gnu_prefix(&self, prefixes: &[&'static str]) -> Option<&'static str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1411 |     fn prefix_for_target(&self, target: &str) -> Option<Cow<'static, str>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1589 |     fn getenv_with_target_prefixes(&self, env: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1605 |     fn rustc_wrapper_fallback(&self) -> Option<Arc<OsStr>> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1619 |     fn get_debug_str(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1626 |     fn get_debug(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1633 |     fn env_tool(&self, name: &str) -> Option<(PathBuf, Option<Arc<OsStr>>, Vec<String>)> {
[INFO] [stdout]      |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1674 |     fn get_opt_level(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1681 |     fn autodetect_wasi_compiler(&self, raw_target: &str, clang: &str) -> PathBuf {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1694 |     fn get_force_frame_pointer(&self) -> bool {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1698 |     fn apple_deployment_target(&self, target: &TargetInfo<'_>) -> Arc<str> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1810 |     fn apple_sdk_root_inner(&self, sdk: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1860 |     fn apple_sdk_root(&self, target: &TargetInfo<'_>) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1882 |     fn get_dwarf_version(&self) -> Option<u32> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1898 |     fn wasm_musl_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1909 |     fn wasi_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1920 |     fn apple_flags(&self, cmd: &mut dyn ToolTrait) -> Result<(), Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1973 |     fn add_inherited_rustflags(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1989 |     fn msvc_macro_assembler(&self) -> Result<Command, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2009 |     pub(crate) fn is_flag_supported_inner(
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2029 |     fn ensure_check_file(&self) -> Result<PathBuf, Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2064 |     fn fix_env_for_apple_os(&self, cmd: &mut Command) -> Result<(), Error> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2133 |     pub(crate) fn get_archiver(&self) -> Option<Command> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2170 |     fn search_programs(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_exe` is never used
[INFO] [stdout]     --> src/lib.rs:2247:4
[INFO] [stdout]      |
[INFO] [stdout] 2247 | fn check_exe(mut exe: PathBuf) -> Option<PathBuf> {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_darwin_target_from_rust_to_compiler_architecture` is never used
[INFO] [stdout]     --> src/lib.rs:2253:4
[INFO] [stdout]      |
[INFO] [stdout] 2253 | fn map_darwin_target_from_rust_to_compiler_architecture<'a>(target: &TargetInfo<'a>) -> &'a str {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_output` is never used
[INFO] [stdout]     --> src/lib.rs:2342:15
[INFO] [stdout]      |
[INFO] [stdout] 2342 | pub(crate) fn run_output(cmd: &mut Command, cargo_output: &CargoOutput) -> Result<Vec<u8>, Error> {
[INFO] [stdout]      |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spawn_and_wait_for_output` is never used
[INFO] [stdout]     --> src/lib.rs:2374:15
[INFO] [stdout]      |
[INFO] [stdout] 2374 | pub(crate) fn spawn_and_wait_for_output(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `apple_sdk_name` and `apple_version_flag` are never used
[INFO] [stdout]    --> src/target.rs:458:19
[INFO] [stdout]     |
[INFO] [stdout] 457 | impl TargetInfo<'_> {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] 458 |     pub(crate) fn apple_sdk_name(&self) -> &'static str {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 474 |     pub(crate) fn apple_version_flag(&self, min_version: &str) -> String {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `cc_flags` is never used
[INFO] [stdout]    --> src/flags.rs:156:19
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl<'this> RustcCodegenFlags<'this> {
[INFO] [stdout]     | ------------------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub(crate) fn cc_flags(&self, build: &Build, tool: &mut dyn ToolTrait, target: &TargetInfo<'_>) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_arm` is never used
[INFO] [stdout]   --> src/utils.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub(crate) fn is_arm(target: &TargetInfo<'_>) -> bool {
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.36s
[INFO] running `Command { std: "docker" "inspect" "ac7a5eff12c939212a6fe89fdf2d87a96076a6a12c6472a922d90cf053a13212", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ac7a5eff12c939212a6fe89fdf2d87a96076a6a12c6472a922d90cf053a13212", kill_on_drop: false }`
[INFO] [stdout] ac7a5eff12c939212a6fe89fdf2d87a96076a6a12c6472a922d90cf053a13212
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] fcd504bf0b51dfb3892735e807ef93f351559ff0968dd58c0415ad0a5124c415
[INFO] running `Command { std: "docker" "start" "-a" "fcd504bf0b51dfb3892735e807ef93f351559ff0968dd58c0415ad0a5124c415", kill_on_drop: false }`
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]    --> src/utils.rs:138:9
[INFO] [stderr]     |
[INFO] [stderr] 138 |         _ => Err(Error::new(ErrorKind::NoLanguageSelected, "No Language Selected"))
[INFO] [stderr]     |         ^--------------------------------------------------------------------------
[INFO] [stderr]     |         |
[INFO] [stderr]     |         matches no values because `Languages` is uninhabited
[INFO] [stderr]     |         help: remove the match arm
[INFO] [stderr]     |
[INFO] [stderr]     = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stderr]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `file`
[INFO] [stderr]     --> src/lib.rs:1032:39
[INFO] [stderr]      |
[INFO] [stderr] 1032 |     fn is_file_extension_valid(&self, file: &Path) -> bool {
[INFO] [stderr]      |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]     --> src/lib.rs:1243:20
[INFO] [stderr]      |
[INFO] [stderr] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stderr]      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------------------^
[INFO] [stderr]      |                    |                                               |
[INFO] [stderr]      |                    |                                               any code following this expression is unreachable
[INFO] [stderr]      |                    unreachable expression
[INFO] [stderr]      |
[INFO] [stderr] note: this expression has type `Languages`, which is uninhabited
[INFO] [stderr]     --> src/lib.rs:1243:68
[INFO] [stderr]      |
[INFO] [stderr] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stderr]      |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `lib_name`
[INFO] [stderr]     --> src/lib.rs:1232:14
[INFO] [stderr]      |
[INFO] [stderr] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stderr]      |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lib_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `gnu_lib_name`
[INFO] [stderr]     --> src/lib.rs:1232:24
[INFO] [stderr]      |
[INFO] [stderr] 1232 |         let (lib_name, gnu_lib_name) = if output.starts_with("lib") && output.ends_with(".a") {
[INFO] [stderr]      |                        ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gnu_lib_name`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `dst`
[INFO] [stderr]     --> src/lib.rs:1242:13
[INFO] [stderr]      |
[INFO] [stderr] 1242 |         let dst = self.get_out_dir()?;
[INFO] [stderr]      |             ^^^ help: if this is intentional, prefix it with an underscore: `_dst`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `lang`
[INFO] [stderr]     --> src/lib.rs:1243:13
[INFO] [stderr]      |
[INFO] [stderr] 1243 |         let lang = utils::get_language_internal_from_user_language(self.language.clone().unwrap())?;
[INFO] [stderr]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_lang`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]     --> src/lib.rs:1352:13
[INFO] [stderr]      |
[INFO] [stderr] 1352 |               _ => Err(
[INFO] [stderr]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stderr]      |  _____________|
[INFO] [stderr]      | |
[INFO] [stderr] 1353 | |                 Error::new(
[INFO] [stderr] 1354 | |                     ErrorKind::ToolExecError, 
[INFO] [stderr] 1355 | |                     "Language does not support compiling object command."
[INFO] [stderr] 1356 | |                 )
[INFO] [stderr] 1357 | |             )
[INFO] [stderr]      | |_____________- help: remove the match arm
[INFO] [stderr]      |
[INFO] [stderr]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]     --> src/lib.rs:1347:15
[INFO] [stderr]      |
[INFO] [stderr] 1347 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |               |
[INFO] [stderr]      |               unreachable expression
[INFO] [stderr]      |               any code following this expression is unreachable
[INFO] [stderr]      |
[INFO] [stderr] note: this expression has type `Languages`, which is uninhabited
[INFO] [stderr]     --> src/lib.rs:1347:15
[INFO] [stderr]      |
[INFO] [stderr] 1347 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `obj`
[INFO] [stderr]     --> src/lib.rs:1346:41
[INFO] [stderr]      |
[INFO] [stderr] 1346 |     fn create_compile_object_cmd(&self, obj: &Object) -> Result<Command, Error> {
[INFO] [stderr]      |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]     --> src/lib.rs:1381:13
[INFO] [stderr]      |
[INFO] [stderr] 1381 |               _ => Err(
[INFO] [stderr]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stderr]      |  _____________|
[INFO] [stderr]      | |
[INFO] [stderr] 1382 | |                 Error::new(
[INFO] [stderr] 1383 | |                     ErrorKind::ToolExecError, 
[INFO] [stderr] 1384 | |                     "Language does not support getting a base compiler."
[INFO] [stderr] 1385 | |                 )
[INFO] [stderr] 1386 | |             )
[INFO] [stderr]      | |_____________- help: remove the match arm
[INFO] [stderr]      |
[INFO] [stderr]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]     --> src/lib.rs:1376:15
[INFO] [stderr]      |
[INFO] [stderr] 1376 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |               |
[INFO] [stderr]      |               unreachable expression
[INFO] [stderr]      |               any code following this expression is unreachable
[INFO] [stderr]      |
[INFO] [stderr] note: this expression has type `Languages`, which is uninhabited
[INFO] [stderr]     --> src/lib.rs:1376:15
[INFO] [stderr]      |
[INFO] [stderr] 1376 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]     --> src/lib.rs:1995:13
[INFO] [stderr]      |
[INFO] [stderr] 1995 |               _ => Err(
[INFO] [stderr]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stderr]      |  _____________|
[INFO] [stderr]      | |
[INFO] [stderr] 1996 | |                 Error::new(
[INFO] [stderr] 1997 | |                     ErrorKind::ToolExecError,
[INFO] [stderr] 1998 | |                     "MSVC Macro Assembler doesn't exist for the selected language."
[INFO] [stderr] 1999 | |                 )
[INFO] [stderr] 2000 | |             )
[INFO] [stderr]      | |_____________- help: remove the match arm
[INFO] [stderr]      |
[INFO] [stderr]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]     --> src/lib.rs:1990:15
[INFO] [stderr]      |
[INFO] [stderr] 1990 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |               |
[INFO] [stderr]      |               unreachable expression
[INFO] [stderr]      |               any code following this expression is unreachable
[INFO] [stderr]      |
[INFO] [stderr] note: this expression has type `Languages`, which is uninhabited
[INFO] [stderr]     --> src/lib.rs:1990:15
[INFO] [stderr]      |
[INFO] [stderr] 1990 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]     --> src/lib.rs:2020:13
[INFO] [stderr]      |
[INFO] [stderr] 2020 |               _ => Err(
[INFO] [stderr]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stderr]      |  _____________|
[INFO] [stderr]      | |
[INFO] [stderr] 2021 | |                 Error::new(
[INFO] [stderr] 2022 | |                     ErrorKind::ToolExecError, 
[INFO] [stderr] 2023 | |                     "Language does not support seeing if a flag iss supported."
[INFO] [stderr] 2024 | |                 )
[INFO] [stderr] 2025 | |             )
[INFO] [stderr]      | |_____________- help: remove the match arm
[INFO] [stderr]      |
[INFO] [stderr]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]     --> src/lib.rs:2015:15
[INFO] [stderr]      |
[INFO] [stderr] 2015 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |               |
[INFO] [stderr]      |               unreachable expression
[INFO] [stderr]      |               any code following this expression is unreachable
[INFO] [stderr]      |
[INFO] [stderr] note: this expression has type `Languages`, which is uninhabited
[INFO] [stderr]     --> src/lib.rs:2015:15
[INFO] [stderr]      |
[INFO] [stderr] 2015 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `flag`
[INFO] [stderr]     --> src/lib.rs:2011:9
[INFO] [stderr]      |
[INFO] [stderr] 2011 |         flag: &OsStr,
[INFO] [stderr]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_flag`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tool`
[INFO] [stderr]     --> src/lib.rs:2012:9
[INFO] [stderr]      |
[INFO] [stderr] 2012 |         tool: &dyn ToolTrait,
[INFO] [stderr]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target`
[INFO] [stderr]     --> src/lib.rs:2013:9
[INFO] [stderr]      |
[INFO] [stderr] 2013 |         target: &TargetInfo<'_>,
[INFO] [stderr]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]     --> src/lib.rs:2201:13
[INFO] [stderr]      |
[INFO] [stderr] 2201 |               _ => Err(
[INFO] [stderr]      |               ^ matches no values because `Languages` is uninhabited
[INFO] [stderr]      |  _____________|
[INFO] [stderr]      | |
[INFO] [stderr] 2202 | |                 Error::new(
[INFO] [stderr] 2203 | |                     ErrorKind::ToolExecError, 
[INFO] [stderr] 2204 | |                     "Language does not support a set archiver."
[INFO] [stderr] 2205 | |                 )
[INFO] [stderr] 2206 | |             )
[INFO] [stderr]      | |_____________- help: remove the match arm
[INFO] [stderr]      |
[INFO] [stderr]      = note: to learn more about uninhabited types, see https://doc.rust-lang.org/nomicon/exotic-sizes.html#empty-types
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]     --> src/lib.rs:2196:15
[INFO] [stderr]      |
[INFO] [stderr] 2196 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |               |
[INFO] [stderr]      |               unreachable expression
[INFO] [stderr]      |               any code following this expression is unreachable
[INFO] [stderr]      |
[INFO] [stderr] note: this expression has type `Languages`, which is uninhabited
[INFO] [stderr]     --> src/lib.rs:2196:15
[INFO] [stderr]      |
[INFO] [stderr] 2196 |         match self.language.clone().unwrap() {
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]     --> src/lib.rs:2193:9
[INFO] [stderr]      |
[INFO] [stderr] 2193 |         env: &str,
[INFO] [stderr]      |         ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tool`
[INFO] [stderr]     --> src/lib.rs:2194:9
[INFO] [stderr]      |
[INFO] [stderr] 2194 |         tool: &str,
[INFO] [stderr]      |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tool`
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Gnu`, `Clang`, and `Msvc` are never constructed
[INFO] [stderr]    --> src/lib.rs:116:5
[INFO] [stderr]     |
[INFO] [stderr] 115 | pub(crate) enum ToolFamily {
[INFO] [stderr]     |                 ---------- variants in this enum
[INFO] [stderr] 116 |     Gnu,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 117 |     Clang { zig_cc: bool },
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 118 |     Msvc { clang_cl: bool },
[INFO] [stderr]     |     ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ToolFamily` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/lib.rs:122:19
[INFO] [stderr]     |
[INFO] [stderr] 121 | impl ToolFamily {
[INFO] [stderr]     | --------------- methods in this implementation
[INFO] [stderr] 122 |     pub(crate) fn add_debug_flags(
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 160 |     pub(crate) fn add_force_frame_pointer(&self, cmd: &mut dyn ToolTrait) {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 169 |     pub(crate) fn warnings_flags(&self) -> Option<&'static str> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 176 |     pub(crate) fn warnings_suppression_flags(&self) -> Option<&'static str> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 183 |     pub(crate) fn extra_warnings_flags(&self) -> Option<&'static str> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 190 |     pub(crate) fn warnings_to_errors_flag(&self) -> Option<&'static str> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 197 |     pub(crate) fn verbose_stderr(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/lib.rs:205:8
[INFO] [stderr]     |
[INFO] [stderr] 204 | pub(crate) trait ToolTrait {
[INFO] [stderr]     |                  --------- methods in this trait
[INFO] [stderr] 205 |     fn path(&self) -> &PathBuf;
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 206 |     fn family(&self) -> ToolFamily;
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] 207 |     fn to_command(&self) -> Command;
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 208 |     fn push_cc_arg(&mut self, flag: OsString);
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 209 |     fn remove_arg(&mut self, flag: OsString);
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 210 |     fn push_opt_unless_duplicate(&mut self, flag: OsString);
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 211 |     fn supports_path_delimiter(&self) -> bool;
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 212 |     fn is_like_gnu(&self) -> bool;
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 213 |     fn is_like_clang(&self) -> bool;
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 214 |     fn is_like_msvc(&self) -> bool;
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 215 |     fn is_like_clang_cl(&self) -> bool;
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 216 |     fn is_xctoolchain_clang(&self) -> bool;
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 217 |     fn is_duplicate_opt_arg(&self, flag: &OsString) -> bool;
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 218 |     fn args(&self) -> &[OsString];
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 219 |     fn env(&self) -> &[(OsString, OsString)];
[INFO] [stderr] 220 |     fn env_mut(&mut self) -> &mut Vec<(OsString, OsString)>;
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 221 |     fn args_mut(&mut self) -> &mut Vec<OsString>;
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `src` is never read
[INFO] [stderr]    --> src/lib.rs:225:5
[INFO] [stderr]     |
[INFO] [stderr] 224 | struct Object {
[INFO] [stderr]     |        ------ field in this struct
[INFO] [stderr] 225 |     src: PathBuf,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `apple_sdk_root_cache`, `apple_versions_cache`, `cached_compiler_family`, and `known_flag_support_status_cache` are never read
[INFO] [stderr]    --> src/lib.rs:244:5
[INFO] [stderr]     |
[INFO] [stderr] 242 | struct BuildCache {
[INFO] [stderr]     |        ---------- fields in this struct
[INFO] [stderr] 243 |     env_cache: RwLock<HashMap<Box<str>, Option<Arc<OsStr>>>>,
[INFO] [stderr] 244 |     apple_sdk_root_cache: RwLock<HashMap<Box<str>, Arc<OsStr>>>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 245 |     apple_versions_cache: RwLock<HashMap<Box<str>, Arc<str>>>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 246 |     cached_compiler_family: RwLock<CompilerFamilyLookupCache>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 247 |     known_flag_support_status_cache: RwLock<HashMap<CompilerFlag, bool>>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `BuildCache` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Discard` and `Capture` are never constructed
[INFO] [stderr]    --> src/lib.rs:321:5
[INFO] [stderr]     |
[INFO] [stderr] 319 | pub(crate) enum OutputKind {
[INFO] [stderr]     |                 ---------- variants in this enum
[INFO] [stderr] 320 |     Forward,
[INFO] [stderr] 321 |     Discard,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 322 |     Capture,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `OutputKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `print_warning` is never used
[INFO] [stderr]    --> src/lib.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 325 | impl CargoOutput {
[INFO] [stderr]     | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 345 |     pub(crate) fn print_warning(&self, arg: &dyn Display) {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `flags_supported` is never read
[INFO] [stderr]    --> src/lib.rs:421:5
[INFO] [stderr]     |
[INFO] [stderr] 393 | pub struct Build {
[INFO] [stderr]     |            ----- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 421 |     flags_supported: Vec<Arc<OsStr>>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Build` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]     --> src/lib.rs:1171:8
[INFO] [stderr]      |
[INFO] [stderr]  960 | impl Build {
[INFO] [stderr]      | ---------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1171 |     fn prefer_clang(&self) -> bool {
[INFO] [stderr]      |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1179 |     pub(crate) fn cargo_output(&mut self, cargo_output: bool) -> &mut Build {
[INFO] [stderr]      |                   ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1361 |     fn which(&self, tool: &Path, path_entries: Option<&OsStr>) -> Option<PathBuf> {
[INFO] [stderr]      |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1390 |     fn find_working_gnu_prefix(&self, prefixes: &[&'static str]) -> Option<&'static str> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1411 |     fn prefix_for_target(&self, target: &str) -> Option<Cow<'static, str>> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1589 |     fn getenv_with_target_prefixes(&self, env: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1605 |     fn rustc_wrapper_fallback(&self) -> Option<Arc<OsStr>> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1619 |     fn get_debug_str(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1626 |     fn get_debug(&self) -> bool {
[INFO] [stderr]      |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1633 |     fn env_tool(&self, name: &str) -> Option<(PathBuf, Option<Arc<OsStr>>, Vec<String>)> {
[INFO] [stderr]      |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1674 |     fn get_opt_level(&self) -> Result<Cow<'_, str>, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1681 |     fn autodetect_wasi_compiler(&self, raw_target: &str, clang: &str) -> PathBuf {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1694 |     fn get_force_frame_pointer(&self) -> bool {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1698 |     fn apple_deployment_target(&self, target: &TargetInfo<'_>) -> Arc<str> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1810 |     fn apple_sdk_root_inner(&self, sdk: &str) -> Result<Arc<OsStr>, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1860 |     fn apple_sdk_root(&self, target: &TargetInfo<'_>) -> Result<Arc<OsStr>, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1882 |     fn get_dwarf_version(&self) -> Option<u32> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1898 |     fn wasm_musl_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1909 |     fn wasi_sysroot(&self) -> Result<Arc<OsStr>, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1920 |     fn apple_flags(&self, cmd: &mut dyn ToolTrait) -> Result<(), Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1973 |     fn add_inherited_rustflags(
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 1989 |     fn msvc_macro_assembler(&self) -> Result<Command, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 2009 |     pub(crate) fn is_flag_supported_inner(
[INFO] [stderr]      |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 2029 |     fn ensure_check_file(&self) -> Result<PathBuf, Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 2064 |     fn fix_env_for_apple_os(&self, cmd: &mut Command) -> Result<(), Error> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 2133 |     pub(crate) fn get_archiver(&self) -> Option<Command> {
[INFO] [stderr]      |                   ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 2170 |     fn search_programs(
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `check_exe` is never used
[INFO] [stderr]     --> src/lib.rs:2247:4
[INFO] [stderr]      |
[INFO] [stderr] 2247 | fn check_exe(mut exe: PathBuf) -> Option<PathBuf> {
[INFO] [stderr]      |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `map_darwin_target_from_rust_to_compiler_architecture` is never used
[INFO] [stderr]     --> src/lib.rs:2253:4
[INFO] [stderr]      |
[INFO] [stderr] 2253 | fn map_darwin_target_from_rust_to_compiler_architecture<'a>(target: &TargetInfo<'a>) -> &'a str {
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_output` is never used
[INFO] [stderr]     --> src/lib.rs:2342:15
[INFO] [stderr]      |
[INFO] [stderr] 2342 | pub(crate) fn run_output(cmd: &mut Command, cargo_output: &CargoOutput) -> Result<Vec<u8>, Error> {
[INFO] [stderr]      |               ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `spawn_and_wait_for_output` is never used
[INFO] [stderr]     --> src/lib.rs:2374:15
[INFO] [stderr]      |
[INFO] [stderr] 2374 | pub(crate) fn spawn_and_wait_for_output(
[INFO] [stderr]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `llvm_target` is never used
[INFO] [stderr]   --> src/target.rs:25:19
[INFO] [stderr]    |
[INFO] [stderr] 24 | impl TargetInfo<'_> {
[INFO] [stderr]    | ------------------- method in this implementation
[INFO] [stderr] 25 |     pub(crate) fn llvm_target(
[INFO] [stderr]    |                   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `apple_sdk_name` and `apple_version_flag` are never used
[INFO] [stderr]    --> src/target.rs:458:19
[INFO] [stderr]     |
[INFO] [stderr] 457 | impl TargetInfo<'_> {
[INFO] [stderr]     | ------------------- methods in this implementation
[INFO] [stderr] 458 |     pub(crate) fn apple_sdk_name(&self) -> &'static str {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 474 |     pub(crate) fn apple_version_flag(&self, min_version: &str) -> String {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `LLVM_TARGETS` is never used
[INFO] [stderr]    --> src/target.rs:568:18
[INFO] [stderr]     |
[INFO] [stderr] 568 | pub(crate) const LLVM_TARGETS: &[(&str, &str)] = &[
[INFO] [stderr]     |                  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RustcCodegenFlags` is never constructed
[INFO] [stderr]  --> src/flags.rs:6:19
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub(crate) struct RustcCodegenFlags<'a> {
[INFO] [stderr]   |                   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `parse`, `set_rustc_flag`, and `cc_flags` are never used
[INFO] [stderr]    --> src/flags.rs:26:19
[INFO] [stderr]     |
[INFO] [stderr]  25 | impl<'this> RustcCodegenFlags<'this> {
[INFO] [stderr]     | ------------------------------------ associated items in this implementation
[INFO] [stderr]  26 |     pub(crate) fn parse(rustflags_env: &'this str) -> Result<Self, Error> {
[INFO] [stderr]     |                   ^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  78 |     fn set_rustc_flag(&mut self, prefix: &str, flag: &'this str) -> Result<(), Error> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 156 |     pub(crate) fn cc_flags(&self, build: &Build, tool: &mut dyn ToolTrait, target: &TargetInfo<'_>) {
[INFO] [stderr]     |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `from_bytes` is never used
[INFO] [stderr]   --> src/shlex.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr]  9 | impl<'a> Shlex<'a> {
[INFO] [stderr]    | ------------------ associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 18 |     pub fn from_bytes(bytes: &'a [u8]) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `split` is never used
[INFO] [stderr]    --> src/shlex.rs:119:15
[INFO] [stderr]     |
[INFO] [stderr] 119 | pub(crate) fn split(in_bytes: &[u8]) -> Option<Vec<Vec<u8>>> {
[INFO] [stderr]     |               ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `rand` is never used
[INFO] [stderr]  --> src/utils.rs:7:4
[INFO] [stderr]   |
[INFO] [stderr] 7 | fn rand() -> u64 {
[INFO] [stderr]   |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `tmpname` is never used
[INFO] [stderr]   --> src/utils.rs:11:4
[INFO] [stderr]    |
[INFO] [stderr] 11 | fn tmpname(suffix: &str) -> String {
[INFO] [stderr]    |    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_named` is never used
[INFO] [stderr]   --> src/utils.rs:15:4
[INFO] [stderr]    |
[INFO] [stderr] 15 | fn create_named(path: &PathBuf) -> std::io::Result<File> {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NamedTempfile` is never constructed
[INFO] [stderr]   --> src/utils.rs:29:19
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub(crate) struct NamedTempfile {
[INFO] [stderr]    |                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `path`, and `take_file` are never used
[INFO] [stderr]   --> src/utils.rs:35:19
[INFO] [stderr]    |
[INFO] [stderr] 34 | impl NamedTempfile {
[INFO] [stderr]    | ------------------ associated items in this implementation
[INFO] [stderr] 35 |     pub(crate) fn new(base: &Path, suffix: &str) -> std::io::Result<Self> {
[INFO] [stderr]    |                   ^^^
[INFO] [stderr] ...
[INFO] [stderr] 60 |     pub(crate) fn path(&self) -> &PathBuf {
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 64 |     pub(crate) fn take_file(&mut self) -> Option<File> {
[INFO] [stderr]    |                   ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CmdAddOutputFileArgs` is never constructed
[INFO] [stderr]   --> src/utils.rs:76:19
[INFO] [stderr]    |
[INFO] [stderr] 76 | pub(crate) struct CmdAddOutputFileArgs {
[INFO] [stderr]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `command_add_output_file` is never used
[INFO] [stderr]   --> src/utils.rs:85:15
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub(crate) fn command_add_output_file(cmd: &mut Command, dst: &PathBuf, args: CmdAddOutputFileArgs) {
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_arm` is never used
[INFO] [stderr]   --> src/utils.rs:97:15
[INFO] [stderr]    |
[INFO] [stderr] 97 | pub(crate) fn is_arm(target: &TargetInfo<'_>) -> bool {
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `AsmFileExt` is never used
[INFO] [stderr]    --> src/utils.rs:102:17
[INFO] [stderr]     |
[INFO] [stderr] 102 | pub(crate) enum AsmFileExt {
[INFO] [stderr]     |                 ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `from_path` is never used
[INFO] [stderr]    --> src/utils.rs:108:19
[INFO] [stderr]     |
[INFO] [stderr] 107 | impl AsmFileExt {
[INFO] [stderr]     | --------------- associated function in this implementation
[INFO] [stderr] 108 |     pub(crate) fn from_path(file: &Path) -> Option<Self> {
[INFO] [stderr]     |                   ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `tart` (lib) generated 53 warnings (run `cargo fix --lib -p tart` to apply 17 suggestions)
[INFO] [stderr] warning: method `cc_flags` is never used
[INFO] [stderr]    --> src/flags.rs:156:19
[INFO] [stderr]     |
[INFO] [stderr]  25 | impl<'this> RustcCodegenFlags<'this> {
[INFO] [stderr]     | ------------------------------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 156 |     pub(crate) fn cc_flags(&self, build: &Build, tool: &mut dyn ToolTrait, target: &TargetInfo<'_>) {
[INFO] [stderr]     |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `tart` (lib test) generated 39 warnings (38 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tart-af224c7a0d1e2ce4)
[INFO] [stdout] 
[INFO] [stdout] running 31 tests
[INFO] [stdout] test error::tests::can_go_from_io_error ... ok
[INFO] [stdout] test flags::tests::codegen_type ... ok
[INFO] [stdout] test flags::tests::all_rustc_flags ... ok
[INFO] [stdout] test flags::tests::two_valid_prefixes ... ok
[INFO] [stdout] test flags::tests::three_valid_prefixes ... ok
[INFO] [stdout] test shlex::tests::test_invalid_utf8 ... ok
[INFO] [stdout] test shlex::tests::test_lineno ... ok
[INFO] [stdout] test shlex::tests::test_split ... ok
[INFO] [stdout] test target::tests::parse_extra ... ok
[INFO] [stdout] test flags::tests::precedence ... ok
[INFO] [stdout] test target::tests::basic_llvm_triple_guessing ... ok
[INFO] [stdout] test target::tests::llvm_version ... ok
[INFO] [stdout] test target::tests::parses_apple_envs_correctly ... ok
[INFO] [stdout] test target::tests::test_old_ios_target ... ok
[INFO] [stdout] test target::tests::uefi ... ok
[INFO] [stdout] test utils::tests::asm_file_ext_detects_s ... ok
[INFO] [stdout] test target::tests::unknown_env_determined_as_unknown ... ok
[INFO] [stdout] test utils::tests::command_add_output_file_posix_style ... ok
[INFO] [stdout] test utils::tests::asm_file_ext_detects_asm ... ok
[INFO] [stdout] test utils::tests::asm_file_ext_rejects_other ... ok
[INFO] [stdout] test utils::tests::command_add_output_file_msvc_style ... ok
[INFO] [stdout] test utils::tests::named_tempfile_take_file_still_deletes_on_drop ... ok
[INFO] [stdout] test utils::tests::named_tempfile_deletes_on_drop ... ok
[INFO] [stdout] test utils::tests::create_named_fails_if_exists ... ok
[INFO] [stdout] test utils::tests::tmpname_is_not_constant ... ok
[INFO] [stdout] test utils::tests::named_tempfile_creates_file ... ok
[INFO] [stdout] test utils::tests::tmpname_appends_suffix ... ok
[INFO] [stdout] test target::tests::tier1 ... ok
[INFO] [stdout] test utils::tests::create_named_creates_file ... ok
[INFO] [stdout] test flags::tests::stack_protector ... ok
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout] test target::tests::parse_rustc_targets ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- target::tests::parse_rustc_targets stdout ----
[INFO] [stdout] failed comparing x86_64-unknown-linux-gnuasan:
[INFO] [stdout]   expected: Ok(TargetInfo { full_arch: "x86_64", arch: "x86_64", vendor: "unknown", os: "linux", env: "gnu", abi: "" })
[INFO] [stdout]     actual: Ok(TargetInfo { full_arch: "x86_64", arch: "x86_64", vendor: "unknown", os: "linux", env: "gnu", abi: "asan" })
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] thread 'target::tests::parse_rustc_targets' (38) panicked at src/target.rs:1169:13:
[INFO] [stdout] failed comparing targets
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56320e153b9a - std[b80a194dd3c418bb]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x56320e153b9a - std[b80a194dd3c418bb]::backtrace_rs::backtrace::trace_unsynchronized::<std[b80a194dd3c418bb]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x56320e153b9a - std[b80a194dd3c418bb]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x56320e153b9a - <<std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[10b6fa85044e1869]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x56320e1688ca - <core[10b6fa85044e1869]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x56320e1688ca - core[10b6fa85044e1869]::fmt::write
[INFO] [stdout]    6:     0x56320e1584f2 - std[b80a194dd3c418bb]::io::default_write_fmt::<alloc[dd269455e567d8e9]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x56320e1584f2 - <alloc[dd269455e567d8e9]::vec::Vec<u8> as std[b80a194dd3c418bb]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x56320e13203f - <std[b80a194dd3c418bb]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x56320e13203f - std[b80a194dd3c418bb]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x56320e14b7f9 - std[b80a194dd3c418bb]::panicking::default_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x56320e0e7f0c - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x56320e0e7f0c - test[826cbc6ef54ab466]::test_main_with_exit_callback::<test[826cbc6ef54ab466]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x56320e14b9b2 - <alloc[dd269455e567d8e9]::boxed::Box<dyn for<'a, 'b> core[10b6fa85044e1869]::ops::function::Fn<(&'a std[b80a194dd3c418bb]::panic::PanicHookInfo<'b>,), Output = ()> + core[10b6fa85044e1869]::marker::Sync + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::Fn<(&std[b80a194dd3c418bb]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x56320e14b9b2 - std[b80a194dd3c418bb]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x56320e13212a - std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x56320e129899 - std[b80a194dd3c418bb]::sys::backtrace::__rust_end_short_backtrace::<std[b80a194dd3c418bb]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x56320e132e0d - __rustc[9698a3e60dd14283]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x56320e16917c - core[10b6fa85044e1869]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x56320e0d74c0 - tart::target::tests::parse_rustc_targets::h15017d42c5eb094b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/target.rs:1169:13
[INFO] [stdout]   20:     0x56320e0d7bd7 - tart::target::tests::parse_rustc_targets::{{closure}}::h73c490f9199f87b5
[INFO] [stdout]                                at /opt/rustwide/workdir/src/target.rs:1135:29
[INFO] [stdout]   21:     0x56320e0d4516 - core::ops::function::FnOnce::call_once::haf416f25ae66a877
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x56320e0dbfeb - <fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x56320e0dbfeb - test[826cbc6ef54ab466]::__rust_begin_short_backtrace::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, fn() -> core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:663:18
[INFO] [stdout]   24:     0x56320e0e89db - test[826cbc6ef54ab466]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:74
[INFO] [stdout]   25:     0x56320e0e89db - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   26:     0x56320e0e89db - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   27:     0x56320e0e89db - std[b80a194dd3c418bb]::panicking::catch_unwind::<core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>, core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   28:     0x56320e0e89db - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<test[826cbc6ef54ab466]::run_test_in_process::{closure#0}>, core[10b6fa85044e1869]::result::Result<(), alloc[dd269455e567d8e9]::string::String>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   29:     0x56320e0e89db - test[826cbc6ef54ab466]::run_test_in_process
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:686:27
[INFO] [stdout]   30:     0x56320e0e89db - test[826cbc6ef54ab466]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:607:43
[INFO] [stdout]   31:     0x56320e0e40f4 - test[826cbc6ef54ab466]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/test/src/lib.rs:637:41
[INFO] [stdout]   32:     0x56320e0e40f4 - std[b80a194dd3c418bb]::sys::backtrace::__rust_begin_short_backtrace::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   33:     0x56320e0eb5e2 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   34:     0x56320e0eb5e2 - <core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   35:     0x56320e0eb5e2 - std[b80a194dd3c418bb]::panicking::catch_unwind::do_call::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:581:40
[INFO] [stdout]   36:     0x56320e0eb5e2 - std[b80a194dd3c418bb]::panicking::catch_unwind::<(), core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panicking.rs:544:19
[INFO] [stdout]   37:     0x56320e0eb5e2 - std[b80a194dd3c418bb]::panic::catch_unwind::<core[10b6fa85044e1869]::panic::unwind_safe::AssertUnwindSafe<std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/panic.rs:359:14
[INFO] [stdout]   38:     0x56320e0eb5e2 - std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked::<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   39:     0x56320e0eb5e2 - <std[b80a194dd3c418bb]::thread::lifecycle::spawn_unchecked<test[826cbc6ef54ab466]::run_test::{closure#1}, ()>::{closure#1} as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x56320e1531af - <alloc[dd269455e567d8e9]::boxed::Box<dyn core[10b6fa85044e1869]::ops::function::FnOnce<(), Output = ()> + core[10b6fa85044e1869]::marker::Send> as core[10b6fa85044e1869]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   41:     0x56320e1531af - <std[b80a194dd3c418bb]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/ad726b5063362ec9897ef3d67452fc5606ee70fa/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   42:     0x7396dd721aa4 - <unknown>
[INFO] [stdout]   43:     0x7396dd7aea64 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     target::tests::parse_rustc_targets
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 30 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 44.26s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "fcd504bf0b51dfb3892735e807ef93f351559ff0968dd58c0415ad0a5124c415", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fcd504bf0b51dfb3892735e807ef93f351559ff0968dd58c0415ad0a5124c415", kill_on_drop: false }`
[INFO] [stdout] fcd504bf0b51dfb3892735e807ef93f351559ff0968dd58c0415ad0a5124c415
