[INFO] crate haru 0.29.5 is already in cache [INFO] checking haru-0.29.5 against try#f149601db42efe10ece8b284ab681fd4a6fcb89c for pr-68766 [INFO] extracting crate haru 0.29.5 into /workspace/builds/worker-6/source [INFO] validating manifest of crates.io crate haru 0.29.5 on toolchain f149601db42efe10ece8b284ab681fd4a6fcb89c [INFO] running `"/workspace/cargo-home/bin/cargo" "+f149601db42efe10ece8b284ab681fd4a6fcb89c" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate haru 0.29.5 [INFO] finished tweaking crates.io crate haru 0.29.5 [INFO] tweaked toml for crates.io crate haru 0.29.5 written to /workspace/builds/worker-6/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+f149601db42efe10ece8b284ab681fd4a6fcb89c" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+f149601db42efe10ece8b284ab681fd4a6fcb89c" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "+f149601db42efe10ece8b284ab681fd4a6fcb89c" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 125b3ecb0baa78c1e6338485d85d20824c97469f61b50f066a0c53632d1f0962 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "125b3ecb0baa78c1e6338485d85d20824c97469f61b50f066a0c53632d1f0962"` [INFO] [stderr] Compiling nix v0.13.1 [INFO] [stderr] Checking hashbrown v0.4.0 [INFO] [stderr] Compiling haru v0.29.5 (/opt/rustwide/workdir) [INFO] [stderr] Compiling num-derive v0.2.5 [INFO] [stderr] Compiling haru-decorator v0.21.0 [INFO] [stderr] Checking rustyline v4.1.0 [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:19:35 [INFO] [stderr] | [INFO] [stderr] 19 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:25:25 [INFO] [stderr] | [INFO] [stderr] 25 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:34:29 [INFO] [stderr] | [INFO] [stderr] 34 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:39:31 [INFO] [stderr] | [INFO] [stderr] 39 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:42:39 [INFO] [stderr] | [INFO] [stderr] 42 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | ... vm.malloc("Expected command to be of string type".to_string().into()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:53:33 [INFO] [stderr] | [INFO] [stderr] 53 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:62:39 [INFO] [stderr] | [INFO] [stderr] 62 | ... let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:66:37 [INFO] [stderr] | [INFO] [stderr] 66 | ... vm.stdlib.as_ref().unwrap().invalid_argument_error.clone(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:72:44 [INFO] [stderr] | [INFO] [stderr] 72 | ... Value::Str(vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:78:41 [INFO] [stderr] | [INFO] [stderr] 78 | ... hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:92:23 [INFO] [stderr] | [INFO] [stderr] 92 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:95:31 [INFO] [stderr] | [INFO] [stderr] 95 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:100:21 [INFO] [stderr] | [INFO] [stderr] 100 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:109:25 [INFO] [stderr] | [INFO] [stderr] 109 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:113:15 [INFO] [stderr] | [INFO] [stderr] 113 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:118:23 [INFO] [stderr] | [INFO] [stderr] 118 | Value::Record(vm.stdlib.as_ref().unwrap().cmd_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:199:29 [INFO] [stderr] | [INFO] [stderr] 199 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:201:25 [INFO] [stderr] | [INFO] [stderr] 201 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:201:54 [INFO] [stderr] | [INFO] [stderr] 201 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:211:29 [INFO] [stderr] | [INFO] [stderr] 211 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:213:25 [INFO] [stderr] | [INFO] [stderr] 213 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:213:54 [INFO] [stderr] | [INFO] [stderr] 213 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:222:15 [INFO] [stderr] | [INFO] [stderr] 222 | let arr = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:224:47 [INFO] [stderr] | [INFO] [stderr] 224 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:226:25 [INFO] [stderr] | [INFO] [stderr] 226 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:226:54 [INFO] [stderr] | [INFO] [stderr] 226 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:230:47 [INFO] [stderr] | [INFO] [stderr] 230 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:232:25 [INFO] [stderr] | [INFO] [stderr] 232 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:232:54 [INFO] [stderr] | [INFO] [stderr] 232 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:242:16 [INFO] [stderr] | [INFO] [stderr] 242 | let prec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:246:23 [INFO] [stderr] | [INFO] [stderr] 246 | Value::Record(vm.stdlib.as_ref().unwrap().proc_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:16:23 [INFO] [stderr] | [INFO] [stderr] 16 | Value::Record(vm.stdlib.as_ref().unwrap().dir_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:25:19 [INFO] [stderr] | [INFO] [stderr] 25 | let entries = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:36:38 [INFO] [stderr] | [INFO] [stderr] 36 | .push(Value::Str(vm.malloc(path.to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/env.rs:11:33 [INFO] [stderr] | [INFO] [stderr] 11 | Ok(value) => Value::Str(vm.malloc(value.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/env.rs:27:18 [INFO] [stderr] | [INFO] [stderr] 27 | let record = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/env.rs:31:37 [INFO] [stderr] | [INFO] [stderr] 31 | .insert(key, Value::Str(vm.malloc(value.into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:15:25 [INFO] [stderr] | [INFO] [stderr] 15 | let target_ip = vm.code.as_ref().unwrap().len() as u32; [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | vm.code.take().unwrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | vm.interned_strings.take().unwrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | vm.interned_strings = c.interned_strings.take(); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | vm.code = Some(c.into_code()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:31:19 [INFO] [stderr] | [INFO] [stderr] 31 | let ctx = vm.new_exec_ctx(); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | vm.jmp(target_ip); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | vm.execute(); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | vm.restore_exec_ctx(ctx); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:31:15 [INFO] [stderr] | [INFO] [stderr] 31 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:40:31 [INFO] [stderr] | [INFO] [stderr] 40 | Value::Record(vm.stdlib.as_ref().unwrap().io_error.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:44:28 [INFO] [stderr] | [INFO] [stderr] 44 | Value::Str(vm.malloc(format!("{:?}", err).into())).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:47:25 [INFO] [stderr] | [INFO] [stderr] 47 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:52:23 [INFO] [stderr] | [INFO] [stderr] 52 | Value::Record(vm.stdlib.as_ref().unwrap().file_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:73:16 [INFO] [stderr] | [INFO] [stderr] 73 | Value::Str(vm.malloc(s.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/io.rs:22:16 [INFO] [stderr] | [INFO] [stderr] 22 | Value::Str(vm.malloc(buffer.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:49:29 [INFO] [stderr] | [INFO] [stderr] 49 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:51:25 [INFO] [stderr] | [INFO] [stderr] 51 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:51:54 [INFO] [stderr] | [INFO] [stderr] 51 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:68:29 [INFO] [stderr] | [INFO] [stderr] 68 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:70:25 [INFO] [stderr] | [INFO] [stderr] 70 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:70:54 [INFO] [stderr] | [INFO] [stderr] 70 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:86:15 [INFO] [stderr] | [INFO] [stderr] 86 | let arr = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:88:47 [INFO] [stderr] | [INFO] [stderr] 88 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:90:25 [INFO] [stderr] | [INFO] [stderr] 90 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:90:54 [INFO] [stderr] | [INFO] [stderr] 90 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:94:47 [INFO] [stderr] | [INFO] [stderr] 94 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:96:25 [INFO] [stderr] | [INFO] [stderr] 96 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:96:54 [INFO] [stderr] | [INFO] [stderr] 96 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/sys.rs:7:17 [INFO] [stderr] | [INFO] [stderr] 7 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/sys.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | .push(Value::Str(vm.malloc(arg.to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | duration_to_record(vm, SystemTime::now().duration_since(UNIX_EPOCH).unwrap()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | vm, [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:79:25 [INFO] [stderr] | [INFO] [stderr] 79 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:80:27 [INFO] [stderr] | [INFO] [stderr] 80 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:83:35 [INFO] [stderr] | [INFO] [stderr] 83 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:89:25 [INFO] [stderr] | [INFO] [stderr] 89 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:76:21 [INFO] [stderr] | [INFO] [stderr] 76 | let new_array = vm.malloc(array.as_ref().clone()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:91:21 [INFO] [stderr] | [INFO] [stderr] 91 | let new_array = vm.malloc(Vec::with_capacity(array.as_ref().len())); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:96:28 [INFO] [stderr] | [INFO] [stderr] 96 | if let Some(val) = vm.call(fun.wrap(), &args) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:107:21 [INFO] [stderr] | [INFO] [stderr] 107 | let new_array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:112:31 [INFO] [stderr] | [INFO] [stderr] 112 | if let Some(filter) = vm.call(fun.wrap(), &args) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:113:51 [INFO] [stderr] | [INFO] [stderr] 113 | if unsafe { filter.unwrap() }.is_true(vm) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:131:28 [INFO] [stderr] | [INFO] [stderr] 131 | if let Some(val) = vm.call(fun.wrap(), &args) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:172:16 [INFO] [stderr] | [INFO] [stderr] 172 | Value::Str(vm.malloc(s.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:17:29 [INFO] [stderr] | [INFO] [stderr] 17 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:18:31 [INFO] [stderr] | [INFO] [stderr] 18 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:21:39 [INFO] [stderr] | [INFO] [stderr] 21 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:26:36 [INFO] [stderr] | [INFO] [stderr] 26 | Value::Str(vm.malloc("Can't convert string to float".to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:35:25 [INFO] [stderr] | [INFO] [stderr] 35 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:36:27 [INFO] [stderr] | [INFO] [stderr] 36 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:39:35 [INFO] [stderr] | [INFO] [stderr] 39 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:44:32 [INFO] [stderr] | [INFO] [stderr] 44 | Value::Str(vm.malloc("Can't convert value to float".to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:17:31 [INFO] [stderr] | [INFO] [stderr] 17 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:20:39 [INFO] [stderr] | [INFO] [stderr] 20 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:26:29 [INFO] [stderr] | [INFO] [stderr] 26 | ... vm.malloc("Can't convert string to integer".to_string().into()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:36:25 [INFO] [stderr] | [INFO] [stderr] 36 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:37:27 [INFO] [stderr] | [INFO] [stderr] 37 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:16:27 [INFO] [stderr] | [INFO] [stderr] 16 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:19:35 [INFO] [stderr] | [INFO] [stderr] 19 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:40:35 [INFO] [stderr] | [INFO] [stderr] 40 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:25:25 [INFO] [stderr] | [INFO] [stderr] 25 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:34:29 [INFO] [stderr] | [INFO] [stderr] 34 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:45:32 [INFO] [stderr] | [INFO] [stderr] 45 | Value::Str(vm.malloc("Can't convert value to integer".to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:39:31 [INFO] [stderr] | [INFO] [stderr] 39 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:42:39 [INFO] [stderr] | [INFO] [stderr] 42 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:58:20 [INFO] [stderr] | [INFO] [stderr] 58 | Value::Str(vm.malloc(ch.to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:48:29 [INFO] [stderr] | [INFO] [stderr] 48 | ... vm.malloc("Expected command to be of string type".to_string().into()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:66:16 [INFO] [stderr] | [INFO] [stderr] 66 | Value::Str(vm.malloc(format!("0x{:x}", i).into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:53:33 [INFO] [stderr] | [INFO] [stderr] 53 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/record.rs:8:19 [INFO] [stderr] | [INFO] [stderr] 8 | Value::Record(vm.malloc(Record::new())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/record.rs:13:17 [INFO] [stderr] | [INFO] [stderr] 13 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:62:39 [INFO] [stderr] | [INFO] [stderr] 62 | ... let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/record.rs:17:30 [INFO] [stderr] | [INFO] [stderr] 17 | .push(Value::Str(vm.malloc(key.clone())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:66:37 [INFO] [stderr] | [INFO] [stderr] 66 | ... vm.stdlib.as_ref().unwrap().invalid_argument_error.clone(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:69:16 [INFO] [stderr] | [INFO] [stderr] 69 | Value::Str(vm.malloc(ss.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:109:16 [INFO] [stderr] | [INFO] [stderr] 109 | Value::Str(vm.malloc(ss.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:124:17 [INFO] [stderr] | [INFO] [stderr] 124 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:129:30 [INFO] [stderr] | [INFO] [stderr] 129 | .push(Value::Str(vm.malloc(ss.clone().to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:72:44 [INFO] [stderr] | [INFO] [stderr] 72 | ... Value::Str(vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:78:41 [INFO] [stderr] | [INFO] [stderr] 78 | ... hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:159:17 [INFO] [stderr] | [INFO] [stderr] 159 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:162:35 [INFO] [stderr] | [INFO] [stderr] 162 | array_ref.push(Value::Str(vm.malloc(ch.to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:92:23 [INFO] [stderr] | [INFO] [stderr] 92 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:95:31 [INFO] [stderr] | [INFO] [stderr] 95 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:100:21 [INFO] [stderr] | [INFO] [stderr] 100 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:109:25 [INFO] [stderr] | [INFO] [stderr] 109 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:113:15 [INFO] [stderr] | [INFO] [stderr] 113 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:118:23 [INFO] [stderr] | [INFO] [stderr] 118 | Value::Record(vm.stdlib.as_ref().unwrap().cmd_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:199:29 [INFO] [stderr] | [INFO] [stderr] 199 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:201:25 [INFO] [stderr] | [INFO] [stderr] 201 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ast.rs:165:18 [INFO] [stderr] | [INFO] [stderr] 165 | 0...0xff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ast.rs:169:22 [INFO] [stderr] | [INFO] [stderr] 169 | 0x100...0xffff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:201:54 [INFO] [stderr] | [INFO] [stderr] 201 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:211:29 [INFO] [stderr] | [INFO] [stderr] 211 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:213:25 [INFO] [stderr] | [INFO] [stderr] 213 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:213:54 [INFO] [stderr] | [INFO] [stderr] 213 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:222:15 [INFO] [stderr] | [INFO] [stderr] 222 | let arr = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:224:47 [INFO] [stderr] | [INFO] [stderr] 224 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:226:25 [INFO] [stderr] | [INFO] [stderr] 226 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:226:54 [INFO] [stderr] | [INFO] [stderr] 226 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:230:47 [INFO] [stderr] | [INFO] [stderr] 230 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:232:25 [INFO] [stderr] | [INFO] [stderr] 232 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:232:54 [INFO] [stderr] | [INFO] [stderr] 232 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:242:16 [INFO] [stderr] | [INFO] [stderr] 242 | let prec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ast.rs:173:24 [INFO] [stderr] | [INFO] [stderr] 173 | 0x10000...0xffffffff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:211:40 [INFO] [stderr] | [INFO] [stderr] 211 | pub exprs: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [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/ast.rs:244:35 [INFO] [stderr] | [INFO] [stderr] 244 | pub stmt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/cmd.rs:246:23 [INFO] [stderr] | [INFO] [stderr] 246 | Value::Record(vm.stdlib.as_ref().unwrap().proc_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:316:40 [INFO] [stderr] | [INFO] [stderr] 316 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:371:34 [INFO] [stderr] | [INFO] [stderr] 371 | pub val: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:400:35 [INFO] [stderr] | [INFO] [stderr] 400 | pub cond: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:401:35 [INFO] [stderr] | [INFO] [stderr] 401 | pub then: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:402:34 [INFO] [stderr] | [INFO] [stderr] 402 | pub alt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:498:35 [INFO] [stderr] | [INFO] [stderr] 498 | pub left: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:499:36 [INFO] [stderr] | [INFO] [stderr] 499 | pub right: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:743:35 [INFO] [stderr] | [INFO] [stderr] 743 | pub left: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:744:36 [INFO] [stderr] | [INFO] [stderr] 744 | pub right: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:832:37 [INFO] [stderr] | [INFO] [stderr] 832 | pub callee: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:16:23 [INFO] [stderr] | [INFO] [stderr] 16 | Value::Record(vm.stdlib.as_ref().unwrap().dir_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:833:39 [INFO] [stderr] | [INFO] [stderr] 833 | pub args: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:25:19 [INFO] [stderr] | [INFO] [stderr] 25 | let entries = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:885:37 [INFO] [stderr] | [INFO] [stderr] 885 | MemExprIden(std::boxed::Box), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/dir.rs:36:38 [INFO] [stderr] | [INFO] [stderr] 36 | .push(Value::Str(vm.malloc(path.to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:886:35 [INFO] [stderr] | [INFO] [stderr] 886 | MemExprNs(std::boxed::Box), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:887:33 [INFO] [stderr] | [INFO] [stderr] 887 | MemExpr(std::boxed::Box), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:888:38 [INFO] [stderr] | [INFO] [stderr] 888 | CallExpr(Vec>), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:896:35 [INFO] [stderr] | [INFO] [stderr] 896 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:897:35 [INFO] [stderr] | [INFO] [stderr] 897 | pub then: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:898:41 [INFO] [stderr] | [INFO] [stderr] 898 | pub alt: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:951:35 [INFO] [stderr] | [INFO] [stderr] 951 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:952:35 [INFO] [stderr] | [INFO] [stderr] 952 | pub then: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:997:35 [INFO] [stderr] | [INFO] [stderr] 997 | pub from: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:998:33 [INFO] [stderr] | [INFO] [stderr] 998 | pub to: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:999:35 [INFO] [stderr] | [INFO] [stderr] 999 | pub step: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1000:35 [INFO] [stderr] | [INFO] [stderr] 1000 | pub stmt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/env.rs:11:33 [INFO] [stderr] | [INFO] [stderr] 11 | Ok(value) => Value::Str(vm.malloc(value.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1078:35 [INFO] [stderr] | [INFO] [stderr] 1078 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1079:35 [INFO] [stderr] | [INFO] [stderr] 1079 | pub stmt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1206:42 [INFO] [stderr] | [INFO] [stderr] 1206 | pub expr: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/env.rs:27:18 [INFO] [stderr] | [INFO] [stderr] 27 | let record = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1278:40 [INFO] [stderr] | [INFO] [stderr] 1278 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1335:36 [INFO] [stderr] | [INFO] [stderr] 1335 | pub etype: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1336:40 [INFO] [stderr] | [INFO] [stderr] 1336 | pub id: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/env.rs:31:37 [INFO] [stderr] | [INFO] [stderr] 31 | .insert(key, Value::Str(vm.malloc(value.into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:15:25 [INFO] [stderr] | [INFO] [stderr] 15 | let target_ip = vm.code.as_ref().unwrap().len() as u32; [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1337:40 [INFO] [stderr] | [INFO] [stderr] 1337 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 17 | vm.code.take().unwrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1355:35 [INFO] [stderr] | [INFO] [stderr] 1355 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | vm.interned_strings.take().unwrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1375:35 [INFO] [stderr] | [INFO] [stderr] 1375 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | vm.interned_strings = c.interned_strings.take(); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1421:40 [INFO] [stderr] | [INFO] [stderr] 1421 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | vm.code = Some(c.into_code()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:31:19 [INFO] [stderr] | [INFO] [stderr] 31 | let ctx = vm.new_exec_ctx(); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | vm.jmp(target_ip); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | vm.execute(); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:80:149 [INFO] [stderr] | [INFO] [stderr] 80 | fn __parse_start < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec> > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = match __parse_program_prologue ( __input , __state , __pos ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_statement_program ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/eval.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | vm.restore_exec_ctx(ctx); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:31:15 [INFO] [stderr] | [INFO] [stderr] 31 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:40:31 [INFO] [stderr] | [INFO] [stderr] 40 | Value::Record(vm.stdlib.as_ref().unwrap().io_error.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:639 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:653 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:667 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:44:28 [INFO] [stderr] | [INFO] [stderr] 44 | Value::Str(vm.malloc(format!("{:?}", err).into())).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:1811 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:86:548 [INFO] [stderr] | [INFO] [stderr] 86 | fn __parse_float_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "float literal" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:47:25 [INFO] [stderr] | [INFO] [stderr] 47 | hana_raise!(vm, Value::Record(rec)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:52:23 [INFO] [stderr] | [INFO] [stderr] 52 | Value::Record(vm.stdlib.as_ref().unwrap().file_rec.clone()).wrap(), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:86:1313 [INFO] [stderr] | [INFO] [stderr] 86 | fn __parse_float_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "float literal" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:96:343 [INFO] [stderr] | [INFO] [stderr] 96 | fn __parse_id_start < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:96:357 [INFO] [stderr] | [INFO] [stderr] 96 | fn __parse_id_start < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:98:343 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_id_chars < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' | '0' ... '9' | '?' | '!' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:98:357 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_id_chars < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' | '0' ... '9' | '?' | '!' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:98:383 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_id_chars < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' | '0' ... '9' | '?' | '!' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:122:145 [INFO] [stderr] | [INFO] [stderr] 122 | fn __parse_value < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_float_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(FloatLiteral, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_int_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(IntLiteral, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_string_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(StrLiteral, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(Identifier, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_array_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_record_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_function_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . suppress_fail += 1 ; let res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:73:16 [INFO] [stderr] | [INFO] [stderr] 73 | Value::Str(vm.malloc(s.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:124:150 [INFO] [stderr] | [INFO] [stderr] 124 | fn __parse_array_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = slice_eq ( __input , __state , __pos , "[" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { slice_eq ( __input , __state , __pos , "]" ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ArrayExpr, ps, pe, exprs: vec![]) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "[" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , fexpr ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , lexpr ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "]" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/file.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:130:150 [INFO] [stderr] | [INFO] [stderr] 130 | fn __parse_unary_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = { let str_start = __pos ; match { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "not" ) ; match __seq_res { Matched ( __pos , _ ) => { { __state . suppress_fail += 1 ; let __assert_res = match __parse_id_chars ( __input , __state , __pos ) { Matched ( pos , _ ) => Matched ( pos , ( ) ) , Failed => Failed , } ; __state . suppress_fail -= 1 ; match __assert_res { Failed => Matched ( __pos , ( ) ) , Matched ( .. ) => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => slice_eq ( __input , __state , __pos , "-" ) } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , op ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_value ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , val ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:140:151 [INFO] [stderr] | [INFO] [stderr] 140 | fn __parse_record_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "record" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_record_body_stmt ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:146:153 [INFO] [stderr] | [INFO] [stderr] 146 | fn __parse_function_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "function" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , i ) => { Matched ( __pos , { i } ) } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_function_arguments ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , args ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement_no_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:163:144 [INFO] [stderr] | [INFO] [stderr] 163 | fn __parse_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_assignmentexpr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "expression" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:165:154 [INFO] [stderr] | [INFO] [stderr] 165 | fn __parse_assignmentexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_condexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Assign) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Adds) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Subs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Muls) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Divs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "%=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mods) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_condexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:165:395 [INFO] [stderr] | [INFO] [stderr] 165 | fn __parse_assignmentexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_condexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Assign) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Adds) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Subs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Muls) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Divs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "%=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mods) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_condexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:167:148 [INFO] [stderr] | [INFO] [stderr] 167 | fn __parse_condexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_binexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , cond ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "?" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_binexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , then ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ":" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_binexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , alt ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(CondExpr, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/io.rs:22:16 [INFO] [stderr] | [INFO] [stderr] 22 | Value::Str(vm.malloc(buffer.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:49:29 [INFO] [stderr] | [INFO] [stderr] 49 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:172:147 [INFO] [stderr] | [INFO] [stderr] 172 | fn __parse_binexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_callexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "&" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseAnd) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "|" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseOr ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xor" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseXor ) } ; __repeat_pos = __pos ; continue ; } } } if 1i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "and" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::And) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "or" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Or ) } ; __repeat_pos = __pos ; continue ; } } } if 2i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "==" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Eq ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "!=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Neq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Gt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Lt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Geq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Leq) } ; __repeat_pos = __pos ; continue ; } } } if 3i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "of" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 4i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Of ) } ; __repeat_pos = __pos ; continue ; } } } if 4i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Add) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Sub) } ; __repeat_pos = __pos ; continue ; } } } if 5i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mul) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Div) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "mod" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mod) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_callexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:172:388 [INFO] [stderr] | [INFO] [stderr] 172 | fn __parse_binexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_callexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "&" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseAnd) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "|" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseOr ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xor" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseXor ) } ; __repeat_pos = __pos ; continue ; } } } if 1i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "and" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::And) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "or" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Or ) } ; __repeat_pos = __pos ; continue ; } } } if 2i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "==" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Eq ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "!=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Neq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Gt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Lt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Geq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Leq) } ; __repeat_pos = __pos ; continue ; } } } if 3i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "of" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 4i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Of ) } ; __repeat_pos = __pos ; continue ; } } } if 4i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Add) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Sub) } ; __repeat_pos = __pos ; continue ; } } } if 5i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mul) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Div) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "mod" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mod) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_callexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:174:148 [INFO] [stderr] | [INFO] [stderr] 174 | fn __parse_callexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_memexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _left ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_callexpr_args ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , args ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_callexpr_arm ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , _right ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:175:28 [INFO] [stderr] | [INFO] [stderr] 175 | let mut left : Box = boxed!(CallExpr, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:51:25 [INFO] [stderr] | [INFO] [stderr] 51 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:51:54 [INFO] [stderr] | [INFO] [stderr] 51 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:213:157 [INFO] [stderr] | [INFO] [stderr] 213 | fn __parse_callexpr_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , farg ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , larg ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:221:68 [INFO] [stderr] | [INFO] [stderr] 221 | boxed!(Identifier, ps, pe, val: id) as std::boxed::Box) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "::" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_word ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:223:68 [INFO] [stderr] | [INFO] [stderr] 223 | boxed!(Identifier, ps, pe, val: id) as std::boxed::Box) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "[" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "]" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:231:147 [INFO] [stderr] | [INFO] [stderr] 231 | fn __parse_memexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_unary_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _left ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_memexpr_arm ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , _right ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:244:152 [INFO] [stderr] | [INFO] [stderr] 244 | fn __parse_memexpr_arm < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < (std::boxed::Box, bool /* is_expr */, bool /* is_namespace */) > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_word ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:245:65 [INFO] [stderr] | [INFO] [stderr] 245 | (boxed!(Identifier, ps, pe, val: id) as std::boxed::Box, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:247:65 [INFO] [stderr] | [INFO] [stderr] 247 | (boxed!(Identifier, ps, pe, val: id) as std::boxed::Box, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:253:164 [INFO] [stderr] | [INFO] [stderr] 253 | fn __parse_statement_program_no_eos < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_block_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_if_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_while_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_for_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_for_in_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_function_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_record_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_try_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_raise_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_use_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_expr_stmt ( __input , __state , __pos ) } } } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:255:157 [INFO] [stderr] | [INFO] [stderr] 255 | fn __parse_statement_program < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement_program_no_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "statement" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:68:29 [INFO] [stderr] | [INFO] [stderr] 68 | Ok(s) => Value::Str(vm.malloc(s.into())), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:70:25 [INFO] [stderr] | [INFO] [stderr] 70 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:70:54 [INFO] [stderr] | [INFO] [stderr] 70 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:257:156 [INFO] [stderr] | [INFO] [stderr] 257 | fn __parse_statement_no_eos < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_statement_program_no_eos ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_return_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_continue_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_break_stmt ( __input , __state , __pos ) } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:86:15 [INFO] [stderr] | [INFO] [stderr] 86 | let arr = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:259:149 [INFO] [stderr] | [INFO] [stderr] 259 | fn __parse_statement < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement_no_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "statement" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:88:47 [INFO] [stderr] | [INFO] [stderr] 88 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:90:25 [INFO] [stderr] | [INFO] [stderr] 90 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:261:150 [INFO] [stderr] | [INFO] [stderr] 261 | fn __parse_block_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "begin" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_statement ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(BlockStatement, ps, pe, stmts: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "begin" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(BlockStatement, ps, pe, stmts: Vec::new()) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "block statement" ) ; Failed } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:263:149 [INFO] [stderr] | [INFO] [stderr] 263 | fn __parse_then_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = slice_eq ( __input , __state , __pos , "then" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { __state . suppress_fail += 1 ; let res = __parse_block_stmt ( __input , __state , __pos ) ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "block or then " ) ; Failed } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:265:147 [INFO] [stderr] | [INFO] [stderr] 265 | fn __parse_if_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "if" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = match { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "else" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(IfStatement, ps, pe, expr: e, then: s, alt: a) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:267:150 [INFO] [stderr] | [INFO] [stderr] 267 | fn __parse_while_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "while" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(WhileStatement, ps, pe, expr: e, then: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:269:148 [INFO] [stderr] | [INFO] [stderr] 269 | fn __parse_for_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "for" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "=" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , from ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "to" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { true } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = slice_eq ( __input , __state , __pos , "downto" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { false } ) } Failed => Failed , } } } } ; match __seq_res { Matched ( __pos , dir ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , to ) => { { let __seq_res = match { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "step" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , step ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:282:151 [INFO] [stderr] | [INFO] [stderr] 282 | fn __parse_for_in_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "for" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "in" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , expr ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:90:54 [INFO] [stderr] | [INFO] [stderr] 90 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:289:153 [INFO] [stderr] | [INFO] [stderr] 289 | fn __parse_continue_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "continue" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ContinueStatement, ps, pe,) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:94:47 [INFO] [stderr] | [INFO] [stderr] 94 | Ok(s) => arr.as_mut().push(Value::Str(vm.malloc(s.into())).wrap()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:291:150 [INFO] [stderr] | [INFO] [stderr] 291 | fn __parse_break_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "break" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(BreakStatement, ps, pe,) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:96:25 [INFO] [stderr] | [INFO] [stderr] 96 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:293:148 [INFO] [stderr] | [INFO] [stderr] 293 | fn __parse_try_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "try" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_statement ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , stmts ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_case_stmt ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , cases ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(TryStatement, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:302:150 [INFO] [stderr] | [INFO] [stderr] 302 | fn __parse_raise_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "raise" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , expr ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(RaiseStatement, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/proc.rs:96:54 [INFO] [stderr] | [INFO] [stderr] 96 | hana_raise!(vm, utf8_decoding_error(err, vm)); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:305:148 [INFO] [stderr] | [INFO] [stderr] 305 | fn __parse_use_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "use" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_string_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , path ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(UseStatement, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:320:153 [INFO] [stderr] | [INFO] [stderr] 320 | fn __parse_function_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "function" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_word ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_function_arguments ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , args ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:329:151 [INFO] [stderr] | [INFO] [stderr] 329 | fn __parse_return_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "return" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ReturnStatement, ps, pe, expr: e) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/sys.rs:7:17 [INFO] [stderr] | [INFO] [stderr] 7 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/sys.rs:11:30 [INFO] [stderr] | [INFO] [stderr] 11 | .push(Value::Str(vm.malloc(arg.to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:21:24 [INFO] [stderr] | [INFO] [stderr] 21 | duration_to_record(vm, SystemTime::now().duration_since(UNIX_EPOCH).unwrap()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:331:156 [INFO] [stderr] | [INFO] [stderr] 331 | fn __parse_record_body_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __choice_res = __parse_function_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_record_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_expr_stmt ( __input , __state , __pos ) } } } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "statement" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | vm, [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:333:151 [INFO] [stderr] | [INFO] [stderr] 333 | fn __parse_record_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "record" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_record_body_stmt ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:79:25 [INFO] [stderr] | [INFO] [stderr] 79 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:341:149 [INFO] [stderr] | [INFO] [stderr] 341 | fn __parse_expr_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ExprStatement, ps, pe, expr: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:343:90 [INFO] [stderr] | [INFO] [stderr] 343 | pub fn start < 'input > ( __input : & 'input str ) -> ParseResult < Vec> > { # ! [ allow ( non_snake_case , unused ) ] let mut __state = ParseState :: new ( ) ; match __parse_start ( __input , & mut __state , 0 ) { Matched ( __pos , __value ) => { if __pos == __input . len ( ) { return Ok ( __value ) } } _ => { } } let ( __line , __col ) = pos_to_line ( __input , __state . max_err_pos ) ; Err ( ParseError { line : __line , column : __col , offset : __state . max_err_pos , expected : __state . expected , } ) } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::vmbindings::interned_string_map::InternedStringMap` [INFO] [stderr] --> src/hanayo/eval.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::vmbindings::interned_string_map::InternedStringMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:80:27 [INFO] [stderr] | [INFO] [stderr] 80 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:83:35 [INFO] [stderr] | [INFO] [stderr] 83 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/time.rs:89:25 [INFO] [stderr] | [INFO] [stderr] 89 | vm.malloc( [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:76:21 [INFO] [stderr] | [INFO] [stderr] 76 | let new_array = vm.malloc(array.as_ref().clone()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/vmbindings/record.rs:19:34 [INFO] [stderr] | [INFO] [stderr] 19 | pub native_field: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:91:21 [INFO] [stderr] | [INFO] [stderr] 91 | let new_array = vm.malloc(Vec::with_capacity(array.as_ref().len())); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:96:28 [INFO] [stderr] | [INFO] [stderr] 96 | if let Some(val) = vm.call(fun.wrap(), &args) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:107:21 [INFO] [stderr] | [INFO] [stderr] 107 | let new_array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:112:31 [INFO] [stderr] | [INFO] [stderr] 112 | if let Some(filter) = vm.call(fun.wrap(), &args) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:113:51 [INFO] [stderr] | [INFO] [stderr] 113 | if unsafe { filter.unwrap() }.is_true(vm) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:131:28 [INFO] [stderr] | [INFO] [stderr] 131 | if let Some(val) = vm.call(fun.wrap(), &args) { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/array.rs:172:16 [INFO] [stderr] | [INFO] [stderr] 172 | Value::Str(vm.malloc(s.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:17:29 [INFO] [stderr] | [INFO] [stderr] 17 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:18:31 [INFO] [stderr] | [INFO] [stderr] 18 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:21:39 [INFO] [stderr] | [INFO] [stderr] 21 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:26:36 [INFO] [stderr] | [INFO] [stderr] 26 | Value::Str(vm.malloc("Can't convert string to float".to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:35:25 [INFO] [stderr] | [INFO] [stderr] 35 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:36:27 [INFO] [stderr] | [INFO] [stderr] 36 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:39:35 [INFO] [stderr] | [INFO] [stderr] 39 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/float.rs:44:32 [INFO] [stderr] | [INFO] [stderr] 44 | Value::Str(vm.malloc("Can't convert value to float".to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:17:31 [INFO] [stderr] | [INFO] [stderr] 17 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:20:39 [INFO] [stderr] | [INFO] [stderr] 20 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:26:29 [INFO] [stderr] | [INFO] [stderr] 26 | ... vm.malloc("Can't convert string to integer".to_string().into()), [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:36:25 [INFO] [stderr] | [INFO] [stderr] 36 | hana_raise!(vm, { [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:37:27 [INFO] [stderr] | [INFO] [stderr] 37 | let rec = vm.malloc(Record::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:40:35 [INFO] [stderr] | [INFO] [stderr] 40 | Value::Record(vm.stdlib.as_ref().unwrap().invalid_argument_error.clone()) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:45:32 [INFO] [stderr] | [INFO] [stderr] 45 | Value::Str(vm.malloc("Can't convert value to integer".to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:58:20 [INFO] [stderr] | [INFO] [stderr] 58 | Value::Str(vm.malloc(ch.to_string().into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/int.rs:66:16 [INFO] [stderr] | [INFO] [stderr] 66 | Value::Str(vm.malloc(format!("0x{:x}", i).into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/record.rs:8:19 [INFO] [stderr] | [INFO] [stderr] 8 | Value::Record(vm.malloc(Record::new())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/record.rs:13:17 [INFO] [stderr] | [INFO] [stderr] 13 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/record.rs:17:30 [INFO] [stderr] | [INFO] [stderr] 17 | .push(Value::Str(vm.malloc(key.clone())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:69:16 [INFO] [stderr] | [INFO] [stderr] 69 | Value::Str(vm.malloc(ss.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:109:16 [INFO] [stderr] | [INFO] [stderr] 109 | Value::Str(vm.malloc(ss.into())) [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:124:17 [INFO] [stderr] | [INFO] [stderr] 124 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:129:30 [INFO] [stderr] | [INFO] [stderr] 129 | .push(Value::Str(vm.malloc(ss.clone().to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:159:17 [INFO] [stderr] | [INFO] [stderr] 159 | let array = vm.malloc(Vec::new()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find value `vm` in this scope [INFO] [stderr] --> src/hanayo/string.rs:162:35 [INFO] [stderr] | [INFO] [stderr] 162 | array_ref.push(Value::Str(vm.malloc(ch.to_string().into())).wrap()); [INFO] [stderr] | ^^ not found in this scope [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ast.rs:165:18 [INFO] [stderr] | [INFO] [stderr] 165 | 0...0xff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ast.rs:169:22 [INFO] [stderr] | [INFO] [stderr] 169 | 0x100...0xffff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/ast.rs:173:24 [INFO] [stderr] | [INFO] [stderr] 173 | 0x10000...0xffffffff => { [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:211:40 [INFO] [stderr] | [INFO] [stderr] 211 | pub exprs: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [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/ast.rs:244:35 [INFO] [stderr] | [INFO] [stderr] 244 | pub stmt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:316:40 [INFO] [stderr] | [INFO] [stderr] 316 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:371:34 [INFO] [stderr] | [INFO] [stderr] 371 | pub val: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:400:35 [INFO] [stderr] | [INFO] [stderr] 400 | pub cond: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:401:35 [INFO] [stderr] | [INFO] [stderr] 401 | pub then: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:402:34 [INFO] [stderr] | [INFO] [stderr] 402 | pub alt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:498:35 [INFO] [stderr] | [INFO] [stderr] 498 | pub left: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:499:36 [INFO] [stderr] | [INFO] [stderr] 499 | pub right: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:743:35 [INFO] [stderr] | [INFO] [stderr] 743 | pub left: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:744:36 [INFO] [stderr] | [INFO] [stderr] 744 | pub right: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:832:37 [INFO] [stderr] | [INFO] [stderr] 832 | pub callee: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:833:39 [INFO] [stderr] | [INFO] [stderr] 833 | pub args: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:885:37 [INFO] [stderr] | [INFO] [stderr] 885 | MemExprIden(std::boxed::Box), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:886:35 [INFO] [stderr] | [INFO] [stderr] 886 | MemExprNs(std::boxed::Box), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:887:33 [INFO] [stderr] | [INFO] [stderr] 887 | MemExpr(std::boxed::Box), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:888:38 [INFO] [stderr] | [INFO] [stderr] 888 | CallExpr(Vec>), [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:896:35 [INFO] [stderr] | [INFO] [stderr] 896 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:897:35 [INFO] [stderr] | [INFO] [stderr] 897 | pub then: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:898:41 [INFO] [stderr] | [INFO] [stderr] 898 | pub alt: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:951:35 [INFO] [stderr] | [INFO] [stderr] 951 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:952:35 [INFO] [stderr] | [INFO] [stderr] 952 | pub then: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:997:35 [INFO] [stderr] | [INFO] [stderr] 997 | pub from: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:998:33 [INFO] [stderr] | [INFO] [stderr] 998 | pub to: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:999:35 [INFO] [stderr] | [INFO] [stderr] 999 | pub step: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1000:35 [INFO] [stderr] | [INFO] [stderr] 1000 | pub stmt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1078:35 [INFO] [stderr] | [INFO] [stderr] 1078 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1079:35 [INFO] [stderr] | [INFO] [stderr] 1079 | pub stmt: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1206:42 [INFO] [stderr] | [INFO] [stderr] 1206 | pub expr: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1278:40 [INFO] [stderr] | [INFO] [stderr] 1278 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1335:36 [INFO] [stderr] | [INFO] [stderr] 1335 | pub etype: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1336:40 [INFO] [stderr] | [INFO] [stderr] 1336 | pub id: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1337:40 [INFO] [stderr] | [INFO] [stderr] 1337 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1355:35 [INFO] [stderr] | [INFO] [stderr] 1355 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1375:35 [INFO] [stderr] | [INFO] [stderr] 1375 | pub expr: std::boxed::Box, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ast.rs:1421:40 [INFO] [stderr] | [INFO] [stderr] 1421 | pub stmts: Vec>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:80:149 [INFO] [stderr] | [INFO] [stderr] 80 | fn __parse_start < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec> > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = match __parse_program_prologue ( __input , __state , __pos ) { Matched ( __newpos , _ ) => { Matched ( __newpos , ( ) ) } , Failed => { Matched ( __pos , ( ) ) } , } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_statement_program ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:639 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:653 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:667 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:84:1811 [INFO] [stderr] | [INFO] [stderr] 84 | fn __parse_int_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < i64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "0x" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' | 'a' ... 'f' | 'A' ... 'F' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9a-fA-F]" ) , } } else { __state . mark_failure ( __pos , "[0-9a-fA-F]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { i64::from_str_radix(n, 16).unwrap() } ) } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "integer literal" ) ; Failed } } } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:86:548 [INFO] [stderr] | [INFO] [stderr] 86 | fn __parse_float_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "float literal" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:86:1313 [INFO] [stderr] | [INFO] [stderr] 86 | fn __parse_float_literal < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < f64 > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = { let str_start = __pos ; match { __state . suppress_fail += 1 ; let res = { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { '0' ... '9' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[0-9]" ) , } } else { __state . mark_failure ( __pos , "[0-9]" ) } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , ( ) ) } else { Failed } } } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , n ) => { Matched ( __pos , { n.parse::().unwrap() } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "float literal" ) ; Failed } } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:96:343 [INFO] [stderr] | [INFO] [stderr] 96 | fn __parse_id_start < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:96:357 [INFO] [stderr] | [INFO] [stderr] 96 | fn __parse_id_start < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:98:343 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_id_chars < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' | '0' ... '9' | '?' | '!' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:98:357 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_id_chars < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' | '0' ... '9' | '?' | '!' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:98:383 [INFO] [stderr] | [INFO] [stderr] 98 | fn __parse_id_chars < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < String > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = { let str_start = __pos ; match if __input . len ( ) > __pos { let ( __ch , __next ) = char_range_at ( __input , __pos ) ; match __ch { 'a' ... 'z' | 'A' ... 'Z' | '$' | '_' | '0' ... '9' | '?' | '!' => Matched ( __next , ( ) ) , _ => __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) , } } else { __state . mark_failure ( __pos , "[a-zA-Z$_0-9?!]" ) } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; match __seq_res { Matched ( __pos , c ) => { Matched ( __pos , { c.to_string() } ) } Failed => Failed , } } } [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:122:145 [INFO] [stderr] | [INFO] [stderr] 122 | fn __parse_value < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_float_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(FloatLiteral, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_int_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(IntLiteral, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_string_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(StrLiteral, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(Identifier, ps, pe, val: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_array_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_record_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_function_expr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . suppress_fail += 1 ; let res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:124:150 [INFO] [stderr] | [INFO] [stderr] 124 | fn __parse_array_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = slice_eq ( __input , __state , __pos , "[" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { slice_eq ( __input , __state , __pos , "]" ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ArrayExpr, ps, pe, exprs: vec![]) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "[" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , fexpr ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , lexpr ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "]" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:130:150 [INFO] [stderr] | [INFO] [stderr] 130 | fn __parse_unary_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = { let str_start = __pos ; match { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "not" ) ; match __seq_res { Matched ( __pos , _ ) => { { __state . suppress_fail += 1 ; let __assert_res = match __parse_id_chars ( __input , __state , __pos ) { Matched ( pos , _ ) => Matched ( pos , ( ) ) , Failed => Failed , } ; __state . suppress_fail -= 1 ; match __assert_res { Failed => Matched ( __pos , ( ) ) , Matched ( .. ) => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => slice_eq ( __input , __state , __pos , "-" ) } } { Matched ( __newpos , _ ) => { Matched ( __newpos , & __input [ str_start .. __newpos ] ) } , Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , op ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_value ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , val ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:140:151 [INFO] [stderr] | [INFO] [stderr] 140 | fn __parse_record_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "record" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_record_body_stmt ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:146:153 [INFO] [stderr] | [INFO] [stderr] 146 | fn __parse_function_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "function" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , i ) => { Matched ( __pos , { i } ) } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_function_arguments ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , args ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement_no_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:163:144 [INFO] [stderr] | [INFO] [stderr] 163 | fn __parse_expr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_assignmentexpr ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "expression" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:165:154 [INFO] [stderr] | [INFO] [stderr] 165 | fn __parse_assignmentexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_condexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Assign) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Adds) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Subs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Muls) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Divs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "%=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mods) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_condexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:165:395 [INFO] [stderr] | [INFO] [stderr] 165 | fn __parse_assignmentexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_condexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Assign) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Adds) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Subs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Muls) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Divs) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "%=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mods) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_condexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:167:148 [INFO] [stderr] | [INFO] [stderr] 167 | fn __parse_condexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_binexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , cond ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "?" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_binexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , then ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ":" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_binexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , alt ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(CondExpr, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:172:147 [INFO] [stderr] | [INFO] [stderr] 172 | fn __parse_binexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_callexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "&" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseAnd) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "|" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseOr ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xor" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseXor ) } ; __repeat_pos = __pos ; continue ; } } } if 1i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "and" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::And) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "or" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Or ) } ; __repeat_pos = __pos ; continue ; } } } if 2i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "==" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Eq ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "!=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Neq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Gt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Lt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Geq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Leq) } ; __repeat_pos = __pos ; continue ; } } } if 3i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "of" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 4i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Of ) } ; __repeat_pos = __pos ; continue ; } } } if 4i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Add) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Sub) } ; __repeat_pos = __pos ; continue ; } } } if 5i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mul) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Div) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "mod" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mod) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_callexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:172:388 [INFO] [stderr] | [INFO] [stderr] 172 | fn __parse_binexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { fn __infix_parse < 'input > ( __min_prec : i32 , __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { if let Matched ( __pos , mut __infix_result ) = __parse_callexpr ( __input , __state , __pos ) { let mut __repeat_pos = __pos ; loop { let __pos = __repeat_pos ; if 0i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "&" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseAnd) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "|" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseOr ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "xor" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 1i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::BitwiseXor ) } ; __repeat_pos = __pos ; continue ; } } } if 1i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "and" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::And) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "or" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 2i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Or ) } ; __repeat_pos = __pos ; continue ; } } } if 2i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "==" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Eq ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "!=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Neq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Gt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Lt ) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ">=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Geq) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "<=" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 3i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Leq) } ; __repeat_pos = __pos ; continue ; } } } if 3i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "of" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 4i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Of ) } ; __repeat_pos = __pos ; continue ; } } } if 4i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "+" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Add) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "-" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 5i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Sub) } ; __repeat_pos = __pos ; continue ; } } } if 5i32 >= __min_prec { if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "*" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mul) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "/" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse__ ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Div) } ; __repeat_pos = __pos ; continue ; } } if let Matched ( __pos , _ ) = { __state . suppress_fail += 1 ; let res = { let __seq_res = __parse_s ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "mod" ) ; match __seq_res { Matched ( __pos , _ ) => { __parse_s ( __input , __state , __pos ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } { if let Matched ( __pos , y ) = __infix_parse ( 6i32 , __input , __state , __pos ) { let x = __infix_result ; __infix_result = { boxed!(BinExpr, x.span().0, y.span().1, left: x, right:y, op: ast::BinOp::Mod) } ; __repeat_pos = __pos ; continue ; } } } break ; } Matched ( __repeat_pos , __infix_result ) } else { Failed } } __infix_parse ( 0 , __input , __state , __pos ) } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_callexpr ( __input , __state , __pos ) } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:174:148 [INFO] [stderr] | [INFO] [stderr] 174 | fn __parse_callexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_memexpr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _left ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_callexpr_args ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , args ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_callexpr_arm ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , _right ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:175:28 [INFO] [stderr] | [INFO] [stderr] 175 | let mut left : Box = boxed!(CallExpr, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:213:157 [INFO] [stderr] | [INFO] [stderr] 213 | fn __parse_callexpr_args < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < Vec> > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "(" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , farg ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "," ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , larg ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , ")" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:221:68 [INFO] [stderr] | [INFO] [stderr] 221 | boxed!(Identifier, ps, pe, val: id) as std::boxed::Box) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "::" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_word ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:223:68 [INFO] [stderr] | [INFO] [stderr] 223 | boxed!(Identifier, ps, pe, val: id) as std::boxed::Box) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "[" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "]" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:231:147 [INFO] [stderr] | [INFO] [stderr] 231 | fn __parse_memexpr < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_unary_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _left ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_memexpr_arm ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } if __repeat_value . len ( ) >= 1 { Matched ( __repeat_pos , __repeat_value ) } else { Failed } } ; match __seq_res { Matched ( __pos , _right ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:244:152 [INFO] [stderr] | [INFO] [stderr] 244 | fn __parse_memexpr_arm < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < (std::boxed::Box, bool /* is_expr */, bool /* is_namespace */) > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "." ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_word ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:245:65 [INFO] [stderr] | [INFO] [stderr] 245 | (boxed!(Identifier, ps, pe, val: id) as std::boxed::Box, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:247:65 [INFO] [stderr] | [INFO] [stderr] 247 | (boxed!(Identifier, ps, pe, val: id) as std::boxed::Box, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:253:164 [INFO] [stderr] | [INFO] [stderr] 253 | fn __parse_statement_program_no_eos < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_block_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_if_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_while_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_for_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_for_in_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_function_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_record_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_try_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_raise_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_use_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_expr_stmt ( __input , __state , __pos ) } } } } } } } } } } } } } } } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:255:157 [INFO] [stderr] | [INFO] [stderr] 255 | fn __parse_statement_program < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement_program_no_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "statement" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:257:156 [INFO] [stderr] | [INFO] [stderr] 257 | fn __parse_statement_no_eos < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = __parse_statement_program_no_eos ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_return_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_continue_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_break_stmt ( __input , __state , __pos ) } } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:259:149 [INFO] [stderr] | [INFO] [stderr] 259 | fn __parse_statement < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement_no_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "statement" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:261:150 [INFO] [stderr] | [INFO] [stderr] 261 | fn __parse_block_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "begin" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_statement ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(BlockStatement, ps, pe, stmts: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "begin" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(BlockStatement, ps, pe, stmts: Vec::new()) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "block statement" ) ; Failed } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:263:149 [INFO] [stderr] | [INFO] [stderr] 263 | fn __parse_then_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { __state . suppress_fail += 1 ; let res = { let __seq_res = slice_eq ( __input , __state , __pos , "then" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = { __state . suppress_fail += 1 ; let res = __parse_block_stmt ( __input , __state , __pos ) ; __state . suppress_fail -= 1 ; res } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "block or then " ) ; Failed } } } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:265:147 [INFO] [stderr] | [INFO] [stderr] 265 | fn __parse_if_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "if" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = match { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "else" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , a ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(IfStatement, ps, pe, expr: e, then: s, alt: a) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:267:150 [INFO] [stderr] | [INFO] [stderr] 267 | fn __parse_while_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "while" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(WhileStatement, ps, pe, expr: e, then: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:269:148 [INFO] [stderr] | [INFO] [stderr] 269 | fn __parse_for_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "for" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "=" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , from ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __choice_res = { let __seq_res = slice_eq ( __input , __state , __pos , "to" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { true } ) } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __seq_res = slice_eq ( __input , __state , __pos , "downto" ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { false } ) } Failed => Failed , } } } } ; match __seq_res { Matched ( __pos , dir ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , to ) => { { let __seq_res = match { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "step" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , step ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:282:151 [INFO] [stderr] | [INFO] [stderr] 282 | fn __parse_for_in_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "for" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "in" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , expr ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_then_stmt ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:289:153 [INFO] [stderr] | [INFO] [stderr] 289 | fn __parse_continue_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "continue" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ContinueStatement, ps, pe,) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:291:150 [INFO] [stderr] | [INFO] [stderr] 291 | fn __parse_break_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "break" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(BreakStatement, ps, pe,) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:293:148 [INFO] [stderr] | [INFO] [stderr] 293 | fn __parse_try_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "try" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_statement ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , stmts ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_case_stmt ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , cases ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(TryStatement, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:302:150 [INFO] [stderr] | [INFO] [stderr] 302 | fn __parse_raise_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "raise" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , expr ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(RaiseStatement, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:305:148 [INFO] [stderr] | [INFO] [stderr] 305 | fn __parse_use_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "use" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_string_literal ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , path ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(UseStatement, ps, pe, [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:320:153 [INFO] [stderr] | [INFO] [stderr] 320 | fn __parse_function_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "function" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_word ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_function_arguments ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , args ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_statement ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:329:151 [INFO] [stderr] | [INFO] [stderr] 329 | fn __parse_return_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "return" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = match { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , e ) => { Matched ( __pos , { e } ) } Failed => Failed , } } } Failed => Failed , } } { Matched ( __newpos , __value ) => { Matched ( __newpos , Some ( __value ) ) } , Failed => { Matched ( __pos , None ) } , } ; match __seq_res { Matched ( __pos , e ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ReturnStatement, ps, pe, expr: e) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:331:156 [INFO] [stderr] | [INFO] [stderr] 331 | fn __parse_record_body_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __choice_res = { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let __choice_res = __parse_function_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { let __choice_res = __parse_record_stmt ( __input , __state , __pos ) ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => __parse_expr_stmt ( __input , __state , __pos ) } } } } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse___ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { Matched ( __pos , { s } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } ; match __choice_res { Matched ( __pos , __value ) => Matched ( __pos , __value ) , Failed => { __state . mark_failure ( __pos , "statement" ) ; Failed } } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:333:151 [INFO] [stderr] | [INFO] [stderr] 333 | fn __parse_record_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = { __state . suppress_fail += 1 ; let res = slice_eq ( __input , __state , __pos , "record" ) ; __state . suppress_fail -= 1 ; res } ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_identifier ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , id ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = { let mut __repeat_pos = __pos ; let mut __repeat_value = vec ! ( ) ; loop { let __pos = __repeat_pos ; let __step_res = __parse_record_body_stmt ( __input , __state , __pos ) ; match __step_res { Matched ( __newpos , __value ) => { __repeat_pos = __newpos ; __repeat_value . push ( __value ) ; } , Failed => { break ; } } } Matched ( __repeat_pos , __repeat_value ) } ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse__ ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = slice_eq ( __input , __state , __pos , "end" ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:341:149 [INFO] [stderr] | [INFO] [stderr] 341 | fn __parse_expr_stmt < 'input > ( __input : & 'input str , __state : & mut ParseState < 'input > , __pos : usize ) -> RuleResult < std::boxed::Box > { # ! [ allow ( non_snake_case , unused ) ] { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , ps ) => { { let __seq_res = __parse_expr ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , s ) => { { let __seq_res = __parse_eos ( __input , __state , __pos ) ; match __seq_res { Matched ( __pos , _ ) => { { let __seq_res = Matched ( __pos , __pos ) ; match __seq_res { Matched ( __pos , pe ) => { Matched ( __pos , { boxed!(ExprStatement, ps, pe, expr: s) } ) } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } Failed => Failed , } } } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> /opt/rustwide/target/debug/build/haru-c82dfe4cf6ae03c9/out/parser.rs:343:90 [INFO] [stderr] | [INFO] [stderr] 343 | pub fn start < 'input > ( __input : & 'input str ) -> ParseResult < Vec> > { # ! [ allow ( non_snake_case , unused ) ] let mut __state = ParseState :: new ( ) ; match __parse_start ( __input , & mut __state , 0 ) { Matched ( __pos , __value ) => { if __pos == __input . len ( ) { return Ok ( __value ) } } _ => { } } let ( __line , __col ) = pos_to_line ( __input , __state . max_err_pos ) ; Err ( ParseError { line : __line , column : __col , offset : __state . max_err_pos , expected : __state . expected , } ) } [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn ast::AST` [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::vmbindings::interned_string_map::InternedStringMap` [INFO] [stderr] --> src/hanayo/eval.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::vmbindings::interned_string_map::InternedStringMap; [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/vmbindings/record.rs:19:34 [INFO] [stderr] | [INFO] [stderr] 19 | pub native_field: Option>, [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] [INFO] [stderr] error: aborting due to 113 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0425`. [INFO] [stderr] error: could not compile `haru`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: aborting due to 113 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0425`. [INFO] [stderr] error: could not compile `haru`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "125b3ecb0baa78c1e6338485d85d20824c97469f61b50f066a0c53632d1f0962"` [INFO] running `"docker" "rm" "-f" "125b3ecb0baa78c1e6338485d85d20824c97469f61b50f066a0c53632d1f0962"` [INFO] [stdout] 125b3ecb0baa78c1e6338485d85d20824c97469f61b50f066a0c53632d1f0962