[INFO] cloning repository https://github.com/esapyr/rusty-lisp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/esapyr/rusty-lisp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fesapyr%2Frusty-lisp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fesapyr%2Frusty-lisp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b69f6ac038b8702c1e4e0139dff378e7b6cd9b38
[INFO] checking esapyr/rusty-lisp/b69f6ac038b8702c1e4e0139dff378e7b6cd9b38 against master#32cd9114712a24010b0583624dc52ac302194128 for pr-143717
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fesapyr%2Frusty-lisp" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/esapyr/rusty-lisp
[INFO] finished tweaking git repo https://github.com/esapyr/rusty-lisp
[INFO] tweaked toml for git repo https://github.com/esapyr/rusty-lisp written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/esapyr/rusty-lisp on toolchain 32cd9114712a24010b0583624dc52ac302194128
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/esapyr/rusty-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" "+32cd9114712a24010b0583624dc52ac302194128" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+32cd9114712a24010b0583624dc52ac302194128" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bcd10a78411d21378696df9fad4eb976ee430cf8f9dd710c09fa1df1de46157d
[INFO] running `Command { std: "docker" "start" "-a" "bcd10a78411d21378696df9fad4eb976ee430cf8f9dd710c09fa1df1de46157d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bcd10a78411d21378696df9fad4eb976ee430cf8f9dd710c09fa1df1de46157d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bcd10a78411d21378696df9fad4eb976ee430cf8f9dd710c09fa1df1de46157d", kill_on_drop: false }`
[INFO] [stdout] bcd10a78411d21378696df9fad4eb976ee430cf8f9dd710c09fa1df1de46157d
[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" "-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" "+32cd9114712a24010b0583624dc52ac302194128" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cd5366c2dea6d36f8c364b5353895ff17b660680c04a8edb2d959e366b5331ec
[INFO] running `Command { std: "docker" "start" "-a" "cd5366c2dea6d36f8c364b5353895ff17b660680c04a8edb2d959e366b5331ec", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Checking rusty-lisp v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] error: `--crate-name` and `#[crate_name]` are required to match, but `rusty_lisp` != `rusty-lisp`
[INFO] [stdout]  --> src/main.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![crate_name = "rusty-lisp"]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `--crate-name` and `#[crate_name]` are required to match, but `rusty_lisp` != `rusty-lisp`
[INFO] [stdout]  --> src/main.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![crate_name = "rusty-lisp"]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]   --> src/cons_cell.rs:27:3
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[deriving (PartialEq, Show)]
[INFO] [stdout]    |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> src/cons_cell.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid suffix `i` for number literal
[INFO] [stdout]   --> src/parser.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut count = 0i;
[INFO] [stdout]    |                     ^^ invalid suffix `i`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot find attribute `deriving` in this scope
[INFO] [stdout]   --> src/cons_cell.rs:27:3
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[deriving (PartialEq, Show)]
[INFO] [stdout]    |   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt`
[INFO] [stdout]  --> src/cons_cell.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: invalid suffix `i` for number literal
[INFO] [stdout]   --> src/parser.rs:26:21
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let mut count = 0i;
[INFO] [stdout]    |                     ^^ invalid suffix `i`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the suffix must be one of the numeric types (`u32`, `isize`, `f32`, etc.)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `globs` has been stable since 1.0.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(globs)]
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `globs` has been stable since 1.0.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(globs)]
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `cons_cell::Pair`
[INFO] [stdout]   --> src/cons_cell.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 |     if *x == *y {
[INFO] [stdout]    |        -- ^^ -- cons_cell::Pair
[INFO] [stdout]    |        |
[INFO] [stdout]    |        cons_cell::Pair
[INFO] [stdout]    |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `cons_cell::Pair`
[INFO] [stdout]   --> src/cons_cell.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum Pair {
[INFO] [stdout]    | ^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `cons_cell::Pair` with `#[derive(PartialEq)]`
[INFO] [stdout]    |
[INFO] [stdout] 28 + #[derive(PartialEq)]
[INFO] [stdout] 29 | pub enum Pair {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `cons_cell::Pair`
[INFO] [stdout]   --> src/cons_cell.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 |     if *x == *y {
[INFO] [stdout]    |        -- ^^ -- cons_cell::Pair
[INFO] [stdout]    |        |
[INFO] [stdout]    |        cons_cell::Pair
[INFO] [stdout]    |
[INFO] [stdout] note: an implementation of `PartialEq` might be missing for `cons_cell::Pair`
[INFO] [stdout]   --> src/cons_cell.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub enum Pair {
[INFO] [stdout]    | ^^^^^^^^^^^^^ must implement `PartialEq`
[INFO] [stdout] help: consider annotating `cons_cell::Pair` with `#[derive(PartialEq)]`
[INFO] [stdout]    |
[INFO] [stdout] 28 + #[derive(PartialEq)]
[INFO] [stdout] 29 | pub enum Pair {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/cons_cell.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         Pair::Atom(ref a) if a.as_slice() == "NIL"      => Rc::new(Pair::Atom("NIL".to_string())),
[INFO] [stdout]    |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/cons_cell.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |         Pair::Atom(ref a) if a.as_slice() == "NIL"      => Rc::new(Pair::Atom("NIL".to_string())),
[INFO] [stdout]    |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/cons_cell.rs:108:32
[INFO] [stdout]     |
[INFO] [stdout] 108 |         Pair::Atom(ref a) if a.as_slice() == "NIL" => Rc::new(Pair::Atom("NIL".to_string())),
[INFO] [stdout]     |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/cons_cell.rs:108:32
[INFO] [stdout]     |
[INFO] [stdout] 108 |         Pair::Atom(ref a) if a.as_slice() == "NIL" => Rc::new(Pair::Atom("NIL".to_string())),
[INFO] [stdout]     |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `String` cannot be built from an iterator over elements of type `ToUppercase`
[INFO] [stdout]   --> src/parser.rs:10:59
[INFO] [stdout]    |
[INFO] [stdout] 10 |              .chars().map(|c| c.to_uppercase()).collect::<String>()
[INFO] [stdout]    |                                                 -------   ^^^^^^ value of type `String` cannot be built from `std::iter::Iterator<Item=ToUppercase>`
[INFO] [stdout]    |                                                 |
[INFO] [stdout]    |                                                 required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromIterator<ToUppercase>` is not implemented for `String`
[INFO] [stdout]    = help: the following other types implement trait `FromIterator<A>`:
[INFO] [stdout]              `String` implements `FromIterator<&char>`
[INFO] [stdout]              `String` implements `FromIterator<&str>`
[INFO] [stdout]              `String` implements `FromIterator<Box<str, A>>`
[INFO] [stdout]              `String` implements `FromIterator<Cow<'_, str>>`
[INFO] [stdout]              `String` implements `FromIterator<String>`
[INFO] [stdout]              `String` implements `FromIterator<char>`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]   --> src/parser.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 5  |     raw_input.trim()
[INFO] [stdout]    |     --------- this expression has type `String`
[INFO] [stdout] ...
[INFO] [stdout] 10 |              .chars().map(|c| c.to_uppercase()).collect::<String>()
[INFO] [stdout]    |               ------- ^^^^^^^^^^^^^^^^^^^^^^^^^ `Iterator::Item` changed to `ToUppercase` here
[INFO] [stdout]    |               |
[INFO] [stdout]    |               `Iterator::Item` is `char` here
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]   --> /rustc/32cd9114712a24010b0583624dc52ac302194128/library/core/src/iter/traits/iterator.rs:2014:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `String` cannot be built from an iterator over elements of type `ToUppercase`
[INFO] [stdout]   --> src/parser.rs:10:59
[INFO] [stdout]    |
[INFO] [stdout] 10 |              .chars().map(|c| c.to_uppercase()).collect::<String>()
[INFO] [stdout]    |                                                 -------   ^^^^^^ value of type `String` cannot be built from `std::iter::Iterator<Item=ToUppercase>`
[INFO] [stdout]    |                                                 |
[INFO] [stdout]    |                                                 required by a bound introduced by this call
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `FromIterator<ToUppercase>` is not implemented for `String`
[INFO] [stdout]    = help: the following other types implement trait `FromIterator<A>`:
[INFO] [stdout]              `String` implements `FromIterator<&char>`
[INFO] [stdout]              `String` implements `FromIterator<&str>`
[INFO] [stdout]              `String` implements `FromIterator<Box<str, A>>`
[INFO] [stdout]              `String` implements `FromIterator<Cow<'_, str>>`
[INFO] [stdout]              `String` implements `FromIterator<String>`
[INFO] [stdout]              `String` implements `FromIterator<char>`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]   --> src/parser.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 5  |     raw_input.trim()
[INFO] [stdout]    |     --------- this expression has type `String`
[INFO] [stdout] ...
[INFO] [stdout] 10 |              .chars().map(|c| c.to_uppercase()).collect::<String>()
[INFO] [stdout]    |               ------- ^^^^^^^^^^^^^^^^^^^^^^^^^ `Iterator::Item` changed to `ToUppercase` here
[INFO] [stdout]    |               |
[INFO] [stdout]    |               `Iterator::Item` is `char` here
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]   --> /rustc/32cd9114712a24010b0583624dc52ac302194128/library/core/src/iter/traits/iterator.rs:2014:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |         if token.as_slice() == "(" { count += 1 }
[INFO] [stdout]    |                  ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |         if token.as_slice() == "(" { count += 1 }
[INFO] [stdout]    |                  ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:30:23
[INFO] [stdout]    |
[INFO] [stdout] 30 |         else if token.as_slice() == ")" { 
[INFO] [stdout]    |                       ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:30:23
[INFO] [stdout]    |
[INFO] [stdout] 30 |         else if token.as_slice() == ")" { 
[INFO] [stdout]    |                       ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `expect` found for struct `String` in the current scope
[INFO] [stdout]   --> src/parser.rs:55:46
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let token: String = tokens.remove(0).expect("Failed getting next token in parser"); 
[INFO] [stdout]    |                                              ^^^^^^ method not found in `String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `expect` found for struct `String` in the current scope
[INFO] [stdout]   --> src/parser.rs:55:46
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let token: String = tokens.remove(0).expect("Failed getting next token in parser"); 
[INFO] [stdout]    |                                              ^^^^^^ method not found in `String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:67:45
[INFO] [stdout]    |
[INFO] [stdout] 67 | ...                   if (&tokens[0]).as_slice() == "(" || (&tokens[0]).as_slice() == "QUOTE" {
[INFO] [stdout]    |                                       ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:67:45
[INFO] [stdout]    |
[INFO] [stdout] 67 | ...                   if (&tokens[0]).as_slice() == "(" || (&tokens[0]).as_slice() == "QUOTE" {
[INFO] [stdout]    |                                       ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:67:79
[INFO] [stdout]    |
[INFO] [stdout] 67 | ...                   if (&tokens[0]).as_slice() == "(" || (&tokens[0]).as_slice() == "QUOTE" {
[INFO] [stdout]    |                                                                         ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/parser.rs:67:79
[INFO] [stdout]    |
[INFO] [stdout] 67 | ...                   if (&tokens[0]).as_slice() == "(" || (&tokens[0]).as_slice() == "QUOTE" {
[INFO] [stdout]    |                                                                         ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `expect` found for struct `String` in the current scope
[INFO] [stdout]   --> src/parser.rs:70:93
[INFO] [stdout]    |
[INFO] [stdout] 70 | ...                   cons(cons(make_atom(token), cons(make_atom(tokens.remove(0).expect("")), make_atom("NIL"))), build_sexpr(tokens))
[INFO] [stdout]    |                                                                                   ^^^^^^ method not found in `String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `expect` found for struct `String` in the current scope
[INFO] [stdout]   --> src/parser.rs:70:93
[INFO] [stdout]    |
[INFO] [stdout] 70 | ...                   cons(cons(make_atom(token), cons(make_atom(tokens.remove(0).expect("")), make_atom("NIL"))), build_sexpr(tokens))
[INFO] [stdout]    |                                                                                   ^^^^^^ method not found in `String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 1 argument but 0 arguments were supplied
[INFO] [stdout]   --> src/main.rs:34:10
[INFO] [stdout]    |
[INFO] [stdout] 34 |         .read_line()
[INFO] [stdout]    |          ^^^^^^^^^-- argument #1 of type `&mut String` is missing
[INFO] [stdout]    |
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/32cd9114712a24010b0583624dc52ac302194128/library/std/src/io/stdio.rs:411:12
[INFO] [stdout] help: provide the argument
[INFO] [stdout]    |
[INFO] [stdout] 34 |         .read_line(/* &mut String */)
[INFO] [stdout]    |                    +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this method takes 1 argument but 0 arguments were supplied
[INFO] [stdout]   --> src/main.rs:34:10
[INFO] [stdout]    |
[INFO] [stdout] 34 |         .read_line()
[INFO] [stdout]    |          ^^^^^^^^^-- argument #1 of type `&mut String` is missing
[INFO] [stdout]    |
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/32cd9114712a24010b0583624dc52ac302194128/library/std/src/io/stdio.rs:411:12
[INFO] [stdout] help: provide the argument
[INFO] [stdout]    |
[INFO] [stdout] 34 |         .read_line(/* &mut String */)
[INFO] [stdout]    |                    +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |   fn read() -> String {
[INFO] [stdout]    |                ------ expected `String` because of return type
[INFO] [stdout] 32 |       print!(">");
[INFO] [stdout] 33 | /     io::stdin()
[INFO] [stdout] 34 | |         .read_line()
[INFO] [stdout] 35 | |         .ok()
[INFO] [stdout] 36 | |         .expect("Couldn't read line")
[INFO] [stdout]    | |                                     ^- help: try using a conversion method: `.to_string()`
[INFO] [stdout]    | |_____________________________________|
[INFO] [stdout]    |                                       expected `String`, found `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 31 |   fn read() -> String {
[INFO] [stdout]    |                ------ expected `String` because of return type
[INFO] [stdout] 32 |       print!(">");
[INFO] [stdout] 33 | /     io::stdin()
[INFO] [stdout] 34 | |         .read_line()
[INFO] [stdout] 35 | |         .ok()
[INFO] [stdout] 36 | |         .expect("Couldn't read line")
[INFO] [stdout]    | |                                     ^- help: try using a conversion method: `.to_string()`
[INFO] [stdout]    | |_____________________________________|
[INFO] [stdout]    |                                       expected `String`, found `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/main.rs:47:36
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Pair::Atom(ref a) if a.as_slice() == "NIL" => { print!("NIL"); break },
[INFO] [stdout]    |                                    ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/main.rs:47:36
[INFO] [stdout]    |
[INFO] [stdout] 47 |             Pair::Atom(ref a) if a.as_slice() == "NIL" => { print!("NIL"); break },
[INFO] [stdout]    |                                    ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/main.rs:54:30
[INFO] [stdout]    |
[INFO] [stdout] 54 |                         if a.as_slice() != "NIL" {
[INFO] [stdout]    |                              ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/main.rs:54:30
[INFO] [stdout]    |
[INFO] [stdout] 54 |                         if a.as_slice() != "NIL" {
[INFO] [stdout]    |                              ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/main.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |                         if n.as_slice() == "NIL" {
[INFO] [stdout]    |                              ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]   --> src/main.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 |                         if n.as_slice() == "NIL" {
[INFO] [stdout]    |                              ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/main.rs:197:32
[INFO] [stdout]     |
[INFO] [stdout] 197 |         Pair::Atom(ref a) if a.as_slice() == "NIL" => true,
[INFO] [stdout]     |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/main.rs:197:32
[INFO] [stdout]     |
[INFO] [stdout] 197 |         Pair::Atom(ref a) if a.as_slice() == "NIL" => true,
[INFO] [stdout]     |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/main.rs:206:46
[INFO] [stdout]     |
[INFO] [stdout] 206 |                 (_, &Pair::Atom(ref a)) if a.as_slice() != "NIL" => true,
[INFO] [stdout]     |                                              ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/main.rs:206:46
[INFO] [stdout]     |
[INFO] [stdout] 206 |                 (_, &Pair::Atom(ref a)) if a.as_slice() != "NIL" => true,
[INFO] [stdout]     |                                              ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/main.rs:217:32
[INFO] [stdout]     |
[INFO] [stdout] 217 |         Pair::Atom(ref a) if a.as_slice() == "NIL"  => false,
[INFO] [stdout]     |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_slice` found for reference `&String` in the current scope
[INFO] [stdout]    --> src/main.rs:217:32
[INFO] [stdout]     |
[INFO] [stdout] 217 |         Pair::Atom(ref a) if a.as_slice() == "NIL"  => false,
[INFO] [stdout]     |                                ^^^^^^^^ method not found in `&String`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0369, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0369, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rusty-lisp` (bin "rusty-lisp" test) due to 21 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rusty-lisp` (bin "rusty-lisp") due to 21 previous errors; 2 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "cd5366c2dea6d36f8c364b5353895ff17b660680c04a8edb2d959e366b5331ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd5366c2dea6d36f8c364b5353895ff17b660680c04a8edb2d959e366b5331ec", kill_on_drop: false }`
[INFO] [stdout] cd5366c2dea6d36f8c364b5353895ff17b660680c04a8edb2d959e366b5331ec
