[INFO] cloning repository https://github.com/Kazox61/Rustpiler [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Kazox61/Rustpiler" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKazox61%2FRustpiler", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKazox61%2FRustpiler'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2cc95b10dd286c53084802d56bd0c3058de2a095 [INFO] testing Kazox61/Rustpiler against master#ff2c56344c764af598ad33027e9c7a48881808ef for pr-118825 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKazox61%2FRustpiler" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Kazox61/Rustpiler on toolchain ff2c56344c764af598ad33027e9c7a48881808ef [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ff2c56344c764af598ad33027e9c7a48881808ef" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Kazox61/Rustpiler [INFO] finished tweaking git repo https://github.com/Kazox61/Rustpiler [INFO] tweaked toml for git repo https://github.com/Kazox61/Rustpiler written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Kazox61/Rustpiler 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" "+ff2c56344c764af598ad33027e9c7a48881808ef" "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 [ERROR] this task or one of its parent failed! [ERROR] no output for 300 seconds [ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace. [INFO] testing Kazox61/Rustpiler against try#5e4273472e1b2f223618a9b3def795f6224f241d for pr-118825 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKazox61%2FRustpiler" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Kazox61/Rustpiler on toolchain 5e4273472e1b2f223618a9b3def795f6224f241d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5e4273472e1b2f223618a9b3def795f6224f241d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Kazox61/Rustpiler [INFO] finished tweaking git repo https://github.com/Kazox61/Rustpiler [INFO] tweaked toml for git repo https://github.com/Kazox61/Rustpiler written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Kazox61/Rustpiler 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" "+5e4273472e1b2f223618a9b3def795f6224f241d" "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] testing Kazox61/Rustpiler against try#5e4273472e1b2f223618a9b3def795f6224f241d for pr-118825 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKazox61%2FRustpiler" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Kazox61/Rustpiler on toolchain 5e4273472e1b2f223618a9b3def795f6224f241d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5e4273472e1b2f223618a9b3def795f6224f241d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Kazox61/Rustpiler [INFO] finished tweaking git repo https://github.com/Kazox61/Rustpiler [INFO] tweaked toml for git repo https://github.com/Kazox61/Rustpiler written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Kazox61/Rustpiler 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" "+5e4273472e1b2f223618a9b3def795f6224f241d" "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-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5e4273472e1b2f223618a9b3def795f6224f241d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b3cd3ed0fbe9dcaf3f3c6a0d9f49f4c87cda868453653fc1d2c2d3dda8b13b5d [INFO] running `Command { std: "docker" "start" "-a" "b3cd3ed0fbe9dcaf3f3c6a0d9f49f4c87cda868453653fc1d2c2d3dda8b13b5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b3cd3ed0fbe9dcaf3f3c6a0d9f49f4c87cda868453653fc1d2c2d3dda8b13b5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b3cd3ed0fbe9dcaf3f3c6a0d9f49f4c87cda868453653fc1d2c2d3dda8b13b5d", kill_on_drop: false }` [INFO] [stdout] b3cd3ed0fbe9dcaf3f3c6a0d9f49f4c87cda868453653fc1d2c2d3dda8b13b5d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5e4273472e1b2f223618a9b3def795f6224f241d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 21beed99f27fb4ff82f49a8a430c9a78ef390572b8cb9429aa8efb2ee92f9433 [INFO] running `Command { std: "docker" "start" "-a" "21beed99f27fb4ff82f49a8a430c9a78ef390572b8cb9429aa8efb2ee92f9433", kill_on_drop: false }` [INFO] [stderr] Compiling hydrogen v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/parser.rs:565:15 [INFO] [stdout] | [INFO] [stdout] 565 | while ( [INFO] [stdout] | _______________^ [INFO] [stdout] 566 | | *peek_token == TokenType::LessThan || [INFO] [stdout] | |____________^ [INFO] [stdout] ... [INFO] [stdout] 569 | *peek_token == TokenType::GreaterThanOrEqual [INFO] [stdout] | _____________________________________________________________^ [INFO] [stdout] 570 | | ) { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 565 ~ while *peek_token == TokenType::LessThan || [INFO] [stdout] 566 | *peek_token == TokenType::GreaterThan || [INFO] [stdout] 567 | *peek_token == TokenType::LessThanOrEqual || [INFO] [stdout] 568 ~ *peek_token == TokenType::GreaterThanOrEqual { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Break` is never constructed [INFO] [stdout] --> src/tokenizer.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum KeywordType { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 7 | Break [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Any` is never constructed [INFO] [stdout] --> src/tokenizer.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum TokenType { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 12 | Any, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:204:33 [INFO] [stdout] | [INFO] [stdout] 204 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:219:33 [INFO] [stdout] | [INFO] [stdout] 219 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:229:33 [INFO] [stdout] | [INFO] [stdout] 229 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:239:33 [INFO] [stdout] | [INFO] [stdout] 239 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:249:33 [INFO] [stdout] | [INFO] [stdout] 249 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:262:43 [INFO] [stdout] | [INFO] [stdout] 262 | Some(token_type) => token_type.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:274:47 [INFO] [stdout] | [INFO] [stdout] 274 | Some(token_type) => token_type.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:279:33 [INFO] [stdout] | [INFO] [stdout] 279 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:322:33 [INFO] [stdout] | [INFO] [stdout] 322 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:342:33 [INFO] [stdout] | [INFO] [stdout] 342 | Some(value) => value.clone() , [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:355:33 [INFO] [stdout] | [INFO] [stdout] 355 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:373:33 [INFO] [stdout] | [INFO] [stdout] 373 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:383:33 [INFO] [stdout] | [INFO] [stdout] 383 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:408:33 [INFO] [stdout] | [INFO] [stdout] 408 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:443:33 [INFO] [stdout] | [INFO] [stdout] 443 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:451:37 [INFO] [stdout] | [INFO] [stdout] 451 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:465:37 [INFO] [stdout] | [INFO] [stdout] 465 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:482:33 [INFO] [stdout] | [INFO] [stdout] 482 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:490:37 [INFO] [stdout] | [INFO] [stdout] 490 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:504:37 [INFO] [stdout] | [INFO] [stdout] 504 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:521:33 [INFO] [stdout] | [INFO] [stdout] 521 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:529:37 [INFO] [stdout] | [INFO] [stdout] 529 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:543:37 [INFO] [stdout] | [INFO] [stdout] 543 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:560:33 [INFO] [stdout] | [INFO] [stdout] 560 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:573:37 [INFO] [stdout] | [INFO] [stdout] 573 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:587:37 [INFO] [stdout] | [INFO] [stdout] 587 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:604:33 [INFO] [stdout] | [INFO] [stdout] 604 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:612:37 [INFO] [stdout] | [INFO] [stdout] 612 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:626:37 [INFO] [stdout] | [INFO] [stdout] 626 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:650:37 [INFO] [stdout] | [INFO] [stdout] 650 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:677:33 [INFO] [stdout] | [INFO] [stdout] 677 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `unOp` should have a snake case name [INFO] [stdout] --> src/parser.rs:701:18 [INFO] [stdout] | [INFO] [stdout] 701 | Some(unOp) => { [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `un_op` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 35 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.36s [INFO] running `Command { std: "docker" "inspect" "21beed99f27fb4ff82f49a8a430c9a78ef390572b8cb9429aa8efb2ee92f9433", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "21beed99f27fb4ff82f49a8a430c9a78ef390572b8cb9429aa8efb2ee92f9433", kill_on_drop: false }` [INFO] [stdout] 21beed99f27fb4ff82f49a8a430c9a78ef390572b8cb9429aa8efb2ee92f9433 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5e4273472e1b2f223618a9b3def795f6224f241d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] adc3261ae45ce9e1e9668aed070483b198772c697a08b7a93df30d0efef29dfd [INFO] running `Command { std: "docker" "start" "-a" "adc3261ae45ce9e1e9668aed070483b198772c697a08b7a93df30d0efef29dfd", kill_on_drop: false }` [INFO] [stderr] Compiling hydrogen v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around `while` condition [INFO] [stdout] --> src/parser.rs:565:15 [INFO] [stdout] | [INFO] [stdout] 565 | while ( [INFO] [stdout] | _______________^ [INFO] [stdout] 566 | | *peek_token == TokenType::LessThan || [INFO] [stdout] | |____________^ [INFO] [stdout] ... [INFO] [stdout] 569 | *peek_token == TokenType::GreaterThanOrEqual [INFO] [stdout] | _____________________________________________________________^ [INFO] [stdout] 570 | | ) { [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 565 ~ while *peek_token == TokenType::LessThan || [INFO] [stdout] 566 | *peek_token == TokenType::GreaterThan || [INFO] [stdout] 567 | *peek_token == TokenType::LessThanOrEqual || [INFO] [stdout] 568 ~ *peek_token == TokenType::GreaterThanOrEqual { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Break` is never constructed [INFO] [stdout] --> src/tokenizer.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum KeywordType { [INFO] [stdout] | ----------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 7 | Break [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Any` is never constructed [INFO] [stdout] --> src/tokenizer.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum TokenType { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] 12 | Any, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:204:33 [INFO] [stdout] | [INFO] [stdout] 204 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:219:33 [INFO] [stdout] | [INFO] [stdout] 219 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:229:33 [INFO] [stdout] | [INFO] [stdout] 229 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:239:33 [INFO] [stdout] | [INFO] [stdout] 239 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:249:33 [INFO] [stdout] | [INFO] [stdout] 249 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:262:43 [INFO] [stdout] | [INFO] [stdout] 262 | Some(token_type) => token_type.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:274:47 [INFO] [stdout] | [INFO] [stdout] 274 | Some(token_type) => token_type.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:279:33 [INFO] [stdout] | [INFO] [stdout] 279 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:322:33 [INFO] [stdout] | [INFO] [stdout] 322 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:342:33 [INFO] [stdout] | [INFO] [stdout] 342 | Some(value) => value.clone() , [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:355:33 [INFO] [stdout] | [INFO] [stdout] 355 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:373:33 [INFO] [stdout] | [INFO] [stdout] 373 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:383:33 [INFO] [stdout] | [INFO] [stdout] 383 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:408:33 [INFO] [stdout] | [INFO] [stdout] 408 | Some(value) => value.clone(), [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:443:33 [INFO] [stdout] | [INFO] [stdout] 443 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:451:37 [INFO] [stdout] | [INFO] [stdout] 451 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:465:37 [INFO] [stdout] | [INFO] [stdout] 465 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:482:33 [INFO] [stdout] | [INFO] [stdout] 482 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:490:37 [INFO] [stdout] | [INFO] [stdout] 490 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:504:37 [INFO] [stdout] | [INFO] [stdout] 504 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:521:33 [INFO] [stdout] | [INFO] [stdout] 521 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:529:37 [INFO] [stdout] | [INFO] [stdout] 529 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:543:37 [INFO] [stdout] | [INFO] [stdout] 543 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:560:33 [INFO] [stdout] | [INFO] [stdout] 560 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:573:37 [INFO] [stdout] | [INFO] [stdout] 573 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:587:37 [INFO] [stdout] | [INFO] [stdout] 587 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:604:33 [INFO] [stdout] | [INFO] [stdout] 604 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:612:37 [INFO] [stdout] | [INFO] [stdout] 612 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:626:37 [INFO] [stdout] | [INFO] [stdout] 626 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:650:37 [INFO] [stdout] | [INFO] [stdout] 650 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/parser.rs:677:33 [INFO] [stdout] | [INFO] [stdout] 677 | Some(token) => token.clone() [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `unOp` should have a snake case name [INFO] [stdout] --> src/parser.rs:701:18 [INFO] [stdout] | [INFO] [stdout] 701 | Some(unOp) => { [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `un_op` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 35 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.26s [INFO] running `Command { std: "docker" "inspect" "adc3261ae45ce9e1e9668aed070483b198772c697a08b7a93df30d0efef29dfd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "adc3261ae45ce9e1e9668aed070483b198772c697a08b7a93df30d0efef29dfd", kill_on_drop: false }` [INFO] [stdout] adc3261ae45ce9e1e9668aed070483b198772c697a08b7a93df30d0efef29dfd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5e4273472e1b2f223618a9b3def795f6224f241d" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 22b516b88dd43a2844caf34faa2aa7cbc8eba5d415e14c5fc93809523f6e8fb8 [INFO] running `Command { std: "docker" "start" "-a" "22b516b88dd43a2844caf34faa2aa7cbc8eba5d415e14c5fc93809523f6e8fb8", kill_on_drop: false }` [INFO] [stderr] warning: unnecessary parentheses around `while` condition [INFO] [stderr] --> src/parser.rs:565:15 [INFO] [stderr] | [INFO] [stderr] 565 | while ( [INFO] [stderr] | _______________^ [INFO] [stderr] 566 | | *peek_token == TokenType::LessThan || [INFO] [stderr] | |____________^ [INFO] [stderr] ... [INFO] [stderr] 569 | *peek_token == TokenType::GreaterThanOrEqual [INFO] [stderr] | _____________________________________________________________^ [INFO] [stderr] 570 | | ) { [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 565 ~ while *peek_token == TokenType::LessThan || [INFO] [stderr] 566 | *peek_token == TokenType::GreaterThan || [INFO] [stderr] 567 | *peek_token == TokenType::LessThanOrEqual || [INFO] [stderr] 568 ~ *peek_token == TokenType::GreaterThanOrEqual { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variant `Break` is never constructed [INFO] [stderr] --> src/tokenizer.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 4 | pub enum KeywordType { [INFO] [stderr] | ----------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 7 | Break [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `Any` is never constructed [INFO] [stderr] --> src/tokenizer.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 11 | pub enum TokenType { [INFO] [stderr] | --------- variant in this enum [INFO] [stderr] 12 | Any, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:204:33 [INFO] [stderr] | [INFO] [stderr] 204 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:219:33 [INFO] [stderr] | [INFO] [stderr] 219 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:229:33 [INFO] [stderr] | [INFO] [stderr] 229 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:239:33 [INFO] [stderr] | [INFO] [stderr] 239 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:249:33 [INFO] [stderr] | [INFO] [stderr] 249 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:262:43 [INFO] [stderr] | [INFO] [stderr] 262 | Some(token_type) => token_type.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:274:47 [INFO] [stderr] | [INFO] [stderr] 274 | Some(token_type) => token_type.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:279:33 [INFO] [stderr] | [INFO] [stderr] 279 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:322:33 [INFO] [stderr] | [INFO] [stderr] 322 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:342:33 [INFO] [stderr] | [INFO] [stderr] 342 | Some(value) => value.clone() , [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:355:33 [INFO] [stderr] | [INFO] [stderr] 355 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:373:33 [INFO] [stderr] | [INFO] [stderr] 373 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:383:33 [INFO] [stderr] | [INFO] [stderr] 383 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:408:33 [INFO] [stderr] | [INFO] [stderr] 408 | Some(value) => value.clone(), [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:443:33 [INFO] [stderr] | [INFO] [stderr] 443 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:451:37 [INFO] [stderr] | [INFO] [stderr] 451 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:465:37 [INFO] [stderr] | [INFO] [stderr] 465 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:482:33 [INFO] [stderr] | [INFO] [stderr] 482 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:490:37 [INFO] [stderr] | [INFO] [stderr] 490 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:504:37 [INFO] [stderr] | [INFO] [stderr] 504 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:521:33 [INFO] [stderr] | [INFO] [stderr] 521 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:529:37 [INFO] [stderr] | [INFO] [stderr] 529 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:543:37 [INFO] [stderr] | [INFO] [stderr] 543 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:560:33 [INFO] [stderr] | [INFO] [stderr] 560 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:573:37 [INFO] [stderr] | [INFO] [stderr] 573 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:587:37 [INFO] [stderr] | [INFO] [stderr] 587 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:604:33 [INFO] [stderr] | [INFO] [stderr] 604 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:612:37 [INFO] [stderr] | [INFO] [stderr] 612 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:626:37 [INFO] [stderr] | [INFO] [stderr] 626 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:650:37 [INFO] [stderr] | [INFO] [stderr] 650 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/parser.rs:677:33 [INFO] [stderr] | [INFO] [stderr] 677 | Some(token) => token.clone() [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `TokenType` does not implement `Clone`, so calling `clone` on `&TokenType` copies the reference, which does not do anything and can be removed [INFO] [stderr] [INFO] [stderr] warning: variable `unOp` should have a snake case name [INFO] [stderr] --> src/parser.rs:701:18 [INFO] [stderr] | [INFO] [stderr] 701 | Some(unOp) => { [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `un_op` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `hydrogen` (bin "hydrogen" test) generated 35 warnings (run `cargo fix --bin "hydrogen" --tests` to apply 32 suggestions) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.00s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/hydrogen-14456ed9ea94273f) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "22b516b88dd43a2844caf34faa2aa7cbc8eba5d415e14c5fc93809523f6e8fb8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "22b516b88dd43a2844caf34faa2aa7cbc8eba5d415e14c5fc93809523f6e8fb8", kill_on_drop: false }` [INFO] [stdout] 22b516b88dd43a2844caf34faa2aa7cbc8eba5d415e14c5fc93809523f6e8fb8