[INFO] cloning repository https://github.com/Hollowloki/le_sserafim
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Hollowloki/le_sserafim" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHollowloki%2Fle_sserafim", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHollowloki%2Fle_sserafim'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7c91ae6ccb3b120bc8cb2501b17254b5c4066c1e
[INFO] checking Hollowloki/le_sserafim against try#50f413885985a8b0a0b6ca0766a0aedd45304953 for pr-155657-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHollowloki%2Fle_sserafim" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Hollowloki/le_sserafim
[INFO] finished tweaking git repo https://github.com/Hollowloki/le_sserafim
[INFO] tweaked toml for git repo https://github.com/Hollowloki/le_sserafim written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Hollowloki/le_sserafim on toolchain 50f413885985a8b0a0b6ca0766a0aedd45304953
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+50f413885985a8b0a0b6ca0766a0aedd45304953" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+50f413885985a8b0a0b6ca0766a0aedd45304953" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 273 packages to latest compatible versions
[INFO] [stderr]       Adding codespan-reporting v0.11.1 (available: v0.13.1)
[INFO] [stderr]       Adding dirs v5.0.1 (available: v6.0.0)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding hashbrown v0.13.2 (available: v0.17.1)
[INFO] [stderr]       Adding lalrpop v0.20.2 (available: v0.23.1)
[INFO] [stderr]       Adding lalrpop-util v0.20.2 (available: v0.23.1)
[INFO] [stderr]       Adding logos v0.13.0 (available: v0.16.1)
[INFO] [stderr]       Adding nu-ansi-term v0.47.0 (available: v0.50.3)
[INFO] [stderr]       Adding pprof v0.12.1 (available: v0.15.0)
[INFO] [stderr]       Adding rand v0.6.5 (available: v0.10.1)
[INFO] [stderr]       Adding reedline v0.26.0 (available: v0.47.0)
[INFO] [stderr]       Adding rustc-hash v1.1.0 (available: v2.1.2)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.18)
[INFO] [stderr]       Adding tree-sitter v0.20.10 (available: v0.26.8)
[INFO] [stderr]       Adding tree-sitter-highlight v0.20.1 (available: v0.26.8)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+50f413885985a8b0a0b6ca0766a0aedd45304953" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: package.author
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+50f413885985a8b0a0b6ca0766a0aedd45304953" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4c346077480143e7b5438f31cf9cd44876c295b5ead2aea8a43df7c25b2f367e
[INFO] running `Command { std: "docker" "start" "-a" "4c346077480143e7b5438f31cf9cd44876c295b5ead2aea8a43df7c25b2f367e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4c346077480143e7b5438f31cf9cd44876c295b5ead2aea8a43df7c25b2f367e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c346077480143e7b5438f31cf9cd44876c295b5ead2aea8a43df7c25b2f367e", kill_on_drop: false }`
[INFO] [stdout] 4c346077480143e7b5438f31cf9cd44876c295b5ead2aea8a43df7c25b2f367e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+50f413885985a8b0a0b6ca0766a0aedd45304953" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 136b2c4236fb9110e7f63d0d931c65d569654b83502c0b1d96953e3183713bc0
[INFO] running `Command { std: "docker" "start" "-a" "136b2c4236fb9110e7f63d0d931c65d569654b83502c0b1d96953e3183713bc0", kill_on_drop: false }`
[INFO] [stderr] warning: unused manifest key: package.author
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling siphasher v1.0.3
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling precomputed-hash v0.1.1
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling dirs-sys-next v0.1.2
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling term v0.7.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling string_cache v0.8.9
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]    Compiling ena v0.14.4
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling ascii-canvas v3.0.0
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling tree-sitter v0.20.10
[INFO] [stderr]    Compiling libmimalloc-sys v0.1.47
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking colorchoice v1.0.5
[INFO] [stderr]    Compiling pico-args v0.5.0
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]    Compiling lalrpop-util v0.20.2
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling lalrpop v0.20.2
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling logos-codegen v0.13.0
[INFO] [stderr]     Checking vte v0.14.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking fd-lock v3.0.13
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling logos-derive v0.13.0
[INFO] [stderr]     Checking strip-ansi-escapes v0.2.1
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking nu-ansi-term v0.49.0
[INFO] [stderr]     Checking unicode-segmentation v1.13.2
[INFO] [stderr]     Checking strum v0.25.0
[INFO] [stderr]     Checking tree-sitter-highlight v0.20.1
[INFO] [stderr]     Checking logos v0.13.0
[INFO] [stderr]     Checking mimalloc v0.1.50
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]     Checking iota v0.2.3
[INFO] [stderr]     Checking nu-ansi-term v0.47.0
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking pretty_assertions v1.4.1
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]     Checking reedline v0.26.0
[INFO] [stderr]    Compiling test-generator v0.3.1
[INFO] [stderr]    Compiling Cecile v0.1.7 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `anyhow::bail`
[INFO] [stdout]  --> src/cli/command.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::bail;
[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: `collections::HashMap`
[INFO] [stdout]  --> src/vm/chunk.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{collections::HashMap, ops::Index};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::compiler::Upvalue`
[INFO] [stdout]  --> src/vm/chunk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::compiler::Upvalue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::object::ObjectFunction`
[INFO] [stdout]  --> src/vm/chunk.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use super::object::ObjectFunction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Type`
[INFO] [stdout]  --> src/vm/chunk.rs:7:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cc_parser::ast::{Span, Type};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cc_parser::ast`
[INFO] [stdout]    --> src/cc_lexer/mod.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |     use crate::cc_parser::ast;
[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: `anyhow::bail`
[INFO] [stdout]  --> src/cli/command.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use anyhow::bail;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `collections::HashMap`
[INFO] [stdout]  --> src/vm/chunk.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{collections::HashMap, ops::Index};
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::compiler::Upvalue`
[INFO] [stdout]  --> src/vm/chunk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::compiler::Upvalue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::object::ObjectFunction`
[INFO] [stdout]  --> src/vm/chunk.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use super::object::ObjectFunction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Type`
[INFO] [stdout]  --> src/vm/chunk.rs:7:35
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cc_parser::ast::{Span, Type};
[INFO] [stdout]   |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/vm/compiler.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/vm/compiler.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/vm/compiler.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub struct StructMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 190 |     name: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StructMethod` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `Cecile` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `cecile`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/repl/mod.rs:97:27
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn render_prompt_left(&self) -> Cow<str> {
[INFO] [stdout]    |                           ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn render_prompt_left(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn render_prompt_right(&self) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn render_prompt_right(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:105:32
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn render_prompt_indicator(&self, _: PromptEditMode) -> Cow<str> {
[INFO] [stdout]     |                                ^^^^^                        ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn render_prompt_indicator(&self, _: PromptEditMode) -> Cow<'_, str> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:109:42
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn render_prompt_multiline_indicator(&self) -> Cow<str> {
[INFO] [stdout]     |                                          ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn render_prompt_multiline_indicator(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:113:47
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn render_prompt_history_search_indicator(&self, _: PromptHistorySearch) -> Cow<str> {
[INFO] [stdout]     |                                               ^^^^^ the lifetime is elided here ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn render_prompt_history_search_indicator(&self, _: PromptHistorySearch) -> Cow<'_, str> {
[INFO] [stdout]     |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vm/mod.rs:69:27
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn new(allocator: &mut CeAllocationGc, trace: bool, optimized_debug: bool) -> VM {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^ the lifetime is elided here             ^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn new(allocator: &mut CeAllocationGc, trace: bool, optimized_debug: bool) -> VM<'_> {
[INFO] [stdout]    |                                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:311:46
[INFO] [stdout]     |
[INFO] [stdout] 311 |                     let arr_value = unsafe { (*array).values.get_unchecked_mut(index) };
[INFO] [stdout]     |                                              ^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                |
[INFO] [stdout]     |                                                this raw pointer has type `*mut ArrayObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&mut [value::Value]`
[INFO] [stdout]    --> src/vm/mod.rs:311:46
[INFO] [stdout]     |
[INFO] [stdout] 311 |                     let arr_value = unsafe { (*array).values.get_unchecked_mut(index) };
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked_mut` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:684:4
[INFO] [stdout]     = note: `#[deny(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 311 |                     let arr_value = unsafe { (&mut (*array).values).get_unchecked_mut(index) };
[INFO] [stdout]     |                                              +++++                +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |                     let value = unsafe { (*array).values.get_unchecked(index) };
[INFO] [stdout]     |                                          ^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            this raw pointer has type `*mut ArrayObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[value::Value]`
[INFO] [stdout]    --> src/vm/mod.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |                     let value = unsafe { (*array).values.get_unchecked(index) };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 355 |                     let value = unsafe { (&(*array).values).get_unchecked(index) };
[INFO] [stdout]     |                                          ++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:673:32
[INFO] [stdout]     |
[INFO] [stdout] 673 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this raw pointer has type `*mut ClosureObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[*mut UpvalueObject]`
[INFO] [stdout]    --> src/vm/mod.rs:673:32
[INFO] [stdout]     |
[INFO] [stdout] 673 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 673 |         let object = *unsafe { (&(*self.frame.closure).upvalues).get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ++                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:681:32
[INFO] [stdout]     |
[INFO] [stdout] 681 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this raw pointer has type `*mut ClosureObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[*mut UpvalueObject]`
[INFO] [stdout]    --> src/vm/mod.rs:681:32
[INFO] [stdout]     |
[INFO] [stdout] 681 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 681 |         let object = *unsafe { (&(*self.frame.closure).upvalues).get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ++                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:701:27
[INFO] [stdout]     |
[INFO] [stdout] 701 |                 unsafe { *(*self.frame.closure).upvalues.get_unchecked(upvalue_idx) }
[INFO] [stdout]     |                           ^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this raw pointer has type `*mut ClosureObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[*mut UpvalueObject]`
[INFO] [stdout]    --> src/vm/mod.rs:701:27
[INFO] [stdout]     |
[INFO] [stdout] 701 |                 unsafe { *(*self.frame.closure).upvalues.get_unchecked(upvalue_idx) }
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 701 |                 unsafe { *(&(*self.frame.closure).upvalues).get_unchecked(upvalue_idx) }
[INFO] [stdout]     |                           ++                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:807:38
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 let value = unsafe { (*array).values.get_unchecked(index.as_number() as usize) };
[INFO] [stdout]     |                                      ^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        this raw pointer has type `*mut ArrayObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[value::Value]`
[INFO] [stdout]    --> src/vm/mod.rs:807:38
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 let value = unsafe { (*array).values.get_unchecked(index.as_number() as usize) };
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 let value = unsafe { (&(*array).values).get_unchecked(index.as_number() as usize) };
[INFO] [stdout]     |                                      ++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/mod.rs:1144:19
[INFO] [stdout]      |
[INFO] [stdout] 1144 |         *unsafe { (*function).chunk.constants.get_unchecked(constant_idx) }
[INFO] [stdout]      |                   ^^--------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[value::Value]`
[INFO] [stdout]     --> src/vm/mod.rs:1144:19
[INFO] [stdout]      |
[INFO] [stdout] 1144 |         *unsafe { (*function).chunk.constants.get_unchecked(constant_idx) }
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]     --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1144 |         *unsafe { (&(*function).chunk.constants).get_unchecked(constant_idx) }
[INFO] [stdout]      |                   ++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/mod.rs:1293:29
[INFO] [stdout]      |
[INFO] [stdout] 1293 |         let span = unsafe { (*function).chunk.spans[idx - 1].clone() };
[INFO] [stdout]      |                             ^^--------^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&VecRun<std::ops::Range<usize>>`
[INFO] [stdout]     --> src/vm/mod.rs:1293:29
[INFO] [stdout]      |
[INFO] [stdout] 1293 |         let span = unsafe { (*function).chunk.spans[idx - 1].clone() };
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1293 |         let span = unsafe { (&(*function).chunk.spans)[idx - 1].clone() };
[INFO] [stdout]      |                             ++                       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vm/chunk.rs:189:18
[INFO] [stdout]     |
[INFO] [stdout] 189 |     pub fn drain(&mut self, range: std::ops::RangeInclusive<usize>) -> std::vec::Drain<Run<T>> {
[INFO] [stdout]     |                  ^^^^^^^^^ the lifetime is elided here                 ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 189 |     pub fn drain(&mut self, range: std::ops::RangeInclusive<usize>) -> std::vec::Drain<'_, Run<T>> {
[INFO] [stdout]     |                                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/compiler.rs:1685:17
[INFO] [stdout]      |
[INFO] [stdout] 1685 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx],
[INFO] [stdout]      |                 ^^------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&mut Vec<u8>`
[INFO] [stdout]     --> src/vm/compiler.rs:1685:17
[INFO] [stdout]      |
[INFO] [stdout] 1685 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx],
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1685 |                 (&mut (*self.current_compiler.function).chunk.op_codes)[offset_idx],
[INFO] [stdout]      |                 +++++                                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/compiler.rs:1686:17
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx + 1],
[INFO] [stdout]      |                 ^^------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&mut Vec<u8>`
[INFO] [stdout]     --> src/vm/compiler.rs:1686:17
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx + 1],
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 (&mut (*self.current_compiler.function).chunk.op_codes)[offset_idx + 1],
[INFO] [stdout]      |                 +++++                                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `Cecile` (lib) due to 10 previous errors; 15 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/vm/compiler.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 189 | pub struct StructMethod {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 190 |     name: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StructMethod` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/repl/mod.rs:97:27
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn render_prompt_left(&self) -> Cow<str> {
[INFO] [stdout]    |                           ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn render_prompt_left(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn render_prompt_right(&self) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn render_prompt_right(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:105:32
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn render_prompt_indicator(&self, _: PromptEditMode) -> Cow<str> {
[INFO] [stdout]     |                                ^^^^^                        ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn render_prompt_indicator(&self, _: PromptEditMode) -> Cow<'_, str> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:109:42
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn render_prompt_multiline_indicator(&self) -> Cow<str> {
[INFO] [stdout]     |                                          ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                          |
[INFO] [stdout]     |                                          the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 109 |     fn render_prompt_multiline_indicator(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/repl/mod.rs:113:47
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn render_prompt_history_search_indicator(&self, _: PromptHistorySearch) -> Cow<str> {
[INFO] [stdout]     |                                               ^^^^^ the lifetime is elided here ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn render_prompt_history_search_indicator(&self, _: PromptHistorySearch) -> Cow<'_, str> {
[INFO] [stdout]     |                                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/vm/mod.rs:69:27
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn new(allocator: &mut CeAllocationGc, trace: bool, optimized_debug: bool) -> VM {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^ the lifetime is elided here             ^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 69 |     pub fn new(allocator: &mut CeAllocationGc, trace: bool, optimized_debug: bool) -> VM<'_> {
[INFO] [stdout]    |                                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:311:46
[INFO] [stdout]     |
[INFO] [stdout] 311 |                     let arr_value = unsafe { (*array).values.get_unchecked_mut(index) };
[INFO] [stdout]     |                                              ^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                                |
[INFO] [stdout]     |                                                this raw pointer has type `*mut ArrayObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&mut [value::Value]`
[INFO] [stdout]    --> src/vm/mod.rs:311:46
[INFO] [stdout]     |
[INFO] [stdout] 311 |                     let arr_value = unsafe { (*array).values.get_unchecked_mut(index) };
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked_mut` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:684:4
[INFO] [stdout]     = note: `#[deny(dangerous_implicit_autorefs)]` on by default
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 311 |                     let arr_value = unsafe { (&mut (*array).values).get_unchecked_mut(index) };
[INFO] [stdout]     |                                              +++++                +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |                     let value = unsafe { (*array).values.get_unchecked(index) };
[INFO] [stdout]     |                                          ^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            this raw pointer has type `*mut ArrayObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[value::Value]`
[INFO] [stdout]    --> src/vm/mod.rs:355:42
[INFO] [stdout]     |
[INFO] [stdout] 355 |                     let value = unsafe { (*array).values.get_unchecked(index) };
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 355 |                     let value = unsafe { (&(*array).values).get_unchecked(index) };
[INFO] [stdout]     |                                          ++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:673:32
[INFO] [stdout]     |
[INFO] [stdout] 673 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this raw pointer has type `*mut ClosureObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[*mut UpvalueObject]`
[INFO] [stdout]    --> src/vm/mod.rs:673:32
[INFO] [stdout]     |
[INFO] [stdout] 673 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 673 |         let object = *unsafe { (&(*self.frame.closure).upvalues).get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ++                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:681:32
[INFO] [stdout]     |
[INFO] [stdout] 681 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this raw pointer has type `*mut ClosureObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[*mut UpvalueObject]`
[INFO] [stdout]    --> src/vm/mod.rs:681:32
[INFO] [stdout]     |
[INFO] [stdout] 681 |         let object = *unsafe { (*self.frame.closure).upvalues.get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 681 |         let object = *unsafe { (&(*self.frame.closure).upvalues).get_unchecked(upvalue_idx) };
[INFO] [stdout]     |                                ++                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:701:27
[INFO] [stdout]     |
[INFO] [stdout] 701 |                 unsafe { *(*self.frame.closure).upvalues.get_unchecked(upvalue_idx) }
[INFO] [stdout]     |                           ^^------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this raw pointer has type `*mut ClosureObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[*mut UpvalueObject]`
[INFO] [stdout]    --> src/vm/mod.rs:701:27
[INFO] [stdout]     |
[INFO] [stdout] 701 |                 unsafe { *(*self.frame.closure).upvalues.get_unchecked(upvalue_idx) }
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 701 |                 unsafe { *(&(*self.frame.closure).upvalues).get_unchecked(upvalue_idx) }
[INFO] [stdout]     |                           ++                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]    --> src/vm/mod.rs:807:38
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 let value = unsafe { (*array).values.get_unchecked(index.as_number() as usize) };
[INFO] [stdout]     |                                      ^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                        |
[INFO] [stdout]     |                                        this raw pointer has type `*mut ArrayObject`
[INFO] [stdout]     |
[INFO] [stdout]     = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[value::Value]`
[INFO] [stdout]    --> src/vm/mod.rs:807:38
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 let value = unsafe { (*array).values.get_unchecked(index.as_number() as usize) };
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]    --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 let value = unsafe { (&(*array).values).get_unchecked(index.as_number() as usize) };
[INFO] [stdout]     |                                      ++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/mod.rs:1144:19
[INFO] [stdout]      |
[INFO] [stdout] 1144 |         *unsafe { (*function).chunk.constants.get_unchecked(constant_idx) }
[INFO] [stdout]      |                   ^^--------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&[value::Value]`
[INFO] [stdout]     --> src/vm/mod.rs:1144:19
[INFO] [stdout]      |
[INFO] [stdout] 1144 |         *unsafe { (*function).chunk.constants.get_unchecked(constant_idx) }
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: method calls to `get_unchecked` require a reference
[INFO] [stdout]     --> /rustc/50f413885985a8b0a0b6ca0766a0aedd45304953/library/core/src/slice/mod.rs:639:4
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1144 |         *unsafe { (&(*function).chunk.constants).get_unchecked(constant_idx) }
[INFO] [stdout]      |                   ++                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/mod.rs:1293:29
[INFO] [stdout]      |
[INFO] [stdout] 1293 |         let span = unsafe { (*function).chunk.spans[idx - 1].clone() };
[INFO] [stdout]      |                             ^^--------^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&VecRun<std::ops::Range<usize>>`
[INFO] [stdout]     --> src/vm/mod.rs:1293:29
[INFO] [stdout]      |
[INFO] [stdout] 1293 |         let span = unsafe { (*function).chunk.spans[idx - 1].clone() };
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1293 |         let span = unsafe { (&(*function).chunk.spans)[idx - 1].clone() };
[INFO] [stdout]      |                             ++                       +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vm/chunk.rs:189:18
[INFO] [stdout]     |
[INFO] [stdout] 189 |     pub fn drain(&mut self, range: std::ops::RangeInclusive<usize>) -> std::vec::Drain<Run<T>> {
[INFO] [stdout]     |                  ^^^^^^^^^ the lifetime is elided here                 ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 189 |     pub fn drain(&mut self, range: std::ops::RangeInclusive<usize>) -> std::vec::Drain<'_, Run<T>> {
[INFO] [stdout]     |                                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/compiler.rs:1685:17
[INFO] [stdout]      |
[INFO] [stdout] 1685 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx],
[INFO] [stdout]      |                 ^^------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&mut Vec<u8>`
[INFO] [stdout]     --> src/vm/compiler.rs:1685:17
[INFO] [stdout]      |
[INFO] [stdout] 1685 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx],
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1685 |                 (&mut (*self.current_compiler.function).chunk.op_codes)[offset_idx],
[INFO] [stdout]      |                 +++++                                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer
[INFO] [stdout]     --> src/vm/compiler.rs:1686:17
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx + 1],
[INFO] [stdout]      |                 ^^------------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this raw pointer has type `*mut ObjectFunction`
[INFO] [stdout]      |
[INFO] [stdout]      = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements
[INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&mut Vec<u8>`
[INFO] [stdout]     --> src/vm/compiler.rs:1686:17
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 (*self.current_compiler.function).chunk.op_codes[offset_idx + 1],
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 (&mut (*self.current_compiler.function).chunk.op_codes)[offset_idx + 1],
[INFO] [stdout]      |                 +++++                                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `Cecile` (lib test) due to 10 previous errors; 15 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "136b2c4236fb9110e7f63d0d931c65d569654b83502c0b1d96953e3183713bc0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "136b2c4236fb9110e7f63d0d931c65d569654b83502c0b1d96953e3183713bc0", kill_on_drop: false }`
[INFO] [stdout] 136b2c4236fb9110e7f63d0d931c65d569654b83502c0b1d96953e3183713bc0
