[INFO] cloning repository https://github.com/eduardorittner/loxr [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/eduardorittner/loxr" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feduardorittner%2Floxr", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feduardorittner%2Floxr'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fa89de965b532a4a212348754e8ec8ff002864ce [INFO] testing eduardorittner/loxr against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feduardorittner%2Floxr" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/eduardorittner/loxr [INFO] finished tweaking git repo https://github.com/eduardorittner/loxr [INFO] tweaked toml for git repo https://github.com/eduardorittner/loxr written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/eduardorittner/loxr on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/eduardorittner/loxr 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e41f071873e8ba9d95e201817c2285e940f6e7d2ebbf39ea1931ad610671da64 [INFO] running `Command { std: "docker" "start" "-a" "e41f071873e8ba9d95e201817c2285e940f6e7d2ebbf39ea1931ad610671da64", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e41f071873e8ba9d95e201817c2285e940f6e7d2ebbf39ea1931ad610671da64", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e41f071873e8ba9d95e201817c2285e940f6e7d2ebbf39ea1931ad610671da64", kill_on_drop: false }` [INFO] [stdout] e41f071873e8ba9d95e201817c2285e940f6e7d2ebbf39ea1931ad610671da64 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c3eb0648c0f80faa0ae8e8eb60d00d28e08ff907c3d954369208a55354b2e365 [INFO] running `Command { std: "docker" "start" "-a" "c3eb0648c0f80faa0ae8e8eb60d00d28e08ff907c3d954369208a55354b2e365", kill_on_drop: false }` [INFO] [stderr] Compiling lex v0.1.0 (/opt/rustwide/workdir/lex) [INFO] [stdout] warning: fields `source` and `done` are never read [INFO] [stdout] --> lex/src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Lexer<'source> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 10 | source: &'source str, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | done: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling ast v0.1.0 (/opt/rustwide/workdir/ast) [INFO] [stdout] warning: unused variable: `fun_decl` [INFO] [stdout] --> ast/src/lib.rs:182:23 [INFO] [stdout] | [INFO] [stdout] 182 | Decl::Fun(fun_decl) => todo!(), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fun_decl` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> ast/src/lib.rs:183:25 [INFO] [stdout] | [INFO] [stdout] 183 | Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> ast/src/lib.rs:183:31 [INFO] [stdout] | [INFO] [stdout] 183 | Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stmt` [INFO] [stdout] --> ast/src/lib.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | Decl::Stmt { stmt } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `stmt: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> ast/src/lib.rs:179:19 [INFO] [stdout] | [INFO] [stdout] 179 | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling parse v0.1.0 (/opt/rustwide/workdir/parse) [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> parse/src/decl.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | ast::Decl::Fun(ast::FunDecl { [INFO] [stdout] | ________________________^ [INFO] [stdout] 62 | | name, [INFO] [stdout] 63 | | args, [INFO] [stdout] 64 | | body: todo!(), [INFO] [stdout] | | ------- any code following this expression is unreachable [INFO] [stdout] 65 | | }) [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `postfix_bp` is never used [INFO] [stdout] --> parse/src/expr.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 119 | trait Operator { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 125 | fn postfix_bp(&self) -> Option<(u8, ())>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling vm_ast v0.1.0 (/opt/rustwide/workdir/vm-ast) [INFO] [stdout] warning: unused import: `parse::Parser` [INFO] [stdout] --> vm-ast/src/lib.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use parse::Parser; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> vm-ast/src/lib.rs:58:28 [INFO] [stdout] | [INFO] [stdout] 58 | Stmt::Return { expr } => Err("Return statements not implemented".into()), [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> vm-ast/src/lib.rs:143:38 [INFO] [stdout] | [INFO] [stdout] 143 | stmt: Stmt::Return { expr }, [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> vm-ast/src/lib.rs:140:13 [INFO] [stdout] | [INFO] [stdout] 140 | let mut result = Lit::Nil; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling loxr v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `lex::T` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use lex::T; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lex::token::TokenKind` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use lex::token::TokenKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fun_decl` [INFO] [stdout] --> src/main.rs:13:28 [INFO] [stdout] | [INFO] [stdout] 13 | ast::Decl::Fun(fun_decl) => todo!(), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fun_decl` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/main.rs:14:30 [INFO] [stdout] | [INFO] [stdout] 14 | ast::Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/main.rs:14:36 [INFO] [stdout] | [INFO] [stdout] 14 | ast::Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> src/main.rs:16:36 [INFO] [stdout] | [INFO] [stdout] 16 | ast::Stmt::While { cond, body } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> src/main.rs:16:42 [INFO] [stdout] | [INFO] [stdout] 16 | ast::Stmt::While { cond, body } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `body: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/main.rs:17:37 [INFO] [stdout] | [INFO] [stdout] 17 | ast::Stmt::Return { expr } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/main.rs:18:36 [INFO] [stdout] | [INFO] [stdout] 18 | ast::Stmt::Print { expr } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> src/main.rs:20:21 [INFO] [stdout] | [INFO] [stdout] 20 | cond, [INFO] [stdout] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `iftrue` [INFO] [stdout] --> src/main.rs:21:21 [INFO] [stdout] | [INFO] [stdout] 21 | iftrue, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `iftrue: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `iffalse` [INFO] [stdout] --> src/main.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | iffalse, [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `iffalse: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `initial` [INFO] [stdout] --> src/main.rs:25:21 [INFO] [stdout] | [INFO] [stdout] 25 | initial, [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `initial: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> src/main.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | cond, [INFO] [stdout] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `increment` [INFO] [stdout] --> src/main.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 27 | increment, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `increment: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> src/main.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | body, [INFO] [stdout] | ^^^^ help: try ignoring the field: `body: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:34:21 [INFO] [stdout] | [INFO] [stdout] 34 | vm.execute_stmt(ast::Stmt::Block(block)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 34 | let _ = vm.execute_stmt(ast::Stmt::Block(block)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.77s [INFO] running `Command { std: "docker" "inspect" "c3eb0648c0f80faa0ae8e8eb60d00d28e08ff907c3d954369208a55354b2e365", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3eb0648c0f80faa0ae8e8eb60d00d28e08ff907c3d954369208a55354b2e365", kill_on_drop: false }` [INFO] [stdout] c3eb0648c0f80faa0ae8e8eb60d00d28e08ff907c3d954369208a55354b2e365 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7e8d4a17899bd8f48309d06e3753306f421fde85ae2398b9da0ac92d77e18bb0 [INFO] running `Command { std: "docker" "start" "-a" "7e8d4a17899bd8f48309d06e3753306f421fde85ae2398b9da0ac92d77e18bb0", kill_on_drop: false }` [INFO] [stdout] warning: fields `source` and `done` are never read [INFO] [stdout] --> lex/src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Lexer<'source> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 10 | source: &'source str, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | done: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling loxr v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `fun_decl` [INFO] [stdout] --> ast/src/lib.rs:182:23 [INFO] [stdout] | [INFO] [stdout] 182 | Decl::Fun(fun_decl) => todo!(), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fun_decl` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> ast/src/lib.rs:183:25 [INFO] [stdout] | [INFO] [stdout] 183 | Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> ast/src/lib.rs:183:31 [INFO] [stdout] | [INFO] [stdout] 183 | Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stmt` [INFO] [stdout] --> ast/src/lib.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | Decl::Stmt { stmt } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `stmt: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> ast/src/lib.rs:179:19 [INFO] [stdout] | [INFO] [stdout] 179 | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> parse/src/decl.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | ast::Decl::Fun(ast::FunDecl { [INFO] [stdout] | ________________________^ [INFO] [stdout] 62 | | name, [INFO] [stdout] 63 | | args, [INFO] [stdout] 64 | | body: todo!(), [INFO] [stdout] | | ------- any code following this expression is unreachable [INFO] [stdout] 65 | | }) [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `postfix_bp` is never used [INFO] [stdout] --> parse/src/expr.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 119 | trait Operator { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 125 | fn postfix_bp(&self) -> Option<(u8, ())>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parse::Parser` [INFO] [stdout] --> vm-ast/src/lib.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use parse::Parser; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> vm-ast/src/lib.rs:58:28 [INFO] [stdout] | [INFO] [stdout] 58 | Stmt::Return { expr } => Err("Return statements not implemented".into()), [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> vm-ast/src/lib.rs:143:38 [INFO] [stdout] | [INFO] [stdout] 143 | stmt: Stmt::Return { expr }, [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> vm-ast/src/lib.rs:140:13 [INFO] [stdout] | [INFO] [stdout] 140 | let mut result = Lit::Nil; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lex::T` [INFO] [stdout] --> src/main.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use lex::T; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `lex::token::TokenKind` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use lex::token::TokenKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fun_decl` [INFO] [stdout] --> src/main.rs:13:28 [INFO] [stdout] | [INFO] [stdout] 13 | ast::Decl::Fun(fun_decl) => todo!(), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fun_decl` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/main.rs:14:30 [INFO] [stdout] | [INFO] [stdout] 14 | ast::Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/main.rs:14:36 [INFO] [stdout] | [INFO] [stdout] 14 | ast::Decl::Var { name, value } => todo!(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> src/main.rs:16:36 [INFO] [stdout] | [INFO] [stdout] 16 | ast::Stmt::While { cond, body } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> src/main.rs:16:42 [INFO] [stdout] | [INFO] [stdout] 16 | ast::Stmt::While { cond, body } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `body: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/main.rs:17:37 [INFO] [stdout] | [INFO] [stdout] 17 | ast::Stmt::Return { expr } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expr` [INFO] [stdout] --> src/main.rs:18:36 [INFO] [stdout] | [INFO] [stdout] 18 | ast::Stmt::Print { expr } => todo!(), [INFO] [stdout] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> src/main.rs:20:21 [INFO] [stdout] | [INFO] [stdout] 20 | cond, [INFO] [stdout] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `iftrue` [INFO] [stdout] --> src/main.rs:21:21 [INFO] [stdout] | [INFO] [stdout] 21 | iftrue, [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `iftrue: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `iffalse` [INFO] [stdout] --> src/main.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | iffalse, [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `iffalse: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `initial` [INFO] [stdout] --> src/main.rs:25:21 [INFO] [stdout] | [INFO] [stdout] 25 | initial, [INFO] [stdout] | ^^^^^^^ help: try ignoring the field: `initial: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> src/main.rs:26:21 [INFO] [stdout] | [INFO] [stdout] 26 | cond, [INFO] [stdout] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `increment` [INFO] [stdout] --> src/main.rs:27:21 [INFO] [stdout] | [INFO] [stdout] 27 | increment, [INFO] [stdout] | ^^^^^^^^^ help: try ignoring the field: `increment: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> src/main.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | body, [INFO] [stdout] | ^^^^ help: try ignoring the field: `body: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:34:21 [INFO] [stdout] | [INFO] [stdout] 34 | vm.execute_stmt(ast::Stmt::Block(block)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 34 | let _ = vm.execute_stmt(ast::Stmt::Block(block)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.27s [INFO] running `Command { std: "docker" "inspect" "7e8d4a17899bd8f48309d06e3753306f421fde85ae2398b9da0ac92d77e18bb0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7e8d4a17899bd8f48309d06e3753306f421fde85ae2398b9da0ac92d77e18bb0", kill_on_drop: false }` [INFO] [stdout] 7e8d4a17899bd8f48309d06e3753306f421fde85ae2398b9da0ac92d77e18bb0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 441e970e39e35ce00d54026dcbee561c0e8491850b5643b1bdf868bbaa670374 [INFO] running `Command { std: "docker" "start" "-a" "441e970e39e35ce00d54026dcbee561c0e8491850b5643b1bdf868bbaa670374", kill_on_drop: false }` [INFO] [stderr] warning: fields `source` and `done` are never read [INFO] [stderr] --> lex/src/lib.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct Lexer<'source> { [INFO] [stderr] | ----- fields in this struct [INFO] [stderr] 10 | source: &'source str, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 13 | done: bool, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `lex` (lib) generated 1 warning [INFO] [stderr] warning: unused variable: `fun_decl` [INFO] [stderr] --> ast/src/lib.rs:182:23 [INFO] [stderr] | [INFO] [stderr] 182 | Decl::Fun(fun_decl) => todo!(), [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fun_decl` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> ast/src/lib.rs:183:25 [INFO] [stderr] | [INFO] [stderr] 183 | Decl::Var { name, value } => todo!(), [INFO] [stderr] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> ast/src/lib.rs:183:31 [INFO] [stderr] | [INFO] [stderr] 183 | Decl::Var { name, value } => todo!(), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `stmt` [INFO] [stderr] --> ast/src/lib.rs:184:26 [INFO] [stderr] | [INFO] [stderr] 184 | Decl::Stmt { stmt } => todo!(), [INFO] [stderr] | ^^^^ help: try ignoring the field: `stmt: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> ast/src/lib.rs:179:19 [INFO] [stderr] | [INFO] [stderr] 179 | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: `ast` (lib) generated 5 warnings [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> parse/src/decl.rs:61:24 [INFO] [stderr] | [INFO] [stderr] 61 | ast::Decl::Fun(ast::FunDecl { [INFO] [stderr] | ________________________^ [INFO] [stderr] 62 | | name, [INFO] [stderr] 63 | | args, [INFO] [stderr] 64 | | body: todo!(), [INFO] [stderr] | | ------- any code following this expression is unreachable [INFO] [stderr] 65 | | }) [INFO] [stderr] | |_________^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: method `postfix_bp` is never used [INFO] [stderr] --> parse/src/expr.rs:125:8 [INFO] [stderr] | [INFO] [stderr] 119 | trait Operator { [INFO] [stderr] | -------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 125 | fn postfix_bp(&self) -> Option<(u8, ())>; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `parse` (lib) generated 2 warnings [INFO] [stderr] warning: unused import: `parse::Parser` [INFO] [stderr] --> vm-ast/src/lib.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use parse::Parser; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `expr` [INFO] [stderr] --> vm-ast/src/lib.rs:58:28 [INFO] [stderr] | [INFO] [stderr] 58 | Stmt::Return { expr } => Err("Return statements not implemented".into()), [INFO] [stderr] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `expr` [INFO] [stderr] --> vm-ast/src/lib.rs:143:38 [INFO] [stderr] | [INFO] [stderr] 143 | stmt: Stmt::Return { expr }, [INFO] [stderr] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> vm-ast/src/lib.rs:140:13 [INFO] [stderr] | [INFO] [stderr] 140 | let mut result = Lit::Nil; [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `vm_ast` (lib) generated 4 warnings (run `cargo fix --lib -p vm_ast` to apply 2 suggestions) [INFO] [stderr] warning: unused import: `lex::T` [INFO] [stderr] --> src/main.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use lex::T; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `lex::token::TokenKind` [INFO] [stderr] --> src/main.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use lex::token::TokenKind; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `fun_decl` [INFO] [stderr] --> src/main.rs:13:28 [INFO] [stderr] | [INFO] [stderr] 13 | ast::Decl::Fun(fun_decl) => todo!(), [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fun_decl` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/main.rs:14:30 [INFO] [stderr] | [INFO] [stderr] 14 | ast::Decl::Var { name, value } => todo!(), [INFO] [stderr] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/main.rs:14:36 [INFO] [stderr] | [INFO] [stderr] 14 | ast::Decl::Var { name, value } => todo!(), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `value: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cond` [INFO] [stderr] --> src/main.rs:16:36 [INFO] [stderr] | [INFO] [stderr] 16 | ast::Stmt::While { cond, body } => todo!(), [INFO] [stderr] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `body` [INFO] [stderr] --> src/main.rs:16:42 [INFO] [stderr] | [INFO] [stderr] 16 | ast::Stmt::While { cond, body } => todo!(), [INFO] [stderr] | ^^^^ help: try ignoring the field: `body: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `expr` [INFO] [stderr] --> src/main.rs:17:37 [INFO] [stderr] | [INFO] [stderr] 17 | ast::Stmt::Return { expr } => todo!(), [INFO] [stderr] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `expr` [INFO] [stderr] --> src/main.rs:18:36 [INFO] [stderr] | [INFO] [stderr] 18 | ast::Stmt::Print { expr } => todo!(), [INFO] [stderr] | ^^^^ help: try ignoring the field: `expr: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cond` [INFO] [stderr] --> src/main.rs:20:21 [INFO] [stderr] | [INFO] [stderr] 20 | cond, [INFO] [stderr] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `iftrue` [INFO] [stderr] --> src/main.rs:21:21 [INFO] [stderr] | [INFO] [stderr] 21 | iftrue, [INFO] [stderr] | ^^^^^^ help: try ignoring the field: `iftrue: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `iffalse` [INFO] [stderr] --> src/main.rs:22:21 [INFO] [stderr] | [INFO] [stderr] 22 | iffalse, [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `iffalse: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `initial` [INFO] [stderr] --> src/main.rs:25:21 [INFO] [stderr] | [INFO] [stderr] 25 | initial, [INFO] [stderr] | ^^^^^^^ help: try ignoring the field: `initial: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cond` [INFO] [stderr] --> src/main.rs:26:21 [INFO] [stderr] | [INFO] [stderr] 26 | cond, [INFO] [stderr] | ^^^^ help: try ignoring the field: `cond: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `increment` [INFO] [stderr] --> src/main.rs:27:21 [INFO] [stderr] | [INFO] [stderr] 27 | increment, [INFO] [stderr] | ^^^^^^^^^ help: try ignoring the field: `increment: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `body` [INFO] [stderr] --> src/main.rs:28:21 [INFO] [stderr] | [INFO] [stderr] 28 | body, [INFO] [stderr] | ^^^^ help: try ignoring the field: `body: _` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:34:21 [INFO] [stderr] | [INFO] [stderr] 34 | vm.execute_stmt(ast::Stmt::Block(block)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 34 | let _ = vm.execute_stmt(ast::Stmt::Block(block)); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `loxr` (bin "loxr" test) generated 17 warnings (run `cargo fix --bin "loxr" --tests` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/loxr-8813e40c345d4c66) [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] running `Command { std: "docker" "inspect" "441e970e39e35ce00d54026dcbee561c0e8491850b5643b1bdf868bbaa670374", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "441e970e39e35ce00d54026dcbee561c0e8491850b5643b1bdf868bbaa670374", kill_on_drop: false }` [INFO] [stdout] 441e970e39e35ce00d54026dcbee561c0e8491850b5643b1bdf868bbaa670374