[INFO] fetching crate modus-lib 0.1.15...
[INFO] checking modus-lib-0.1.15 against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] extracting crate modus-lib 0.1.15 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate modus-lib 0.1.15
[INFO] finished tweaking crates.io crate modus-lib 0.1.15
[INFO] tweaked toml for crates.io crate modus-lib 0.1.15 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate modus-lib 0.1.15 on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 86 packages to highest compatible versions
[INFO] [stderr]       Adding codespan-reporting v0.11.1 (available: v0.13.1)
[INFO] [stderr]       Adding colored v2.2.0 (available: v3.1.1)
[INFO] [stderr]       Adding dot v0.1.4 (available: v0.2.0)
[INFO] [stderr]       Adding nom v7.1.3 (available: v8.0.0)
[INFO] [stderr]       Adding nom-supreme v0.6.0 (available: v0.8.0)
[INFO] [stderr]       Adding nom_locate v4.2.0 (available: v5.0.0)
[INFO] [stderr]       Adding petgraph v0.6.5 (available: v0.8.3)
[INFO] [stderr]       Adding ptree v0.4.0 (available: v0.5.2)
[INFO] [stderr]       Adding rand v0.8.8 (available: v0.10.3)
[INFO] [stderr]       Adding serial_test v0.6.0 (available: v4.0.1)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.21)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f
[INFO] running `Command { std: "docker" "start" "487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.191
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling zerocopy v0.8.63
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking memchr v2.8.3
[INFO] [stderr]     Checking equivalent v1.0.3
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking lazy_static v1.5.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling syn v3.0.9
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking arrayvec v0.7.8
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking indexmap v2.14.2
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking either v1.19.0
[INFO] [stderr]     Checking tint v1.0.1
[INFO] [stderr]     Checking indent_write v2.2.0
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking joinery v2.1.0
[INFO] [stderr]     Checking brownstone v1.1.0
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]     Checking bytecount v0.6.9
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stderr]     Checking colored v2.2.0
[INFO] [stderr]     Checking dot v0.1.4
[INFO] [stderr]     Checking semver v1.0.28
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]     Checking fp-core v0.1.9
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]     Checking nom-supreme v0.6.0
[INFO] [stderr]     Checking nom_locate v4.2.0
[INFO] [stderr]    Compiling serial_test_derive v0.6.0
[INFO] [stderr]     Checking serial_test v0.6.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking ptree v0.4.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.8
[INFO] [stderr]     Checking modus-lib v0.1.15 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Clause`, `IRTerm`, and `Predicate`
[INFO] [stdout]   --> src/builtin.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     logic::{Clause, IRTerm, Literal, Predicate},
[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: `Op`
[INFO] [stdout]    --> src/builtin.rs:288:30
[INFO] [stdout]     |
[INFO] [stdout] 288 |     use semver::{Comparator, Op, Version};
[INFO] [stdout]     |                              ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PathBuf`
[INFO] [stdout]   --> src/imagegen.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::path::{Path, PathBuf};
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ResolutionError`
[INFO] [stdout]   --> src/imagegen.rs:24:41
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::sld::{self, ClauseId, Proof, ResolutionError};
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FormatStringFragment`, `ModusTerm`, and `logic::SpannedPosition`
[INFO] [stdout]     --> src/sld.rs:1224:9
[INFO] [stdout]      |
[INFO] [stdout] 1224 |         logic::SpannedPosition,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1225 |         modusfile::{Expression, FormatStringFragment, ModusTerm},
[INFO] [stdout]      |                                 ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClauseId`, `IRTerm`, `Image`, `Literal`, `NodeId`, `Predicate`, `ResolutionError`, `Run`, `Tree`, `self`, and `self`
[INFO] [stdout]   --> src/transpiler.rs:22:30
[INFO] [stdout]    |
[INFO] [stdout] 22 |     dockerfile::{Dockerfile, Image, Instruction, ResolvedDockerfile, ResolvedParent, Run},
[INFO] [stdout]    |                              ^^^^^                                                   ^^^
[INFO] [stdout] 23 |     imagegen::{self, BuildPlan, MergeNode, NodeId},
[INFO] [stdout]    |                                            ^^^^^^
[INFO] [stdout] 24 |     logic::{self, Clause, IRTerm, Literal, Predicate},
[INFO] [stdout]    |             ^^^^          ^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 25 |     modusfile::{self, Modusfile},
[INFO] [stdout] 26 |     sld::{self, ClauseId, ResolutionError, SLDResult, Tree},
[INFO] [stdout]    |           ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Predicate`
[INFO] [stdout]   --> src/unification.rs:20:46
[INFO] [stdout]    |
[INFO] [stdout] 20 | use logic::{Clause, Ground, IRTerm, Literal, Predicate};
[INFO] [stdout]    |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Clause`, `IRTerm`, and `Predicate`
[INFO] [stdout]   --> src/builtin.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     logic::{Clause, IRTerm, Literal, Predicate},
[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: `Op`
[INFO] [stdout]    --> src/builtin.rs:288:30
[INFO] [stdout]     |
[INFO] [stdout] 288 |     use semver::{Comparator, Op, Version};
[INFO] [stdout]     |                              ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PathBuf`
[INFO] [stdout]   --> src/imagegen.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::path::{Path, PathBuf};
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ResolutionError`
[INFO] [stdout]   --> src/imagegen.rs:24:41
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::sld::{self, ClauseId, Proof, ResolutionError};
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ClauseId`, `IRTerm`, `Image`, `Literal`, `NodeId`, `Predicate`, `ResolutionError`, `Run`, `Tree`, `self`, and `self`
[INFO] [stdout]   --> src/transpiler.rs:22:30
[INFO] [stdout]    |
[INFO] [stdout] 22 |     dockerfile::{Dockerfile, Image, Instruction, ResolvedDockerfile, ResolvedParent, Run},
[INFO] [stdout]    |                              ^^^^^                                                   ^^^
[INFO] [stdout] 23 |     imagegen::{self, BuildPlan, MergeNode, NodeId},
[INFO] [stdout]    |                                            ^^^^^^
[INFO] [stdout] 24 |     logic::{self, Clause, IRTerm, Literal, Predicate},
[INFO] [stdout]    |             ^^^^          ^^^^^^  ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 25 |     modusfile::{self, Modusfile},
[INFO] [stdout] 26 |     sld::{self, ClauseId, ResolutionError, SLDResult, Tree},
[INFO] [stdout]    |           ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Predicate`
[INFO] [stdout]   --> src/unification.rs:20:46
[INFO] [stdout]    |
[INFO] [stdout] 20 | use logic::{Clause, Ground, IRTerm, Literal, Predicate};
[INFO] [stdout]    |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent`
[INFO] [stdout]    --> src/transpiler.rs:203:45
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 BuildNode::AppendEnvValue { parent, key, value } => {
[INFO] [stdout]     |                                             ^^^^^^ help: try ignoring the field: `parent: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/transpiler.rs:203:53
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 BuildNode::AppendEnvValue { parent, key, value } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `key: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/transpiler.rs:203:58
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 BuildNode::AppendEnvValue { parent, key, value } => {
[INFO] [stdout]     |                                                          ^^^^^ help: try ignoring the field: `value: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clauses`
[INFO] [stdout]   --> src/wellformed.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     clauses: &Vec<Clause<IRTerm>>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clauses`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/wellformed.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let mut errors: HashSet<Signature> = HashSet::new();
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `signatures`
[INFO] [stdout]   --> src/wellformed.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let signatures: HashSet<Signature> = clauses.iter().map(|c| c.head.signature()).collect();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_signatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GoalId` is never used
[INFO] [stdout]   --> src/sld.rs:47:6
[INFO] [stdout]    |
[INFO] [stdout] 47 | type GoalId = usize;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/sld.rs:268:42
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn edges(&'a self) -> dot::Edges<'a, Ed> {
[INFO] [stdout]     |               --                     --  ^^ the same lifetime is hidden here
[INFO] [stdout]     |               |                      |
[INFO] [stdout]     |               |                      the same lifetime is named here
[INFO] [stdout]     |               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn edges(&'a self) -> dot::Edges<'a, Ed<'a>> {
[INFO] [stdout]     |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/sld.rs:281:43
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn source(&'a self, edge: &Ed<'a>) -> Nd {
[INFO] [stdout]     |                --                 --      ^^ the same lifetime is hidden here
[INFO] [stdout]     |                |                  |
[INFO] [stdout]     |                |                  the lifetime is named here
[INFO] [stdout]     |                the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn source(&'a self, edge: &Ed<'a>) -> Nd<'a> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/sld.rs:285:43
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn target(&'a self, edge: &Ed<'a>) -> Nd {
[INFO] [stdout]     |                --                 --      ^^ the same lifetime is hidden here
[INFO] [stdout]     |                |                  |
[INFO] [stdout]     |                |                  the lifetime is named here
[INFO] [stdout]     |                the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn target(&'a self, edge: &Ed<'a>) -> Nd<'a> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent`
[INFO] [stdout]    --> src/transpiler.rs:203:45
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 BuildNode::AppendEnvValue { parent, key, value } => {
[INFO] [stdout]     |                                             ^^^^^^ help: try ignoring the field: `parent: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/transpiler.rs:203:53
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 BuildNode::AppendEnvValue { parent, key, value } => {
[INFO] [stdout]     |                                                     ^^^ help: try ignoring the field: `key: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/transpiler.rs:203:58
[INFO] [stdout]     |
[INFO] [stdout] 203 |                 BuildNode::AppendEnvValue { parent, key, value } => {
[INFO] [stdout]     |                                                          ^^^^^ help: try ignoring the field: `value: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clauses`
[INFO] [stdout]   --> src/wellformed.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     clauses: &Vec<Clause<IRTerm>>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clauses`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/wellformed.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let mut errors: HashSet<Signature> = HashSet::new();
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `signatures`
[INFO] [stdout]   --> src/wellformed.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let signatures: HashSet<Signature> = clauses.iter().map(|c| c.head.signature()).collect();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_signatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GoalId` is never used
[INFO] [stdout]   --> src/sld.rs:47:6
[INFO] [stdout]    |
[INFO] [stdout] 47 | type GoalId = usize;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]     --> src/modusfile.rs:1211:53
[INFO] [stdout]      |
[INFO] [stdout] 1211 |         let (_, s1) = parser::modus_const(Span::new(inp1.into())).unwrap();
[INFO] [stdout]      |                                                     ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]      = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]      |
[INFO] [stdout] 1211 -         let (_, s1) = parser::modus_const(Span::new(inp1.into())).unwrap();
[INFO] [stdout] 1211 +         let (_, s1) = parser::modus_const(Span::new(inp1)).unwrap();
[INFO] [stdout]      |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]      |
[INFO] [stdout] 1211 -         let (_, s1) = parser::modus_const(Span::new(inp1.into())).unwrap();
[INFO] [stdout] 1211 +         let (_, s1) = parser::modus_const(Span::new(<&str as Into<_>>::into(inp1))).unwrap();
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]     --> src/modusfile.rs:1212:53
[INFO] [stdout]      |
[INFO] [stdout] 1212 |         let (_, s2) = parser::modus_const(Span::new(inp2.into())).unwrap();
[INFO] [stdout]      |                                                     ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]      |
[INFO] [stdout] 1212 -         let (_, s2) = parser::modus_const(Span::new(inp2.into())).unwrap();
[INFO] [stdout] 1212 +         let (_, s2) = parser::modus_const(Span::new(inp2)).unwrap();
[INFO] [stdout]      |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]      |
[INFO] [stdout] 1212 -         let (_, s2) = parser::modus_const(Span::new(inp2.into())).unwrap();
[INFO] [stdout] 1212 +         let (_, s2) = parser::modus_const(Span::new(<&str as Into<_>>::into(inp2))).unwrap();
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `&str`
[INFO] [stdout]     --> src/modusfile.rs:1213:53
[INFO] [stdout]      |
[INFO] [stdout] 1213 |         let (_, s3) = parser::modus_const(Span::new(inp3.into())).unwrap();
[INFO] [stdout]      |                                                     ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]      |
[INFO] [stdout] 1213 -         let (_, s3) = parser::modus_const(Span::new(inp3.into())).unwrap();
[INFO] [stdout] 1213 +         let (_, s3) = parser::modus_const(Span::new(inp3)).unwrap();
[INFO] [stdout]      |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]      |
[INFO] [stdout] 1213 -         let (_, s3) = parser::modus_const(Span::new(inp3.into())).unwrap();
[INFO] [stdout] 1213 +         let (_, s3) = parser::modus_const(Span::new(<&str as Into<_>>::into(inp3))).unwrap();
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/sld.rs:268:42
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn edges(&'a self) -> dot::Edges<'a, Ed> {
[INFO] [stdout]     |               --                     --  ^^ the same lifetime is hidden here
[INFO] [stdout]     |               |                      |
[INFO] [stdout]     |               |                      the same lifetime is named here
[INFO] [stdout]     |               the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 268 |     fn edges(&'a self) -> dot::Edges<'a, Ed<'a>> {
[INFO] [stdout]     |                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/sld.rs:281:43
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn source(&'a self, edge: &Ed<'a>) -> Nd {
[INFO] [stdout]     |                --                 --      ^^ the same lifetime is hidden here
[INFO] [stdout]     |                |                  |
[INFO] [stdout]     |                |                  the lifetime is named here
[INFO] [stdout]     |                the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 281 |     fn source(&'a self, edge: &Ed<'a>) -> Nd<'a> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/sld.rs:285:43
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn target(&'a self, edge: &Ed<'a>) -> Nd {
[INFO] [stdout]     |                --                 --      ^^ the same lifetime is hidden here
[INFO] [stdout]     |                |                  |
[INFO] [stdout]     |                |                  the lifetime is named here
[INFO] [stdout]     |                the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 285 |     fn target(&'a self, edge: &Ed<'a>) -> Nd<'a> {
[INFO] [stdout]     |                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `modus-lib` (lib test) due to 3 previous errors; 17 warnings emitted
[INFO] [stderr] warning: unused dependency `fp-core`
[INFO] [stderr]   --> Cargo.toml:10:15
[INFO] [stderr]    |
[INFO] [stderr] 10 | [dependencies.fp-core]
[INFO] [stderr]    |               ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `fp-core`
[INFO] [stderr] warning: unused dependency `thiserror`
[INFO] [stderr]   --> Cargo.toml:42:15
[INFO] [stderr]    |
[INFO] [stderr] 42 | [dependencies.thiserror]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] help: consider removing the dependency on `thiserror`
[INFO] [stderr] warning: `modus-lib` (manifest) generated 2 warnings
[INFO] running `Command { std: "docker" "inspect" "487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f", kill_on_drop: false }`
[INFO] [stdout] 487bcf9f8d39c336cdd9ae950076c49635df13a89f87137d34772c352f1b846f
