[INFO] cloning repository https://github.com/julioolvr/rlox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/julioolvr/rlox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjulioolvr%2Frlox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjulioolvr%2Frlox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b8908c5eca599cb2ab16dde00d47507c5b004de0 [INFO] testing julioolvr/rlox against master#432e145bd5a974c5b6f4dd9b352891bd7502b69d for pr-87041 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjulioolvr%2Frlox" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/julioolvr/rlox on toolchain 432e145bd5a974c5b6f4dd9b352891bd7502b69d [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-9/source/rust-toolchain [INFO] started tweaking git repo https://github.com/julioolvr/rlox [INFO] finished tweaking git repo https://github.com/julioolvr/rlox [INFO] tweaked toml for git repo https://github.com/julioolvr/rlox written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/julioolvr/rlox already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4155e668004a23484f663f1876145ce9c1d5fa02805f4d6bd81c313ea70efe8f [INFO] running `Command { std: "docker" "start" "-a" "4155e668004a23484f663f1876145ce9c1d5fa02805f4d6bd81c313ea70efe8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4155e668004a23484f663f1876145ce9c1d5fa02805f4d6bd81c313ea70efe8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4155e668004a23484f663f1876145ce9c1d5fa02805f4d6bd81c313ea70efe8f", kill_on_drop: false }` [INFO] [stdout] 4155e668004a23484f663f1876145ce9c1d5fa02805f4d6bd81c313ea70efe8f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9e5731ae64547cef6bffa429b2505feea0b6b529511ad1d91f0d36daa76cb947 [INFO] running `Command { std: "docker" "start" "-a" "9e5731ae64547cef6bffa429b2505feea0b6b529511ad1d91f0d36daa76cb947", kill_on_drop: false }` [INFO] [stderr] Compiling rlox v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:108:16 [INFO] [stdout] | [INFO] [stdout] 108 | '0'...'9' => self.scan_numeric_literal(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:109:16 [INFO] [stdout] | [INFO] [stdout] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:109:28 [INFO] [stdout] | [INFO] [stdout] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/lox_class.rs:75:26 [INFO] [stdout] | [INFO] [stdout] 75 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/lox_func.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/mod.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | Func(Rc), [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/mod.rs:182:45 [INFO] [stdout] | [INFO] [stdout] 182 | pub fn get_callable(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/interpreter/mod.rs:17:32 [INFO] [stdout] | [INFO] [stdout] 17 | writer: Rc>, [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/interpreter/mod.rs:21:43 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(writer: Rc>) -> Interpreter<'a> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/callables/native/clock/mod.rs:28:26 [INFO] [stdout] | [INFO] [stdout] 28 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/rlox/callables/mod.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Interpreter` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/rlox/callables/mod.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/callables/mod.rs:12:26 [INFO] [stdout] | [INFO] [stdout] 12 | fn as_any(&self) -> &Any; // TODO: Read https://stackoverflow.com/a/33687996/275442 [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:14:42 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn run_file(path: &str, writer: &mut io::Write) -> Result<(), Vec> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:25:62 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn run_repl(reader: &mut R, writer: &mut io::Write) { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:62:67 [INFO] [stdout] | [INFO] [stdout] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | writer: Rc>, [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:113:50 [INFO] [stdout] | [INFO] [stdout] 113 | fn new(reader: R, writer: Rc>) -> ReplIterator { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/rlox/token.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / lazy_static! { [INFO] [stdout] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stdout] 111 | | let mut m = HashMap::new(); [INFO] [stdout] 112 | | m.insert("and", TokenType::And); [INFO] [stdout] ... | [INFO] [stdout] 129 | | }; [INFO] [stdout] 130 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/rlox/token.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / lazy_static! { [INFO] [stdout] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stdout] 111 | | let mut m = HashMap::new(); [INFO] [stdout] 112 | | m.insert("and", TokenType::And); [INFO] [stdout] ... | [INFO] [stdout] 129 | | }; [INFO] [stdout] 130 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/rlox/api.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.26s [INFO] running `Command { std: "docker" "inspect" "9e5731ae64547cef6bffa429b2505feea0b6b529511ad1d91f0d36daa76cb947", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9e5731ae64547cef6bffa429b2505feea0b6b529511ad1d91f0d36daa76cb947", kill_on_drop: false }` [INFO] [stdout] 9e5731ae64547cef6bffa429b2505feea0b6b529511ad1d91f0d36daa76cb947 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 49f251eb8350af5a7c24c5f03fcf6e43be59dffad8735212d94373ed0e20f2b8 [INFO] running `Command { std: "docker" "start" "-a" "49f251eb8350af5a7c24c5f03fcf6e43be59dffad8735212d94373ed0e20f2b8", kill_on_drop: false }` [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:108:16 [INFO] [stdout] | [INFO] [stdout] 108 | '0'...'9' => self.scan_numeric_literal(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:109:16 [INFO] [stdout] | [INFO] [stdout] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:109:28 [INFO] [stdout] | [INFO] [stdout] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/lox_class.rs:75:26 [INFO] [stdout] | [INFO] [stdout] 75 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/lox_func.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/mod.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | Func(Rc), [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/mod.rs:182:45 [INFO] [stdout] | [INFO] [stdout] 182 | pub fn get_callable(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/interpreter/mod.rs:17:32 [INFO] [stdout] | [INFO] [stdout] 17 | writer: Rc>, [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/interpreter/mod.rs:21:43 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(writer: Rc>) -> Interpreter<'a> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/callables/native/clock/mod.rs:28:26 [INFO] [stdout] | [INFO] [stdout] 28 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/rlox/callables/mod.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Interpreter` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/rlox/callables/mod.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/callables/mod.rs:12:26 [INFO] [stdout] | [INFO] [stdout] 12 | fn as_any(&self) -> &Any; // TODO: Read https://stackoverflow.com/a/33687996/275442 [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:14:42 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn run_file(path: &str, writer: &mut io::Write) -> Result<(), Vec> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:25:62 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn run_repl(reader: &mut R, writer: &mut io::Write) { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:62:67 [INFO] [stdout] | [INFO] [stdout] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | writer: Rc>, [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:113:50 [INFO] [stdout] | [INFO] [stdout] 113 | fn new(reader: R, writer: Rc>) -> ReplIterator { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/rlox/token.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / lazy_static! { [INFO] [stdout] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stdout] 111 | | let mut m = HashMap::new(); [INFO] [stdout] 112 | | m.insert("and", TokenType::And); [INFO] [stdout] ... | [INFO] [stdout] 129 | | }; [INFO] [stdout] 130 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rlox v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/rlox/token.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / lazy_static! { [INFO] [stdout] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stdout] 111 | | let mut m = HashMap::new(); [INFO] [stdout] 112 | | m.insert("and", TokenType::And); [INFO] [stdout] ... | [INFO] [stdout] 129 | | }; [INFO] [stdout] 130 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/rlox/api.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:108:16 [INFO] [stdout] | [INFO] [stdout] 108 | '0'...'9' => self.scan_numeric_literal(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:109:16 [INFO] [stdout] | [INFO] [stdout] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/rlox/scanner/char_scanner.rs:109:28 [INFO] [stdout] | [INFO] [stdout] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/lox_class.rs:75:26 [INFO] [stdout] | [INFO] [stdout] 75 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/lox_func.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/mod.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | Func(Rc), [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/lox_value/mod.rs:182:45 [INFO] [stdout] | [INFO] [stdout] 182 | pub fn get_callable(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/interpreter/mod.rs:17:32 [INFO] [stdout] | [INFO] [stdout] 17 | writer: Rc>, [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/interpreter/mod.rs:21:43 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new(writer: Rc>) -> Interpreter<'a> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/callables/native/clock/mod.rs:28:26 [INFO] [stdout] | [INFO] [stdout] 28 | fn as_any(&self) -> &Any { [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/rlox/callables/mod.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Interpreter` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/rlox/callables/mod.rs:11:38 [INFO] [stdout] | [INFO] [stdout] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/callables/mod.rs:12:26 [INFO] [stdout] | [INFO] [stdout] 12 | fn as_any(&self) -> &Any; // TODO: Read https://stackoverflow.com/a/33687996/275442 [INFO] [stdout] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:14:42 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn run_file(path: &str, writer: &mut io::Write) -> Result<(), Vec> { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:25:62 [INFO] [stdout] | [INFO] [stdout] 25 | pub fn run_repl(reader: &mut R, writer: &mut io::Write) { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:62:67 [INFO] [stdout] | [INFO] [stdout] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | writer: Rc>, [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/rlox/api.rs:113:50 [INFO] [stdout] | [INFO] [stdout] 113 | fn new(reader: R, writer: Rc>) -> ReplIterator { [INFO] [stdout] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/rlox/token.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / lazy_static! { [INFO] [stdout] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stdout] 111 | | let mut m = HashMap::new(); [INFO] [stdout] 112 | | m.insert("and", TokenType::And); [INFO] [stdout] ... | [INFO] [stdout] 129 | | }; [INFO] [stdout] 130 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stdout] --> src/rlox/token.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / lazy_static! { [INFO] [stdout] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stdout] 111 | | let mut m = HashMap::new(); [INFO] [stdout] 112 | | m.insert("and", TokenType::And); [INFO] [stdout] ... | [INFO] [stdout] 129 | | }; [INFO] [stdout] 130 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/rlox/api.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 4.02s [INFO] running `Command { std: "docker" "inspect" "49f251eb8350af5a7c24c5f03fcf6e43be59dffad8735212d94373ed0e20f2b8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "49f251eb8350af5a7c24c5f03fcf6e43be59dffad8735212d94373ed0e20f2b8", kill_on_drop: false }` [INFO] [stdout] 49f251eb8350af5a7c24c5f03fcf6e43be59dffad8735212d94373ed0e20f2b8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c4ef210403783e02210184a860a7793e0e4bf820f0e24f5bcdddc2b14dfff170 [INFO] running `Command { std: "docker" "start" "-a" "c4ef210403783e02210184a860a7793e0e4bf820f0e24f5bcdddc2b14dfff170", kill_on_drop: false }` [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/rlox/scanner/char_scanner.rs:108:16 [INFO] [stderr] | [INFO] [stderr] 108 | '0'...'9' => self.scan_numeric_literal(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/rlox/scanner/char_scanner.rs:109:16 [INFO] [stderr] | [INFO] [stderr] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/rlox/scanner/char_scanner.rs:109:28 [INFO] [stderr] | [INFO] [stderr] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/lox_class.rs:75:26 [INFO] [stderr] | [INFO] [stderr] 75 | fn as_any(&self) -> &Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/lox_func.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | fn as_any(&self) -> &Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/mod.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | Func(Rc), [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/mod.rs:182:45 [INFO] [stderr] | [INFO] [stderr] 182 | pub fn get_callable(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/interpreter/mod.rs:17:32 [INFO] [stderr] | [INFO] [stderr] 17 | writer: Rc>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/interpreter/mod.rs:21:43 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn new(writer: Rc>) -> Interpreter<'a> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/callables/native/clock/mod.rs:28:26 [INFO] [stderr] | [INFO] [stderr] 28 | fn as_any(&self) -> &Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/rlox/callables/mod.rs:11:20 [INFO] [stderr] | [INFO] [stderr] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Interpreter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/rlox/callables/mod.rs:11:38 [INFO] [stderr] | [INFO] [stderr] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/callables/mod.rs:12:26 [INFO] [stderr] | [INFO] [stderr] 12 | fn as_any(&self) -> &Any; // TODO: Read https://stackoverflow.com/a/33687996/275442 [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:14:42 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn run_file(path: &str, writer: &mut io::Write) -> Result<(), Vec> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:25:62 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn run_repl(reader: &mut R, writer: &mut io::Write) { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:62:67 [INFO] [stderr] | [INFO] [stderr] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:109:32 [INFO] [stderr] | [INFO] [stderr] 109 | writer: Rc>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:113:50 [INFO] [stderr] | [INFO] [stderr] 113 | fn new(reader: R, writer: Rc>) -> ReplIterator { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stderr] --> src/rlox/token.rs:109:1 [INFO] [stderr] | [INFO] [stderr] 109 | / lazy_static! { [INFO] [stderr] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stderr] 111 | | let mut m = HashMap::new(); [INFO] [stderr] 112 | | m.insert("and", TokenType::And); [INFO] [stderr] ... | [INFO] [stderr] 129 | | }; [INFO] [stderr] 130 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stderr] --> src/rlox/token.rs:109:1 [INFO] [stderr] | [INFO] [stderr] 109 | / lazy_static! { [INFO] [stderr] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stderr] 111 | | let mut m = HashMap::new(); [INFO] [stderr] 112 | | m.insert("and", TokenType::And); [INFO] [stderr] ... | [INFO] [stderr] 129 | | }; [INFO] [stderr] 130 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rlox/api.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 21 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/rlox/scanner/char_scanner.rs:108:16 [INFO] [stderr] | [INFO] [stderr] 108 | '0'...'9' => self.scan_numeric_literal(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/rlox/scanner/char_scanner.rs:109:16 [INFO] [stderr] | [INFO] [stderr] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/rlox/scanner/char_scanner.rs:109:28 [INFO] [stderr] | [INFO] [stderr] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/lox_class.rs:75:26 [INFO] [stderr] | [INFO] [stderr] 75 | fn as_any(&self) -> &Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/lox_func.rs:45:26 [INFO] [stderr] | [INFO] [stderr] 45 | fn as_any(&self) -> &Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/mod.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | Func(Rc), [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/lox_value/mod.rs:182:45 [INFO] [stderr] | [INFO] [stderr] 182 | pub fn get_callable(&self) -> Option> { [INFO] [stderr] | ^^^^^^^^ help: use `dyn`: `dyn Callable` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/interpreter/mod.rs:17:32 [INFO] [stderr] | [INFO] [stderr] 17 | writer: Rc>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/interpreter/mod.rs:21:43 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn new(writer: Rc>) -> Interpreter<'a> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/callables/native/clock/mod.rs:28:26 [INFO] [stderr] | [INFO] [stderr] 28 | fn as_any(&self) -> &Any { [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/rlox/callables/mod.rs:11:20 [INFO] [stderr] | [INFO] [stderr] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Interpreter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/rlox/callables/mod.rs:11:38 [INFO] [stderr] | [INFO] [stderr] 11 | fn call(&self, &mut Interpreter, Vec) -> Result; [INFO] [stderr] | ^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Vec` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/callables/mod.rs:12:26 [INFO] [stderr] | [INFO] [stderr] 12 | fn as_any(&self) -> &Any; // TODO: Read https://stackoverflow.com/a/33687996/275442 [INFO] [stderr] | ^^^ help: use `dyn`: `dyn Any` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:14:42 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn run_file(path: &str, writer: &mut io::Write) -> Result<(), Vec> { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:25:62 [INFO] [stderr] | [INFO] [stderr] 25 | pub fn run_repl(reader: &mut R, writer: &mut io::Write) { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:62:67 [INFO] [stderr] | [INFO] [stderr] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:109:32 [INFO] [stderr] | [INFO] [stderr] 109 | writer: Rc>, [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/rlox/api.rs:113:50 [INFO] [stderr] | [INFO] [stderr] 113 | fn new(reader: R, writer: Rc>) -> ReplIterator { [INFO] [stderr] | ^^^^^^^^^ help: use `dyn`: `dyn io::Write` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stderr] --> src/rlox/token.rs:109:1 [INFO] [stderr] | [INFO] [stderr] 109 | / lazy_static! { [INFO] [stderr] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stderr] 111 | | let mut m = HashMap::new(); [INFO] [stderr] 112 | | m.insert("and", TokenType::And); [INFO] [stderr] ... | [INFO] [stderr] 129 | | }; [INFO] [stderr] 130 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `new` function is now preferred [INFO] [stderr] --> src/rlox/token.rs:109:1 [INFO] [stderr] | [INFO] [stderr] 109 | / lazy_static! { [INFO] [stderr] 110 | | pub static ref KEYWORDS: HashMap<&'static str, TokenType> = { [INFO] [stderr] 111 | | let mut m = HashMap::new(); [INFO] [stderr] 112 | | m.insert("and", TokenType::And); [INFO] [stderr] ... | [INFO] [stderr] 129 | | }; [INFO] [stderr] 130 | | } [INFO] [stderr] | |_^ [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `__lazy_static_create` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/rlox/api.rs:62:13 [INFO] [stderr] | [INFO] [stderr] 62 | let mut writer = Rc::new(RefCell::new(&mut cursor as &mut io::Write)); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 21 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rlox-21ef812377254b52) [INFO] [stdout] [INFO] [stdout] running 43 tests [INFO] [stdout] test rlox::scanner::tests::tokens::bang ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::comments ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::comma ... ok [INFO] [stdout] test rlox::scanner::tests::line_numbers ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::left_paren ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::less ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::else_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::false_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::identifier ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::for_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::and ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::if_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::or ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::class ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::print ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::fun ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::return_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::nil ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::super_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::this ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::var ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::while_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::keywords::true_token ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::number ... ok [INFO] [stdout] test rlox::scanner::tests::has_only_eof_token_for_empty_source ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::minus ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::right_brace ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::right_paren ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::literals::string ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::semicolon ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::plus ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::star ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::slash ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::white_space ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::dot ... ok [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/rlox-8ba49c6f306ec2d3) [INFO] [stdout] test rlox::scanner::tests::error_on_unknown_character ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::left_brace ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::greater ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::bang_equal ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::greater_equal ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::equal_equal ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::less_equal ... ok [INFO] [stdout] test rlox::scanner::tests::tokens::equal ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 43 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/classes.rs (/opt/rustwide/target/debug/deps/classes-1866f9ec858e8a13) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 19 tests [INFO] [stdout] test reach_this_from_instance_method ... ok [INFO] [stdout] test printing_class_instance_shows_class_name ... ok [INFO] [stdout] test instance_initializer ... ok [INFO] [stdout] test class_declaration_doesnt_fail ... ok [INFO] [stdout] test compared_by_identity ... ok [INFO] [stdout] test class_declaration_missing_open_brace ... ok [INFO] [stdout] test class_declaration_missing_closing_brace ... ok [INFO] [stdout] test read_property_from_instance_is_a_runtime_error ... ok [INFO] [stdout] test callback_with_bound_this ... ok [INFO] [stdout] test printing_class_shows_class_name ... ok [INFO] [stdout] test set_property_in_instance ... ok [INFO] [stdout] test compare_instances_by_identity ... ok [INFO] [stdout] test call_method_on_instance ... ok [INFO] [stdout] test detached_this ... ok [INFO] [stdout] test initializer_with_parameters ... ok [INFO] [stdout] test calling_init_returns_the_same_instance ... ok [INFO] [stdout] test using_this_in_non_method_fails - should panic ... ok [INFO] [stdout] test using_this_in_root_fails - should panic ... ok [INFO] [stdout] test return_from_init_throws_an_error - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/closures.rs (/opt/rustwide/target/debug/deps/closures-093893041b6e1b68) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Running tests/functions.rs (/opt/rustwide/target/debug/deps/functions-9495ff32bdf81c3e) [INFO] [stdout] test simple_closure ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test function_parameters ... ok [INFO] [stdout] test compared_by_identity ... ok [INFO] [stdout] test return_on_top_level - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/inheritance.rs (/opt/rustwide/target/debug/deps/inheritance-7f5eb2fd0e644ace) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test can_call_superclass_method ... ok [INFO] [stdout] test expects_superclass_name_after_less_token ... ok [INFO] [stdout] test referencing_super_without_access_fails ... ok [INFO] [stdout] test overriding_methods ... ok [INFO] [stdout] test using_super_outside_of_method_fails - should panic ... ok [INFO] [stdout] test using_super ... ok [INFO] [stdout] test using_super_without_superclass_fails - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/scope.rs (/opt/rustwide/target/debug/deps/scope-763f726dbf6e084f) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Doc-tests rlox [INFO] [stdout] test closure_environment_mutation ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/rlox/scanner/char_scanner.rs:108:16 [INFO] [stderr] | [INFO] [stderr] 108 | '0'...'9' => self.scan_numeric_literal(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/rlox/scanner/char_scanner.rs:109:16 [INFO] [stderr] | [INFO] [stderr] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> /opt/rustwide/workdir/src/rlox/scanner/char_scanner.rs:109:28 [INFO] [stderr] | [INFO] [stderr] 109 | 'a'...'z' | 'A'...'Z' | '_' => self.scan_identifier(), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c4ef210403783e02210184a860a7793e0e4bf820f0e24f5bcdddc2b14dfff170", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c4ef210403783e02210184a860a7793e0e4bf820f0e24f5bcdddc2b14dfff170", kill_on_drop: false }` [INFO] [stdout] c4ef210403783e02210184a860a7793e0e4bf820f0e24f5bcdddc2b14dfff170