[INFO] cloning repository https://github.com/tapirbug/proboscis [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tapirbug/proboscis" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftapirbug%2Fproboscis", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftapirbug%2Fproboscis'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a96994fa4647ec2a1103fc128a07d35d1f478b59 [INFO] testing tapirbug/proboscis against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftapirbug%2Fproboscis" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/tapirbug/proboscis [INFO] finished tweaking git repo https://github.com/tapirbug/proboscis [INFO] tweaked toml for git repo https://github.com/tapirbug/proboscis written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tapirbug/proboscis on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/tapirbug/proboscis 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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clap v4.5.37 [INFO] [stderr] Downloaded clap_builder v4.5.37 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 019b20624b4cffae939f9f24e32ee818090c527faea8c4322f84b56935ccd3df [INFO] running `Command { std: "docker" "start" "-a" "019b20624b4cffae939f9f24e32ee818090c527faea8c4322f84b56935ccd3df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "019b20624b4cffae939f9f24e32ee818090c527faea8c4322f84b56935ccd3df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "019b20624b4cffae939f9f24e32ee818090c527faea8c4322f84b56935ccd3df", kill_on_drop: false }` [INFO] [stdout] 019b20624b4cffae939f9f24e32ee818090c527faea8c4322f84b56935ccd3df [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 0ab4a60ec53bf8f0d1a8b5352c5236c268773fc04a3ec14209b1a30f9eeddc0e [INFO] running `Command { std: "docker" "start" "-a" "0ab4a60ec53bf8f0d1a8b5352c5236c268773fc04a3ec14209b1a30f9eeddc0e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling colorchoice v1.0.3 [INFO] [stderr] Compiling anstyle-query v1.1.2 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling anstyle v1.0.10 [INFO] [stderr] Compiling clap_lex v0.7.4 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling anstyle-parse v0.2.6 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling anstream v0.6.18 [INFO] [stderr] Compiling clap_builder v4.5.37 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling clap_derive v4.5.32 [INFO] [stderr] Compiling clap v4.5.37 [INFO] [stderr] Compiling proboscis v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `List` [INFO] [stdout] --> src/analysis/funcdef.rs:4:35 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parse::{AstNode, Atom, List, TokenKind}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IrDataTypeTag` [INFO] [stdout] --> src/ir.rs:15:32 [INFO] [stdout] | [INFO] [stdout] 15 | pub use datatype::{IrDataType, IrDataTypeTag}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InstructionBuilder` [INFO] [stdout] --> src/ir.rs:19:29 [INFO] [stdout] | [INFO] [stdout] 19 | pub use inst::{Instruction, InstructionBuilder}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Quoted` [INFO] [stdout] --> src/parse.rs:10:36 [INFO] [stdout] | [INFO] [stdout] 10 | pub use ast::{AstNode, Atom, List, Quoted}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parse.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | pub use token::{Token, TokenKind}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SourceLocation` [INFO] [stdout] --> src/source.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | pub use frag::{Fragment, SourceLocation, SourceRange}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DataTypeSetIter` is more private than the item `DataTypeSet::iter` [INFO] [stdout] --> src/analysis/datatype.rs:144:5 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn iter(self) -> DataTypeSetIter { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `DataTypeSet::iter` is reachable at visibility `pub(in crate::analysis)` [INFO] [stdout] | [INFO] [stdout] note: but type `DataTypeSetIter` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/analysis/datatype.rs:219:1 [INFO] [stdout] | [INFO] [stdout] 219 | struct DataTypeSetIter { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ListNode`, `SInt32`, `CharacterData`, and `Identifier` are never constructed [INFO] [stdout] --> src/analysis/datatype.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum DataType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 10 | ListNode, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 11 | /// Signed 32-bit integer [INFO] [stdout] 12 | SInt32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | CharacterData, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 21 | /// Otherwise same as character data, but for an escaped identifier. [INFO] [stdout] 22 | Identifier, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HIGHEST_T_BIT` is never used [INFO] [stdout] --> src/analysis/datatype.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const HIGHEST_T_BIT: u8 = 0b1000; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOWEST_T_BIT` is never used [INFO] [stdout] --> src/analysis/datatype.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const LOWEST_T_BIT: u8 = 0b1; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL_T_BITS` is never used [INFO] [stdout] --> src/analysis/datatype.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const ALL_T_BITS: u8 = 0b1111; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `i_to_t_unsafe` is never used [INFO] [stdout] --> src/analysis/datatype.rs:43:10 [INFO] [stdout] | [INFO] [stdout] 43 | const fn i_to_t_unsafe(as_i: u8) -> DataType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/analysis/datatype.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 58 | impl DataTypeSet { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 59 | const EMPTY: DataTypeSet = DataTypeSet { types: 0 }; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 60 | const ALL: DataTypeSet = DataTypeSet { types: ALL_T_BITS }; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn all() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn remove(self, data_type: DataType) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn contains(self, data_type: DataType) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn contains_all(self, data_types: DataTypeSet) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn contains_any(self, data_types: DataTypeSet) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn remove_in_place(&mut self, data_type: DataType) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn remove_all(self, types: DataTypeSet) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn remove_all_in_place(&mut self, types: DataTypeSet) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn add_in_place(&mut self, data_type: DataType) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn add_all_in_place(&mut self, types: DataTypeSet) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn union>(iter: T) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn iter(self) -> DataTypeSetIter { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DataTypeSetIter` is never constructed [INFO] [stdout] --> src/analysis/datatype.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 219 | struct DataTypeSetIter { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataTypeSetIter` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `FIRST_NEXT_CHECK`, `END_NEXT_CHECK`, and `new_unsafe` are never used [INFO] [stdout] --> src/analysis/datatype.rs:225:11 [INFO] [stdout] | [INFO] [stdout] 224 | impl DataTypeSetIter { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 225 | const FIRST_NEXT_CHECK: u8 = LOWEST_T_BIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 226 | const END_NEXT_CHECK: u8 = HIGHEST_T_BIT << 1; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 227 | [INFO] [stdout] 228 | pub fn new_unsafe(for_types: u8) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Constant<'s, 't> { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 38 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct IfForm<'s, 't> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 43 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct AndForm<'s, 't> { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 50 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 54 | pub struct OrForm<'s, 't> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 55 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct Call<'s, 't> { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 60 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct LetForm<'s, 't> { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 71 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct Lambda<'s, 't> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 77 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:83:5 [INFO] [stdout] | [INFO] [stdout] 82 | pub struct Apply<'s, 't> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 83 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 90 | pub struct Funcall<'s, 't> { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 91 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:246:12 [INFO] [stdout] | [INFO] [stdout] 245 | impl<'s, 't> Constant<'s, 't> { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] 246 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:311:12 [INFO] [stdout] | [INFO] [stdout] 255 | impl<'s, 't> IfForm<'s, 't> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 311 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:355:12 [INFO] [stdout] | [INFO] [stdout] 328 | impl<'s, 't> AndForm<'s, 't> { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 355 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:391:12 [INFO] [stdout] | [INFO] [stdout] 364 | impl<'s, 't> OrForm<'s, 't> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 391 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:449:12 [INFO] [stdout] | [INFO] [stdout] 400 | impl<'s, 't> Apply<'s, 't> { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 449 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:501:12 [INFO] [stdout] | [INFO] [stdout] 462 | impl<'s, 't> Funcall<'s, 't> { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 501 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:673:12 [INFO] [stdout] | [INFO] [stdout] 616 | impl<'s, 't> Lambda<'s, 't> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 673 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:717:12 [INFO] [stdout] | [INFO] [stdout] 686 | impl<'s, 't> Call<'s, 't> { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 717 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IfMissingThen` is never constructed [INFO] [stdout] --> src/analysis/form.rs:736:5 [INFO] [stdout] | [INFO] [stdout] 731 | pub enum FormError<'s, 't> { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 736 | IfMissingThen { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FormError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `doc_string` is never read [INFO] [stdout] --> src/analysis/funcdef.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct FunctionDefinition<'s, 't> { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 14 | doc_string: Option<&'t Atom<'s>>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `doc_string` is never used [INFO] [stdout] --> src/analysis/funcdef.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl<'s, 't> FunctionDefinition<'s, 't> { [INFO] [stdout] | --------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn doc_string(&self) -> Option<&'t Atom<'s>> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Warning` is never constructed [INFO] [stdout] --> src/diagnostic.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 69 | pub enum DiagnosticKind { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 74 | Warning, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiagnosticKind` 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: constant `HIGHEST_T_BIT` is never used [INFO] [stdout] --> src/ir/datatype.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | const HIGHEST_T_BIT: u32 = 1 << TYPE_COUNT; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOWEST_T_BIT` is never used [INFO] [stdout] --> src/ir/datatype.rs:44:7 [INFO] [stdout] | [INFO] [stdout] 44 | const LOWEST_T_BIT: u32 = 0b1; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL_T_BITS` is never used [INFO] [stdout] --> src/ir/datatype.rs:45:7 [INFO] [stdout] | [INFO] [stdout] 45 | const ALL_T_BITS: u32 = HIGHEST_T_BIT + (HIGHEST_T_BIT - 1); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Continue` and `ContinueIfNotNil` are never constructed [INFO] [stdout] --> src/ir/inst.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Instruction { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 33 | Continue { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | ContinueIfNotNil { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Instruction` 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: methods `add_continue` and `continue_if_not_nil` are never used [INFO] [stdout] --> src/ir/inst.rs:253:12 [INFO] [stdout] | [INFO] [stdout] 192 | impl InstructionBuilder { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn add_continue(&mut self, block_up: u32) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | pub fn continue_if_not_nil( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FunctionName` is never constructed [INFO] [stdout] --> src/parse/ast.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct FunctionName<'s> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionName` 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 `root_nodes` is never used [INFO] [stdout] --> src/parse/ast.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 48 | impl<'s> Ast<'s> { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn root_nodes(&self) -> &[AstNode<'s>] { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `quoted` is never used [INFO] [stdout] --> src/parse/ast.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl<'s> AstNode<'s> { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn quoted<'a>(&'a self) -> Option<&'a Quoted<'s>> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `source_range` and `fragment` are never used [INFO] [stdout] --> src/parse/ast.rs:171:12 [INFO] [stdout] | [INFO] [stdout] 160 | impl<'s> Quoted<'s> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn source_range<'b>(&'b self) -> SourceRange<'s> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn fragment<'a>(&'a self, source: Source<'s>) -> Fragment<'s> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parse/astset.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl<'s> AstSet<'s> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 10 | pub fn new(asts: Vec>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `union`, `char_count`, `source_after`, `all_lines`, and `to_position` are never used [INFO] [stdout] --> src/source/frag.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl<'s> Fragment<'s> { [INFO] [stdout] | --------------------- associated items in this implementation [INFO] [stdout] 42 | pub fn new(source: Source<'s>, from: usize, to: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn union>(fragments: I) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn char_count(self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn source_after(self) -> &'s str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn all_lines(self) -> &'s str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn to_position(self) -> SourceLocation { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_of_char_at_idx` is never used [INFO] [stdout] --> src/source/frag.rs:125:4 [INFO] [stdout] | [INFO] [stdout] 125 | fn line_of_char_at_idx(str: &str, mid: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `union` is never used [INFO] [stdout] --> src/source/frag.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 205 | impl<'s> SourceRange<'s> { [INFO] [stdout] | ------------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 227 | pub fn union>(ranges: I) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_empty`, `source_count`, and `load_without_path` are never used [INFO] [stdout] --> src/source/sourceset.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl SourceSet { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn source_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub fn load_without_path(&mut self, source: &str) -> Source { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/analysis/irgen/scope.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 42 | name: &'s str, [INFO] [stdout] 43 | ) -> Result where T: Clone { [INFO] [stdout] | ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 43 | ) -> Result> where T: Clone { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/analysis/strings.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn decode_string(raw: &str) -> Cow { [INFO] [stdout] | ^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 3 | pub fn decode_string(raw: &str) -> Cow<'_, str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse/ast.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn iter(&self) -> slice::Iter> { [INFO] [stdout] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | pub fn iter(&self) -> slice::Iter<'_, AstNode<'s>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse/astset.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn iter(&self) -> slice::Iter> { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 14 | pub fn iter(&self) -> slice::Iter<'_, Ast<'s>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source/sourceset.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 72 | path: P, [INFO] [stdout] 73 | ) -> Result { [INFO] [stdout] | ------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 73 | ) -> Result, SourceError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source/sourceset.rs:104:30 [INFO] [stdout] | [INFO] [stdout] 104 | pub fn load_without_path(&mut self, source: &str) -> Source { [INFO] [stdout] | ^^^^^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 104 | pub fn load_without_path(&mut self, source: &str) -> Source<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source/sourceset.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | pub fn iter(&self) -> SourceSetIter { [INFO] [stdout] | ^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 128 | pub fn iter(&self) -> SourceSetIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.44s [INFO] running `Command { std: "docker" "inspect" "0ab4a60ec53bf8f0d1a8b5352c5236c268773fc04a3ec14209b1a30f9eeddc0e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0ab4a60ec53bf8f0d1a8b5352c5236c268773fc04a3ec14209b1a30f9eeddc0e", kill_on_drop: false }` [INFO] [stdout] 0ab4a60ec53bf8f0d1a8b5352c5236c268773fc04a3ec14209b1a30f9eeddc0e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 0dd5d86705b8db8ddceb0cb4fc3002f92995d700c44143a6bea00dbe367494ef [INFO] running `Command { std: "docker" "start" "-a" "0dd5d86705b8db8ddceb0cb4fc3002f92995d700c44143a6bea00dbe367494ef", kill_on_drop: false }` [INFO] [stderr] Compiling proboscis v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `List` [INFO] [stdout] --> src/analysis/funcdef.rs:4:35 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parse::{AstNode, Atom, List, TokenKind}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IrDataTypeTag` [INFO] [stdout] --> src/ir.rs:15:32 [INFO] [stdout] | [INFO] [stdout] 15 | pub use datatype::{IrDataType, IrDataTypeTag}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `InstructionBuilder` [INFO] [stdout] --> src/ir.rs:19:29 [INFO] [stdout] | [INFO] [stdout] 19 | pub use inst::{Instruction, InstructionBuilder}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Quoted` [INFO] [stdout] --> src/parse.rs:10:36 [INFO] [stdout] | [INFO] [stdout] 10 | pub use ast::{AstNode, Atom, List, Quoted}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Token` [INFO] [stdout] --> src/parse.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | pub use token::{Token, TokenKind}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/source/frag.rs:324:9 [INFO] [stdout] | [INFO] [stdout] 324 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `SourceLocation` [INFO] [stdout] --> src/source.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | pub use frag::{Fragment, SourceLocation, SourceRange}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `DataTypeSetIter` is more private than the item `analysis::datatype::DataTypeSet::iter` [INFO] [stdout] --> src/analysis/datatype.rs:144:5 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn iter(self) -> DataTypeSetIter { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `analysis::datatype::DataTypeSet::iter` is reachable at visibility `pub(in crate::analysis)` [INFO] [stdout] | [INFO] [stdout] note: but type `DataTypeSetIter` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/analysis/datatype.rs:219:1 [INFO] [stdout] | [INFO] [stdout] 219 | struct DataTypeSetIter { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `SInt32` and `Identifier` are never constructed [INFO] [stdout] --> src/analysis/datatype.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum DataType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 12 | SInt32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | Identifier, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HIGHEST_T_BIT` is never used [INFO] [stdout] --> src/analysis/datatype.rs:25:7 [INFO] [stdout] | [INFO] [stdout] 25 | const HIGHEST_T_BIT: u8 = 0b1000; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOWEST_T_BIT` is never used [INFO] [stdout] --> src/analysis/datatype.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const LOWEST_T_BIT: u8 = 0b1; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL_T_BITS` is never used [INFO] [stdout] --> src/analysis/datatype.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const ALL_T_BITS: u8 = 0b1111; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `i_to_t_unsafe` is never used [INFO] [stdout] --> src/analysis/datatype.rs:43:10 [INFO] [stdout] | [INFO] [stdout] 43 | const fn i_to_t_unsafe(as_i: u8) -> DataType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/analysis/datatype.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 58 | impl DataTypeSet { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 59 | const EMPTY: DataTypeSet = DataTypeSet { types: 0 }; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 60 | const ALL: DataTypeSet = DataTypeSet { types: ALL_T_BITS }; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn empty() -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | pub fn all() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn remove(self, data_type: DataType) -> Self { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn remove_in_place(&mut self, data_type: DataType) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn remove_all(self, types: DataTypeSet) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn remove_all_in_place(&mut self, types: DataTypeSet) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn add_in_place(&mut self, data_type: DataType) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn add_all_in_place(&mut self, types: DataTypeSet) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn union>(iter: T) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | pub fn iter(self) -> DataTypeSetIter { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DataTypeSetIter` is never constructed [INFO] [stdout] --> src/analysis/datatype.rs:219:8 [INFO] [stdout] | [INFO] [stdout] 219 | struct DataTypeSetIter { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataTypeSetIter` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `FIRST_NEXT_CHECK`, `END_NEXT_CHECK`, and `new_unsafe` are never used [INFO] [stdout] --> src/analysis/datatype.rs:225:11 [INFO] [stdout] | [INFO] [stdout] 224 | impl DataTypeSetIter { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] 225 | const FIRST_NEXT_CHECK: u8 = LOWEST_T_BIT; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 226 | const END_NEXT_CHECK: u8 = HIGHEST_T_BIT << 1; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 227 | [INFO] [stdout] 228 | pub fn new_unsafe(for_types: u8) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub struct Constant<'s, 't> { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 38 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub struct IfForm<'s, 't> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 43 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct AndForm<'s, 't> { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 50 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 54 | pub struct OrForm<'s, 't> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 55 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 59 | pub struct Call<'s, 't> { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 60 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct LetForm<'s, 't> { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 71 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct Lambda<'s, 't> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 77 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:83:5 [INFO] [stdout] | [INFO] [stdout] 82 | pub struct Apply<'s, 't> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 83 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `source` is never read [INFO] [stdout] --> src/analysis/form.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 90 | pub struct Funcall<'s, 't> { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 91 | source: Source<'s>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `name` and `if_form` are never used [INFO] [stdout] --> src/analysis/form.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 98 | impl<'s, 't> Form<'s, 't> { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 169 | pub fn name(&self) -> Option<&Name<'s, 't>> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn if_form(&self) -> Option<&IfForm<'s, 't>> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:246:12 [INFO] [stdout] | [INFO] [stdout] 245 | impl<'s, 't> Constant<'s, 't> { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] 246 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:311:12 [INFO] [stdout] | [INFO] [stdout] 255 | impl<'s, 't> IfForm<'s, 't> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 311 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:355:12 [INFO] [stdout] | [INFO] [stdout] 328 | impl<'s, 't> AndForm<'s, 't> { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 355 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:391:12 [INFO] [stdout] | [INFO] [stdout] 364 | impl<'s, 't> OrForm<'s, 't> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 391 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:449:12 [INFO] [stdout] | [INFO] [stdout] 400 | impl<'s, 't> Apply<'s, 't> { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 449 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:501:12 [INFO] [stdout] | [INFO] [stdout] 462 | impl<'s, 't> Funcall<'s, 't> { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 501 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:673:12 [INFO] [stdout] | [INFO] [stdout] 616 | impl<'s, 't> Lambda<'s, 't> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 673 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/analysis/form.rs:717:12 [INFO] [stdout] | [INFO] [stdout] 686 | impl<'s, 't> Call<'s, 't> { [INFO] [stdout] | ------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 717 | pub fn source(&self) -> Source<'s> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `IfMissingThen` is never constructed [INFO] [stdout] --> src/analysis/form.rs:736:5 [INFO] [stdout] | [INFO] [stdout] 731 | pub enum FormError<'s, 't> { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 736 | IfMissingThen { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FormError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `doc_string` is never read [INFO] [stdout] --> src/analysis/funcdef.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct FunctionDefinition<'s, 't> { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 14 | doc_string: Option<&'t Atom<'s>>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `doc_string` is never used [INFO] [stdout] --> src/analysis/funcdef.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl<'s, 't> FunctionDefinition<'s, 't> { [INFO] [stdout] | --------------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn doc_string(&self) -> Option<&'t Atom<'s>> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Warning` is never constructed [INFO] [stdout] --> src/diagnostic.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 69 | pub enum DiagnosticKind { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 74 | Warning, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DiagnosticKind` 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: constant `HIGHEST_T_BIT` is never used [INFO] [stdout] --> src/ir/datatype.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | const HIGHEST_T_BIT: u32 = 1 << TYPE_COUNT; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LOWEST_T_BIT` is never used [INFO] [stdout] --> src/ir/datatype.rs:44:7 [INFO] [stdout] | [INFO] [stdout] 44 | const LOWEST_T_BIT: u32 = 0b1; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL_T_BITS` is never used [INFO] [stdout] --> src/ir/datatype.rs:45:7 [INFO] [stdout] | [INFO] [stdout] 45 | const ALL_T_BITS: u32 = HIGHEST_T_BIT + (HIGHEST_T_BIT - 1); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Continue` and `ContinueIfNotNil` are never constructed [INFO] [stdout] --> src/ir/inst.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Instruction { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 33 | Continue { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | ContinueIfNotNil { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Instruction` 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: methods `add_continue` and `continue_if_not_nil` are never used [INFO] [stdout] --> src/ir/inst.rs:253:12 [INFO] [stdout] | [INFO] [stdout] 192 | impl InstructionBuilder { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn add_continue(&mut self, block_up: u32) -> &mut Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | pub fn continue_if_not_nil( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FunctionName` is never constructed [INFO] [stdout] --> src/parse/ast.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct FunctionName<'s> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionName` 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 `fragment` is never used [INFO] [stdout] --> src/parse/ast.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 160 | impl<'s> Quoted<'s> { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn fragment<'a>(&'a self, source: Source<'s>) -> Fragment<'s> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/parse/astset.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl<'s> AstSet<'s> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 10 | pub fn new(asts: Vec>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `all_lines` is never used [INFO] [stdout] --> src/source/frag.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 41 | impl<'s> Fragment<'s> { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn all_lines(self) -> &'s str { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `line_of_char_at_idx` is never used [INFO] [stdout] --> src/source/frag.rs:125:4 [INFO] [stdout] | [INFO] [stdout] 125 | fn line_of_char_at_idx(str: &str, mid: usize) -> (usize, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `union` is never used [INFO] [stdout] --> src/source/frag.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 205 | impl<'s> SourceRange<'s> { [INFO] [stdout] | ------------------------ associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 227 | pub fn union>(ranges: I) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_empty` and `source_count` are never used [INFO] [stdout] --> src/source/sourceset.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl SourceSet { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn source_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/analysis/irgen/scope.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 42 | name: &'s str, [INFO] [stdout] 43 | ) -> Result where T: Clone { [INFO] [stdout] | ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 43 | ) -> Result> where T: Clone { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/analysis/strings.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn decode_string(raw: &str) -> Cow { [INFO] [stdout] | ^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 3 | pub fn decode_string(raw: &str) -> Cow<'_, str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse/ast.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn iter(&self) -> slice::Iter> { [INFO] [stdout] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 66 | pub fn iter(&self) -> slice::Iter<'_, AstNode<'s>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/parse/astset.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn iter(&self) -> slice::Iter> { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 14 | pub fn iter(&self) -> slice::Iter<'_, Ast<'s>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source/sourceset.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 71 | &mut self, [INFO] [stdout] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stdout] 72 | path: P, [INFO] [stdout] 73 | ) -> Result { [INFO] [stdout] | ------ the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 73 | ) -> Result, SourceError> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source/sourceset.rs:104:30 [INFO] [stdout] | [INFO] [stdout] 104 | pub fn load_without_path(&mut self, source: &str) -> Source { [INFO] [stdout] | ^^^^^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 104 | pub fn load_without_path(&mut self, source: &str) -> Source<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source/sourceset.rs:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | pub fn iter(&self) -> SourceSetIter { [INFO] [stdout] | ^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 128 | pub fn iter(&self) -> SourceSetIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/source/sourceset.rs:136:16 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn one(&self) -> Source { [INFO] [stdout] | ^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 136 | pub fn one(&self) -> Source<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.45s [INFO] running `Command { std: "docker" "inspect" "0dd5d86705b8db8ddceb0cb4fc3002f92995d700c44143a6bea00dbe367494ef", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0dd5d86705b8db8ddceb0cb4fc3002f92995d700c44143a6bea00dbe367494ef", kill_on_drop: false }` [INFO] [stdout] 0dd5d86705b8db8ddceb0cb4fc3002f92995d700c44143a6bea00dbe367494ef [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] ed0d05868cebf06f640a9b8835f85b2ace1c33470e5c2db9e130a4ffb86cacf2 [INFO] running `Command { std: "docker" "start" "-a" "ed0d05868cebf06f640a9b8835f85b2ace1c33470e5c2db9e130a4ffb86cacf2", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `List` [INFO] [stderr] --> src/analysis/funcdef.rs:4:35 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::parse::{AstNode, Atom, List, TokenKind}; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `IrDataTypeTag` [INFO] [stderr] --> src/ir.rs:15:32 [INFO] [stderr] | [INFO] [stderr] 15 | pub use datatype::{IrDataType, IrDataTypeTag}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `InstructionBuilder` [INFO] [stderr] --> src/ir.rs:19:29 [INFO] [stderr] | [INFO] [stderr] 19 | pub use inst::{Instruction, InstructionBuilder}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Quoted` [INFO] [stderr] --> src/parse.rs:10:36 [INFO] [stderr] | [INFO] [stderr] 10 | pub use ast::{AstNode, Atom, List, Quoted}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Token` [INFO] [stderr] --> src/parse.rs:13:17 [INFO] [stderr] | [INFO] [stderr] 13 | pub use token::{Token, TokenKind}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ptr` [INFO] [stderr] --> src/source/frag.rs:324:9 [INFO] [stderr] | [INFO] [stderr] 324 | use std::ptr; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `SourceLocation` [INFO] [stderr] --> src/source.rs:4:26 [INFO] [stderr] | [INFO] [stderr] 4 | pub use frag::{Fragment, SourceLocation, SourceRange}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type `DataTypeSetIter` is more private than the item `analysis::datatype::DataTypeSet::iter` [INFO] [stderr] --> src/analysis/datatype.rs:144:5 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn iter(self) -> DataTypeSetIter { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `analysis::datatype::DataTypeSet::iter` is reachable at visibility `pub(in crate::analysis)` [INFO] [stderr] | [INFO] [stderr] note: but type `DataTypeSetIter` is only usable at visibility `pub(self)` [INFO] [stderr] --> src/analysis/datatype.rs:219:1 [INFO] [stderr] | [INFO] [stderr] 219 | struct DataTypeSetIter { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(private_interfaces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variants `SInt32` and `Identifier` are never constructed [INFO] [stderr] --> src/analysis/datatype.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 5 | pub enum DataType { [INFO] [stderr] | -------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 12 | SInt32, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 22 | Identifier, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DataType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `HIGHEST_T_BIT` is never used [INFO] [stderr] --> src/analysis/datatype.rs:25:7 [INFO] [stderr] | [INFO] [stderr] 25 | const HIGHEST_T_BIT: u8 = 0b1000; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `LOWEST_T_BIT` is never used [INFO] [stderr] --> src/analysis/datatype.rs:26:7 [INFO] [stderr] | [INFO] [stderr] 26 | const LOWEST_T_BIT: u8 = 0b1; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ALL_T_BITS` is never used [INFO] [stderr] --> src/analysis/datatype.rs:27:7 [INFO] [stderr] | [INFO] [stderr] 27 | const ALL_T_BITS: u8 = 0b1111; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `i_to_t_unsafe` is never used [INFO] [stderr] --> src/analysis/datatype.rs:43:10 [INFO] [stderr] | [INFO] [stderr] 43 | const fn i_to_t_unsafe(as_i: u8) -> DataType { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/analysis/datatype.rs:59:11 [INFO] [stderr] | [INFO] [stderr] 58 | impl DataTypeSet { [INFO] [stderr] | ---------------- associated items in this implementation [INFO] [stderr] 59 | const EMPTY: DataTypeSet = DataTypeSet { types: 0 }; [INFO] [stderr] | ^^^^^ [INFO] [stderr] 60 | const ALL: DataTypeSet = DataTypeSet { types: ALL_T_BITS }; [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 63 | pub fn empty() -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 68 | pub fn all() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 73 | pub fn remove(self, data_type: DataType) -> Self { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 94 | pub fn remove_in_place(&mut self, data_type: DataType) -> &mut Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 99 | pub fn remove_all(self, types: DataTypeSet) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 105 | pub fn remove_all_in_place(&mut self, types: DataTypeSet) -> &mut Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 120 | pub fn add_in_place(&mut self, data_type: DataType) -> &mut Self { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 131 | pub fn add_all_in_place(&mut self, types: DataTypeSet) -> &mut Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 136 | pub fn union>(iter: T) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 144 | pub fn iter(self) -> DataTypeSetIter { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `DataTypeSetIter` is never constructed [INFO] [stderr] --> src/analysis/datatype.rs:219:8 [INFO] [stderr] | [INFO] [stderr] 219 | struct DataTypeSetIter { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DataTypeSetIter` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated items `FIRST_NEXT_CHECK`, `END_NEXT_CHECK`, and `new_unsafe` are never used [INFO] [stderr] --> src/analysis/datatype.rs:225:11 [INFO] [stderr] | [INFO] [stderr] 224 | impl DataTypeSetIter { [INFO] [stderr] | -------------------- associated items in this implementation [INFO] [stderr] 225 | const FIRST_NEXT_CHECK: u8 = LOWEST_T_BIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 226 | const END_NEXT_CHECK: u8 = HIGHEST_T_BIT << 1; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 227 | [INFO] [stderr] 228 | pub fn new_unsafe(for_types: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 37 | pub struct Constant<'s, 't> { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 38 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub struct IfForm<'s, 't> { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 43 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 49 | pub struct AndForm<'s, 't> { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] 50 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 54 | pub struct OrForm<'s, 't> { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 55 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 59 | pub struct Call<'s, 't> { [INFO] [stderr] | ---- field in this struct [INFO] [stderr] 60 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:71:5 [INFO] [stderr] | [INFO] [stderr] 70 | pub struct LetForm<'s, 't> { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] 71 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 76 | pub struct Lambda<'s, 't> { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] 77 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:83:5 [INFO] [stderr] | [INFO] [stderr] 82 | pub struct Apply<'s, 't> { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] 83 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `source` is never read [INFO] [stderr] --> src/analysis/form.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 90 | pub struct Funcall<'s, 't> { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] 91 | source: Source<'s>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `name` and `if_form` are never used [INFO] [stderr] --> src/analysis/form.rs:169:12 [INFO] [stderr] | [INFO] [stderr] 98 | impl<'s, 't> Form<'s, 't> { [INFO] [stderr] | ------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 169 | pub fn name(&self) -> Option<&Name<'s, 't>> { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 191 | pub fn if_form(&self) -> Option<&IfForm<'s, 't>> { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:246:12 [INFO] [stderr] | [INFO] [stderr] 245 | impl<'s, 't> Constant<'s, 't> { [INFO] [stderr] | ----------------------------- method in this implementation [INFO] [stderr] 246 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:311:12 [INFO] [stderr] | [INFO] [stderr] 255 | impl<'s, 't> IfForm<'s, 't> { [INFO] [stderr] | --------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 311 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:355:12 [INFO] [stderr] | [INFO] [stderr] 328 | impl<'s, 't> AndForm<'s, 't> { [INFO] [stderr] | ---------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 355 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:391:12 [INFO] [stderr] | [INFO] [stderr] 364 | impl<'s, 't> OrForm<'s, 't> { [INFO] [stderr] | --------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 391 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:449:12 [INFO] [stderr] | [INFO] [stderr] 400 | impl<'s, 't> Apply<'s, 't> { [INFO] [stderr] | -------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 449 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:501:12 [INFO] [stderr] | [INFO] [stderr] 462 | impl<'s, 't> Funcall<'s, 't> { [INFO] [stderr] | ---------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 501 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:673:12 [INFO] [stderr] | [INFO] [stderr] 616 | impl<'s, 't> Lambda<'s, 't> { [INFO] [stderr] | --------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 673 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/analysis/form.rs:717:12 [INFO] [stderr] | [INFO] [stderr] 686 | impl<'s, 't> Call<'s, 't> { [INFO] [stderr] | ------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 717 | pub fn source(&self) -> Source<'s> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `IfMissingThen` is never constructed [INFO] [stderr] --> src/analysis/form.rs:736:5 [INFO] [stderr] | [INFO] [stderr] 731 | pub enum FormError<'s, 't> { [INFO] [stderr] | --------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 736 | IfMissingThen { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FormError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `doc_string` is never read [INFO] [stderr] --> src/analysis/funcdef.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct FunctionDefinition<'s, 't> { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 14 | doc_string: Option<&'t Atom<'s>>, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `doc_string` is never used [INFO] [stderr] --> src/analysis/funcdef.rs:182:12 [INFO] [stderr] | [INFO] [stderr] 18 | impl<'s, 't> FunctionDefinition<'s, 't> { [INFO] [stderr] | --------------------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 182 | pub fn doc_string(&self) -> Option<&'t Atom<'s>> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `Warning` is never constructed [INFO] [stderr] --> src/diagnostic.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 69 | pub enum DiagnosticKind { [INFO] [stderr] | -------------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 74 | Warning, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DiagnosticKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: constant `HIGHEST_T_BIT` is never used [INFO] [stderr] --> src/ir/datatype.rs:43:7 [INFO] [stderr] | [INFO] [stderr] 43 | const HIGHEST_T_BIT: u32 = 1 << TYPE_COUNT; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `LOWEST_T_BIT` is never used [INFO] [stderr] --> src/ir/datatype.rs:44:7 [INFO] [stderr] | [INFO] [stderr] 44 | const LOWEST_T_BIT: u32 = 0b1; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ALL_T_BITS` is never used [INFO] [stderr] --> src/ir/datatype.rs:45:7 [INFO] [stderr] | [INFO] [stderr] 45 | const ALL_T_BITS: u32 = HIGHEST_T_BIT + (HIGHEST_T_BIT - 1); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variants `Continue` and `ContinueIfNotNil` are never constructed [INFO] [stderr] --> src/ir/inst.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 8 | pub enum Instruction { [INFO] [stderr] | ----------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 33 | Continue { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 41 | ContinueIfNotNil { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Instruction` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `add_continue` and `continue_if_not_nil` are never used [INFO] [stderr] --> src/ir/inst.rs:253:12 [INFO] [stderr] | [INFO] [stderr] 192 | impl InstructionBuilder { [INFO] [stderr] | ----------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 253 | pub fn add_continue(&mut self, block_up: u32) -> &mut Self { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 263 | pub fn continue_if_not_nil( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `FunctionName` is never constructed [INFO] [stderr] --> src/parse/ast.rs:43:12 [INFO] [stderr] | [INFO] [stderr] 43 | pub struct FunctionName<'s> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FunctionName` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `fragment` is never used [INFO] [stderr] --> src/parse/ast.rs:179:12 [INFO] [stderr] | [INFO] [stderr] 160 | impl<'s> Quoted<'s> { [INFO] [stderr] | ------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 179 | pub fn fragment<'a>(&'a self, source: Source<'s>) -> Fragment<'s> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/parse/astset.rs:10:12 [INFO] [stderr] | [INFO] [stderr] 9 | impl<'s> AstSet<'s> { [INFO] [stderr] | ------------------- associated function in this implementation [INFO] [stderr] 10 | pub fn new(asts: Vec>) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `all_lines` is never used [INFO] [stderr] --> src/source/frag.rs:98:12 [INFO] [stderr] | [INFO] [stderr] 41 | impl<'s> Fragment<'s> { [INFO] [stderr] | --------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 98 | pub fn all_lines(self) -> &'s str { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `line_of_char_at_idx` is never used [INFO] [stderr] --> src/source/frag.rs:125:4 [INFO] [stderr] | [INFO] [stderr] 125 | fn line_of_char_at_idx(str: &str, mid: usize) -> (usize, usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `union` is never used [INFO] [stderr] --> src/source/frag.rs:227:12 [INFO] [stderr] | [INFO] [stderr] 205 | impl<'s> SourceRange<'s> { [INFO] [stderr] | ------------------------ associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 227 | pub fn union>(ranges: I) -> Option { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `is_empty` and `source_count` are never used [INFO] [stderr] --> src/source/sourceset.rs:57:12 [INFO] [stderr] | [INFO] [stderr] 40 | impl SourceSet { [INFO] [stderr] | -------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 57 | pub fn is_empty(&self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 63 | pub fn source_count(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/analysis/irgen/scope.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | &self, [INFO] [stderr] | ^^^^^ this lifetime flows to the output [INFO] [stderr] 42 | name: &'s str, [INFO] [stderr] 43 | ) -> Result where T: Clone { [INFO] [stderr] | ---------- the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 43 | ) -> Result> where T: Clone { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/analysis/strings.rs:3:27 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn decode_string(raw: &str) -> Cow { [INFO] [stderr] | ^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 3 | pub fn decode_string(raw: &str) -> Cow<'_, str> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parse/ast.rs:66:17 [INFO] [stderr] | [INFO] [stderr] 66 | pub fn iter(&self) -> slice::Iter> { [INFO] [stderr] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 66 | pub fn iter(&self) -> slice::Iter<'_, AstNode<'s>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/parse/astset.rs:14:17 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn iter(&self) -> slice::Iter> { [INFO] [stderr] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 14 | pub fn iter(&self) -> slice::Iter<'_, Ast<'s>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/source/sourceset.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | &mut self, [INFO] [stderr] | ^^^^^^^^^ this lifetime flows to the output [INFO] [stderr] 72 | path: P, [INFO] [stderr] 73 | ) -> Result { [INFO] [stderr] | ------ the lifetime gets resolved as `'_` [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 73 | ) -> Result, SourceError> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/source/sourceset.rs:104:30 [INFO] [stderr] | [INFO] [stderr] 104 | pub fn load_without_path(&mut self, source: &str) -> Source { [INFO] [stderr] | ^^^^^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 104 | pub fn load_without_path(&mut self, source: &str) -> Source<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/source/sourceset.rs:128:17 [INFO] [stderr] | [INFO] [stderr] 128 | pub fn iter(&self) -> SourceSetIter { [INFO] [stderr] | ^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 128 | pub fn iter(&self) -> SourceSetIter<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/source/sourceset.rs:136:16 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn one(&self) -> Source { [INFO] [stderr] | ^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 136 | pub fn one(&self) -> Source<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `proboscis` (bin "proboscis" test) generated 58 warnings (run `cargo fix --bin "proboscis" --tests` to apply 15 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/proboscis-f06c7a4fef8b8ce9) [INFO] [stdout] [INFO] [stdout] running 51 tests [INFO] [stdout] test analysis::form::test::extract_funcall ... ok [INFO] [stdout] test analysis::form::test::extract_lambda ... ok [INFO] [stdout] test analysis::strings::test::plain_string_borrowed ... ok [INFO] [stdout] test analysis::globaldef::test::extract_global ... ok [INFO] [stdout] test analysis::strings::test::escaped_quotes ... ok [INFO] [stdout] test analysis::funcdef::test::two_fn_defs ... ok [INFO] [stdout] test parse::ahead::test::lookahead_1_lookahead_all_at_once ... ok [INFO] [stdout] test analysis::datatype::test::add_list_bit ... ok [INFO] [stdout] test parse::lexer::test::dot_as_ident_then_num ... ok [INFO] [stdout] test parse::lexer::test::escaped_ident ... ok [INFO] [stdout] test parse::lexer::test::comment_after ... ok [INFO] [stdout] test parse::lexer::test::floats ... ok [INFO] [stdout] test parse::lexer::test::ints ... ok [INFO] [stdout] test parse::lexer::test::lex_apply ... ok [INFO] [stdout] test parse::lexer::test::idents ... ok [INFO] [stdout] test parse::lexer::test::lex_remove_if_not ... ok [INFO] [stdout] test parse::ahead::test::lookahead_2_iter ... ok [INFO] [stdout] test parse::ignore::test::ignore_floats_and_whitespace ... ok [INFO] [stdout] test parse::lexer::test::comment_only ... ok [INFO] [stdout] test parse::lexer::test::negative_floats ... ok [INFO] [stdout] test parse::lexer::test::positive_floats ... ok [INFO] [stdout] test parse::lexer::test::positive_ints ... ok [INFO] [stdout] test parse::lexer::test::strings ... ok [INFO] [stdout] test parse::lexer::test::unrecognized ... ok [INFO] [stdout] test parse::lexer::test::negative_ints ... ok [INFO] [stdout] test parse::lexer::test::unterminated_variable ... ok [INFO] [stdout] test parse::lexer::test::unterminated_string ... ok [INFO] [stdout] test parse::lexer::test::sum ... ok [INFO] [stdout] test parse::lexer::test::unterminated_empty_string ... ok [INFO] [stdout] test parse::lexer::test::variables ... ok [INFO] [stdout] test parse::parser::test::number ... ok [INFO] [stdout] test parse::parser::test::one_int_list ... ok [INFO] [stdout] test parse::parser::test::empty_list ... ok [INFO] [stdout] test source::frag::test::format_fragment ... ok [INFO] [stdout] test source::frag::test::char_count ... ok [INFO] [stdout] test source::frag::test::format_position ... ok [INFO] [stdout] test source::frag::test::fragment_positions_line_1 ... ok [INFO] [stdout] test parse::parser::test::two_ints_list_list ... ok [INFO] [stdout] test source::frag::test::fragment_positions_lines_2_3 ... ok [INFO] [stdout] test source::frag::test::source_accessors ... ok [INFO] [stdout] test source::frag::test::union_one ... ok [INFO] [stdout] test parse::parser::test::parse_two_lists ... ok [INFO] [stdout] test source::frag::test::union_three_vec ... ok [INFO] [stdout] test source::frag::test::union_zero ... ok [INFO] [stdout] test source::frag::test::union_two_array ... ok [INFO] [stdout] test source::sourceset::test::load_debug ... ok [INFO] [stdout] test parse::parser::test::parse_remove_if_not ... ok [INFO] [stdout] test parse::ahead::test::cannot_create_lookahead_0 - should panic ... ok [INFO] [stdout] test source::frag::test::empty_new - should panic ... ok [INFO] [stdout] test source::frag::test::out_of_bounds_new - should panic ... ok [INFO] [stdout] test source::frag::test::to_lt_from_new - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 51 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "ed0d05868cebf06f640a9b8835f85b2ace1c33470e5c2db9e130a4ffb86cacf2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ed0d05868cebf06f640a9b8835f85b2ace1c33470e5c2db9e130a4ffb86cacf2", kill_on_drop: false }` [INFO] [stdout] ed0d05868cebf06f640a9b8835f85b2ace1c33470e5c2db9e130a4ffb86cacf2