[INFO] updating cached repository https://github.com/1011X/rcc
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 64aa89f2947b697670db64f5f3bdc8fdd17ef0c0
[INFO] checking 1011X/rcc against master#bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F1011X%2Frcc" "/workspace/builds/worker-4/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/1011X/rcc on toolchain bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/1011X/rcc
[INFO] finished tweaking git repo https://github.com/1011X/rcc
[INFO] tweaked toml for git repo https://github.com/1011X/rcc written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] crate git repo https://github.com/1011X/rcc already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] a7a962a6989145849397b5465b6c805a1a46df4decfcc6652f74f77c285ba517
[INFO] running `"docker" "start" "-a" "a7a962a6989145849397b5465b6c805a1a46df4decfcc6652f74f77c285ba517"`
[INFO] [stderr]     Checking rever v0.0.1 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused import: `Token`
[INFO] [stderr]  --> src/parse.rs:2:23
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::tokenize::{Token, Tokens};
[INFO] [stderr]   |                       ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Procedure`
[INFO] [stderr]   --> src/main.rs:33:32
[INFO] [stderr]    |
[INFO] [stderr] 33 | use crate::ast::{Item, Module, Procedure};
[INFO] [stderr]    |                                ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::interpret::Scope`
[INFO] [stderr]   --> src/main.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | use crate::interpret::Scope;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::tokenize::tokenize`
[INFO] [stderr]   --> src/ast/literal.rs:71:6
[INFO] [stderr]    |
[INFO] [stderr] 71 |     use crate::tokenize::tokenize;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Token`
[INFO] [stderr]  --> src/parse.rs:2:23
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::tokenize::{Token, Tokens};
[INFO] [stderr]   |                       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Procedure`
[INFO] [stderr]   --> src/main.rs:33:32
[INFO] [stderr]    |
[INFO] [stderr] 33 | use crate::ast::{Item, Module, Procedure};
[INFO] [stderr]    |                                ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::interpret::Scope`
[INFO] [stderr]   --> src/main.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 | use crate::interpret::Scope;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/literal.rs:76:19
[INFO] [stderr]    |
[INFO] [stderr] 76 |             Literal::parse(&[Token::Ident("true".to_string())]).unwrap(),
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&[tokenize::Token; 1]`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/literal.rs:75:3
[INFO] [stderr]    |
[INFO] [stderr] 75 |           assert_eq!(
[INFO] [stderr]    |  _________^
[INFO] [stderr] 76 | |             Literal::parse(&[Token::Ident("true".to_string())]).unwrap(),
[INFO] [stderr] 77 | |             (Literal::Bool(true), &[][..])
[INFO] [stderr] 78 | |         );
[INFO] [stderr]    | |__________^ expected enum `ast::literal::Literal`, found tuple
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected enum `ast::literal::Literal`
[INFO] [stderr]              found tuple `(ast::literal::Literal, &[_])`
[INFO] [stderr]    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/literal.rs:80:19
[INFO] [stderr]    |
[INFO] [stderr] 80 |             Literal::parse(&[Token::Ident("false".to_string())]).unwrap(),
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&[tokenize::Token; 1]`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/literal.rs:79:3
[INFO] [stderr]    |
[INFO] [stderr] 79 |           assert_eq!(
[INFO] [stderr]    |  _________^
[INFO] [stderr] 80 | |             Literal::parse(&[Token::Ident("false".to_string())]).unwrap(),
[INFO] [stderr] 81 | |             (Literal::Bool(false), &[][..])
[INFO] [stderr] 82 | |         );
[INFO] [stderr]    | |__________^ expected enum `ast::literal::Literal`, found tuple
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected enum `ast::literal::Literal`
[INFO] [stderr]              found tuple `(ast::literal::Literal, &[_])`
[INFO] [stderr]    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/literal.rs:87:19
[INFO] [stderr]    |
[INFO] [stderr] 87 |             Literal::parse(&[Token::Number("0".to_string())]).unwrap(),
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&[tokenize::Token; 1]`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no variant or associated item named `Unsigned` found for enum `ast::literal::Literal` in the current scope
[INFO] [stderr]   --> src/ast/literal.rs:88:14
[INFO] [stderr]    |
[INFO] [stderr] 4  | pub enum Literal {
[INFO] [stderr]    | ---------------- variant or associated item `Unsigned` not found here
[INFO] [stderr] ...
[INFO] [stderr] 88 |             (Literal::Unsigned(0), &[][..])
[INFO] [stderr]    |                       ^^^^^^^^ variant or associated item not found in `ast::literal::Literal`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `op`
[INFO] [stderr]    --> src/ast/expr.rs:155:8
[INFO] [stderr]     |
[INFO] [stderr] 155 |             let op = match tokens.peek() {
[INFO] [stderr]     |                 ^^ help: if this is intentional, prefix it with an underscore: `_op`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `buf`
[INFO] [stderr]   --> src/interpret/mod.rs:43:26
[INFO] [stderr]    |
[INFO] [stderr] 43 |     fn read_byte(&mut self, buf: &mut Vec<u8>) -> EvalResult {
[INFO] [stderr]    |                             ^^^ help: if this is intentional, prefix it with an underscore: `_buf`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/literal.rs:92:19
[INFO] [stderr]    |
[INFO] [stderr] 92 |             Literal::parse(&[Token::Number("10".to_string())]).unwrap(),
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&[tokenize::Token; 1]`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no variant or associated item named `Unsigned` found for enum `ast::literal::Literal` in the current scope
[INFO] [stderr]   --> src/ast/literal.rs:93:14
[INFO] [stderr]    |
[INFO] [stderr] 4  | pub enum Literal {
[INFO] [stderr]    | ---------------- variant or associated item `Unsigned` not found here
[INFO] [stderr] ...
[INFO] [stderr] 93 |             (Literal::Unsigned(10), &[][..])
[INFO] [stderr]    |                       ^^^^^^^^ variant or associated item not found in `ast::literal::Literal`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/lvalue.rs:78:27
[INFO] [stderr]    |
[INFO] [stderr] 78 |             LValue::parse(&tokenize("a").unwrap()).unwrap(),
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]   --> src/ast/lvalue.rs:77:9
[INFO] [stderr]    |
[INFO] [stderr] 77 | /         assert_eq!(
[INFO] [stderr] 78 | |             LValue::parse(&tokenize("a").unwrap()).unwrap(),
[INFO] [stderr] 79 | |             (LValue {
[INFO] [stderr] 80 | |                 id: "a".to_string(),
[INFO] [stderr] 81 | |                 ops: Vec::new(),
[INFO] [stderr] 82 | |             }, &[][..])
[INFO] [stderr] 83 | |         );
[INFO] [stderr]    | |          ^
[INFO] [stderr]    | |          |
[INFO] [stderr]    | |__________ast::lvalue::LValue
[INFO] [stderr]    |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/lvalue.rs:88:27
[INFO] [stderr]    |
[INFO] [stderr] 88 |             LValue::parse(&tokenize("a!").unwrap()).unwrap(),
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]   --> src/ast/lvalue.rs:87:9
[INFO] [stderr]    |
[INFO] [stderr] 87 | /         assert_eq!(
[INFO] [stderr] 88 | |             LValue::parse(&tokenize("a!").unwrap()).unwrap(),
[INFO] [stderr] 89 | |             (LValue {
[INFO] [stderr] 90 | |                 id: "a".to_string(),
[INFO] [stderr] 91 | |                 ops: vec![Deref::Direct],
[INFO] [stderr] 92 | |             }, &[][..])
[INFO] [stderr] 93 | |         );
[INFO] [stderr]    | |          ^
[INFO] [stderr]    | |          |
[INFO] [stderr]    | |__________ast::lvalue::LValue
[INFO] [stderr]    |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/lvalue.rs:95:27
[INFO] [stderr]    |
[INFO] [stderr] 95 |             LValue::parse(&tokenize("a   !").unwrap()).unwrap(),
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:94:9
[INFO] [stderr]     |
[INFO] [stderr] 94  | /         assert_eq!(
[INFO] [stderr] 95  | |             LValue::parse(&tokenize("a   !").unwrap()).unwrap(),
[INFO] [stderr] 96  | |             (LValue {
[INFO] [stderr] 97  | |                 id: "a".to_string(),
[INFO] [stderr] 98  | |                 ops: vec![Deref::Direct],
[INFO] [stderr] 99  | |             }, &[][..])
[INFO] [stderr] 100 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:102:27
[INFO] [stderr]     |
[INFO] [stderr] 102 |             LValue::parse(&tokenize("a!!").unwrap()).unwrap(),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                        found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:101:9
[INFO] [stderr]     |
[INFO] [stderr] 101 | /         assert_eq!(
[INFO] [stderr] 102 | |             LValue::parse(&tokenize("a!!").unwrap()).unwrap(),
[INFO] [stderr] 103 | |             (LValue {
[INFO] [stderr] 104 | |                 id: "a".to_string(),
[INFO] [stderr] 105 | |                 ops: vec![Deref::Direct, Deref::Direct],
[INFO] [stderr] 106 | |             }, &[][..])
[INFO] [stderr] 107 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:112:27
[INFO] [stderr]     |
[INFO] [stderr] 112 |             LValue::parse(&tokenize("a[0]").unwrap()).unwrap(),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                        found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no variant or associated item named `Unsigned` found for enum `ast::literal::Literal` in the current scope
[INFO] [stderr]    --> src/ast/lvalue.rs:115:59
[INFO] [stderr]     |
[INFO] [stderr] 115 |                 ops: vec![Deref::Index(Term::Lit(Literal::Unsigned(0)))],
[INFO] [stderr]     |                                                           ^^^^^^^^ variant or associated item not found in `ast::literal::Literal`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/ast/literal.rs:4:1
[INFO] [stderr]     |
[INFO] [stderr] 4   | pub enum Literal {
[INFO] [stderr]     | ---------------- variant or associated item `Unsigned` not found here
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:115:40
[INFO] [stderr]     |
[INFO] [stderr] 115 |                 ops: vec![Deref::Index(Term::Lit(Literal::Unsigned(0)))],
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                        |
[INFO] [stderr]     |                                        expected enum `ast::expr::Expr`, found enum `ast::term::Term`
[INFO] [stderr]     |                                        help: try using a variant of the expected enum: `ast::expr::Expr::Term(Term::Lit(Literal::Unsigned(0)))`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 | /         assert_eq!(
[INFO] [stderr] 112 | |             LValue::parse(&tokenize("a[0]").unwrap()).unwrap(),
[INFO] [stderr] 113 | |             (LValue {
[INFO] [stderr] 114 | |                 id: "a".to_string(),
[INFO] [stderr] 115 | |                 ops: vec![Deref::Index(Term::Lit(Literal::Unsigned(0)))],
[INFO] [stderr] 116 | |             }, &[][..])
[INFO] [stderr] 117 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: struct is never constructed: `RevStdin`
[INFO] [stderr]   --> src/interpret/mod.rs:35:8
[INFO] [stderr]    |
[INFO] [stderr] 35 | struct RevStdin {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `reset`
[INFO] [stderr]   --> src/interpret/mod.rs:41:2
[INFO] [stderr]    |
[INFO] [stderr] 41 |     fn reset(&mut self) { self.stack.clear() }
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `read_byte`
[INFO] [stderr]   --> src/interpret/mod.rs:43:2
[INFO] [stderr]    |
[INFO] [stderr] 43 |     fn read_byte(&mut self, buf: &mut Vec<u8>) -> EvalResult {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/ast/procedure.rs:161:5
[INFO] [stderr]     |
[INFO] [stderr] 161 |                 stmt.eval(&mut vars, m);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/ast/procedure.rs:165:5
[INFO] [stderr]     |
[INFO] [stderr] 165 |                 stmt.clone().invert().eval(&mut vars, m);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:119:27
[INFO] [stderr]     |
[INFO] [stderr] 119 |             LValue::parse(&tokenize("a   [   0   ]").unwrap()).unwrap(),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                        found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no variant or associated item named `Unsigned` found for enum `ast::literal::Literal` in the current scope
[INFO] [stderr]    --> src/ast/lvalue.rs:122:59
[INFO] [stderr]     |
[INFO] [stderr] 122 |                 ops: vec![Deref::Index(Term::Lit(Literal::Unsigned(0)))],
[INFO] [stderr]     |                                                           ^^^^^^^^ variant or associated item not found in `ast::literal::Literal`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/ast/literal.rs:4:1
[INFO] [stderr]     |
[INFO] [stderr] 4   | pub enum Literal {
[INFO] [stderr]     | ---------------- variant or associated item `Unsigned` not found here
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:122:40
[INFO] [stderr]     |
[INFO] [stderr] 122 |                 ops: vec![Deref::Index(Term::Lit(Literal::Unsigned(0)))],
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                        |
[INFO] [stderr]     |                                        expected enum `ast::expr::Expr`, found enum `ast::term::Term`
[INFO] [stderr]     |                                        help: try using a variant of the expected enum: `ast::expr::Expr::Term(Term::Lit(Literal::Unsigned(0)))`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:118:9
[INFO] [stderr]     |
[INFO] [stderr] 118 | /         assert_eq!(
[INFO] [stderr] 119 | |             LValue::parse(&tokenize("a   [   0   ]").unwrap()).unwrap(),
[INFO] [stderr] 120 | |             (LValue {
[INFO] [stderr] 121 | |                 id: "a".to_string(),
[INFO] [stderr] 122 | |                 ops: vec![Deref::Index(Term::Lit(Literal::Unsigned(0)))],
[INFO] [stderr] 123 | |             }, &[][..])
[INFO] [stderr] 124 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:126:27
[INFO] [stderr]     |
[INFO] [stderr] 126 |             LValue::parse(&tokenize("a[0][b]").unwrap()).unwrap(),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                        found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no variant or associated item named `Unsigned` found for enum `ast::literal::Literal` in the current scope
[INFO] [stderr]    --> src/ast/lvalue.rs:130:53
[INFO] [stderr]     |
[INFO] [stderr] 130 |                     Deref::Index(Term::Lit(Literal::Unsigned(0))),
[INFO] [stderr]     |                                                     ^^^^^^^^ variant or associated item not found in `ast::literal::Literal`
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/ast/literal.rs:4:1
[INFO] [stderr]     |
[INFO] [stderr] 4   | pub enum Literal {
[INFO] [stderr]     | ---------------- variant or associated item `Unsigned` not found here
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:130:34
[INFO] [stderr]     |
[INFO] [stderr] 130 |                     Deref::Index(Term::Lit(Literal::Unsigned(0))),
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                  |
[INFO] [stderr]     |                                  expected enum `ast::expr::Expr`, found enum `ast::term::Term`
[INFO] [stderr]     |                                  help: try using a variant of the expected enum: `ast::expr::Expr::Term(Term::Lit(Literal::Unsigned(0)))`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:131:34
[INFO] [stderr]     |
[INFO] [stderr] 131 |                       Deref::Index(Term::LVal(LValue {
[INFO] [stderr]     |  __________________________________^
[INFO] [stderr] 132 | |                         id: "b".to_string(),
[INFO] [stderr] 133 | |                         ops: Vec::new(),
[INFO] [stderr] 134 | |                     })),
[INFO] [stderr]     | |______________________^ expected enum `ast::expr::Expr`, found enum `ast::term::Term`
[INFO] [stderr]     |
[INFO] [stderr] help: try using a variant of the expected enum
[INFO] [stderr]     |
[INFO] [stderr] 131 |                     Deref::Index(ast::expr::Expr::Term(Term::LVal(LValue {
[INFO] [stderr] 132 |                         id: "b".to_string(),
[INFO] [stderr] 133 |                         ops: Vec::new(),
[INFO] [stderr] 134 |                     }))),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:125:9
[INFO] [stderr]     |
[INFO] [stderr] 125 | /         assert_eq!(
[INFO] [stderr] 126 | |             LValue::parse(&tokenize("a[0][b]").unwrap()).unwrap(),
[INFO] [stderr] 127 | |             (LValue {
[INFO] [stderr] 128 | |                 id: "a".to_string(),
[INFO] [stderr] ...   |
[INFO] [stderr] 136 | |             }, &[][..])
[INFO] [stderr] 137 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:142:27
[INFO] [stderr]     |
[INFO] [stderr] 142 |             LValue::parse(&tokenize("a.b").unwrap()).unwrap(),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                        found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:141:9
[INFO] [stderr]     |
[INFO] [stderr] 141 | /         assert_eq!(
[INFO] [stderr] 142 | |             LValue::parse(&tokenize("a.b").unwrap()).unwrap(),
[INFO] [stderr] 143 | |             (LValue {
[INFO] [stderr] 144 | |                 id: "a".to_string(),
[INFO] [stderr] 145 | |                 ops: vec![Deref::Field("b".to_string())],
[INFO] [stderr] 146 | |             }, &[][..])
[INFO] [stderr] 147 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:149:27
[INFO] [stderr]     |
[INFO] [stderr] 149 |             LValue::parse(&tokenize("a   .    b").unwrap()).unwrap(),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                        found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:148:9
[INFO] [stderr]     |
[INFO] [stderr] 148 | /         assert_eq!(
[INFO] [stderr] 149 | |             LValue::parse(&tokenize("a   .    b").unwrap()).unwrap(),
[INFO] [stderr] 150 | |             (LValue {
[INFO] [stderr] 151 | |                 id: "a".to_string(),
[INFO] [stderr] 152 | |                 ops: vec![Deref::Field("b".to_string())],
[INFO] [stderr] 153 | |             }, &[][..])
[INFO] [stderr] 154 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]    --> src/ast/lvalue.rs:156:27
[INFO] [stderr]     |
[INFO] [stderr] 156 |             LValue::parse(&tokenize("a.b.c").unwrap()).unwrap(),
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]     |
[INFO] [stderr]     = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                        found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `ast::lvalue::LValue`
[INFO] [stderr]    --> src/ast/lvalue.rs:155:9
[INFO] [stderr]     |
[INFO] [stderr] 155 | /         assert_eq!(
[INFO] [stderr] 156 | |             LValue::parse(&tokenize("a.b.c").unwrap()).unwrap(),
[INFO] [stderr] 157 | |             (LValue {
[INFO] [stderr] 158 | |                 id: "a".to_string(),
[INFO] [stderr] ...   |
[INFO] [stderr] 163 | |             }, &[][..])
[INFO] [stderr] 164 | |         );
[INFO] [stderr]     | |          ^
[INFO] [stderr]     | |          |
[INFO] [stderr]     | |__________ast::lvalue::LValue
[INFO] [stderr]     |            (ast::lvalue::LValue, &[_])
[INFO] [stderr]     |
[INFO] [stderr]     = note: an implementation of `std::cmp::PartialEq` might be missing for `ast::lvalue::LValue`
[INFO] [stderr]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/types.rs:47:19
[INFO] [stderr]    |
[INFO] [stderr] 47 |             Type::parse(&tokenize("bool").unwrap()).unwrap(),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/types.rs:46:6
[INFO] [stderr]    |
[INFO] [stderr] 46 |           assert_eq!(
[INFO] [stderr]    |  _________^
[INFO] [stderr] 47 | |             Type::parse(&tokenize("bool").unwrap()).unwrap(),
[INFO] [stderr] 48 | |             (Type::Bool, &[][..])
[INFO] [stderr] 49 | |         );
[INFO] [stderr]    | |__________^ expected enum `ast::types::Type`, found tuple
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected enum `ast::types::Type`
[INFO] [stderr]              found tuple `(ast::types::Type, &[_])`
[INFO] [stderr]    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/types.rs:55:19
[INFO] [stderr]    |
[INFO] [stderr] 55 |             Type::parse(&tokenize("uint").unwrap()).unwrap(),
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^ types differ in mutability
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected mutable reference `&mut std::iter::Peekable<std::vec::IntoIter<tokenize::Token>>`
[INFO] [stderr]                       found reference `&std::vec::Vec<tokenize::Token>`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> src/ast/types.rs:54:6
[INFO] [stderr]    |
[INFO] [stderr] 54 |           assert_eq!(
[INFO] [stderr]    |  _________^
[INFO] [stderr] 55 | |             Type::parse(&tokenize("uint").unwrap()).unwrap(),
[INFO] [stderr] 56 | |             (Type::Uint, &[][..])
[INFO] [stderr] 57 | |         );
[INFO] [stderr]    | |__________^ expected enum `ast::types::Type`, found tuple
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected enum `ast::types::Type`
[INFO] [stderr]              found tuple `(ast::types::Type, &[_])`
[INFO] [stderr]    = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 39 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0308, E0369, E0599.
[INFO] [stderr] For more information about an error, try `rustc --explain E0308`.
[INFO] [stderr] error: could not compile `rever`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "a7a962a6989145849397b5465b6c805a1a46df4decfcc6652f74f77c285ba517"`
[INFO] running `"docker" "rm" "-f" "a7a962a6989145849397b5465b6c805a1a46df4decfcc6652f74f77c285ba517"`
[INFO] [stdout] a7a962a6989145849397b5465b6c805a1a46df4decfcc6652f74f77c285ba517
