[INFO] cloning repository https://github.com/bfoggo/codecrafters-sqlite-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bfoggo/codecrafters-sqlite-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbfoggo%2Fcodecrafters-sqlite-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbfoggo%2Fcodecrafters-sqlite-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8f0f7d1541ffe579af0e1b5807c68c36cf3e4749
[INFO] checking bfoggo/codecrafters-sqlite-rust against try#df1b9bf194c9183fb7c0604484171064069ce232 for pr-149195-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbfoggo%2Fcodecrafters-sqlite-rust" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/bfoggo/codecrafters-sqlite-rust
[INFO] finished tweaking git repo https://github.com/bfoggo/codecrafters-sqlite-rust
[INFO] tweaked toml for git repo https://github.com/bfoggo/codecrafters-sqlite-rust written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bfoggo/codecrafters-sqlite-rust on toolchain df1b9bf194c9183fb7c0604484171064069ce232
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+df1b9bf194c9183fb7c0604484171064069ce232" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/bfoggo/codecrafters-sqlite-rust 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" "+df1b9bf194c9183fb7c0604484171064069ce232" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking bfoggo/codecrafters-sqlite-rust against try#df1b9bf194c9183fb7c0604484171064069ce232 for pr-149195-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbfoggo%2Fcodecrafters-sqlite-rust" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/bfoggo/codecrafters-sqlite-rust
[INFO] finished tweaking git repo https://github.com/bfoggo/codecrafters-sqlite-rust
[INFO] tweaked toml for git repo https://github.com/bfoggo/codecrafters-sqlite-rust written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bfoggo/codecrafters-sqlite-rust on toolchain df1b9bf194c9183fb7c0604484171064069ce232
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+df1b9bf194c9183fb7c0604484171064069ce232" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/bfoggo/codecrafters-sqlite-rust 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" "+df1b9bf194c9183fb7c0604484171064069ce232" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+df1b9bf194c9183fb7c0604484171064069ce232" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a6221280ddeb7b67c4eb4f5741f166cf05e1e7ed1a39326220773454df8eff58
[INFO] running `Command { std: "docker" "start" "-a" "a6221280ddeb7b67c4eb4f5741f166cf05e1e7ed1a39326220773454df8eff58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a6221280ddeb7b67c4eb4f5741f166cf05e1e7ed1a39326220773454df8eff58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6221280ddeb7b67c4eb4f5741f166cf05e1e7ed1a39326220773454df8eff58", kill_on_drop: false }`
[INFO] [stdout] a6221280ddeb7b67c4eb4f5741f166cf05e1e7ed1a39326220773454df8eff58
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+df1b9bf194c9183fb7c0604484171064069ce232" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 07104938c41dadfbbff401491ffb5d4dab19fc289bcca6e1a625dcb8d73516d6
[INFO] running `Command { std: "docker" "start" "-a" "07104938c41dadfbbff401491ffb5d4dab19fc289bcca6e1a625dcb8d73516d6", kill_on_drop: false }`
[INFO] [stderr]     Checking codecrafters-sqlite v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/typecodes.rs:119:48
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub fn decode_serial_types(data: &[u8]) -> Vec<(TypeCode)> {
[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] 119 - pub fn decode_serial_types(data: &[u8]) -> Vec<(TypeCode)> {
[INFO] [stdout] 119 + pub fn decode_serial_types(data: &[u8]) -> Vec<TypeCode > {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/utils.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |         result = (result << 7 | (*byte & 0b0111_1111) as i64);
[INFO] [stdout]    |                  ^                                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 10 -         result = (result << 7 | (*byte & 0b0111_1111) as i64);
[INFO] [stdout] 10 +         result = result << 7 | (*byte & 0b0111_1111) as i64 ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::typecodes::TypeCode`
[INFO] [stdout]  --> src/syntax/statement.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::typecodes::TypeCode;
[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: `mem::uninitialized`
[INFO] [stdout]  --> src/syntax/create_index.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{iter::Peekable, mem::uninitialized, slice::Iter};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::page_io::Column`
[INFO] [stdout]  --> src/syntax/create_index.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::page_io::Column;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_table::ColumnDef`
[INFO] [stdout]  --> src/syntax/create_index.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{create_table::ColumnDef, select::WhereClause, tokenizer::Token, Parse};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/typecodes.rs:119:48
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub fn decode_serial_types(data: &[u8]) -> Vec<(TypeCode)> {
[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] 119 - pub fn decode_serial_types(data: &[u8]) -> Vec<(TypeCode)> {
[INFO] [stdout] 119 + pub fn decode_serial_types(data: &[u8]) -> Vec<TypeCode > {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/utils.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |         result = (result << 7 | (*byte & 0b0111_1111) as i64);
[INFO] [stdout]    |                  ^                                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 10 -         result = (result << 7 | (*byte & 0b0111_1111) as i64);
[INFO] [stdout] 10 +         result = result << 7 | (*byte & 0b0111_1111) as i64 ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::typecodes::TypeCode`
[INFO] [stdout]  --> src/syntax/statement.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::typecodes::TypeCode;
[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: `mem::uninitialized`
[INFO] [stdout]  --> src/syntax/create_index.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{iter::Peekable, mem::uninitialized, slice::Iter};
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::page_io::Column`
[INFO] [stdout]  --> src/syntax/create_index.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::page_io::Column;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_table::ColumnDef`
[INFO] [stdout]  --> src/syntax/create_index.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{create_table::ColumnDef, select::WhereClause, tokenizer::Token, Parse};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/syntax/create_index.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{iter::Peekable, mem::uninitialized, slice::Iter};
[INFO] [stdout]   |                                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/syntax/create_index.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{iter::Peekable, mem::uninitialized, slice::Iter};
[INFO] [stdout]   |                                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/typecodes.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             _ => {
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/typecodes.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             TypeCode::Null => SqlValue::Null,
[INFO] [stdout]    |             -------------- matches some of the same values
[INFO] [stdout] 40 |             TypeCode::I8 => SqlValue::I8(data[0] as i8),
[INFO] [stdout]    |             ------------ matches some of the same values
[INFO] [stdout] 41 |             TypeCode::I16 => {
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 45 |             TypeCode::I24 => {
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 85 |             _ => {
[INFO] [stdout]    |             ^ ...and 8 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: `val`
[INFO] [stdout]   --> src/typecodes.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 let val = i32::from_be_bytes([0, 0, 0, 0]);
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]   --> src/typecodes.rs:74:21
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let val = i32::from_be_bytes([0, 0, 0, 1]);
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/syntax/create_table.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 let mut table_constraints = Vec::new();
[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: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:329:14
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:344:14
[INFO] [stdout]     |
[INFO] [stdout] 344 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/syntax/create_table.rs:355:14
[INFO] [stdout]     |
[INFO] [stdout] 355 |     fn parse(mut input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ----^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:396:14
[INFO] [stdout]     |
[INFO] [stdout] 396 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:405:14
[INFO] [stdout]     |
[INFO] [stdout] 405 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/syntax/select.rs:105:17
[INFO] [stdout]     |
[INFO] [stdout] 101 | /                 LiteralKind::Str(s)
[INFO] [stdout] 102 | |                 | LiteralKind::Blob(s)
[INFO] [stdout] 103 | |                 | LiteralKind::Integer(s)
[INFO] [stdout] 104 | |                 | LiteralKind::Real(s) => s.clone(),
[INFO] [stdout]     | |______________________________________- matches all the relevant values
[INFO] [stdout] 105 |                   _ => panic!("Expected string literal"),
[INFO] [stdout]     |                   ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/typecodes.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             _ => {
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/typecodes.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |             TypeCode::Null => SqlValue::Null,
[INFO] [stdout]    |             -------------- matches some of the same values
[INFO] [stdout] 40 |             TypeCode::I8 => SqlValue::I8(data[0] as i8),
[INFO] [stdout]    |             ------------ matches some of the same values
[INFO] [stdout] 41 |             TypeCode::I16 => {
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 45 |             TypeCode::I24 => {
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 85 |             _ => {
[INFO] [stdout]    |             ^ ...and 8 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: `val`
[INFO] [stdout]   --> src/typecodes.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 let val = i32::from_be_bytes([0, 0, 0, 0]);
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `val`
[INFO] [stdout]   --> src/typecodes.rs:74:21
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 let val = i32::from_be_bytes([0, 0, 0, 1]);
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rowid`
[INFO] [stdout]    --> src/page_io.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let rowid = match record.values[1] {
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/page_io.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |     let mut payload_start;
[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/syntax/create_table.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 let mut table_constraints = Vec::new();
[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: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:329:14
[INFO] [stdout]     |
[INFO] [stdout] 329 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:344:14
[INFO] [stdout]     |
[INFO] [stdout] 344 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |             let mut file = File::open(&args[1])?;
[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/main.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let mut file = File::open(&args[1])?;
[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/main.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let mut rowids_satisfying_all_wheres =
[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/syntax/create_table.rs:355:14
[INFO] [stdout]     |
[INFO] [stdout] 355 |     fn parse(mut input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ----^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/main.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |             let mut file = File::open(&args[1])?;
[INFO] [stdout]    |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/main.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let mut file = File::open(&args[1])?;
[INFO] [stdout]    |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:396:14
[INFO] [stdout]     |
[INFO] [stdout] 396 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]    --> src/syntax/create_table.rs:405:14
[INFO] [stdout]     |
[INFO] [stdout] 405 |     fn parse(input: &mut Peekable<Iter<Token>>) -> (Self, usize) {
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `SortOrder` is more private than the item `ColumnConstraint::PrimaryKey::ord_`
[INFO] [stdout]    --> src/syntax/create_table.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 197 |         ord_: Option<SortOrder>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^ field `ColumnConstraint::PrimaryKey::ord_` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `SortOrder` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:323:1
[INFO] [stdout]     |
[INFO] [stdout] 323 | enum SortOrder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ConflictClause` is more private than the item `ColumnConstraint::PrimaryKey::conflict_clause`
[INFO] [stdout]    --> src/syntax/create_table.rs:198:9
[INFO] [stdout]     |
[INFO] [stdout] 198 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ColumnConstraint::PrimaryKey::conflict_clause` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ConflictClause` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:335:1
[INFO] [stdout]     |
[INFO] [stdout] 335 | enum ConflictClause {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ConflictClause` is more private than the item `ColumnConstraint::NotNull::conflict_clause`
[INFO] [stdout]    --> src/syntax/create_table.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ColumnConstraint::NotNull::conflict_clause` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ConflictClause` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:335:1
[INFO] [stdout]     |
[INFO] [stdout] 335 | enum ConflictClause {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ForeignKeyClause` is more private than the item `ColumnConstraint::ForeignKey::0`
[INFO] [stdout]    --> src/syntax/create_table.rs:208:16
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ForeignKey(ForeignKeyClause),
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^ field `ColumnConstraint::ForeignKey::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ForeignKeyClause` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:350:1
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct ForeignKeyClause {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/typecodes.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     F64(f64),
[INFO] [stdout]     |     --- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SqlValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 112 -     F64(f64),
[INFO] [stdout] 112 +     F64(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/typecodes.rs:115:10
[INFO] [stdout]     |
[INFO] [stdout] 115 |     Blob(Vec<u8>),
[INFO] [stdout]     |     ---- ^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SqlValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 115 -     Blob(Vec<u8>),
[INFO] [stdout] 115 +     Blob(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `temp`, `if_not_exists`, and `schema_name` are never read
[INFO] [stdout]   --> src/syntax/create_table.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct CreateTableStmt {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout]  9 |     temp: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 10 |     if_not_exists: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 11 |     schema_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CreateTableStmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `table_constraints` is never read
[INFO] [stdout]   --> src/syntax/create_table.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     FromColumns {
[INFO] [stdout]    |     ----------- field in this variant
[INFO] [stdout] 84 |         columns: Vec<ColumnDef>,
[INFO] [stdout] 85 |         table_constraints: Vec<TableConstraint>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SchemaConstructor` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/syntax/create_table.rs:87:14
[INFO] [stdout]    |
[INFO] [stdout] 87 |     AsSelect(SelectStmt),
[INFO] [stdout]    |     -------- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SchemaConstructor` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 87 -     AsSelect(SelectStmt),
[INFO] [stdout] 87 +     AsSelect(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `type_` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct ColumnDef {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 138 |     pub name: String,
[INFO] [stdout] 139 |     type_: Option<TypeCode>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnDef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ord_`, `conflict_clause`, and `autoincrement` are never read
[INFO] [stdout]    --> src/syntax/create_table.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     PrimaryKey {
[INFO] [stdout]     |     ---------- fields in this variant
[INFO] [stdout] 197 |         ord_: Option<SortOrder>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 198 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 199 |         autoincrement: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `conflict_clause` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 201 |     NotNull {
[INFO] [stdout]     |     ------- field in this variant
[INFO] [stdout] 202 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/syntax/select.rs:105:17
[INFO] [stdout]     |
[INFO] [stdout] 101 | /                 LiteralKind::Str(s)
[INFO] [stdout] 102 | |                 | LiteralKind::Blob(s)
[INFO] [stdout] 103 | |                 | LiteralKind::Integer(s)
[INFO] [stdout] 104 | |                 | LiteralKind::Real(s) => s.clone(),
[INFO] [stdout]     | |______________________________________- matches all the relevant values
[INFO] [stdout] 105 |                   _ => panic!("Expected string literal"),
[INFO] [stdout]     |                   ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:208:16
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ForeignKey(ForeignKeyClause),
[INFO] [stdout]     |     ---------- ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 208 -     ForeignKey(ForeignKeyClause),
[INFO] [stdout] 208 +     ForeignKey(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Name` is never constructed
[INFO] [stdout]    --> src/syntax/create_table.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub enum ColumnConstraint {
[INFO] [stdout]     |          ---------------- variant in this enum
[INFO] [stdout] 195 |     Name(Option<String>),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Rollback`, `Abort`, `Fail`, `Ignore`, and `Replace` are never constructed
[INFO] [stdout]    --> src/syntax/create_table.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 335 | enum ConflictClause {
[INFO] [stdout]     |      -------------- variants in this enum
[INFO] [stdout] 336 |     Rollback,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 337 |     Abort,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 338 |     Fail,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 339 |     Ignore,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 340 |     Replace,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictClause` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `foreign_table` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct ForeignKeyClause {
[INFO] [stdout]     |        ---------------- field in this struct
[INFO] [stdout] 351 |     foreign_table: ForeignKeyTable,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ForeignKeyClause` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name`, `table_name`, and `column_names` are never read
[INFO] [stdout]    --> src/syntax/create_table.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 389 | struct ForeignKeyTable {
[INFO] [stdout]     |        --------------- fields in this struct
[INFO] [stdout] 390 |     schema_name: Option<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 391 |     table_name: String,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 392 |     column_names: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ForeignKeyTable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `unique` is never read
[INFO] [stdout]   --> src/syntax/statement.rs:19:40
[INFO] [stdout]    |
[INFO] [stdout] 19 |     CreateIndex{stmt: CreateIndexStmt, unique: bool},
[INFO] [stdout]    |     ----------- field in this variant  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/syntax/statement.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum Statement {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] 14 |     AlterTable,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 15 |     Analyze,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 16 |     Attach,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 17 |     Begin,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 18 |     Commit,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     CreateTrigger,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 22 |     CreateView,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 23 |     CreateVirtualTable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     Delete,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     DeleteFrom,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 26 |     Detach,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 27 |     DropIndex,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 28 |     DropTable,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 29 |     DropTrigger,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 30 |     DropView,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 31 |     Insert,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 32 |     Pragma,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 33 |     Reindex,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 34 |     Release,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 35 |     Rollback,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 36 |     Savepoint,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 37 |     Select(SelectStmt),
[INFO] [stdout] 38 |     Update,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 39 |     Vacuum,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Whitespace` and `Variable` are never constructed
[INFO] [stdout]   --> src/syntax/tokenizer.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum Token {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 42 |     Whitespace,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     Variable(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Blob` is never constructed
[INFO] [stdout]    --> src/syntax/tokenizer.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub enum LiteralKind {
[INFO] [stdout]     |          ----------- variant in this enum
[INFO] [stdout] 177 |     Str(String),
[INFO] [stdout] 178 |     Blob(String),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LiteralKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `offset` is never read
[INFO] [stdout]   --> src/page_io.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct Page {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 27 |     offset: u64,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Page` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `first_freeblock`, `cell_content_start`, and `num_fragments` are never read
[INFO] [stdout]   --> src/page_io.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct PageHeader {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 35 |     page_type: u8,
[INFO] [stdout] 36 |     first_freeblock: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub num_cells: u16,
[INFO] [stdout] 38 |     cell_content_start: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 39 |     num_fragments: u8,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PageHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> src/page_io.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout]  80 | impl PageHeader {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/page_io.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct IndexSchema {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 137 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IndexSchema` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/page_io.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub struct TableSchema {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 144 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TableSchema` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `primary_key_index` is never used
[INFO] [stdout]    --> src/page_io.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl TableSchema {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub fn primary_key_index(&self) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tbl_name` is never read
[INFO] [stdout]    --> src/page_io.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct SqlSchemaElement {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 176 |     tbl_name: String,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SqlSchemaElement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_primary_key` is never read
[INFO] [stdout]    --> src/page_io.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct Column {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 183 |     pub name: String,
[INFO] [stdout] 184 |     is_primary_key: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Column` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `payload_size` is never read
[INFO] [stdout]    --> src/page_io.rs:244:5
[INFO] [stdout]     |
[INFO] [stdout] 242 | pub struct Record {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 243 |     record_start: RecordStart,
[INFO] [stdout] 244 |     payload_size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Record` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rowid`
[INFO] [stdout]    --> src/page_io.rs:322:21
[INFO] [stdout]     |
[INFO] [stdout] 322 |                 let rowid = match record.values[1] {
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_rowid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/page_io.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 374 |     let mut payload_start;
[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/main.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |             let mut file = File::open(&args[1])?;
[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/main.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let mut file = File::open(&args[1])?;
[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/main.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let mut rowids_satisfying_all_wheres =
[INFO] [stdout]     |                     ----^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/main.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 |             let mut file = File::open(&args[1])?;
[INFO] [stdout]    |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/main.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let mut file = File::open(&args[1])?;
[INFO] [stdout]    |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `SortOrder` is more private than the item `ColumnConstraint::PrimaryKey::ord_`
[INFO] [stdout]    --> src/syntax/create_table.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 197 |         ord_: Option<SortOrder>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^ field `ColumnConstraint::PrimaryKey::ord_` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `SortOrder` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:323:1
[INFO] [stdout]     |
[INFO] [stdout] 323 | enum SortOrder {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ConflictClause` is more private than the item `ColumnConstraint::PrimaryKey::conflict_clause`
[INFO] [stdout]    --> src/syntax/create_table.rs:198:9
[INFO] [stdout]     |
[INFO] [stdout] 198 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ColumnConstraint::PrimaryKey::conflict_clause` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ConflictClause` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:335:1
[INFO] [stdout]     |
[INFO] [stdout] 335 | enum ConflictClause {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ConflictClause` is more private than the item `ColumnConstraint::NotNull::conflict_clause`
[INFO] [stdout]    --> src/syntax/create_table.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ColumnConstraint::NotNull::conflict_clause` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ConflictClause` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:335:1
[INFO] [stdout]     |
[INFO] [stdout] 335 | enum ConflictClause {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ForeignKeyClause` is more private than the item `ColumnConstraint::ForeignKey::0`
[INFO] [stdout]    --> src/syntax/create_table.rs:208:16
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ForeignKey(ForeignKeyClause),
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^ field `ColumnConstraint::ForeignKey::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ForeignKeyClause` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/syntax/create_table.rs:350:1
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct ForeignKeyClause {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/typecodes.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     F64(f64),
[INFO] [stdout]     |     --- ^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SqlValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 112 -     F64(f64),
[INFO] [stdout] 112 +     F64(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/typecodes.rs:115:10
[INFO] [stdout]     |
[INFO] [stdout] 115 |     Blob(Vec<u8>),
[INFO] [stdout]     |     ---- ^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SqlValue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 115 -     Blob(Vec<u8>),
[INFO] [stdout] 115 +     Blob(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `temp`, `if_not_exists`, and `schema_name` are never read
[INFO] [stdout]   --> src/syntax/create_table.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct CreateTableStmt {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout]  9 |     temp: bool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 10 |     if_not_exists: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 11 |     schema_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CreateTableStmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `table_constraints` is never read
[INFO] [stdout]   --> src/syntax/create_table.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     FromColumns {
[INFO] [stdout]    |     ----------- field in this variant
[INFO] [stdout] 84 |         columns: Vec<ColumnDef>,
[INFO] [stdout] 85 |         table_constraints: Vec<TableConstraint>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SchemaConstructor` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/syntax/create_table.rs:87:14
[INFO] [stdout]    |
[INFO] [stdout] 87 |     AsSelect(SelectStmt),
[INFO] [stdout]    |     -------- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SchemaConstructor` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 87 -     AsSelect(SelectStmt),
[INFO] [stdout] 87 +     AsSelect(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `type_` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct ColumnDef {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 138 |     pub name: String,
[INFO] [stdout] 139 |     type_: Option<TypeCode>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnDef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ord_`, `conflict_clause`, and `autoincrement` are never read
[INFO] [stdout]    --> src/syntax/create_table.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |     PrimaryKey {
[INFO] [stdout]     |     ---------- fields in this variant
[INFO] [stdout] 197 |         ord_: Option<SortOrder>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 198 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 199 |         autoincrement: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `conflict_clause` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 201 |     NotNull {
[INFO] [stdout]     |     ------- field in this variant
[INFO] [stdout] 202 |         conflict_clause: Option<ConflictClause>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:208:16
[INFO] [stdout]     |
[INFO] [stdout] 208 |     ForeignKey(ForeignKeyClause),
[INFO] [stdout]     |     ---------- ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 208 -     ForeignKey(ForeignKeyClause),
[INFO] [stdout] 208 +     ForeignKey(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Name` is never constructed
[INFO] [stdout]    --> src/syntax/create_table.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub enum ColumnConstraint {
[INFO] [stdout]     |          ---------------- variant in this enum
[INFO] [stdout] 195 |     Name(Option<String>),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ColumnConstraint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Rollback`, `Abort`, `Fail`, `Ignore`, and `Replace` are never constructed
[INFO] [stdout]    --> src/syntax/create_table.rs:336:5
[INFO] [stdout]     |
[INFO] [stdout] 335 | enum ConflictClause {
[INFO] [stdout]     |      -------------- variants in this enum
[INFO] [stdout] 336 |     Rollback,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 337 |     Abort,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 338 |     Fail,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 339 |     Ignore,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 340 |     Replace,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictClause` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `foreign_table` is never read
[INFO] [stdout]    --> src/syntax/create_table.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 350 | struct ForeignKeyClause {
[INFO] [stdout]     |        ---------------- field in this struct
[INFO] [stdout] 351 |     foreign_table: ForeignKeyTable,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ForeignKeyClause` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name`, `table_name`, and `column_names` are never read
[INFO] [stdout]    --> src/syntax/create_table.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 389 | struct ForeignKeyTable {
[INFO] [stdout]     |        --------------- fields in this struct
[INFO] [stdout] 390 |     schema_name: Option<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 391 |     table_name: String,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 392 |     column_names: Vec<String>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ForeignKeyTable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `unique` is never read
[INFO] [stdout]   --> src/syntax/statement.rs:19:40
[INFO] [stdout]    |
[INFO] [stdout] 19 |     CreateIndex{stmt: CreateIndexStmt, unique: bool},
[INFO] [stdout]    |     ----------- field in this variant  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/syntax/statement.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum Statement {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] 14 |     AlterTable,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 15 |     Analyze,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 16 |     Attach,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 17 |     Begin,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 18 |     Commit,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     CreateTrigger,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 22 |     CreateView,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 23 |     CreateVirtualTable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     Delete,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 25 |     DeleteFrom,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 26 |     Detach,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 27 |     DropIndex,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 28 |     DropTable,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 29 |     DropTrigger,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 30 |     DropView,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 31 |     Insert,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 32 |     Pragma,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 33 |     Reindex,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 34 |     Release,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 35 |     Rollback,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 36 |     Savepoint,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 37 |     Select(SelectStmt),
[INFO] [stdout] 38 |     Update,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 39 |     Vacuum,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Statement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Whitespace` and `Variable` are never constructed
[INFO] [stdout]   --> src/syntax/tokenizer.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum Token {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 42 |     Whitespace,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     Variable(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Blob` is never constructed
[INFO] [stdout]    --> src/syntax/tokenizer.rs:178:5
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub enum LiteralKind {
[INFO] [stdout]     |          ----------- variant in this enum
[INFO] [stdout] 177 |     Str(String),
[INFO] [stdout] 178 |     Blob(String),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LiteralKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `offset` is never read
[INFO] [stdout]   --> src/page_io.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct Page {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 27 |     offset: u64,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Page` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `first_freeblock`, `cell_content_start`, and `num_fragments` are never read
[INFO] [stdout]   --> src/page_io.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct PageHeader {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 35 |     page_type: u8,
[INFO] [stdout] 36 |     first_freeblock: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 37 |     pub num_cells: u16,
[INFO] [stdout] 38 |     cell_content_start: u16,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 39 |     num_fragments: u8,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PageHeader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> src/page_io.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout]  80 | impl PageHeader {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/page_io.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct IndexSchema {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 137 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IndexSchema` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/page_io.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub struct TableSchema {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 144 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TableSchema` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `primary_key_index` is never used
[INFO] [stdout]    --> src/page_io.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl TableSchema {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 155 |     pub fn primary_key_index(&self) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tbl_name` is never read
[INFO] [stdout]    --> src/page_io.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub struct SqlSchemaElement {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 176 |     tbl_name: String,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SqlSchemaElement` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_primary_key` is never read
[INFO] [stdout]    --> src/page_io.rs:184:5
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub struct Column {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 183 |     pub name: String,
[INFO] [stdout] 184 |     is_primary_key: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Column` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `payload_size` is never read
[INFO] [stdout]    --> src/page_io.rs:244:5
[INFO] [stdout]     |
[INFO] [stdout] 242 | pub struct Record {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 243 |     record_start: RecordStart,
[INFO] [stdout] 244 |     payload_size: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Record` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.30s
[INFO] running `Command { std: "docker" "inspect" "07104938c41dadfbbff401491ffb5d4dab19fc289bcca6e1a625dcb8d73516d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "07104938c41dadfbbff401491ffb5d4dab19fc289bcca6e1a625dcb8d73516d6", kill_on_drop: false }`
[INFO] [stdout] 07104938c41dadfbbff401491ffb5d4dab19fc289bcca6e1a625dcb8d73516d6
