[INFO] cloning repository https://github.com/komamitsu/tiny-rust-lisp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/komamitsu/tiny-rust-lisp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkomamitsu%2Ftiny-rust-lisp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkomamitsu%2Ftiny-rust-lisp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6da2dc40d3a3f382f2530509cab95995da6f3451
[INFO] testing komamitsu/tiny-rust-lisp against 1.97.0-beta.6 for beta-1.98-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkomamitsu%2Ftiny-rust-lisp" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/komamitsu/tiny-rust-lisp
[INFO] finished tweaking git repo https://github.com/komamitsu/tiny-rust-lisp
[INFO] tweaked toml for git repo https://github.com/komamitsu/tiny-rust-lisp written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/komamitsu/tiny-rust-lisp on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/komamitsu/tiny-rust-lisp 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" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866
[INFO] running `Command { std: "docker" "start" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866", 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" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling tiny-rust-lisp v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 150 |         Ok(match *try!(self.eval(env, args[0].clone())).clone() {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:151:27
[INFO] [stdout]     |
[INFO] [stdout] 151 |             Node::True => try!(self.eval(env, args[1].clone())),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     try!(self.eval(env, args[2].clone()))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:210:41
[INFO] [stdout]     |
[INFO] [stdout] 210 |                     let evalated_node = try!(self.eval(env, arg.clone()));
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:273:38
[INFO] [stdout]     |
[INFO] [stdout] 273 |                     let evaled_arg = try!(self.eval(env, args[i].clone()));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:277:30
[INFO] [stdout]     |
[INFO] [stdout] 277 |                 let result = try!(self.eval(env, Rc::new(Node::List(body.clone()))));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let tokens = try!(Lexer::new(line).tokenize());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:46:37
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let nd : Rc<Node> = try!(self.eval.eval(&mut self.env, nodes));
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |                     node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:166:12
[INFO] [stdout]     |
[INFO] [stdout] 166 |            env: &mut Env,
[INFO] [stdout]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 183 |            env: &mut Env,
[INFO] [stdout]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:185:12
[INFO] [stdout]     |
[INFO] [stdout] 185 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:231:22
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:231:56
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/lexer.rs:33:23
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct LexerError(String);
[INFO] [stdout]    |            ---------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `LexerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/eval.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct EvalError(String);
[INFO] [stdout]   |            --------- ^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout]   = note: `EvalError` 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: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/eval.rs:191:71
[INFO] [stdout]     |
[INFO] [stdout] 191 |                         Some((_, tl)) => Rc::new(Node::QuotedList((*tl.clone()).to_vec())),
[INFO] [stdout]     |                                                                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[Rc<Node>]` does not implement `Clone`, so calling `clone` on `&[Rc<Node>]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.97s
[INFO] running `Command { std: "docker" "inspect" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 150 |         Ok(match *try!(self.eval(env, args[0].clone())).clone() {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:151:27
[INFO] [stdout]     |
[INFO] [stdout] 151 |             Node::True => try!(self.eval(env, args[1].clone())),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     try!(self.eval(env, args[2].clone()))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:210:41
[INFO] [stdout]     |
[INFO] [stdout] 210 |                     let evalated_node = try!(self.eval(env, arg.clone()));
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:273:38
[INFO] [stdout]     |
[INFO] [stdout] 273 |                     let evaled_arg = try!(self.eval(env, args[i].clone()));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:277:30
[INFO] [stdout]     |
[INFO] [stdout] 277 |                 let result = try!(self.eval(env, Rc::new(Node::List(body.clone()))));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let tokens = try!(Lexer::new(line).tokenize());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:46:37
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let nd : Rc<Node> = try!(self.eval.eval(&mut self.env, nodes));
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |                     node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:166:12
[INFO] [stdout]     |
[INFO] [stdout] 166 |            env: &mut Env,
[INFO] [stdout]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 183 |            env: &mut Env,
[INFO] [stdout]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:185:12
[INFO] [stdout]     |
[INFO] [stdout] 185 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:231:22
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:231:56
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/lexer.rs:33:23
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct LexerError(String);
[INFO] [stdout]    |            ---------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `LexerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/eval.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct EvalError(String);
[INFO] [stdout]   |            --------- ^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout]   = note: `EvalError` 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: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/eval.rs:191:71
[INFO] [stdout]     |
[INFO] [stdout] 191 |                         Some((_, tl)) => Rc::new(Node::QuotedList((*tl.clone()).to_vec())),
[INFO] [stdout]     |                                                                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[Rc<Node>]` does not implement `Clone`, so calling `clone` on `&[Rc<Node>]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling tiny-rust-lisp v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:150:19
[INFO] [stdout]     |
[INFO] [stdout] 150 |         Ok(match *try!(self.eval(env, args[0].clone())).clone() {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:151:27
[INFO] [stdout]     |
[INFO] [stdout] 151 |             Node::True => try!(self.eval(env, args[1].clone())),
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     try!(self.eval(env, args[2].clone()))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:210:41
[INFO] [stdout]     |
[INFO] [stdout] 210 |                     let evalated_node = try!(self.eval(env, arg.clone()));
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:273:38
[INFO] [stdout]     |
[INFO] [stdout] 273 |                     let evaled_arg = try!(self.eval(env, args[i].clone()));
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/eval.rs:277:30
[INFO] [stdout]     |
[INFO] [stdout] 277 |                 let result = try!(self.eval(env, Rc::new(Node::List(body.clone()))));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:43:22
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let tokens = try!(Lexer::new(line).tokenize());
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:46:37
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 let nd : Rc<Node> = try!(self.eval.eval(&mut self.env, nodes));
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |                     node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:166:12
[INFO] [stdout]     |
[INFO] [stdout] 166 |            env: &mut Env,
[INFO] [stdout]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 183 |            env: &mut Env,
[INFO] [stdout]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:185:12
[INFO] [stdout]     |
[INFO] [stdout] 185 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/eval.rs:231:22
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node`
[INFO] [stdout]    --> src/eval.rs:231:56
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stdout]     |                                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/lexer.rs:33:23
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct LexerError(String);
[INFO] [stdout]    |            ---------- ^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `LexerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/eval.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct EvalError(String);
[INFO] [stdout]   |            --------- ^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout]   = note: `EvalError` 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: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/eval.rs:191:71
[INFO] [stdout]     |
[INFO] [stdout] 191 |                         Some((_, tl)) => Rc::new(Node::QuotedList((*tl.clone()).to_vec())),
[INFO] [stdout]     |                                                                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `[std::rc::Rc<parser::Node>]` does not implement `Clone`, so calling `clone` on `&[std::rc::Rc<parser::Node>]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/eval.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         Eval::new().eval(
[INFO] [stdout] 443 | |             env1,
[INFO] [stdout] 444 | |             Rc::new(Node::List(
[INFO] [stdout] 445 | |                 vec![
[INFO] [stdout] ...   |
[INFO] [stdout] 467 | |             ))
[INFO] [stdout] 468 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 442 |         let _ = Eval::new().eval(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.01s
[INFO] running `Command { std: "docker" "inspect" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:150:19
[INFO] [stderr]     |
[INFO] [stderr] 150 |         Ok(match *try!(self.eval(env, args[0].clone())).clone() {
[INFO] [stderr]     |                   ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:151:27
[INFO] [stderr]     |
[INFO] [stderr] 151 |             Node::True => try!(self.eval(env, args[1].clone())),
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:154:21
[INFO] [stderr]     |
[INFO] [stderr] 154 |                     try!(self.eval(env, args[2].clone()))
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:210:41
[INFO] [stderr]     |
[INFO] [stderr] 210 |                     let evalated_node = try!(self.eval(env, arg.clone()));
[INFO] [stderr]     |                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:273:38
[INFO] [stderr]     |
[INFO] [stderr] 273 |                     let evaled_arg = try!(self.eval(env, args[i].clone()));
[INFO] [stderr]     |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/eval.rs:277:30
[INFO] [stderr]     |
[INFO] [stderr] 277 |                 let result = try!(self.eval(env, Rc::new(Node::List(body.clone()))));
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/lib.rs:43:22
[INFO] [stderr]    |
[INFO] [stderr] 43 |         let tokens = try!(Lexer::new(line).tokenize());
[INFO] [stderr]    |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/lib.rs:46:37
[INFO] [stderr]    |
[INFO] [stderr] 46 |                 let nd : Rc<Node> = try!(self.eval.eval(&mut self.env, nodes));
[INFO] [stderr]    |                                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node`
[INFO] [stderr]    --> src/eval.rs:143:21
[INFO] [stderr]     |
[INFO] [stderr] 143 |                     node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stderr]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]    --> src/eval.rs:166:12
[INFO] [stderr]     |
[INFO] [stderr] 166 |            env: &mut Env,
[INFO] [stderr]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node`
[INFO] [stderr]    --> src/eval.rs:168:12
[INFO] [stderr]     |
[INFO] [stderr] 168 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stderr]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]    --> src/eval.rs:183:12
[INFO] [stderr]     |
[INFO] [stderr] 183 |            env: &mut Env,
[INFO] [stderr]     |            ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node`
[INFO] [stderr]    --> src/eval.rs:185:12
[INFO] [stderr]     |
[INFO] [stderr] 185 |            node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stderr]     |            ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `env`
[INFO] [stderr]    --> src/eval.rs:231:22
[INFO] [stderr]     |
[INFO] [stderr] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stderr]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `node`
[INFO] [stderr]    --> src/eval.rs:231:56
[INFO] [stderr]     |
[INFO] [stderr] 231 |     fn lambda(&self, env: &mut Env, args: &[Rc<Node>], node: &Rc<Node>) -> Result<Rc<Node>, EvalError> {
[INFO] [stderr]     |                                                        ^^^^ help: if this is intentional, prefix it with an underscore: `_node`
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/lexer.rs:33:23
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub struct LexerError(String);
[INFO] [stderr]    |            ---------- ^^^^^^
[INFO] [stderr]    |            |
[INFO] [stderr]    |            field in this struct
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider removing this field
[INFO] [stderr]    = note: `LexerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]  --> src/eval.rs:6:22
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct EvalError(String);
[INFO] [stderr]   |            --------- ^^^^^^
[INFO] [stderr]   |            |
[INFO] [stderr]   |            field in this struct
[INFO] [stderr]   |
[INFO] [stderr]   = help: consider removing this field
[INFO] [stderr]   = note: `EvalError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/eval.rs:191:71
[INFO] [stderr]     |
[INFO] [stderr] 191 |                         Some((_, tl)) => Rc::new(Node::QuotedList((*tl.clone()).to_vec())),
[INFO] [stderr]     |                                                                       ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `[Rc<Node>]` does not implement `Clone`, so calling `clone` on `&[Rc<Node>]` copies the reference, which does not do anything and can be removed
[INFO] [stderr]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `tiny-rust-lisp` (lib) generated 18 warnings (run `cargo fix --lib -p tiny-rust-lisp` to apply 8 suggestions)
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]    --> src/eval.rs:191:71
[INFO] [stderr]     |
[INFO] [stderr] 191 |                         Some((_, tl)) => Rc::new(Node::QuotedList((*tl.clone()).to_vec())),
[INFO] [stderr]     |                                                                       ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]     |
[INFO] [stderr]     = note: the type `[std::rc::Rc<parser::Node>]` does not implement `Clone`, so calling `clone` on `&[std::rc::Rc<parser::Node>]` copies the reference, which does not do anything and can be removed
[INFO] [stderr]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/eval.rs:442:9
[INFO] [stderr]     |
[INFO] [stderr] 442 | /         Eval::new().eval(
[INFO] [stderr] 443 | |             env1,
[INFO] [stderr] 444 | |             Rc::new(Node::List(
[INFO] [stderr] 445 | |                 vec![
[INFO] [stderr] ...   |
[INFO] [stderr] 467 | |             ))
[INFO] [stderr] 468 | |         );
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 442 |         let _ = Eval::new().eval(
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `tiny-rust-lisp` (lib test) generated 19 warnings (17 duplicates) (run `cargo fix --lib -p tiny-rust-lisp --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tiny_rust_lisp-22d7151637d4546d)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test eval::tests::eval ... ok
[INFO] [stdout] test parser::tests::parse0 ... ok
[INFO] [stdout] test lexer::tests::tokenize ... ok
[INFO] [stdout] test tests::if_then_else ... ok
[INFO] [stdout] test tests::fib ... ok
[INFO] [stdout] test parser::tests::parse1 ... ok
[INFO] [stdout] test tests::recursive ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/tiny_rust_lisp-828bd79a4b5a4182)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tiny_rust_lisp
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866", kill_on_drop: false }`
[INFO] [stdout] df99f2280303a7a102890d9dd4c3a2e9d9445a9efed3cf99217fb361b9987866
