[INFO] cloning repository https://github.com/ublubu/prolog-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ublubu/prolog-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fublubu%2Fprolog-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fublubu%2Fprolog-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d464c1a96749802cb6a770ee45e59069670eaf67 [INFO] checking ublubu/prolog-rust against master#ba412a6e70ac84641be7764d088acabd0eb3fa39 for pr-145457 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fublubu%2Fprolog-rust" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/ublubu/prolog-rust [INFO] finished tweaking git repo https://github.com/ublubu/prolog-rust [INFO] tweaked toml for git repo https://github.com/ublubu/prolog-rust written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ublubu/prolog-rust on toolchain ba412a6e70ac84641be7764d088acabd0eb3fa39 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ba412a6e70ac84641be7764d088acabd0eb3fa39" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ublubu/prolog-rust 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" "+ba412a6e70ac84641be7764d088acabd0eb3fa39" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+ba412a6e70ac84641be7764d088acabd0eb3fa39" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ce62317489f699fa6ad587b62b53f57a6448a26c3da181672502e3fcd4a876c9 [INFO] running `Command { std: "docker" "start" "-a" "ce62317489f699fa6ad587b62b53f57a6448a26c3da181672502e3fcd4a876c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ce62317489f699fa6ad587b62b53f57a6448a26c3da181672502e3fcd4a876c9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ce62317489f699fa6ad587b62b53f57a6448a26c3da181672502e3fcd4a876c9", kill_on_drop: false }` [INFO] [stdout] ce62317489f699fa6ad587b62b53f57a6448a26c3da181672502e3fcd4a876c9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+ba412a6e70ac84641be7764d088acabd0eb3fa39" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bd04d6865c9a53c19513bfef57ffd810d158529387a47d5fff1ddea6d6559335 [INFO] running `Command { std: "docker" "start" "-a" "bd04d6865c9a53c19513bfef57ffd810d158529387a47d5fff1ddea6d6559335", kill_on_drop: false }` [INFO] [stderr] Checking prolog-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: struct `Database` is never constructed [INFO] [stdout] --> src/database.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Database { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `parse_string`, `query`, and `unify_goal` are never used [INFO] [stdout] --> src/database.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Database { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 13 | pub fn parse_string(s: &str) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn query(&self, q: Term) -> Vec> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn unify_goal( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VariableGenerator` is never constructed [INFO] [stdout] --> src/database.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | pub struct VariableGenerator(usize); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_var` is never used [INFO] [stdout] --> src/database.rs:92:4 [INFO] [stdout] | [INFO] [stdout] 92 | fn next_var(generator: &mut VariableGenerator) -> String { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `renamed` is never used [INFO] [stdout] --> src/database.rs:98:4 [INFO] [stdout] | [INFO] [stdout] 98 | fn renamed(vars: &mut VariableGenerator, t: &Term) -> Term { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `renamed_` is never used [INFO] [stdout] --> src/database.rs:105:4 [INFO] [stdout] | [INFO] [stdout] 105 | fn renamed_(vars: &mut VariableGenerator, mapping: &mut HashMap, t: &Term) -> Term { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `render_query_results` is never used [INFO] [stdout] --> src/database.rs:124:8 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn render_query_results(results: &Vec>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_db_query` is never used [INFO] [stdout] --> src/database.rs:144:4 [INFO] [stdout] | [INFO] [stdout] 144 | fn test_db_query(db: &Database, query: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Term` is never used [INFO] [stdout] --> src/parse.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Term { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Predicate` is never constructed [INFO] [stdout] --> src/parse.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Predicate { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_string` is never used [INFO] [stdout] --> src/parse.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn parse_string(input: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_and_render` is never used [INFO] [stdout] --> src/parse.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn parse_and_render(input: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `render_terms` is never used [INFO] [stdout] --> src/parse.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn render_terms(terms: &Vec) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OP_LEFT_ARROW` is never used [INFO] [stdout] --> src/parse.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const OP_LEFT_ARROW: &str = ":-"; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OP_COMMA` is never used [INFO] [stdout] --> src/parse.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const OP_COMMA: &str = ","; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OP_SEMICOLON` is never used [INFO] [stdout] --> src/parse.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const OP_SEMICOLON: &str = ";"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `op_lookup` is never used [INFO] [stdout] --> src/parse.rs:42:4 [INFO] [stdout] | [INFO] [stdout] 42 | fn op_lookup(op: &Token) -> (&str, &[Token]) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL_OPERATORS` is never used [INFO] [stdout] --> src/parse.rs:51:7 [INFO] [stdout] | [INFO] [stdout] 51 | const ALL_OPERATORS: [Token; 3] = [Token::LeftArrow, Token::Comma, Token::Semicolon]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPERATORS_INSIDE_SEMICOLON` is never used [INFO] [stdout] --> src/parse.rs:52:7 [INFO] [stdout] | [INFO] [stdout] 52 | const OPERATORS_INSIDE_SEMICOLON: [Token; 2] = [Token::Comma, Token::Semicolon]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPERATORS_INSIDE_COMMA` is never used [INFO] [stdout] --> src/parse.rs:53:7 [INFO] [stdout] | [INFO] [stdout] 53 | const OPERATORS_INSIDE_COMMA: [Token; 1] = [Token::Comma]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARG_OPERATORS` is never used [INFO] [stdout] --> src/parse.rs:55:7 [INFO] [stdout] | [INFO] [stdout] 55 | const ARG_OPERATORS: [Token; 2] = [Token::LeftArrow, Token::Semicolon]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse` is never used [INFO] [stdout] --> src/parse.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn parse(tokens: &mut Peekable>) -> Vec { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_term` is never used [INFO] [stdout] --> src/parse.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn parse_term(tokens: &mut Peekable>, operators: &[Token]) -> Term { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_named` is never used [INFO] [stdout] --> src/parse.rs:133:4 [INFO] [stdout] | [INFO] [stdout] 133 | fn parse_named(tokens: &mut Peekable>) -> Term { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_args` is never used [INFO] [stdout] --> src/parse.rs:165:4 [INFO] [stdout] | [INFO] [stdout] 165 | fn parse_args(tokens: &mut Peekable>) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_variable`, `render`, `all_variables`, and `contains_var` are never used [INFO] [stdout] --> src/parse.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 181 | impl Term { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 182 | pub fn is_variable(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 189 | pub fn render(&self) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn all_variables(&self) -> HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | pub fn contains_var(&self, var: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Token` is never used [INFO] [stdout] --> src/tokenize.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Token { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tokenize` is never used [INFO] [stdout] --> src/tokenize.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn tokenize(input: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_arrow_tail` is never used [INFO] [stdout] --> src/tokenize.rs:43:4 [INFO] [stdout] | [INFO] [stdout] 43 | fn read_arrow_tail(chars: &mut Peekable) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_name_tail` is never used [INFO] [stdout] --> src/tokenize.rs:54:4 [INFO] [stdout] | [INFO] [stdout] 54 | fn read_name_tail<'a>(input: &'a str, start: usize, chars: &mut Peekable) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Substitutions` is never used [INFO] [stdout] --> src/unify.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Substitutions { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Substitution` is never constructed [INFO] [stdout] --> src/unify.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Substitution { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `substitute` is never used [INFO] [stdout] --> src/unify.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn substitute(sub: &Substitutions, t: Term) -> Term { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `deep_substitute` is never used [INFO] [stdout] --> src/unify.rs:40:8 [INFO] [stdout] | [INFO] [stdout] 40 | pub fn deep_substitute(sub: &Substitutions, t: Term) -> Term { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unify` is never used [INFO] [stdout] --> src/unify.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 57 | pub fn unify(left: Term, right: Term) -> Option> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unify_` is never used [INFO] [stdout] --> src/unify.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn unify_( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `unify_args` is never used [INFO] [stdout] --> src/unify.rs:100:4 [INFO] [stdout] | [INFO] [stdout] 100 | fn unify_args( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `push_substitution` is never used [INFO] [stdout] --> src/unify.rs:118:4 [INFO] [stdout] | [INFO] [stdout] 118 | fn push_substitution(sub: Rc, lhs: &str, rhs: Term) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `extract_bindings` is never used [INFO] [stdout] --> src/unify.rs:133:8 [INFO] [stdout] | [INFO] [stdout] 133 | pub fn extract_bindings(sub: &Substitutions, t: Term) -> Vec<(String, Term)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `render_bindings` is never used [INFO] [stdout] --> src/unify.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn render_bindings(bindings: &Vec<(String, Term)>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_unify_strings` is never used [INFO] [stdout] --> src/unify.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn test_unify_strings(left: &str, right: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.40s [INFO] running `Command { std: "docker" "inspect" "bd04d6865c9a53c19513bfef57ffd810d158529387a47d5fff1ddea6d6559335", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bd04d6865c9a53c19513bfef57ffd810d158529387a47d5fff1ddea6d6559335", kill_on_drop: false }` [INFO] [stdout] bd04d6865c9a53c19513bfef57ffd810d158529387a47d5fff1ddea6d6559335