[INFO] cloning repository https://github.com/vaz-io/Vernacular [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vaz-io/Vernacular" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvaz-io%2FVernacular", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvaz-io%2FVernacular'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 381ee89e8ed79704478ce75605627220ada34bed [INFO] building vaz-io/Vernacular against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvaz-io%2FVernacular" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/vaz-io/Vernacular on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/vaz-io/Vernacular [INFO] finished tweaking git repo https://github.com/vaz-io/Vernacular [INFO] tweaked toml for git repo https://github.com/vaz-io/Vernacular written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/vaz-io/Vernacular already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4972dc0df37602d0f7e11dd6620576b0cafa1c94085f619b0fbd9c7d6178caa4 [INFO] running `Command { std: "docker" "start" "-a" "4972dc0df37602d0f7e11dd6620576b0cafa1c94085f619b0fbd9c7d6178caa4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4972dc0df37602d0f7e11dd6620576b0cafa1c94085f619b0fbd9c7d6178caa4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4972dc0df37602d0f7e11dd6620576b0cafa1c94085f619b0fbd9c7d6178caa4", kill_on_drop: false }` [INFO] [stdout] 4972dc0df37602d0f7e11dd6620576b0cafa1c94085f619b0fbd9c7d6178caa4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ff750639ccb9794d95c9b1634fd2e19201517e7b925f7ccb596a0434b998b97a [INFO] running `Command { std: "docker" "start" "-a" "ff750639ccb9794d95c9b1634fd2e19201517e7b925f7ccb596a0434b998b97a", kill_on_drop: false }` [INFO] [stderr] Compiling nair v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0599]: no method named `as_str` found for reference `&Type` in the current scope [INFO] [stdout] --> src/runtime.rs:106:37 [INFO] [stdout] | [INFO] [stdout] 106 | match declared_type.as_str() { [INFO] [stdout] | ^^^^^^ method not found in `&Type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: can't compare `Type` with `str` [INFO] [stdout] --> src/runtime.rs:190:46 [INFO] [stdout] | [INFO] [stdout] 190 | ... if declared_type != value_type { [INFO] [stdout] | ^^ no implementation for `Type == str` [INFO] [stdout] | [INFO] [stdout] = help: the trait `PartialEq` is not implemented for `Type` [INFO] [stdout] but trait `PartialEq` is implemented for it [INFO] [stdout] = help: for that trait implementation, expected `Type`, found `str` [INFO] [stdout] = note: required for `&Type` to implement `PartialEq<&str>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Type` doesn't implement `std::fmt::Display` [INFO] [stdout] --> src/runtime.rs:192:59 [INFO] [stdout] | [INFO] [stdout] 192 | ... value_type, declared_type)); [INFO] [stdout] | ^^^^^^^^^^^^^ `Type` cannot be formatted with the default formatter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `Type` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/runtime.rs:305:70 [INFO] [stdout] | [INFO] [stdout] 305 | self.variable_types.insert(var_name.clone(), type_name.clone()); [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^ expected `Type`, found `String` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] help: the return type of this call is `String` due to the type of the argument passed [INFO] [stdout] --> src/runtime.rs:305:25 [INFO] [stdout] | [INFO] [stdout] 305 | self.variable_types.insert(var_name.clone(), type_name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----------------^ [INFO] [stdout] | | [INFO] [stdout] | this argument influences the return type of `insert` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/11663cd3bfefef7d34e8f0892c250bf698049392/library/std/src/collections/hash/map.rs:1190:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: `match` arms have incompatible types [INFO] [stdout] --> src/runtime.rs:361:67 [INFO] [stdout] | [INFO] [stdout] 353 | ... let new_type = match new_value { [INFO] [stdout] | ______________________________________- [INFO] [stdout] 354 | | ... Value::Number(n) => { [INFO] [stdout] 355 | | ... if n.fract() == 0.0 { Type::Whole } else { Type::Decimal } [INFO] [stdout] 356 | | ... }, [INFO] [stdout] ... | [INFO] [stdout] 360 | | ... Value::Object(ref class_name) => Type::Object, [INFO] [stdout] | | ------------ this and all prior arms are found to be of type `Type` [INFO] [stdout] 361 | | ... Value::Promise(ref class_name) => Type::Promise, [INFO] [stdout] | | ^^^^^^^^^^^^^ expected `Type`, found enum constructor [INFO] [stdout] 362 | | ... Value::List(ref class_name) => Type::List, [INFO] [stdout] 363 | | ... Value::Mapping(ref class_name) => Type::Mapping, [INFO] [stdout] 364 | | ... }; [INFO] [stdout] | |_______________________- `match` arms have incompatible types [INFO] [stdout] | [INFO] [stdout] ::: src/analyzer.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | Promise(Box), [INFO] [stdout] | ------- `Promise` defines an enum variant constructor here, which should be called [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Type` [INFO] [stdout] found enum constructor `fn(Box) -> Type {Type::Promise}` [INFO] [stdout] help: use parentheses to construct this tuple variant [INFO] [stdout] | [INFO] [stdout] 361 | Value::Promise(ref class_name) => Type::Promise(/* Box */), [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no variant or associated item named `Mapping` found for enum `Type` in the current scope [INFO] [stdout] --> src/runtime.rs:363:73 [INFO] [stdout] | [INFO] [stdout] 363 | ... Value::Mapping(ref class_name) => Type::Mapping, [INFO] [stdout] | ^^^^^^^ variant or associated item not found in `Type` [INFO] [stdout] | [INFO] [stdout] ::: src/analyzer.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Type { [INFO] [stdout] | ------------- variant or associated item `Mapping` not found for this enum [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Type` doesn't implement `std::fmt::Display` [INFO] [stdout] --> src/runtime.rs:368:57 [INFO] [stdout] | [INFO] [stdout] 368 | ... new_type, declared_type)); [INFO] [stdout] | ^^^^^^^^^^^^^ `Type` cannot be formatted with the default formatter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `Type` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the macro `format` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `boolean_literal` found for mutable reference `&mut Parser` in the current scope [INFO] [stdout] --> src/parser.rs:935:41 [INFO] [stdout] | [INFO] [stdout] 935 | let expr = self.boolean_literal()?; [INFO] [stdout] | ^^^^^^^^^^^^^^^ method not found in `&mut Parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `promise_literal` found for mutable reference `&mut Parser` in the current scope [INFO] [stdout] --> src/parser.rs:942:41 [INFO] [stdout] | [INFO] [stdout] 942 | let expr = self.promise_literal()?; [INFO] [stdout] | ^^^^^^^^^^^^^^^ method not found in `&mut Parser` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `list_literal` found for mutable reference `&mut Parser` in the current scope [INFO] [stdout] --> src/parser.rs:946:41 [INFO] [stdout] | [INFO] [stdout] 946 | let expr = self.list_literal()?; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: there is a method `string_literal` with a similar name [INFO] [stdout] | [INFO] [stdout] 946 | let expr = self.string_literal()?; [INFO] [stdout] | ~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `is_decimal` is assigned to, but never used [INFO] [stdout] --> src/tokenizer.rs:450:17 [INFO] [stdout] | [INFO] [stdout] 450 | let mut is_decimal = false; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_is_decimal` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `is_decimal` is never read [INFO] [stdout] --> src/tokenizer.rs:458:13 [INFO] [stdout] | [INFO] [stdout] 458 | is_decimal = true; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_name` [INFO] [stdout] --> src/analyzer.rs:151:22 [INFO] [stdout] | [INFO] [stdout] 151 | for (param_name, param_type, value) in entries { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_type` [INFO] [stdout] --> src/analyzer.rs:203:27 [INFO] [stdout] | [INFO] [stdout] 203 | for (_param_name, param_type, value) in entries { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/analyzer.rs:203:39 [INFO] [stdout] | [INFO] [stdout] 203 | for (_param_name, param_type, value) in entries { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `nair` (bin "nair") due to 10 previous errors; 5 warnings emitted [INFO] running `Command { std: "docker" "inspect" "ff750639ccb9794d95c9b1634fd2e19201517e7b925f7ccb596a0434b998b97a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ff750639ccb9794d95c9b1634fd2e19201517e7b925f7ccb596a0434b998b97a", kill_on_drop: false }` [INFO] [stdout] ff750639ccb9794d95c9b1634fd2e19201517e7b925f7ccb596a0434b998b97a