[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] testing jeffomatic/scheme-rs 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%2Fjeffomatic%2Fscheme-rs" "/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/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-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jeffomatic/scheme-rs 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/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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a14e0dd42db29f0b7668c037593412e20cd736bf0cd394f6358c5e20f86545d8 [INFO] running `Command { std: "docker" "start" "-a" "a14e0dd42db29f0b7668c037593412e20cd736bf0cd394f6358c5e20f86545d8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a14e0dd42db29f0b7668c037593412e20cd736bf0cd394f6358c5e20f86545d8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a14e0dd42db29f0b7668c037593412e20cd736bf0cd394f6358c5e20f86545d8", kill_on_drop: false }` [INFO] [stdout] a14e0dd42db29f0b7668c037593412e20cd736bf0cd394f6358c5e20f86545d8 [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: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] 767febee6ad5ef6cb7afd935279eae99eb4f5da09cbe510b89627fb84d88a92d [INFO] running `Command { std: "docker" "start" "-a" "767febee6ad5ef6cb7afd935279eae99eb4f5da09cbe510b89627fb84d88a92d", 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: enum `Error` is never used [INFO] [stdout] --> src/eval.rs:13:10 [INFO] [stdout] | [INFO] [stdout] 13 | pub enum Error { [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: enum `Value` is never used [INFO] [stdout] --> src/eval.rs:30:10 [INFO] [stdout] | [INFO] [stdout] 30 | pub enum Value { [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: type alias `ValuePtr` is never used [INFO] [stdout] --> src/eval.rs:101:6 [INFO] [stdout] | [INFO] [stdout] 101 | type ValuePtr = Rc>; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Env` is never constructed [INFO] [stdout] --> src/eval.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | pub struct Env { [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: type alias `EnvPtr` is never used [INFO] [stdout] --> src/eval.rs:142:10 [INFO] [stdout] | [INFO] [stdout] 142 | pub type EnvPtr = Rc>; [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: enum `Error` is never used [INFO] [stdout] --> src/lex.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum Error { [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: type alias `SrcPos` is never used [INFO] [stdout] --> src/lex.rs:27:10 [INFO] [stdout] | [INFO] [stdout] 27 | pub type SrcPos = (usize, usize); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `SrcSpan` is never used [INFO] [stdout] --> src/lex.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | pub type SrcSpan = (SrcPos, SrcPos); [INFO] [stdout] | ^^^^^^^ [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: enum `TokenType` is never used [INFO] [stdout] --> src/lex.rs:90:10 [INFO] [stdout] | [INFO] [stdout] 90 | pub enum TokenType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenType` 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: struct `Token` is never constructed [INFO] [stdout] --> src/lex.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 99 | pub struct Token { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Token` 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: 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: enum `Error` is never used [INFO] [stdout] --> src/parse/error.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Error { [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: enum `UnaryOperator` is never used [INFO] [stdout] --> src/parse/expr.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum UnaryOperator { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnaryOperator` 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: 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: enum `BinaryOperator` is never used [INFO] [stdout] --> src/parse/expr.rs:36:10 [INFO] [stdout] | [INFO] [stdout] 36 | pub enum BinaryOperator { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinaryOperator` 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: 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: struct `ProcDef` is never constructed [INFO] [stdout] --> src/parse/expr.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct ProcDef { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProcDef` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Expr` is never used [INFO] [stdout] --> src/parse/expr.rs:70:10 [INFO] [stdout] | [INFO] [stdout] 70 | pub enum Expr { [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: type alias `ExprPtr` is never used [INFO] [stdout] --> src/parse/expr.rs:143:10 [INFO] [stdout] | [INFO] [stdout] 143 | pub type ExprPtr = Rc>; [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: enum `Sexpr` is never used [INFO] [stdout] --> src/parse/sexpr.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Sexpr { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Sexpr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `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] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/lex.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | fn new(s: &str) -> Stream { [INFO] [stdout] | ^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [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] 45 | fn new(s: &str) -> Stream<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.34s [INFO] running `Command { std: "docker" "inspect" "767febee6ad5ef6cb7afd935279eae99eb4f5da09cbe510b89627fb84d88a92d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "767febee6ad5ef6cb7afd935279eae99eb4f5da09cbe510b89627fb84d88a92d", kill_on_drop: false }` [INFO] [stdout] 767febee6ad5ef6cb7afd935279eae99eb4f5da09cbe510b89627fb84d88a92d [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: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] b29163bd496518786ba19f51908de07ad29ff27df567dc9876dbab490490aed6 [INFO] running `Command { std: "docker" "start" "-a" "b29163bd496518786ba19f51908de07ad29ff27df567dc9876dbab490490aed6", kill_on_drop: false }` [INFO] [stderr] Compiling scheme-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/lex.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | fn new(s: &str) -> Stream { [INFO] [stdout] | ^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [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] 45 | fn new(s: &str) -> Stream<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.80s [INFO] running `Command { std: "docker" "inspect" "b29163bd496518786ba19f51908de07ad29ff27df567dc9876dbab490490aed6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b29163bd496518786ba19f51908de07ad29ff27df567dc9876dbab490490aed6", kill_on_drop: false }` [INFO] [stdout] b29163bd496518786ba19f51908de07ad29ff27df567dc9876dbab490490aed6 [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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 9433c5ff383b68342bab4b3fe7b3ddb4510c1a4a6fed53621f6d5d3db7ece267 [INFO] running `Command { std: "docker" "start" "-a" "9433c5ff383b68342bab4b3fe7b3ddb4510c1a4a6fed53621f6d5d3db7ece267", kill_on_drop: false }` [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/lex.rs:45:15 [INFO] [stderr] | [INFO] [stderr] 45 | fn new(s: &str) -> Stream { [INFO] [stderr] | ^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [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] 45 | fn new(s: &str) -> Stream<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `scheme-rs` (bin "scheme-rs" test) generated 1 warning (run `cargo fix --bin "scheme-rs" --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/scheme_rs-45f1924c50a9ee8e) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test lex::scan_test ... ok [INFO] [stdout] test parse::sexpr::test_parse_tokens ... ok [INFO] [stdout] test stdlib::test ... ok [INFO] [stdout] test eval::test_eval ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "9433c5ff383b68342bab4b3fe7b3ddb4510c1a4a6fed53621f6d5d3db7ece267", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9433c5ff383b68342bab4b3fe7b3ddb4510c1a4a6fed53621f6d5d3db7ece267", kill_on_drop: false }` [INFO] [stdout] 9433c5ff383b68342bab4b3fe7b3ddb4510c1a4a6fed53621f6d5d3db7ece267