[INFO] cloning repository https://github.com/culotta2/snowflake_lexer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/culotta2/snowflake_lexer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fculotta2%2Fsnowflake_lexer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fculotta2%2Fsnowflake_lexer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] aa0955b25c9969b47bd3b3142370580e9af64109
[INFO] checking culotta2/snowflake_lexer against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fculotta2%2Fsnowflake_lexer" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/culotta2/snowflake_lexer
[INFO] finished tweaking git repo https://github.com/culotta2/snowflake_lexer
[INFO] tweaked toml for git repo https://github.com/culotta2/snowflake_lexer written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/culotta2/snowflake_lexer on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/culotta2/snowflake_lexer 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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f
[INFO] running `Command { std: "docker" "start" "a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling anyhow v1.0.71
[INFO] [stderr]     Checking snowflake_lexer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: useless conversion to the same type: `String`
[INFO] [stdout]    --> src/parser/parser.rs:132:32
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let lexer = Lexer::new(input.into());
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 132 -         let lexer = Lexer::new(input.into());
[INFO] [stdout] 132 +         let lexer = Lexer::new(input);
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 132 -         let lexer = Lexer::new(input.into());
[INFO] [stdout] 132 +         let lexer = Lexer::new(<String as Into<_>>::into(input));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `snowflake_lexer` (bin "snowflake_lexer" test) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: struct `Lexer` is never constructed
[INFO] [stdout]    --> src/lexer/lexer.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct Lexer {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/lexer/lexer.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 188 | impl Lexer {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 189 |     pub fn new(input: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     fn next_token(&mut self) -> Result<Token> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     fn read_char(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     fn skip_whitespace(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 316 |     fn read_ident(&mut self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     fn read_number(&mut self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     fn read_inline_comment(&mut self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     fn read_block_comment(&mut self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     fn string_to_token(&self, ident: &str) -> Option<Token> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     fn read_varchar(&mut self) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 474 |     fn peek_char(&self) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 482 |     pub fn get_tokens(mut self) -> Result<Vec<Token>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Column` is never constructed
[INFO] [stdout]  --> src/parser/parser.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Column {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/parser/parser.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Column {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn new(name: String) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SelectedColumns` is never constructed
[INFO] [stdout]   --> src/parser/parser.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SelectedColumns {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/parser/parser.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl SelectedColumns {
[INFO] [stdout]    | -------------------- associated function in this implementation
[INFO] [stdout] 24 |     pub fn new(table: String, columns: Vec<Column>, cte: bool) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ParserState` is never constructed
[INFO] [stdout]   --> src/parser/parser.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct ParserState {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/parser/parser.rs:44:8
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl ParserState {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  44 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  56 |     fn enter_select(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     fn exit_select(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  65 |     fn enter_function(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  69 |     fn exit_function(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  73 |     fn open_paren(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     fn close_paren(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     fn add_column(&mut self, name: String) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     fn enter_object_creation(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     fn enter_cte(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     fn update_selected_columns(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]    --> src/parser/parser.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 125 | pub struct Parser {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_selected_columns` are never used
[INFO] [stdout]    --> src/parser/parser.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | impl Parser {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout] 130 |     pub fn new(file_path: String) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn get_selected_columns(&self) -> Vec<SelectedColumns> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `String`
[INFO] [stdout]    --> src/parser/parser.rs:132:32
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let lexer = Lexer::new(input.into());
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 132 -         let lexer = Lexer::new(input.into());
[INFO] [stdout] 132 +         let lexer = Lexer::new(input);
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 132 -         let lexer = Lexer::new(input.into());
[INFO] [stdout] 132 +         let lexer = Lexer::new(<String as Into<_>>::into(input));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `snowflake_lexer` (bin "snowflake_lexer") due to 1 previous error; 10 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f", kill_on_drop: false }`
[INFO] [stdout] a8dd53d0918e8d5e931e4574024cb8f35417e0ac0f146225b86f76dc6ca0ed2f
