[INFO] cloning repository https://github.com/nilq/sabri [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nilq/sabri" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnilq%2Fsabri"` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnilq%2Fsabri'... [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 0c1918e28f1cd29be9e927dc31308c81665ff259 [INFO] checking nilq/sabri against try#e4dba30b9b475d8750370c4dfb49b6541990904d for pr-71393 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnilq%2Fsabri" "/workspace/builds/worker-11/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-11/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/nilq/sabri on toolchain e4dba30b9b475d8750370c4dfb49b6541990904d [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/nilq/sabri [INFO] finished tweaking git repo https://github.com/nilq/sabri [INFO] tweaked toml for git repo https://github.com/nilq/sabri written to /workspace/builds/worker-11/source/Cargo.toml [INFO] crate git repo https://github.com/nilq/sabri already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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" "+e4dba30b9b475d8750370c4dfb49b6541990904d" "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] cb8d0724e8ea88bde627d3862ea280be5adf043e5a4a7e36939ad102f90df054 [INFO] running `"docker" "start" "-a" "cb8d0724e8ea88bde627d3862ea280be5adf043e5a4a7e36939ad102f90df054"` [INFO] [stderr] Checking unicode-width v0.1.4 [INFO] [stderr] Checking strsim v0.6.0 [INFO] [stderr] Checking thread-id v3.1.0 [INFO] [stderr] Checking memchr v1.0.1 [INFO] [stderr] Checking unreachable v0.1.1 [INFO] [stderr] Checking nix v0.5.1 [INFO] [stderr] Checking aho-corasick v0.6.3 [INFO] [stderr] Checking thread_local v0.3.3 [INFO] [stderr] Checking regex v0.2.2 [INFO] [stderr] Checking docopt v0.7.0 [INFO] [stderr] Checking rustyline v1.0.0 [INFO] [stderr] Checking sabri v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:72:17 [INFO] [stderr] | [INFO] [stderr] 72 | try!(func.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:75:21 [INFO] [stderr] | [INFO] [stderr] 75 | try!(a.compile(sym, program)) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:91:48 [INFO] [stderr] | [INFO] [stderr] 91 | ... Some(ref e) => try!(e.compile(&cur_sym, program)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:109:30 [INFO] [stderr] | [INFO] [stderr] 109 | _ => try!(statement.compile(&cur_sym, program)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:115:37 [INFO] [stderr] | [INFO] [stderr] 115 | &Operand::Assign => try!(Self::compile_assignment(&*left, &*right, sym, program)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:121:25 [INFO] [stderr] | [INFO] [stderr] 121 | try!(left.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:122:25 [INFO] [stderr] | [INFO] [stderr] 122 | try!(right.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:142:25 [INFO] [stderr] | [INFO] [stderr] 142 | try!(left.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:143:25 [INFO] [stderr] | [INFO] [stderr] 143 | try!(right.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:161:21 [INFO] [stderr] | [INFO] [stderr] 161 | try!(value.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | try!(Expression::Block(self.block.clone()).compile(&new_sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:224:9 [INFO] [stderr] | [INFO] [stderr] 224 | try!(program.close_func_context(end)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:23:24 [INFO] [stderr] | [INFO] [stderr] 23 | stack.push(try!(self.statement())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:39:62 [INFO] [stderr] | [INFO] [stderr] 39 | return Ok(Statement::Expression(Box::new(try!(self.expression())))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:47:33 [INFO] [stderr] | [INFO] [stderr] 47 | let value = try!(self.expression()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:57:52 [INFO] [stderr] | [INFO] [stderr] 57 | _ => Ok(Statement::Expression(Box::new(try!(self.expression())))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:66:81 [INFO] [stderr] | [INFO] [stderr] 66 | TokenType::Block(_) => return Ok(Expression::Block(Box::new(try!(self.block())))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:102:32 [INFO] [stderr] | [INFO] [stderr] 102 | let expr = try!(self.expression()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:142:59 [INFO] [stderr] | [INFO] [stderr] 142 | let lambda = Lambda::new(params, Box::new(try!(self.block()))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:161:24 [INFO] [stderr] | [INFO] [stderr] 161 | stack.push(try!(self.expression())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:181:20 [INFO] [stderr] | [INFO] [stderr] 181 | Ok(try!(p.parse())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:192:20 [INFO] [stderr] | [INFO] [stderr] 192 | let expr = try!(self.term()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:215:23 [INFO] [stderr] | [INFO] [stderr] 215 | ex_stack.push(try!(self.term())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:240:35 [INFO] [stderr] | [INFO] [stderr] 240 | ex_stack.push(try!(self.term())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:248:31 [INFO] [stderr] | [INFO] [stderr] 248 | ex_stack.push(try!(self.term())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/bytecode/run.rs:170:39 [INFO] [stderr] | [INFO] [stderr] 170 | ... let ret = try!(f.call(&self.val_stack[args_pos..], &self.env)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/bytecode/run.rs:204:41 [INFO] [stderr] | [INFO] [stderr] 204 | self.val_stack.push(try!(result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | try!(p.dump(f, env_index - 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | try!(writeln!(f, "------------------------------")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | try!(writeln!(f, "<{}@{}> {}", i, env_index, v)) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | try!(self.dump(f, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:55:16 [INFO] [stderr] | [INFO] [stderr] 55 | let left = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:56:17 [INFO] [stderr] | [INFO] [stderr] 56 | let right = try!(get_arg(args, 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:73:16 [INFO] [stderr] | [INFO] [stderr] 73 | let left = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:74:17 [INFO] [stderr] | [INFO] [stderr] 74 | let right = try!(get_arg(args, 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:100:16 [INFO] [stderr] | [INFO] [stderr] 100 | let left = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | let right = try!(get_arg(args, 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:133:15 [INFO] [stderr] | [INFO] [stderr] 133 | let arg = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:167:40 [INFO] [stderr] | [INFO] [stderr] 167 | print!("{:x}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:167:45 [INFO] [stderr] | [INFO] [stderr] 167 | print!("{:x}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:171:38 [INFO] [stderr] | [INFO] [stderr] 171 | print!("{}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:171:43 [INFO] [stderr] | [INFO] [stderr] 171 | print!("{}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:175:38 [INFO] [stderr] | [INFO] [stderr] 175 | print!("{}", try!(try!(get_arg(args, next_arg)).as_float())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:175:43 [INFO] [stderr] | [INFO] [stderr] 175 | print!("{}", try!(try!(get_arg(args, next_arg)).as_float())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:179:38 [INFO] [stderr] | [INFO] [stderr] 179 | print!("{}", try!(get_arg(args, next_arg))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:222:15 [INFO] [stderr] | [INFO] [stderr] 222 | let val = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:227:20 [INFO] [stderr] | [INFO] [stderr] 227 | Ok(Value::Bool(try!(cmp_eq(args)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:231:21 [INFO] [stderr] | [INFO] [stderr] 231 | Ok(Value::Bool(!try!(cmp_eq(args)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:235:20 [INFO] [stderr] | [INFO] [stderr] 235 | Ok(Value::Bool(try!(cmp_order(args, cmp_lt_num, cmp_lt_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:239:20 [INFO] [stderr] | [INFO] [stderr] 239 | Ok(Value::Bool(try!(cmp_order(args, cmp_le_num, cmp_le_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:243:21 [INFO] [stderr] | [INFO] [stderr] 243 | Ok(Value::Bool(!try!(cmp_order(args, cmp_le_num, cmp_le_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:247:21 [INFO] [stderr] | [INFO] [stderr] 247 | Ok(Value::Bool(!try!(cmp_order(args, cmp_lt_num, cmp_lt_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:251:22 [INFO] [stderr] | [INFO] [stderr] 251 | Ok(Value::Number(try!(bin_arithmetic(args, num_add, "+")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:256:33 [INFO] [stderr] | [INFO] [stderr] 256 | return Ok(Value::Number(try!(un_arithmetic(args, num_neg, "-")))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:258:22 [INFO] [stderr] | [INFO] [stderr] 258 | Ok(Value::Number(try!(bin_arithmetic(args, num_sub, "-")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:262:22 [INFO] [stderr] | [INFO] [stderr] 262 | Ok(Value::Number(try!(bin_arithmetic(args, num_mul, "*")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:266:22 [INFO] [stderr] | [INFO] [stderr] 266 | Ok(Value::Number(try!(bin_arithmetic(args, num_div, "/")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:270:22 [INFO] [stderr] | [INFO] [stderr] 270 | Ok(Value::Number(try!(bin_arithmetic(args, num_pow, "^")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:274:22 [INFO] [stderr] | [INFO] [stderr] 274 | Ok(Value::Number(try!(bin_arithmetic(args, num_mod, "%")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/tokenizer.rs:41:28 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn new(items: &mut Iterator) -> Tokenizer { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/tokenizer.rs:112:49 [INFO] [stderr] | [INFO] [stderr] 112 | pub fn try_match_token(&mut self, matcher: &Matcher) -> Option { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/lexer.rs:128:23 [INFO] [stderr] | [INFO] [stderr] 128 | matchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/lexer.rs:150:40 [INFO] [stderr] | [INFO] [stderr] 150 | pub fn matchers(&self) -> &Vec> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/lexer.rs:154:52 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn matchers_mut(&mut self) -> &mut Vec> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: unused import: `sabri::bytecode` [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use sabri::bytecode; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParserErrorValue` [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:4:27 [INFO] [stderr] | [INFO] [stderr] 4 | use parser::{ParserError, ParserErrorValue}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::bytecode::TokenPosition` [INFO] [stderr] --> src/sabri/bytecode/gen.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use self::bytecode::TokenPosition; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Addr` [INFO] [stderr] --> src/sabri/bytecode/run.rs:11:22 [INFO] [stderr] | [INFO] [stderr] 11 | use self::bytecode::{Addr, INVALID}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `RefCell`, `Ref` [INFO] [stderr] --> src/sabri/value.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::cell::{Ref, RefCell}; [INFO] [stderr] | ^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sabri::Value` [INFO] [stderr] --> src/sabri/error.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use sabri::Value; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sabri::Env` [INFO] [stderr] --> src/sabri/symtab.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use sabri::Env; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:72:17 [INFO] [stderr] | [INFO] [stderr] 72 | try!(func.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:75:21 [INFO] [stderr] | [INFO] [stderr] 75 | try!(a.compile(sym, program)) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:91:48 [INFO] [stderr] | [INFO] [stderr] 91 | ... Some(ref e) => try!(e.compile(&cur_sym, program)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:109:30 [INFO] [stderr] | [INFO] [stderr] 109 | _ => try!(statement.compile(&cur_sym, program)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:115:37 [INFO] [stderr] | [INFO] [stderr] 115 | &Operand::Assign => try!(Self::compile_assignment(&*left, &*right, sym, program)), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:121:25 [INFO] [stderr] | [INFO] [stderr] 121 | try!(left.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:122:25 [INFO] [stderr] | [INFO] [stderr] 122 | try!(right.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:142:25 [INFO] [stderr] | [INFO] [stderr] 142 | try!(left.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:143:25 [INFO] [stderr] | [INFO] [stderr] 143 | try!(right.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:161:21 [INFO] [stderr] | [INFO] [stderr] 161 | try!(value.compile(sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | try!(Expression::Block(self.block.clone()).compile(&new_sym, program)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:224:9 [INFO] [stderr] | [INFO] [stderr] 224 | try!(program.close_func_context(end)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:23:24 [INFO] [stderr] | [INFO] [stderr] 23 | stack.push(try!(self.statement())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:39:62 [INFO] [stderr] | [INFO] [stderr] 39 | return Ok(Statement::Expression(Box::new(try!(self.expression())))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:47:33 [INFO] [stderr] | [INFO] [stderr] 47 | let value = try!(self.expression()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:57:52 [INFO] [stderr] | [INFO] [stderr] 57 | _ => Ok(Statement::Expression(Box::new(try!(self.expression())))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:66:81 [INFO] [stderr] | [INFO] [stderr] 66 | TokenType::Block(_) => return Ok(Expression::Block(Box::new(try!(self.block())))), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:102:32 [INFO] [stderr] | [INFO] [stderr] 102 | let expr = try!(self.expression()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:142:59 [INFO] [stderr] | [INFO] [stderr] 142 | let lambda = Lambda::new(params, Box::new(try!(self.block()))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:161:24 [INFO] [stderr] | [INFO] [stderr] 161 | stack.push(try!(self.expression())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:181:20 [INFO] [stderr] | [INFO] [stderr] 181 | Ok(try!(p.parse())) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:192:20 [INFO] [stderr] | [INFO] [stderr] 192 | let expr = try!(self.term()); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:215:23 [INFO] [stderr] | [INFO] [stderr] 215 | ex_stack.push(try!(self.term())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:240:35 [INFO] [stderr] | [INFO] [stderr] 240 | ex_stack.push(try!(self.term())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:248:31 [INFO] [stderr] | [INFO] [stderr] 248 | ex_stack.push(try!(self.term())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/bytecode/run.rs:170:39 [INFO] [stderr] | [INFO] [stderr] 170 | ... let ret = try!(f.call(&self.val_stack[args_pos..], &self.env)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/bytecode/run.rs:204:41 [INFO] [stderr] | [INFO] [stderr] 204 | self.val_stack.push(try!(result)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:74:13 [INFO] [stderr] | [INFO] [stderr] 74 | try!(p.dump(f, env_index - 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:75:13 [INFO] [stderr] | [INFO] [stderr] 75 | try!(writeln!(f, "------------------------------")); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:79:13 [INFO] [stderr] | [INFO] [stderr] 79 | try!(writeln!(f, "<{}@{}> {}", i, env_index, v)) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/env.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | try!(self.dump(f, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:55:16 [INFO] [stderr] | [INFO] [stderr] 55 | let left = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:56:17 [INFO] [stderr] | [INFO] [stderr] 56 | let right = try!(get_arg(args, 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:73:16 [INFO] [stderr] | [INFO] [stderr] 73 | let left = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:74:17 [INFO] [stderr] | [INFO] [stderr] 74 | let right = try!(get_arg(args, 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:100:16 [INFO] [stderr] | [INFO] [stderr] 100 | let left = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:101:17 [INFO] [stderr] | [INFO] [stderr] 101 | let right = try!(get_arg(args, 1)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:133:15 [INFO] [stderr] | [INFO] [stderr] 133 | let arg = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:167:40 [INFO] [stderr] | [INFO] [stderr] 167 | print!("{:x}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:167:45 [INFO] [stderr] | [INFO] [stderr] 167 | print!("{:x}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:171:38 [INFO] [stderr] | [INFO] [stderr] 171 | print!("{}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:171:43 [INFO] [stderr] | [INFO] [stderr] 171 | print!("{}", try!(try!(get_arg(args, next_arg)).as_int())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:175:38 [INFO] [stderr] | [INFO] [stderr] 175 | print!("{}", try!(try!(get_arg(args, next_arg)).as_float())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:175:43 [INFO] [stderr] | [INFO] [stderr] 175 | print!("{}", try!(try!(get_arg(args, next_arg)).as_float())); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:179:38 [INFO] [stderr] | [INFO] [stderr] 179 | print!("{}", try!(get_arg(args, next_arg))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:222:15 [INFO] [stderr] | [INFO] [stderr] 222 | let val = try!(get_arg(args, 0)); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:227:20 [INFO] [stderr] | [INFO] [stderr] 227 | Ok(Value::Bool(try!(cmp_eq(args)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:231:21 [INFO] [stderr] | [INFO] [stderr] 231 | Ok(Value::Bool(!try!(cmp_eq(args)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:235:20 [INFO] [stderr] | [INFO] [stderr] 235 | Ok(Value::Bool(try!(cmp_order(args, cmp_lt_num, cmp_lt_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:239:20 [INFO] [stderr] | [INFO] [stderr] 239 | Ok(Value::Bool(try!(cmp_order(args, cmp_le_num, cmp_le_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:243:21 [INFO] [stderr] | [INFO] [stderr] 243 | Ok(Value::Bool(!try!(cmp_order(args, cmp_le_num, cmp_le_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:247:21 [INFO] [stderr] | [INFO] [stderr] 247 | Ok(Value::Bool(!try!(cmp_order(args, cmp_lt_num, cmp_lt_str)))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:251:22 [INFO] [stderr] | [INFO] [stderr] 251 | Ok(Value::Number(try!(bin_arithmetic(args, num_add, "+")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:256:33 [INFO] [stderr] | [INFO] [stderr] 256 | return Ok(Value::Number(try!(un_arithmetic(args, num_neg, "-")))); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:258:22 [INFO] [stderr] | [INFO] [stderr] 258 | Ok(Value::Number(try!(bin_arithmetic(args, num_sub, "-")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:262:22 [INFO] [stderr] | [INFO] [stderr] 262 | Ok(Value::Number(try!(bin_arithmetic(args, num_mul, "*")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:266:22 [INFO] [stderr] | [INFO] [stderr] 266 | Ok(Value::Number(try!(bin_arithmetic(args, num_div, "/")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:270:22 [INFO] [stderr] | [INFO] [stderr] 270 | Ok(Value::Number(try!(bin_arithmetic(args, num_pow, "^")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead [INFO] [stderr] --> src/sabri/native.rs:274:22 [INFO] [stderr] | [INFO] [stderr] 274 | Ok(Value::Number(try!(bin_arithmetic(args, num_mod, "%")))) [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/tokenizer.rs:41:28 [INFO] [stderr] | [INFO] [stderr] 41 | pub fn new(items: &mut Iterator) -> Tokenizer { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/tokenizer.rs:112:49 [INFO] [stderr] | [INFO] [stderr] 112 | pub fn try_match_token(&mut self, matcher: &Matcher) -> Option { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/lexer.rs:128:23 [INFO] [stderr] | [INFO] [stderr] 128 | matchers: Vec>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/lexer.rs:150:40 [INFO] [stderr] | [INFO] [stderr] 150 | pub fn matchers(&self) -> &Vec> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/sabri/syntax/lexer/lexer.rs:154:52 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn matchers_mut(&mut self) -> &mut Vec> { [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn Matcher` [INFO] [stderr] [INFO] [stderr] warning: unused import: `sabri::bytecode` [INFO] [stderr] --> src/sabri/syntax/parser/ast.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use sabri::bytecode; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ParserErrorValue` [INFO] [stderr] --> src/sabri/syntax/parser/parser.rs:4:27 [INFO] [stderr] | [INFO] [stderr] 4 | use parser::{ParserError, ParserErrorValue}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::bytecode::TokenPosition` [INFO] [stderr] --> src/sabri/bytecode/gen.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use self::bytecode::TokenPosition; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Addr` [INFO] [stderr] --> src/sabri/bytecode/run.rs:11:22 [INFO] [stderr] | [INFO] [stderr] 11 | use self::bytecode::{Addr, INVALID}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `RefCell`, `Ref` [INFO] [stderr] --> src/sabri/value.rs:1:17 [INFO] [stderr] | [INFO] [stderr] 1 | use std::cell::{Ref, RefCell}; [INFO] [stderr] | ^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sabri::Value` [INFO] [stderr] --> src/sabri/error.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use sabri::Value; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sabri::Env` [INFO] [stderr] --> src/sabri/symtab.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use sabri::Env; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:49:66 [INFO] [stderr] | [INFO] [stderr] 49 | Err(why) => panic!("failed to open {}: {}", display, why.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:55:67 [INFO] [stderr] | [INFO] [stderr] 55 | Err(why) => panic!("failed to read {}: {}", display, why.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:49:66 [INFO] [stderr] | [INFO] [stderr] 49 | Err(why) => panic!("failed to open {}: {}", display, why.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/main.rs:55:67 [INFO] [stderr] | [INFO] [stderr] 55 | Err(why) => panic!("failed to read {}: {}", display, why.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0606]: casting `f64` as `i64` is invalid [INFO] [stderr] --> src/sabri/value.rs:38:40 [INFO] [stderr] | [INFO] [stderr] 38 | Value::Number(f) => Ok(f as i64), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0606]: casting `f64` as `i64` is invalid [INFO] [stderr] --> src/sabri/value.rs:38:40 [INFO] [stderr] | [INFO] [stderr] 38 | Value::Number(f) => Ok(f as i64), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error; 74 warnings emitted [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error; 74 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0606`. [INFO] [stderr] error: could not compile `sabri`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] For more information about this error, try `rustc --explain E0606`. [INFO] [stderr] error: could not compile `sabri`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "cb8d0724e8ea88bde627d3862ea280be5adf043e5a4a7e36939ad102f90df054"` [INFO] running `"docker" "rm" "-f" "cb8d0724e8ea88bde627d3862ea280be5adf043e5a4a7e36939ad102f90df054"` [INFO] [stdout] cb8d0724e8ea88bde627d3862ea280be5adf043e5a4a7e36939ad102f90df054