[INFO] cloning repository https://github.com/jeffomatic/scheme-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jeffomatic/scheme-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeffomatic%2Fscheme-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeffomatic%2Fscheme-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 19a21b3a09104783d92b2b35d5a41c514bd64158 [INFO] building jeffomatic/scheme-rs against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjeffomatic%2Fscheme-rs" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/jeffomatic/scheme-rs on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/jeffomatic/scheme-rs [INFO] finished tweaking git repo https://github.com/jeffomatic/scheme-rs [INFO] tweaked toml for git repo https://github.com/jeffomatic/scheme-rs written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/jeffomatic/scheme-rs already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0f818839f95c79819c0a328392a2c2c1a7fb4a3935f60b8eca25f28c795e764f [INFO] running `Command { std: "docker" "start" "-a" "0f818839f95c79819c0a328392a2c2c1a7fb4a3935f60b8eca25f28c795e764f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0f818839f95c79819c0a328392a2c2c1a7fb4a3935f60b8eca25f28c795e764f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0f818839f95c79819c0a328392a2c2c1a7fb4a3935f60b8eca25f28c795e764f", kill_on_drop: false }` [INFO] [stdout] 0f818839f95c79819c0a328392a2c2c1a7fb4a3935f60b8eca25f28c795e764f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 834e733afa56a2dd095528f8364c4971fdd70c5f7006afe2c69476c13e3c461d [INFO] running `Command { std: "docker" "start" "-a" "834e733afa56a2dd095528f8364c4971fdd70c5f7006afe2c69476c13e3c461d", kill_on_drop: false }` [INFO] [stderr] Compiling scheme-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/eval.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::lex::scan` [INFO] [stdout] --> src/eval.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::lex::scan; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parse` [INFO] [stdout] --> src/eval.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use super::parse::{parse, BinaryOperator, Expr, ExprPtr, ProcDef, UnaryOperator}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `scan` [INFO] [stdout] --> src/parse/sexpr.rs:2:18 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::lex::{scan, SrcPos, SrcSpan, Token, TokenType}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Env` and `Value` [INFO] [stdout] --> src/stdlib.rs:1:34 [INFO] [stdout] | [INFO] [stdout] 1 | use super::eval::{eval_sequence, Env, EnvPtr, Value}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `UndefinedSymbol`, `InvalidApplication`, and `InvalidType` are never constructed [INFO] [stdout] --> src/eval.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub enum Error { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 14 | UndefinedSymbol(String), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | InvalidApplication, // TODO: add src position [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 16 | InvalidType, // TODO: add src position [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/eval.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub enum Value { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 31 | Void, // the value of define expressions [INFO] [stdout] | ^^^^ [INFO] [stdout] 32 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] 33 | Boolean(bool), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 34 | Number(f64), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 35 | String(String), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 36 | Closure { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | Pair(ValuePtr, ValuePtr), [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `into_ptr`, `as_bool`, and `make_list` are never used [INFO] [stdout] --> src/eval.rs:46:12 [INFO] [stdout] | [INFO] [stdout] 45 | impl Value { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 46 | pub fn into_ptr(self) -> ValuePtr { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | fn as_bool(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn make_list(vals: &[ValuePtr]) -> Value { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `symbols` and `parent` are never read [INFO] [stdout] --> src/eval.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub struct Env { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 104 | symbols: HashMap, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 105 | parent: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `into_ptr`, `extend`, `root`, `bind`, and `lookup` are never used [INFO] [stdout] --> src/eval.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 108 | impl Env { [INFO] [stdout] | -------- associated items in this implementation [INFO] [stdout] 109 | pub fn into_ptr(self) -> EnvPtr { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn extend(parent: EnvPtr) -> Env { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn root() -> Env { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn bind(&mut self, symbol: &str, val: ValuePtr) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn lookup(&self, symbol: &str) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval` is never used [INFO] [stdout] --> src/eval.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn eval(expr: ExprPtr, env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_sequence` is never used [INFO] [stdout] --> src/eval.rs:173:8 [INFO] [stdout] | [INFO] [stdout] 173 | pub fn eval_sequence(exprs: &[ExprPtr], env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_reference` is never used [INFO] [stdout] --> src/eval.rs:181:4 [INFO] [stdout] | [INFO] [stdout] 181 | fn eval_reference(symbol: &str, env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_define` is never used [INFO] [stdout] --> src/eval.rs:188:4 [INFO] [stdout] | [INFO] [stdout] 188 | fn eval_define(symbol: &str, expr: ExprPtr, env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_define_proc` is never used [INFO] [stdout] --> src/eval.rs:194:4 [INFO] [stdout] | [INFO] [stdout] 194 | fn eval_define_proc(symbol: &str, procdef: &ProcDef, env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_if` is never used [INFO] [stdout] --> src/eval.rs:206:4 [INFO] [stdout] | [INFO] [stdout] 206 | fn eval_if( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_and` is never used [INFO] [stdout] --> src/eval.rs:224:4 [INFO] [stdout] | [INFO] [stdout] 224 | fn eval_and(seq: &[ExprPtr], env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_or` is never used [INFO] [stdout] --> src/eval.rs:241:4 [INFO] [stdout] | [INFO] [stdout] 241 | fn eval_or(seq: &[ExprPtr], env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_lambda` is never used [INFO] [stdout] --> src/eval.rs:254:4 [INFO] [stdout] | [INFO] [stdout] 254 | fn eval_lambda(procdef: &ProcDef, env: EnvPtr) -> ValuePtr { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_let` is never used [INFO] [stdout] --> src/eval.rs:264:4 [INFO] [stdout] | [INFO] [stdout] 264 | fn eval_let( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_unary_operation` is never used [INFO] [stdout] --> src/eval.rs:277:4 [INFO] [stdout] | [INFO] [stdout] 277 | fn eval_unary_operation( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_binary_operation` is never used [INFO] [stdout] --> src/eval.rs:321:4 [INFO] [stdout] | [INFO] [stdout] 321 | fn eval_binary_operation( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `eval_application` is never used [INFO] [stdout] --> src/eval.rs:363:4 [INFO] [stdout] | [INFO] [stdout] 363 | fn eval_application(func: ExprPtr, args: &[ExprPtr], env: EnvPtr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `UnterminatedString`, `UnexpectedNewline`, and `InvalidCharForNumber` are never constructed [INFO] [stdout] --> src/lex.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum Error { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 8 | UnterminatedString(SrcPos), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 9 | UnexpectedNewline(SrcPos), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | InvalidCharForNumber(SrcPos, char), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_col` is never used [INFO] [stdout] --> src/lex.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn next_col(p: SrcPos) -> SrcPos { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `next_row` is never used [INFO] [stdout] --> src/lex.rs:34:4 [INFO] [stdout] | [INFO] [stdout] 34 | fn next_row(p: SrcPos) -> SrcPos { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Stream` is never constructed [INFO] [stdout] --> src/lex.rs:38:8 [INFO] [stdout] | [INFO] [stdout] 38 | struct Stream<'a> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `peek`, `advance`, `take`, and `is_end` are never used [INFO] [stdout] --> src/lex.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 44 | impl Stream<'_> { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 45 | fn new(s: &str) -> Stream { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | fn peek(&mut self, offset: usize) -> Option<(char, SrcPos)> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | fn advance(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | fn take(&mut self) -> (char, SrcPos) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn is_end(&mut self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `OpenBrace`, `CloseBrace`, `Identifier`, `String`, and `Number` are never constructed [INFO] [stdout] --> src/lex.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 90 | pub enum TokenType { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 91 | OpenBrace, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 92 | CloseBrace, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 93 | Identifier, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 94 | String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 95 | Number, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `comment` is never used [INFO] [stdout] --> src/lex.rs:105:4 [INFO] [stdout] | [INFO] [stdout] 105 | fn comment(stream: &mut Stream) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `open_brace` is never used [INFO] [stdout] --> src/lex.rs:121:4 [INFO] [stdout] | [INFO] [stdout] 121 | fn open_brace(stream: &mut Stream) -> Token { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `close_brace` is never used [INFO] [stdout] --> src/lex.rs:130:4 [INFO] [stdout] | [INFO] [stdout] 130 | fn close_brace(stream: &mut Stream) -> Token { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `identifier` is never used [INFO] [stdout] --> src/lex.rs:139:4 [INFO] [stdout] | [INFO] [stdout] 139 | fn identifier(stream: &mut Stream) -> Token { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string` is never used [INFO] [stdout] --> src/lex.rs:163:4 [INFO] [stdout] | [INFO] [stdout] 163 | fn string(stream: &mut Stream) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `number` is never used [INFO] [stdout] --> src/lex.rs:197:4 [INFO] [stdout] | [INFO] [stdout] 197 | fn number(stream: &mut Stream) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `scan` is never used [INFO] [stdout] --> src/lex.rs:232:8 [INFO] [stdout] | [INFO] [stdout] 232 | pub fn scan(src: &str) -> Result, Error> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_end_of_nonstring_literal` is never used [INFO] [stdout] --> src/lex.rs:262:4 [INFO] [stdout] | [INFO] [stdout] 262 | fn is_end_of_nonstring_literal(stream: &mut Stream) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse` is never used [INFO] [stdout] --> src/parse/mod.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn parse(toks: &[Token]) -> Result, Error> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/parse/error.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Error { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 7 | UnterminatedCompoundSexpr(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | UnmatchedCloseBrace(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 9 | ExpectedIdentifier(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 10 | InvalidAtomToken(Token), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | InvalidFuncAtomToken(Token), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | InvalidUnaryOperation(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | InvalidBinaryOperation(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 14 | InvalidDefine(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 15 | InvalidIf(SrcSpan), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 16 | InvalidLambda(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 17 | InvalidLet(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | MultiplePeriodsInSignature(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | InvalidVarParam(SrcSpan), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/parse/expr.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum UnaryOperator { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 9 | Car, [INFO] [stdout] | ^^^ [INFO] [stdout] 10 | Cdr, [INFO] [stdout] | ^^^ [INFO] [stdout] 11 | IsNull, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 12 | IsBoolean, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 13 | IsString, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | IsNumber, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 15 | IsClosure, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 16 | IsPair, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnaryOperator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/parse/expr.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 19 | impl UnaryOperator { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 20 | fn from(s: &str) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/parse/expr.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub enum BinaryOperator { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 37 | Add, [INFO] [stdout] | ^^^ [INFO] [stdout] 38 | Sub, [INFO] [stdout] | ^^^ [INFO] [stdout] 39 | Mul, [INFO] [stdout] | ^^^ [INFO] [stdout] 40 | Div, [INFO] [stdout] | ^^^ [INFO] [stdout] 41 | Eq, [INFO] [stdout] | ^^ [INFO] [stdout] 42 | Gt, [INFO] [stdout] | ^^ [INFO] [stdout] 43 | Cons, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinaryOperator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/parse/expr.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 46 | impl BinaryOperator { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 47 | fn from(s: &str) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/parse/expr.rs:71:5 [INFO] [stdout] | [INFO] [stdout] 70 | pub enum Expr { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 71 | Null { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | Boolean { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | Number { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | Reference { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | Define { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | DefineProc { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | If { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 105 | And { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | Or { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 113 | Lambda(ProcDef), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 114 | Let { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | UnaryOperation { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | BinaryOperation { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | Application { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expr` 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 `into_ptr` is never used [INFO] [stdout] --> src/parse/expr.rs:138:8 [INFO] [stdout] | [INFO] [stdout] 137 | impl Expr { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] 138 | fn into_ptr(self) -> ExprPtr { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_sexpr` is never used [INFO] [stdout] --> src/parse/expr.rs:145:4 [INFO] [stdout] | [INFO] [stdout] 145 | fn parse_sexpr(sexpr: &Sexpr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_sexpr_seq` is never used [INFO] [stdout] --> src/parse/expr.rs:152:8 [INFO] [stdout] | [INFO] [stdout] 152 | pub fn parse_sexpr_seq(sexpr_seq: &[Sexpr]) -> Result, Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_atom` is never used [INFO] [stdout] --> src/parse/expr.rs:161:4 [INFO] [stdout] | [INFO] [stdout] 161 | fn parse_atom(tok: &Token) -> Result { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_compound` is never used [INFO] [stdout] --> src/parse/expr.rs:189:4 [INFO] [stdout] | [INFO] [stdout] 189 | fn parse_compound(children: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_unary_operation` is never used [INFO] [stdout] --> src/parse/expr.rs:230:4 [INFO] [stdout] | [INFO] [stdout] 230 | fn parse_unary_operation(op: UnaryOperator, args: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_binary_operation` is never used [INFO] [stdout] --> src/parse/expr.rs:242:4 [INFO] [stdout] | [INFO] [stdout] 242 | fn parse_binary_operation( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_identifier` is never used [INFO] [stdout] --> src/parse/expr.rs:259:4 [INFO] [stdout] | [INFO] [stdout] 259 | fn parse_identifier(sexpr: &Sexpr) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_proc_signature` is never used [INFO] [stdout] --> src/parse/expr.rs:269:4 [INFO] [stdout] | [INFO] [stdout] 269 | fn parse_proc_signature(sexprs: &[Sexpr]) -> Result<(Vec, Option), Error> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_define` is never used [INFO] [stdout] --> src/parse/expr.rs:298:4 [INFO] [stdout] | [INFO] [stdout] 298 | fn parse_define(args: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_if` is never used [INFO] [stdout] --> src/parse/expr.rs:332:4 [INFO] [stdout] | [INFO] [stdout] 332 | fn parse_if(args: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_and` is never used [INFO] [stdout] --> src/parse/expr.rs:345:4 [INFO] [stdout] | [INFO] [stdout] 345 | fn parse_and(args: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_or` is never used [INFO] [stdout] --> src/parse/expr.rs:352:4 [INFO] [stdout] | [INFO] [stdout] 352 | fn parse_or(args: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_lambda` is never used [INFO] [stdout] --> src/parse/expr.rs:359:4 [INFO] [stdout] | [INFO] [stdout] 359 | fn parse_lambda(args: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_let` is never used [INFO] [stdout] --> src/parse/expr.rs:373:4 [INFO] [stdout] | [INFO] [stdout] 373 | fn parse_let(args: &[Sexpr], span: SrcSpan) -> Result { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Atom` and `Compound` are never constructed [INFO] [stdout] --> src/parse/sexpr.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Sexpr { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 6 | Atom(Token), [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | Compound(Vec, SrcSpan), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Sexpr` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `span` is never used [INFO] [stdout] --> src/parse/sexpr.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Sexpr { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 11 | pub fn span(&self) -> SrcSpan { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_tokens` is never used [INFO] [stdout] --> src/parse/sexpr.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn parse_tokens(toks: &[Token]) -> Result, Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `consume_compound_sexpr` is never used [INFO] [stdout] --> src/parse/sexpr.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn consume_compound_sexpr(toks: &mut dyn Iterator, start: SrcPos) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `define` is never used [INFO] [stdout] --> src/stdlib.rs:5:4 [INFO] [stdout] | [INFO] [stdout] 5 | fn define(env: EnvPtr) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.46s [INFO] running `Command { std: "docker" "inspect" "834e733afa56a2dd095528f8364c4971fdd70c5f7006afe2c69476c13e3c461d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "834e733afa56a2dd095528f8364c4971fdd70c5f7006afe2c69476c13e3c461d", kill_on_drop: false }` [INFO] [stdout] 834e733afa56a2dd095528f8364c4971fdd70c5f7006afe2c69476c13e3c461d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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 -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 12055bc767626c5da4768c77f43ddf7fffa5cc0c1326b55f9b50b36e83191896 [INFO] running `Command { std: "docker" "start" "-a" "12055bc767626c5da4768c77f43ddf7fffa5cc0c1326b55f9b50b36e83191896", kill_on_drop: false }` [INFO] [stderr] Compiling scheme-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.91s [INFO] running `Command { std: "docker" "inspect" "12055bc767626c5da4768c77f43ddf7fffa5cc0c1326b55f9b50b36e83191896", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "12055bc767626c5da4768c77f43ddf7fffa5cc0c1326b55f9b50b36e83191896", kill_on_drop: false }` [INFO] [stdout] 12055bc767626c5da4768c77f43ddf7fffa5cc0c1326b55f9b50b36e83191896