[INFO] fetching crate naga-rs 0.0.1...
[INFO] building naga-rs-0.0.1 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate naga-rs 0.0.1 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate naga-rs 0.0.1
[INFO] finished tweaking crates.io crate naga-rs 0.0.1
[INFO] tweaked toml for crates.io crate naga-rs 0.0.1 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate naga-rs 0.0.1 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate naga-rs 0.0.1 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wgsl-builtin v0.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e45d20d91afea23f988ed0205a5611d8db1157aa2941001de6c37fc625082b8f
[INFO] running `Command { std: "docker" "start" "-a" "e45d20d91afea23f988ed0205a5611d8db1157aa2941001de6c37fc625082b8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e45d20d91afea23f988ed0205a5611d8db1157aa2941001de6c37fc625082b8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e45d20d91afea23f988ed0205a5611d8db1157aa2941001de6c37fc625082b8f", kill_on_drop: false }`
[INFO] [stdout] e45d20d91afea23f988ed0205a5611d8db1157aa2941001de6c37fc625082b8f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dd754789d92f8923d6492b7ee4796072a3deea01aa32fa71af63bcb2783d93bb
[INFO] running `Command { std: "docker" "start" "-a" "dd754789d92f8923d6492b7ee4796072a3deea01aa32fa71af63bcb2783d93bb", kill_on_drop: false }`
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling naga v24.0.0
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling indexmap v2.8.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling bitflags v2.9.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling smallvec v1.14.0
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling wgsl-builtin v0.1.0
[INFO] [stderr]    Compiling codespan-reporting v0.11.1
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling naga-rs v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Bytes`
[INFO] [stdout]  --> src/front/known.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use naga::{Bytes, Scalar, ScalarKind, Type, TypeInner, VectorSize};
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cell::Cell`
[INFO] [stdout]  --> src/front/task.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cell::Cell,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FnArg` and `spanned::Spanned`
[INFO] [stdout]   --> src/front/tree.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | use syn::{FnArg, ItemFn, ItemType, ItemUse, Result, VisRestricted, Visibility, spanned::Spanned};
[INFO] [stdout]    |           ^^^^^                                                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proc_macro2::Span`
[INFO] [stdout]  --> src/traits.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use proc_macro2::Span;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TypeId` and `Write`
[INFO] [stdout]  --> src/traits.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 |     any::{Any, TypeId},
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 6 |     fmt::{self, Write},
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error`, `ExprLit`, `Expr`, `ItemType`, `ItemUse`, `Lit`, `TypeArray`, `TypePath`, `TypeSlice`, `Type`, `UseGlob`, `UseName`, `UseRename`, `UseTree`, and `spanned::Spanned`
[INFO] [stdout]   --> src/traits.rs:9:16
[INFO] [stdout]    |
[INFO] [stdout]  9 |     Attribute, Error, Expr, ExprLit, Field, Item, ItemConst, ItemMod, ItemStruct, ItemType,
[INFO] [stdout]    |                ^^^^^  ^^^^  ^^^^^^^                                               ^^^^^^^^
[INFO] [stdout] 10 |     ItemUse, Lit, Meta, Result, Type, TypeArray, TypePath, TypeSlice, UseGlob, UseName, UseRename,
[INFO] [stdout]    |     ^^^^^^^  ^^^                ^^^^  ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 11 |     UseTree, spanned::Spanned,
[INFO] [stdout]    |     ^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PathSegment`, `Token`, and `punctuated::Punctuated`
[INFO] [stdout]   --> src/util.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | use syn::{Error, PathSegment, Result, Token, punctuated::Punctuated, spanned::Spanned};
[INFO] [stdout]    |                  ^^^^^^^^^^^          ^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SmFile`
[INFO] [stdout]  --> src/lib.rs:7:29
[INFO] [stdout]   |
[INFO] [stdout] 7 |     file::{ImportFilePaths, SmFile},
[INFO] [stdout]   |                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Attribute`
[INFO] [stdout]   --> src/lib.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 | use syn::{AttrStyle, Attribute, Error, ItemMod, parse_macro_input, spanned::Spanned};
[INFO] [stdout]    |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:138:25
[INFO] [stdout]     |
[INFO] [stdout] 138 |             Self::Const(v) => { /* TODO */ }
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:139:22
[INFO] [stdout]     |
[INFO] [stdout] 139 |             Self::Fn(v) => { /* TODO */ }
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:140:23
[INFO] [stdout]     |
[INFO] [stdout] 140 |             Self::Mod(v) => { /* TODO */ }
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:141:26
[INFO] [stdout]     |
[INFO] [stdout] 141 |             Self::Struct(v) => { /* TODO */ }
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:142:24
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Self::Type(v) => { /* TODO */ }
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 143 |             Self::Use(v) => { /* TODO */ }
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/sem.rs:217:38
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 syn::FnArg::Receiver(v) => {
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1486:38
[INFO] [stdout]      |
[INFO] [stdout] 1486 |                 syn::FnArg::Receiver(v) => {
[INFO] [stdout]      |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]     --> src/front/sem.rs:1580:46
[INFO] [stdout]      |
[INFO] [stdout] 1580 |     fn join_naga(&self, cx: &mut NagaCx<'_>, input: Self::In) -> Result<Self::Out> {
[INFO] [stdout]      |                                              ^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]      |
[INFO] [stdout] 1580 |     fn join_naga(&self, cx: &mut NagaCx<'_>, _input: Self::In) -> Result<Self::Out> {
[INFO] [stdout]      |                                              +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `_`
[INFO] [stdout]      |
[INFO] [stdout] 1580 -     fn join_naga(&self, cx: &mut NagaCx<'_>, input: Self::In) -> Result<Self::Out> {
[INFO] [stdout] 1580 +     fn join_naga(&self, cx: &mut NagaCx<'_>, _: Self::In) -> Result<Self::Out> {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1646:23
[INFO] [stdout]      |
[INFO] [stdout] 1646 |             Self::Mod(v) => {
[INFO] [stdout]      |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1650:24
[INFO] [stdout]      |
[INFO] [stdout] 1650 |             Self::Type(v) => {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1653:23
[INFO] [stdout]      |
[INFO] [stdout] 1653 |             Self::Use(v) => {
[INFO] [stdout]      |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1656:25
[INFO] [stdout]      |
[INFO] [stdout] 1656 |             Self::Other(v) => {
[INFO] [stdout]      |                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]     --> src/front/sem.rs:1730:47
[INFO] [stdout]      |
[INFO] [stdout] 1730 |         match cx.insert_working_fn(sid, move |cx| {
[INFO] [stdout]      |                                               ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `verbose` is never used
[INFO] [stdout]    --> src/front/sem.rs:655:8
[INFO] [stdout]     |
[INFO] [stdout] 592 | impl ResolvePathData {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 655 |     fn verbose<'a, 'b>(&'a self, ptree: &'b PathTree) -> VerboseResolvePathData<'a, 'b> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VerboseResolvePathData` is never constructed
[INFO] [stdout]    --> src/front/sem.rs:673:8
[INFO] [stdout]     |
[INFO] [stdout] 673 | struct VerboseResolvePathData<'a, 'b> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_naga_handle` is never used
[INFO] [stdout]     --> src/front/sem.rs:1167:8
[INFO] [stdout]      |
[INFO] [stdout] 1148 | impl SynToNaga {
[INFO] [stdout]      | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1167 |     fn to_naga_handle(&self, sid: SynId) -> NagaHandle {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `typifier` is never read
[INFO] [stdout]     --> src/front/sem.rs:1210:5
[INFO] [stdout]      |
[INFO] [stdout] 1204 | pub struct NagaCx<'a> {
[INFO] [stdout]      |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1210 |     typifier: &'a mut Typifier,
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `insert_expr`, `get_mut_expressions`, and `get_function` are never used
[INFO] [stdout]     --> src/front/sem.rs:1250:8
[INFO] [stdout]      |
[INFO] [stdout] 1225 | impl<'a> NagaCx<'a> {
[INFO] [stdout]      | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1250 |     fn insert_expr<F, E>(&mut self, sid: SynId, f: F) -> TriResult<Handle<Expression>, E>
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1412 |     fn get_mut_expressions(&mut self) -> &mut Arena<Expression> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1421 |     fn get_function(&self) -> &Function {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Expr` and `Fn` are never constructed
[INFO] [stdout]     --> src/front/sem.rs:1525:5
[INFO] [stdout]      |
[INFO] [stdout] 1523 | pub enum NagaHandle {
[INFO] [stdout]      |          ---------- variants in this enum
[INFO] [stdout] 1524 |     Const(Handle<Constant>),
[INFO] [stdout] 1525 |     Expr(Handle<Expression>),
[INFO] [stdout]      |     ^^^^
[INFO] [stdout] 1526 |     Fn(Handle<Function>),
[INFO] [stdout]      |     ^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `NagaHandle` 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: method `to_fn_handle` is never used
[INFO] [stdout]     --> src/front/sem.rs:1545:8
[INFO] [stdout]      |
[INFO] [stdout] 1530 | impl NagaHandle {
[INFO] [stdout]      | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1545 |     fn to_fn_handle(self) -> Handle<Function> {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `map_err` and `into_res` are never used
[INFO] [stdout]     --> src/front/sem.rs:2126:8
[INFO] [stdout]      |
[INFO] [stdout] 2114 | impl<T, E> TriResult<T, E> {
[INFO] [stdout]      | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2126 |     fn map_err<F, R>(self, f: F) -> TriResult<T, R>
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2137 |     fn into_res(self) -> StdResult<(), E> {
[INFO] [stdout]      |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push_back_with_dependency` and `add_dependency` are never used
[INFO] [stdout]    --> src/front/task.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl<T> TaskQueue<T> {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn push_back_with_dependency(&mut self, value: T, prior: TaskId) -> TaskId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn add_dependency(&mut self, prior: TaskId, latter: TaskId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `latter` is never read
[INFO] [stdout]    --> src/front/task.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub struct Task<T> {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] 156 |     value: Option<T>,
[INFO] [stdout] 157 |     latter: Rc<()>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Task` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `take` is never used
[INFO] [stdout]    --> src/front/task.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl<T> Task<T> {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 162 |     pub fn take(&mut self) -> T {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `iter`, `values`, `search_nearest_value`, and `is_descendant` are never used
[INFO] [stdout]    --> src/front/tree.rs:41:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl PathTree {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub fn iter(&self) -> PathIter<'_> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn values(&self) -> PathValues<'_> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn search_nearest_value<'a, I, F>(&self, key: I, mut cmp: F) -> Option<&PathValue>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 283 |     pub fn is_descendant(&self, descendant: NodeIndex, ancestor: NodeIndex) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PathIter` is never constructed
[INFO] [stdout]    --> src/front/tree.rs:431:12
[INFO] [stdout]     |
[INFO] [stdout] 431 | pub struct PathIter<'a> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/front/tree.rs:438:8
[INFO] [stdout]     |
[INFO] [stdout] 437 | impl<'a> PathIter<'a> {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 438 |     fn new(tree: &'a PathTree) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PathValues` is never constructed
[INFO] [stdout]    --> src/front/tree.rs:473:12
[INFO] [stdout]     |
[INFO] [stdout] 473 | pub struct PathValues<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/front/tree.rs:480:8
[INFO] [stdout]     |
[INFO] [stdout] 479 | impl<'a> PathValues<'a> {
[INFO] [stdout]     | ----------------------- associated function in this implementation
[INFO] [stdout] 480 |     fn new(tree: &'a PathTree) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_mut_attributes`, `contains_attribute`, `remove_attribute`, and `get_attribute_inner` are never used
[INFO] [stdout]   --> src/traits.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait SmAttributeHelper {
[INFO] [stdout]    |           ----------------- methods in this trait
[INFO] [stdout] 23 |     fn get_attributes(&self) -> Option<&SmAttributes>;
[INFO] [stdout] 24 |     fn get_mut_attributes(&mut self) -> Option<&mut SmAttributes>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     fn contains_attribute(&self, path: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn remove_attribute(&mut self, path: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn get_attribute_inner(&self, path: &str) -> Option<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AttributeHelper` is never used
[INFO] [stdout]   --> src/traits.rs:69:11
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub trait AttributeHelper {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `root_dir` is never used
[INFO] [stdout]   --> src/util.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub(crate) fn root_dir<P>(path: P) -> Result<PathBuf>
[INFO] [stdout]    |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.22s
[INFO] running `Command { std: "docker" "inspect" "dd754789d92f8923d6492b7ee4796072a3deea01aa32fa71af63bcb2783d93bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dd754789d92f8923d6492b7ee4796072a3deea01aa32fa71af63bcb2783d93bb", kill_on_drop: false }`
[INFO] [stdout] dd754789d92f8923d6492b7ee4796072a3deea01aa32fa71af63bcb2783d93bb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2b87661190dab7d948c984c2dd5d3dcf5a9e35f41618da33e9e5caf01c7af14b
[INFO] running `Command { std: "docker" "start" "-a" "2b87661190dab7d948c984c2dd5d3dcf5a9e35f41618da33e9e5caf01c7af14b", kill_on_drop: false }`
[INFO] [stderr]    Compiling naga-rs v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Bytes`
[INFO] [stdout]  --> src/front/known.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | use naga::{Bytes, Scalar, ScalarKind, Type, TypeInner, VectorSize};
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cell::Cell`
[INFO] [stdout]  --> src/front/task.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cell::Cell,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FnArg` and `spanned::Spanned`
[INFO] [stdout]   --> src/front/tree.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | use syn::{FnArg, ItemFn, ItemType, ItemUse, Result, VisRestricted, Visibility, spanned::Spanned};
[INFO] [stdout]    |           ^^^^^                                                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proc_macro2::Span`
[INFO] [stdout]  --> src/traits.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use proc_macro2::Span;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TypeId` and `Write`
[INFO] [stdout]  --> src/traits.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 |     any::{Any, TypeId},
[INFO] [stdout]   |                ^^^^^^
[INFO] [stdout] 6 |     fmt::{self, Write},
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error`, `ExprLit`, `Expr`, `ItemType`, `ItemUse`, `Lit`, `TypeArray`, `TypePath`, `TypeSlice`, `Type`, `UseGlob`, `UseName`, `UseRename`, `UseTree`, and `spanned::Spanned`
[INFO] [stdout]   --> src/traits.rs:9:16
[INFO] [stdout]    |
[INFO] [stdout]  9 |     Attribute, Error, Expr, ExprLit, Field, Item, ItemConst, ItemMod, ItemStruct, ItemType,
[INFO] [stdout]    |                ^^^^^  ^^^^  ^^^^^^^                                               ^^^^^^^^
[INFO] [stdout] 10 |     ItemUse, Lit, Meta, Result, Type, TypeArray, TypePath, TypeSlice, UseGlob, UseName, UseRename,
[INFO] [stdout]    |     ^^^^^^^  ^^^                ^^^^  ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^  ^^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 11 |     UseTree, spanned::Spanned,
[INFO] [stdout]    |     ^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PathSegment`, `Token`, and `punctuated::Punctuated`
[INFO] [stdout]   --> src/util.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 | use syn::{Error, PathSegment, Result, Token, punctuated::Punctuated, spanned::Spanned};
[INFO] [stdout]    |                  ^^^^^^^^^^^          ^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SmFile`
[INFO] [stdout]  --> src/lib.rs:7:29
[INFO] [stdout]   |
[INFO] [stdout] 7 |     file::{ImportFilePaths, SmFile},
[INFO] [stdout]   |                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Attribute`
[INFO] [stdout]   --> src/lib.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 | use syn::{AttrStyle, Attribute, Error, ItemMod, parse_macro_input, spanned::Spanned};
[INFO] [stdout]    |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:138:25
[INFO] [stdout]     |
[INFO] [stdout] 138 |             Self::Const(v) => { /* TODO */ }
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:139:22
[INFO] [stdout]     |
[INFO] [stdout] 139 |             Self::Fn(v) => { /* TODO */ }
[INFO] [stdout]     |                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:140:23
[INFO] [stdout]     |
[INFO] [stdout] 140 |             Self::Mod(v) => { /* TODO */ }
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:141:26
[INFO] [stdout]     |
[INFO] [stdout] 141 |             Self::Struct(v) => { /* TODO */ }
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:142:24
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Self::Type(v) => { /* TODO */ }
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/item.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 143 |             Self::Use(v) => { /* TODO */ }
[INFO] [stdout]     |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/front/sem.rs:217:38
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 syn::FnArg::Receiver(v) => {
[INFO] [stdout]     |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1486:38
[INFO] [stdout]      |
[INFO] [stdout] 1486 |                 syn::FnArg::Receiver(v) => {
[INFO] [stdout]      |                                      ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]     --> src/front/sem.rs:1580:46
[INFO] [stdout]      |
[INFO] [stdout] 1580 |     fn join_naga(&self, cx: &mut NagaCx<'_>, input: Self::In) -> Result<Self::Out> {
[INFO] [stdout]      |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1646:23
[INFO] [stdout]      |
[INFO] [stdout] 1646 |             Self::Mod(v) => {
[INFO] [stdout]      |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1650:24
[INFO] [stdout]      |
[INFO] [stdout] 1650 |             Self::Type(v) => {
[INFO] [stdout]      |                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1653:23
[INFO] [stdout]      |
[INFO] [stdout] 1653 |             Self::Use(v) => {
[INFO] [stdout]      |                       ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]     --> src/front/sem.rs:1656:25
[INFO] [stdout]      |
[INFO] [stdout] 1656 |             Self::Other(v) => {
[INFO] [stdout]      |                         ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]     --> src/front/sem.rs:1730:47
[INFO] [stdout]      |
[INFO] [stdout] 1730 |         match cx.insert_working_fn(sid, move |cx| {
[INFO] [stdout]      |                                               ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `verbose` is never used
[INFO] [stdout]    --> src/front/sem.rs:655:8
[INFO] [stdout]     |
[INFO] [stdout] 592 | impl ResolvePathData {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 655 |     fn verbose<'a, 'b>(&'a self, ptree: &'b PathTree) -> VerboseResolvePathData<'a, 'b> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VerboseResolvePathData` is never constructed
[INFO] [stdout]    --> src/front/sem.rs:673:8
[INFO] [stdout]     |
[INFO] [stdout] 673 | struct VerboseResolvePathData<'a, 'b> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_naga_handle` is never used
[INFO] [stdout]     --> src/front/sem.rs:1167:8
[INFO] [stdout]      |
[INFO] [stdout] 1148 | impl SynToNaga {
[INFO] [stdout]      | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1167 |     fn to_naga_handle(&self, sid: SynId) -> NagaHandle {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `typifier` is never read
[INFO] [stdout]     --> src/front/sem.rs:1210:5
[INFO] [stdout]      |
[INFO] [stdout] 1204 | pub struct NagaCx<'a> {
[INFO] [stdout]      |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1210 |     typifier: &'a mut Typifier,
[INFO] [stdout]      |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `insert_expr`, `get_mut_expressions`, and `get_function` are never used
[INFO] [stdout]     --> src/front/sem.rs:1250:8
[INFO] [stdout]      |
[INFO] [stdout] 1225 | impl<'a> NagaCx<'a> {
[INFO] [stdout]      | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1250 |     fn insert_expr<F, E>(&mut self, sid: SynId, f: F) -> TriResult<Handle<Expression>, E>
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1412 |     fn get_mut_expressions(&mut self) -> &mut Arena<Expression> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1421 |     fn get_function(&self) -> &Function {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Expr` and `Fn` are never constructed
[INFO] [stdout]     --> src/front/sem.rs:1525:5
[INFO] [stdout]      |
[INFO] [stdout] 1523 | pub enum NagaHandle {
[INFO] [stdout]      |          ---------- variants in this enum
[INFO] [stdout] 1524 |     Const(Handle<Constant>),
[INFO] [stdout] 1525 |     Expr(Handle<Expression>),
[INFO] [stdout]      |     ^^^^
[INFO] [stdout] 1526 |     Fn(Handle<Function>),
[INFO] [stdout]      |     ^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `NagaHandle` 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: method `to_fn_handle` is never used
[INFO] [stdout]     --> src/front/sem.rs:1545:8
[INFO] [stdout]      |
[INFO] [stdout] 1530 | impl NagaHandle {
[INFO] [stdout]      | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1545 |     fn to_fn_handle(self) -> Handle<Function> {
[INFO] [stdout]      |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `map_err` and `into_res` are never used
[INFO] [stdout]     --> src/front/sem.rs:2126:8
[INFO] [stdout]      |
[INFO] [stdout] 2114 | impl<T, E> TriResult<T, E> {
[INFO] [stdout]      | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2126 |     fn map_err<F, R>(self, f: F) -> TriResult<T, R>
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 2137 |     fn into_res(self) -> StdResult<(), E> {
[INFO] [stdout]      |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push_back_with_dependency` and `add_dependency` are never used
[INFO] [stdout]    --> src/front/task.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout]  17 | impl<T> TaskQueue<T> {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn push_back_with_dependency(&mut self, value: T, prior: TaskId) -> TaskId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn add_dependency(&mut self, prior: TaskId, latter: TaskId) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `latter` is never read
[INFO] [stdout]    --> src/front/task.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub struct Task<T> {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] 156 |     value: Option<T>,
[INFO] [stdout] 157 |     latter: Rc<()>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Task` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `take` is never used
[INFO] [stdout]    --> src/front/task.rs:162:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl<T> Task<T> {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 162 |     pub fn take(&mut self) -> T {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `iter`, `values`, `search_nearest_value`, and `is_descendant` are never used
[INFO] [stdout]    --> src/front/tree.rs:41:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl PathTree {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub fn iter(&self) -> PathIter<'_> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  45 |     pub fn values(&self) -> PathValues<'_> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn search_nearest_value<'a, I, F>(&self, key: I, mut cmp: F) -> Option<&PathValue>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 283 |     pub fn is_descendant(&self, descendant: NodeIndex, ancestor: NodeIndex) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PathIter` is never constructed
[INFO] [stdout]    --> src/front/tree.rs:431:12
[INFO] [stdout]     |
[INFO] [stdout] 431 | pub struct PathIter<'a> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/front/tree.rs:438:8
[INFO] [stdout]     |
[INFO] [stdout] 437 | impl<'a> PathIter<'a> {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 438 |     fn new(tree: &'a PathTree) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PathValues` is never constructed
[INFO] [stdout]    --> src/front/tree.rs:473:12
[INFO] [stdout]     |
[INFO] [stdout] 473 | pub struct PathValues<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/front/tree.rs:480:8
[INFO] [stdout]     |
[INFO] [stdout] 479 | impl<'a> PathValues<'a> {
[INFO] [stdout]     | ----------------------- associated function in this implementation
[INFO] [stdout] 480 |     fn new(tree: &'a PathTree) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_mut_attributes`, `contains_attribute`, `remove_attribute`, and `get_attribute_inner` are never used
[INFO] [stdout]   --> src/traits.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait SmAttributeHelper {
[INFO] [stdout]    |           ----------------- methods in this trait
[INFO] [stdout] 23 |     fn get_attributes(&self) -> Option<&SmAttributes>;
[INFO] [stdout] 24 |     fn get_mut_attributes(&mut self) -> Option<&mut SmAttributes>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     fn contains_attribute(&self, path: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn remove_attribute(&mut self, path: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn get_attribute_inner(&self, path: &str) -> Option<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AttributeHelper` is never used
[INFO] [stdout]   --> src/traits.rs:69:11
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub trait AttributeHelper {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `root_dir` is never used
[INFO] [stdout]   --> src/util.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub(crate) fn root_dir<P>(path: P) -> Result<PathBuf>
[INFO] [stdout]    |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.04s
[INFO] running `Command { std: "docker" "inspect" "2b87661190dab7d948c984c2dd5d3dcf5a9e35f41618da33e9e5caf01c7af14b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2b87661190dab7d948c984c2dd5d3dcf5a9e35f41618da33e9e5caf01c7af14b", kill_on_drop: false }`
[INFO] [stdout] 2b87661190dab7d948c984c2dd5d3dcf5a9e35f41618da33e9e5caf01c7af14b
