[INFO] cloning repository https://github.com/tsmarsh/rustql
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tsmarsh/rustql" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftsmarsh%2Frustql", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftsmarsh%2Frustql'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3dd8c3a5199501efc4eb1d10d9325e26d064ae10
[INFO] checking tsmarsh/rustql against try#0611f7de057c584b8771102fde7aed6c70c71d3b for pr-146440
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftsmarsh%2Frustql" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tsmarsh/rustql
[INFO] finished tweaking git repo https://github.com/tsmarsh/rustql
[INFO] tweaked toml for git repo https://github.com/tsmarsh/rustql written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tsmarsh/rustql on toolchain 0611f7de057c584b8771102fde7aed6c70c71d3b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tsmarsh/rustql 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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4ccffd428da5165335b18d86cae4aacd2e8ebf789c7943c3c6b520e4201f055c
[INFO] running `Command { std: "docker" "start" "-a" "4ccffd428da5165335b18d86cae4aacd2e8ebf789c7943c3c6b520e4201f055c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4ccffd428da5165335b18d86cae4aacd2e8ebf789c7943c3c6b520e4201f055c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4ccffd428da5165335b18d86cae4aacd2e8ebf789c7943c3c6b520e4201f055c", kill_on_drop: false }`
[INFO] [stdout] 4ccffd428da5165335b18d86cae4aacd2e8ebf789c7943c3c6b520e4201f055c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 623a1d8de57b88d987aa367607537605f35d00db98cdb3a84eb0e7a4955d267a
[INFO] running `Command { std: "docker" "start" "-a" "623a1d8de57b88d987aa367607537605f35d00db98cdb3a84eb0e7a4955d267a", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.179
[INFO] [stderr]    Compiling rustql v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking chrono v0.4.43
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stdout] warning: unexpected `cfg` condition value: `sqlite3-ffi`
[INFO] [stdout]  --> build.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 |     #[cfg(feature = "sqlite3-ffi")]
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `crossterm`, `default`, `fts3`, `fts5`, `json`, `rtree`, `session`, `tcl`, and `tui`
[INFO] [stdout]   = help: consider adding `sqlite3-ffi` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking tempfile v3.24.0
[INFO] [stdout] warning: unused import: `WhereLevelFlags`
[INFO] [stdout]   --> src/executor/select/mod.rs:15:71
[INFO] [stdout]    |
[INFO] [stdout] 15 |     IndexInfo, OrBranch, QueryPlanner, TermOp, WhereInfo, WhereLevel, WhereLevelFlags, WherePlan,
[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: `WindowCompiler`
[INFO] [stdout]   --> src/executor/select/mod.rs:18:60
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::executor::window::{select_has_window_functions, WindowCompiler};
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/executor/trigger.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / /// Track trigger compilation depth to prevent infinite compile-time recursion.
[INFO] [stdout] 18 | | /// SQLite handles recursive triggers at runtime via the trigger_depth counter.
[INFO] [stdout] 19 | | /// By default, recursive triggers are OFF in SQLite. We limit compile-time nesting
[INFO] [stdout] 20 | | /// to prevent stack overflow; runtime trigger_depth checking prevents infinite execution.
[INFO] [stdout]    | |_-----------------------------------------------------------------------------------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeleteStmt`, `InsertStmt`, and `UpdateStmt`
[INFO] [stdout]     --> src/parser/grammar.rs:2062:34
[INFO] [stdout]      |
[INFO] [stdout] 2062 |         use crate::parser::ast::{DeleteStmt, IndexedBy, InsertStmt, Stmt, UpdateStmt};
[INFO] [stdout]      |                                  ^^^^^^^^^^             ^^^^^^^^^^        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SerialType` and `decode_record_header`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:1066:36
[INFO] [stdout]      |
[INFO] [stdout] 1066 |         use crate::vdbe::auxdata::{decode_record_header, SerialType};
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2374:28
[INFO] [stdout]      |
[INFO] [stdout] 2374 |                         if (need_root_lookup || table_meta.is_none()) {
[INFO] [stdout]      |                            ^                                        ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 2374 -                         if (need_root_lookup || table_meta.is_none()) {
[INFO] [stdout] 2374 +                         if need_root_lookup || table_meta.is_none() {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WhereLevelFlags`
[INFO] [stdout]   --> src/executor/select/mod.rs:15:71
[INFO] [stdout]    |
[INFO] [stdout] 15 |     IndexInfo, OrBranch, QueryPlanner, TermOp, WhereInfo, WhereLevel, WhereLevelFlags, WherePlan,
[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: `WindowCompiler`
[INFO] [stdout]   --> src/executor/select/mod.rs:18:60
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::executor::window::{select_has_window_functions, WindowCompiler};
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/executor/trigger.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / /// Track trigger compilation depth to prevent infinite compile-time recursion.
[INFO] [stdout] 18 | | /// SQLite handles recursive triggers at runtime via the trigger_depth counter.
[INFO] [stdout] 19 | | /// By default, recursive triggers are OFF in SQLite. We limit compile-time nesting
[INFO] [stdout] 20 | | /// to prevent stack overflow; runtime trigger_depth checking prevents infinite execution.
[INFO] [stdout]    | |_-----------------------------------------------------------------------------------------^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeleteStmt`, `InsertStmt`, and `UpdateStmt`
[INFO] [stdout]     --> src/parser/grammar.rs:2062:34
[INFO] [stdout]      |
[INFO] [stdout] 2062 |         use crate::parser::ast::{DeleteStmt, IndexedBy, InsertStmt, Stmt, UpdateStmt};
[INFO] [stdout]      |                                  ^^^^^^^^^^             ^^^^^^^^^^        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SerialType` and `decode_record_header`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:1066:36
[INFO] [stdout]      |
[INFO] [stdout] 1066 |         use crate::vdbe::auxdata::{decode_record_header, SerialType};
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2374:28
[INFO] [stdout]      |
[INFO] [stdout] 2374 |                         if (need_root_lookup || table_meta.is_none()) {
[INFO] [stdout]      |                            ^                                        ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 2374 -                         if (need_root_lookup || table_meta.is_none()) {
[INFO] [stdout] 2374 +                         if need_root_lookup || table_meta.is_none() {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_str_upper`
[INFO] [stdout]     --> src/api/connection.rs:1898:13
[INFO] [stdout]      |
[INFO] [stdout] 1898 |         let col_str_upper = col_str.to_uppercase();
[INFO] [stdout]      |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_str_upper`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_name`
[INFO] [stdout]     --> src/executor/delete.rs:1673:55
[INFO] [stdout]      |
[INFO] [stdout] 1673 |                     crate::parser::ast::InList::Table(table_name) => {
[INFO] [stdout]      |                                                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_schema_lower`
[INFO] [stdout]     --> src/executor/prepare.rs:3554:17
[INFO] [stdout]      |
[INFO] [stdout] 3554 |             let table_schema_lower = table_schema.to_lowercase();
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_schema_lower`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/executor/prepare.rs:4769:13
[INFO] [stdout]      |
[INFO] [stdout] 4769 |             _ => "?".to_string(), // Fallback for any remaining expressions
[INFO] [stdout]      |             ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/executor/prepare.rs:4769:13
[INFO] [stdout]      |
[INFO] [stdout] 4546 |             Expr::Literal(lit) => match lit {
[INFO] [stdout]      |             ------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4557 |             Expr::Column(col) => {
[INFO] [stdout]      |             ----------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4564 |             Expr::Binary { op, left, right } => {
[INFO] [stdout]      |             -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4596 |             Expr::Unary { op, expr: inner } => {
[INFO] [stdout]      |             ------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4769 |             _ => "?".to_string(), // Fallback for any remaining expressions
[INFO] [stdout]      |             ^ ...and 15 other patterns collectively make this unreachable
[INFO] [stdout]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_base_reg`
[INFO] [stdout]     --> src/executor/select/mod.rs:2217:25
[INFO] [stdout]      |
[INFO] [stdout] 2217 |                     let key_base_reg = self.next_reg;
[INFO] [stdout]      |                         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loop_start_label`
[INFO] [stdout]     --> src/executor/select/mod.rs:2723:13
[INFO] [stdout]      |
[INFO] [stdout] 2723 |         let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label());
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_base_reg`
[INFO] [stdout]     --> src/executor/select/mod.rs:2834:47
[INFO] [stdout]      |
[INFO] [stdout] 2834 |             let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info
[INFO] [stdout]      |                                               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_count`
[INFO] [stdout]     --> src/executor/select/mod.rs:2834:61
[INFO] [stdout]      |
[INFO] [stdout] 2834 |             let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info
[INFO] [stdout]      |                                                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `has_frame_current_row`
[INFO] [stdout]     --> src/executor/select/mod.rs:3490:17
[INFO] [stdout]      |
[INFO] [stdout] 3490 |             let has_frame_current_row = frame
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_frame_current_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_rows`
[INFO] [stdout]     --> src/executor/select/mod.rs:4656:29
[INFO] [stdout]      |
[INFO] [stdout] 4656 |                         let is_rows =
[INFO] [stdout]      |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clamp_start`
[INFO] [stdout]     --> src/executor/select/mod.rs:4700:37
[INFO] [stdout]      |
[INFO] [stdout] 4700 | ...                   let clamp_start = self.alloc_label();
[INFO] [stdout]      |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clamp_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loop_start_label`
[INFO] [stdout]     --> src/executor/select/mod.rs:5646:13
[INFO] [stdout]      |
[INFO] [stdout] 5646 |         let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label());
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/executor/select/mod.rs:6629:18
[INFO] [stdout]      |
[INFO] [stdout] 6629 |             for (idx, maybe_offset) in non_agg_indices.iter().enumerate() {
[INFO] [stdout]      |                  ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_idx`
[INFO] [stdout]     --> src/executor/select/mod.rs:8450:29
[INFO] [stdout]      |
[INFO] [stdout] 8450 |                 if let Some(col_idx) = self
[INFO] [stdout]      |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `level`
[INFO] [stdout]     --> src/executor/select/mod.rs:8646:9
[INFO] [stdout]      |
[INFO] [stdout] 8646 |         level: &WhereLevel,
[INFO] [stdout]      |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_cursor`
[INFO] [stdout]      --> src/executor/select/mod.rs:11667:9
[INFO] [stdout]       |
[INFO] [stdout] 11667 |         table_cursor: i32,
[INFO] [stdout]       |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_cursor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `where_info`
[INFO] [stdout]      --> src/executor/select/mod.rs:11672:9
[INFO] [stdout]       |
[INFO] [stdout] 11672 |         where_info: &Option<WhereInfo>,
[INFO] [stdout]       |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_where_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/executor/update.rs:1126:17
[INFO] [stdout]      |
[INFO] [stdout] 1126 |             let mut all_match_label = conflict_label;
[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 variable: `idx_name`
[INFO] [stdout]     --> src/executor/update.rs:1063:14
[INFO] [stdout]      |
[INFO] [stdout] 1063 |         for (idx_name, col_indices, idx_conflict_action, is_pk) in &unique_checks {
[INFO] [stdout]      |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ipk_col`
[INFO] [stdout]     --> src/executor/update.rs:1491:13
[INFO] [stdout]      |
[INFO] [stdout] 1491 |         let ipk_col = self.get_ipk_column_index();
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ipk_col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_leaf`
[INFO] [stdout]    --> src/rtree.rs:757:49
[INFO] [stdout]     |
[INFO] [stdout] 757 |     pub fn deserialize_node(&self, data: &[u8], is_leaf: bool) -> Result<Vec<RtreeEntry>> {
[INFO] [stdout]     |                                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_leaf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root_limits`
[INFO] [stdout]     --> src/storage/btree/mod.rs:4396:33
[INFO] [stdout]      |
[INFO] [stdout] 4396 |             let (root_mem_page, root_limits) = _cursor.load_page(&mut shared_guard, root_pgno)?;
[INFO] [stdout]      |                                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_limits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:8683:13
[INFO] [stdout]      |
[INFO] [stdout] 3384 |             Opcode::Count => {
[INFO] [stdout]      |             ------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 8683 |             Opcode::Count => {
[INFO] [stdout]      |             ^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5129:37
[INFO] [stdout]      |
[INFO] [stdout] 5129 | ...                   let mut text = None;
[INFO] [stdout]      |                           ----^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5922:25
[INFO] [stdout]      |
[INFO] [stdout] 5922 |                     let mut skip_final_insert = false;
[INFO] [stdout]      |                         ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `index_table_name` is assigned to, but never used
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2278:25
[INFO] [stdout]      |
[INFO] [stdout] 2278 |                     let mut index_table_name: Option<String> = None;
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_index_table_name` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:3161:25
[INFO] [stdout]      |
[INFO] [stdout] 3161 |                     let btree = self.btree.clone();
[INFO] [stdout]      |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:3458:21
[INFO] [stdout]      |
[INFO] [stdout] 3458 |                 let btree = self.btree.clone();
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5119:33
[INFO] [stdout]      |
[INFO] [stdout] 5119 | ...                   let btree = self.btree.clone();
[INFO] [stdout]      |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `schema`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5120:33
[INFO] [stdout]      |
[INFO] [stdout] 5120 | ...                   let schema = self.schema.clone();
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vtab_name`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5130:46
[INFO] [stdout]      |
[INFO] [stdout] 5130 | ...                   if let (Some(vtab_name), Some(rowid)) =
[INFO] [stdout]      |                                    ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vtab_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rowid`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5130:63
[INFO] [stdout]      |
[INFO] [stdout] 5130 | ...                   if let (Some(vtab_name), Some(rowid)) =
[INFO] [stdout]      |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5436:21
[INFO] [stdout]      |
[INFO] [stdout] 5436 |                 let btree = btree_arc.clone();
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:6222:21
[INFO] [stdout]      |
[INFO] [stdout] 6222 |                 let btree = btree_arc.clone();
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `schema`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:6223:21
[INFO] [stdout]      |
[INFO] [stdout] 6223 |                 let schema = self.schema.clone();
[INFO] [stdout]      |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:6389:37
[INFO] [stdout]      |
[INFO] [stdout] 6389 |                         if let Some(ref btree) = btree_arc {
[INFO] [stdout]      |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2332:45
[INFO] [stdout]      |
[INFO] [stdout] 2332 | ...                   index_table_name = Some(index.table.clone());
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2352:53
[INFO] [stdout]      |
[INFO] [stdout] 2352 | ...                   index_table_name = Some(idx.table.clone());
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2410:57
[INFO] [stdout]      |
[INFO] [stdout] 2410 | ...                   index_table_name =
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2432:65
[INFO] [stdout]      |
[INFO] [stdout] 2432 | ...                   index_table_name =
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BtTableLockEntry` is more private than the item `BtShared::table_locks`
[INFO] [stdout]    --> src/storage/btree/mod.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub table_locks: Vec<BtTableLockEntry>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `BtShared::table_locks` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `BtTableLockEntry` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/storage/btree/types.rs:323:1
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub(crate) struct BtTableLockEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Fts5VtabTableAdapter` is never constructed
[INFO] [stdout]    --> src/fts5/vtab_adapter.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct Fts5VtabTableAdapter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]     = note: `#[deny(unused_unconstructable_pub_struct)]` (part of `#[deny(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Fts5VtabCursorAdapter` is never constructed
[INFO] [stdout]    --> src/fts5/vtab_adapter.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct Fts5VtabCursorAdapter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `UnixFile` is never constructed
[INFO] [stdout]    --> src/os/unix.rs:332:12
[INFO] [stdout]     |
[INFO] [stdout] 332 | pub struct UnixFile {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `RtreeVtabCursorAdapter` is never constructed
[INFO] [stdout]    --> src/rtree_vtab.rs:425:12
[INFO] [stdout]     |
[INFO] [stdout] 425 | pub struct RtreeVtabCursorAdapter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustql` (lib) due to 4 previous errors; 47 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `col_str_upper`
[INFO] [stdout]     --> src/api/connection.rs:1898:13
[INFO] [stdout]      |
[INFO] [stdout] 1898 |         let col_str_upper = col_str.to_uppercase();
[INFO] [stdout]      |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_str_upper`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_name`
[INFO] [stdout]     --> src/executor/delete.rs:1673:55
[INFO] [stdout]      |
[INFO] [stdout] 1673 |                     crate::parser::ast::InList::Table(table_name) => {
[INFO] [stdout]      |                                                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_schema_lower`
[INFO] [stdout]     --> src/executor/prepare.rs:3554:17
[INFO] [stdout]      |
[INFO] [stdout] 3554 |             let table_schema_lower = table_schema.to_lowercase();
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_schema_lower`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/executor/prepare.rs:4769:13
[INFO] [stdout]      |
[INFO] [stdout] 4769 |             _ => "?".to_string(), // Fallback for any remaining expressions
[INFO] [stdout]      |             ^ no value can reach this
[INFO] [stdout]      |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]     --> src/executor/prepare.rs:4769:13
[INFO] [stdout]      |
[INFO] [stdout] 4546 |             Expr::Literal(lit) => match lit {
[INFO] [stdout]      |             ------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4557 |             Expr::Column(col) => {
[INFO] [stdout]      |             ----------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4564 |             Expr::Binary { op, left, right } => {
[INFO] [stdout]      |             -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4596 |             Expr::Unary { op, expr: inner } => {
[INFO] [stdout]      |             ------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 4769 |             _ => "?".to_string(), // Fallback for any remaining expressions
[INFO] [stdout]      |             ^ ...and 15 other patterns collectively make this unreachable
[INFO] [stdout]      = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_base_reg`
[INFO] [stdout]     --> src/executor/select/mod.rs:2217:25
[INFO] [stdout]      |
[INFO] [stdout] 2217 |                     let key_base_reg = self.next_reg;
[INFO] [stdout]      |                         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loop_start_label`
[INFO] [stdout]     --> src/executor/select/mod.rs:2723:13
[INFO] [stdout]      |
[INFO] [stdout] 2723 |         let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label());
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_base_reg`
[INFO] [stdout]     --> src/executor/select/mod.rs:2834:47
[INFO] [stdout]      |
[INFO] [stdout] 2834 |             let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info
[INFO] [stdout]      |                                               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_base_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key_count`
[INFO] [stdout]     --> src/executor/select/mod.rs:2834:61
[INFO] [stdout]      |
[INFO] [stdout] 2834 |             let (is_index_scan, index_cursor, key_base_reg, key_count, is_rowid_eq) = scan_info
[INFO] [stdout]      |                                                             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `has_frame_current_row`
[INFO] [stdout]     --> src/executor/select/mod.rs:3490:17
[INFO] [stdout]      |
[INFO] [stdout] 3490 |             let has_frame_current_row = frame
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_frame_current_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_rows`
[INFO] [stdout]     --> src/executor/select/mod.rs:4656:29
[INFO] [stdout]      |
[INFO] [stdout] 4656 |                         let is_rows =
[INFO] [stdout]      |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `clamp_start`
[INFO] [stdout]     --> src/executor/select/mod.rs:4700:37
[INFO] [stdout]      |
[INFO] [stdout] 4700 | ...                   let clamp_start = self.alloc_label();
[INFO] [stdout]      |                           ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clamp_start`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `loop_start_label`
[INFO] [stdout]     --> src/executor/select/mod.rs:5646:13
[INFO] [stdout]      |
[INFO] [stdout] 5646 |         let loop_start_label = *loop_labels.last().unwrap_or(&self.alloc_label());
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_loop_start_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/executor/select/mod.rs:6629:18
[INFO] [stdout]      |
[INFO] [stdout] 6629 |             for (idx, maybe_offset) in non_agg_indices.iter().enumerate() {
[INFO] [stdout]      |                  ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_idx`
[INFO] [stdout]     --> src/executor/select/mod.rs:8450:29
[INFO] [stdout]      |
[INFO] [stdout] 8450 |                 if let Some(col_idx) = self
[INFO] [stdout]      |                             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `level`
[INFO] [stdout]     --> src/executor/select/mod.rs:8646:9
[INFO] [stdout]      |
[INFO] [stdout] 8646 |         level: &WhereLevel,
[INFO] [stdout]      |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_level`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `table_cursor`
[INFO] [stdout]      --> src/executor/select/mod.rs:11667:9
[INFO] [stdout]       |
[INFO] [stdout] 11667 |         table_cursor: i32,
[INFO] [stdout]       |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_table_cursor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `where_info`
[INFO] [stdout]      --> src/executor/select/mod.rs:11672:9
[INFO] [stdout]       |
[INFO] [stdout] 11672 |         where_info: &Option<WhereInfo>,
[INFO] [stdout]       |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_where_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/executor/update.rs:1126:17
[INFO] [stdout]      |
[INFO] [stdout] 1126 |             let mut all_match_label = conflict_label;
[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 variable: `idx_name`
[INFO] [stdout]     --> src/executor/update.rs:1063:14
[INFO] [stdout]      |
[INFO] [stdout] 1063 |         for (idx_name, col_indices, idx_conflict_action, is_pk) in &unique_checks {
[INFO] [stdout]      |              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ipk_col`
[INFO] [stdout]     --> src/executor/update.rs:1491:13
[INFO] [stdout]      |
[INFO] [stdout] 1491 |         let ipk_col = self.get_ipk_column_index();
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ipk_col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `term`
[INFO] [stdout]     --> src/executor/where_clause.rs:3002:13
[INFO] [stdout]      |
[INFO] [stdout] 3002 |         for term in planner.where_clause.terms.iter_mut() {
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_term`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_leaf`
[INFO] [stdout]    --> src/rtree.rs:757:49
[INFO] [stdout]     |
[INFO] [stdout] 757 |     pub fn deserialize_node(&self, data: &[u8], is_leaf: bool) -> Result<Vec<RtreeEntry>> {
[INFO] [stdout]     |                                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_leaf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root_limits`
[INFO] [stdout]     --> src/storage/btree/mod.rs:4396:33
[INFO] [stdout]      |
[INFO] [stdout] 4396 |             let (root_mem_page, root_limits) = _cursor.load_page(&mut shared_guard, root_pgno)?;
[INFO] [stdout]      |                                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_root_limits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7170:13
[INFO] [stdout]      |
[INFO] [stdout] 7170 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7191:13
[INFO] [stdout]      |
[INFO] [stdout] 7191 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7212:13
[INFO] [stdout]      |
[INFO] [stdout] 7212 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7229:13
[INFO] [stdout]      |
[INFO] [stdout] 7229 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7262:13
[INFO] [stdout]      |
[INFO] [stdout] 7262 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7299:13
[INFO] [stdout]      |
[INFO] [stdout] 7299 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7366:13
[INFO] [stdout]      |
[INFO] [stdout] 7366 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7437:13
[INFO] [stdout]      |
[INFO] [stdout] 7437 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7460:13
[INFO] [stdout]      |
[INFO] [stdout] 7460 |         let mut btree = Arc::try_unwrap(btree_arc).ok().unwrap();
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7834:13
[INFO] [stdout]      |
[INFO] [stdout] 7834 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7859:13
[INFO] [stdout]      |
[INFO] [stdout] 7859 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/btree/mod.rs:7886:13
[INFO] [stdout]      |
[INFO] [stdout] 7886 |         let mut btree = unwrap_arc(btree);
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset2`
[INFO] [stdout]     --> src/storage/btree/mod.rs:8159:13
[INFO] [stdout]      |
[INFO] [stdout] 8159 |         let offset2 = page.allocate_space(100, limits).unwrap();
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset1`
[INFO] [stdout]     --> src/storage/btree/mod.rs:8220:13
[INFO] [stdout]      |
[INFO] [stdout] 8220 |         let offset1 = page.allocate_space(100, limits).unwrap();
[INFO] [stdout]      |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:1606:13
[INFO] [stdout]      |
[INFO] [stdout] 1606 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:1749:13
[INFO] [stdout]      |
[INFO] [stdout] 1749 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:1885:13
[INFO] [stdout]      |
[INFO] [stdout] 1885 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:1977:13
[INFO] [stdout]      |
[INFO] [stdout] 1977 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:2188:13
[INFO] [stdout]      |
[INFO] [stdout] 2188 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:2504:13
[INFO] [stdout]      |
[INFO] [stdout] 2504 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:2716:13
[INFO] [stdout]      |
[INFO] [stdout] 2716 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:3063:13
[INFO] [stdout]      |
[INFO] [stdout] 3063 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:3267:13
[INFO] [stdout]      |
[INFO] [stdout] 3267 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:3655:13
[INFO] [stdout]      |
[INFO] [stdout] 3655 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/storage/wal.rs:3940:13
[INFO] [stdout]      |
[INFO] [stdout] 3940 |         let mut wal = Wal::open(&get_test_db_path(), 4096).unwrap();
[INFO] [stdout]      |             ----^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:8683:13
[INFO] [stdout]      |
[INFO] [stdout] 3384 |             Opcode::Count => {
[INFO] [stdout]      |             ------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 8683 |             Opcode::Count => {
[INFO] [stdout]      |             ^^^^^^^^^^^^^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5129:37
[INFO] [stdout]      |
[INFO] [stdout] 5129 | ...                   let mut text = None;
[INFO] [stdout]      |                           ----^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5922:25
[INFO] [stdout]      |
[INFO] [stdout] 5922 |                     let mut skip_final_insert = false;
[INFO] [stdout]      |                         ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `index_table_name` is assigned to, but never used
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2278:25
[INFO] [stdout]      |
[INFO] [stdout] 2278 |                     let mut index_table_name: Option<String> = None;
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_index_table_name` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:3161:25
[INFO] [stdout]      |
[INFO] [stdout] 3161 |                     let btree = self.btree.clone();
[INFO] [stdout]      |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:3458:21
[INFO] [stdout]      |
[INFO] [stdout] 3458 |                 let btree = self.btree.clone();
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5119:33
[INFO] [stdout]      |
[INFO] [stdout] 5119 | ...                   let btree = self.btree.clone();
[INFO] [stdout]      |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `schema`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5120:33
[INFO] [stdout]      |
[INFO] [stdout] 5120 | ...                   let schema = self.schema.clone();
[INFO] [stdout]      |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vtab_name`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5130:46
[INFO] [stdout]      |
[INFO] [stdout] 5130 | ...                   if let (Some(vtab_name), Some(rowid)) =
[INFO] [stdout]      |                                    ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_vtab_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rowid`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5130:63
[INFO] [stdout]      |
[INFO] [stdout] 5130 | ...                   if let (Some(vtab_name), Some(rowid)) =
[INFO] [stdout]      |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:5436:21
[INFO] [stdout]      |
[INFO] [stdout] 5436 |                 let btree = btree_arc.clone();
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:6222:21
[INFO] [stdout]      |
[INFO] [stdout] 6222 |                 let btree = btree_arc.clone();
[INFO] [stdout]      |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `schema`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:6223:21
[INFO] [stdout]      |
[INFO] [stdout] 6223 |                 let schema = self.schema.clone();
[INFO] [stdout]      |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `btree`
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:6389:37
[INFO] [stdout]      |
[INFO] [stdout] 6389 |                         if let Some(ref btree) = btree_arc {
[INFO] [stdout]      |                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_btree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2332:45
[INFO] [stdout]      |
[INFO] [stdout] 2332 | ...                   index_table_name = Some(index.table.clone());
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2352:53
[INFO] [stdout]      |
[INFO] [stdout] 2352 | ...                   index_table_name = Some(idx.table.clone());
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2410:57
[INFO] [stdout]      |
[INFO] [stdout] 2410 | ...                   index_table_name =
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `index_table_name` is never read
[INFO] [stdout]     --> src/vdbe/engine/mod.rs:2432:65
[INFO] [stdout]      |
[INFO] [stdout] 2432 | ...                   index_table_name =
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BtTableLockEntry` is more private than the item `BtShared::table_locks`
[INFO] [stdout]    --> src/storage/btree/mod.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     pub table_locks: Vec<BtTableLockEntry>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `BtShared::table_locks` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `BtTableLockEntry` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/storage/btree/types.rs:323:1
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub(crate) struct BtTableLockEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Fts5VtabTableAdapter` is never constructed
[INFO] [stdout]    --> src/fts5/vtab_adapter.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub struct Fts5VtabTableAdapter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout]     = note: `#[deny(unused_unconstructable_pub_struct)]` (part of `#[deny(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `Fts5VtabCursorAdapter` is never constructed
[INFO] [stdout]    --> src/fts5/vtab_adapter.rs:221:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub struct Fts5VtabCursorAdapter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `UnixFile` is never constructed
[INFO] [stdout]    --> src/os/unix.rs:332:12
[INFO] [stdout]     |
[INFO] [stdout] 332 | pub struct UnixFile {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: struct `RtreeVtabCursorAdapter` is never constructed
[INFO] [stdout]    --> src/rtree_vtab.rs:425:12
[INFO] [stdout]     |
[INFO] [stdout] 425 | pub struct RtreeVtabCursorAdapter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `pub` struct has private fields, no public constructor, and is not otherwise reachable through the external API, so consider providing a public constructor or removing it
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/vdbe/engine/handlers/mod.rs:296:27
[INFO] [stdout]     |
[INFO] [stdout] 296 |         pub fn as_context(&mut self) -> OpcodeContext {
[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] 296 |         pub fn as_context(&mut self) -> OpcodeContext<'_> {
[INFO] [stdout]     |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustql` (lib test) due to 4 previous errors; 74 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "623a1d8de57b88d987aa367607537605f35d00db98cdb3a84eb0e7a4955d267a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "623a1d8de57b88d987aa367607537605f35d00db98cdb3a84eb0e7a4955d267a", kill_on_drop: false }`
[INFO] [stdout] 623a1d8de57b88d987aa367607537605f35d00db98cdb3a84eb0e7a4955d267a
