[INFO] cloning repository https://github.com/zypeh/topos-frontend
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zypeh/topos-frontend" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzypeh%2Ftopos-frontend", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzypeh%2Ftopos-frontend'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 047e130c27ad1eeff220bd079f63a3548bec415b
[INFO] checking zypeh/topos-frontend against 895980e0290783bb09b1ccf1b11f14eb09b10430 for pr-160186
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzypeh%2Ftopos-frontend" "/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/zypeh/topos-frontend
[INFO] finished tweaking git repo https://github.com/zypeh/topos-frontend
[INFO] tweaked toml for git repo https://github.com/zypeh/topos-frontend written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/zypeh/topos-frontend on toolchain 895980e0290783bb09b1ccf1b11f14eb09b10430
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/zypeh/topos-frontend 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" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "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] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded smol_str v0.1.18
[INFO] [stderr]   Downloaded utf8-ranges v1.0.4
[INFO] [stderr]   Downloaded bumpalo v3.7.1
[INFO] [stderr]   Downloaded proc-macro2 v1.0.29
[INFO] [stderr]   Downloaded syn v1.0.78
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551
[INFO] running `Command { std: "docker" "start" "c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551", 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" "c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551", 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" "c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.29
[INFO] [stderr]    Compiling syn v1.0.78
[INFO] [stderr]    Compiling utf8-ranges v1.0.4
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling beef v0.5.1
[INFO] [stderr]     Checking smol_str v0.1.18
[INFO] [stderr]     Checking bumpalo v3.7.1
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling logos-derive v0.12.0
[INFO] [stderr]     Checking logos v0.12.0
[INFO] [stderr]     Checking topos-frontend v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `serde`
[INFO] [stdout]   --> src/parsing.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | #[cfg_attr(feature = "serde", derive(Serialize))]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `serde` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `serde`
[INFO] [stdout]   --> src/parsing.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 55 | #[cfg_attr(feature = "serde", derive(Serialize))]
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `serde` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `source` is never used
[INFO] [stdout]    --> src/tokenising.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl<'source> Tokeniser<'source> {
[INFO] [stdout]     | -------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn source(&self) -> &'source str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `source` is never used
[INFO] [stdout]    --> src/tokenising.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl<'source> Tokeniser<'source> {
[INFO] [stdout]     | -------------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn source(&self) -> &'source str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/parsing.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct LineCol(usize, usize);
[INFO] [stdout]    |            ------- ^^^^^  ^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing these fields
[INFO] [stdout]    = note: `LineCol` 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: methods `add_offset`, `surrounding_offset`, `newline_offset`, and `multiple_newline_offset` are never used
[INFO] [stdout]   --> src/parsing.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl LineCol {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] 13 |     pub fn add_offset(&mut self, x: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn surrounding_offset(&mut self, len: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn newline_offset(&mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn multiple_newline_offset(&mut self, n: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SourceNode` is never constructed
[INFO] [stdout]   --> src/parsing.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct SourceNode<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/parsing.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct LineCol(usize, usize);
[INFO] [stdout]    |            ------- ^^^^^  ^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing these fields
[INFO] [stdout]    = note: `LineCol` 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: methods `add_offset`, `surrounding_offset`, `newline_offset`, and `multiple_newline_offset` are never used
[INFO] [stdout]   --> src/parsing.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl LineCol {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] 13 |     pub fn add_offset(&mut self, x: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn surrounding_offset(&mut self, len: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn newline_offset(&mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn multiple_newline_offset(&mut self, n: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `text` and `location` are never read
[INFO] [stdout]   --> src/parsing.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct IdentifierNode {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 45 |     pub text: SmolStr,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub location: LineCol,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IdentifierNode` 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: struct `SourceNode` is never constructed
[INFO] [stdout]   --> src/parsing.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct SourceNode<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `text` and `location` are never read
[INFO] [stdout]   --> src/parsing.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct IdentifierNode {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 45 |     pub text: SmolStr,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub location: LineCol,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `IdentifierNode` 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 `text` and `location` are never read
[INFO] [stdout]   --> src/parsing.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct StringNode {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 51 |     pub text: SmolStr,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 52 |     pub location: LineCol,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StringNode` 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 `text` and `location` are never read
[INFO] [stdout]   --> src/parsing.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct StringNode {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 51 |     pub text: SmolStr,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 52 |     pub location: LineCol,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StringNode` 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: variant `String` is never constructed
[INFO] [stdout]   --> src/parsing.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub enum ValueNode {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 58 |     Identifier(IdentifierNode),
[INFO] [stdout] 59 |     String(StringNode),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValueNode` 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: variant `String` is never constructed
[INFO] [stdout]   --> src/parsing.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub enum ValueNode {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 58 |     Identifier(IdentifierNode),
[INFO] [stdout] 59 |     String(StringNode),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ValueNode` 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 `assignee` and `expression` are never read
[INFO] [stdout]   --> src/parsing.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct AssignmentNode {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 66 |     pub assignee: ValueNode,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 67 |     pub expression: ExpressionNode,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AssignmentNode` 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 `assignee` and `expression` are never read
[INFO] [stdout]   --> src/parsing.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub struct AssignmentNode {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 66 |     pub assignee: ValueNode,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 67 |     pub expression: ExpressionNode,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AssignmentNode` 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/parsing.rs:72:16
[INFO] [stdout]    |
[INFO] [stdout] 72 |     Assignment(AssignmentNode),
[INFO] [stdout]    |     ---------- ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatementNode` 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] 72 -     Assignment(AssignmentNode),
[INFO] [stdout] 72 +     Assignment(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parsing.rs:72:16
[INFO] [stdout]    |
[INFO] [stdout] 72 |     Assignment(AssignmentNode),
[INFO] [stdout]    |     ---------- ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatementNode` 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] 72 -     Assignment(AssignmentNode),
[INFO] [stdout] 72 +     Assignment(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `operand`, `left`, and `right` are never read
[INFO] [stdout]   --> src/parsing.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct BinaryOpsNode {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 77 |     operand: IdentifierNode,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 78 |     left: ValueNode,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 79 |     right: ValueNode,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinaryOpsNode` 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 `operand`, `left`, and `right` are never read
[INFO] [stdout]   --> src/parsing.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct BinaryOpsNode {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 77 |     operand: IdentifierNode,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 78 |     left: ValueNode,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 79 |     right: ValueNode,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinaryOpsNode` 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: variant `BinaryOps` is never constructed
[INFO] [stdout]   --> src/parsing.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub enum ExpressionNode {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] 84 |     Value(ValueNode),
[INFO] [stdout] 85 |     BinaryOps(BinaryOpsNode),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExpressionNode` 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: variant `BinaryOps` is never constructed
[INFO] [stdout]   --> src/parsing.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub enum ExpressionNode {
[INFO] [stdout]    |          -------------- variant in this enum
[INFO] [stdout] 84 |     Value(ValueNode),
[INFO] [stdout] 85 |     BinaryOps(BinaryOpsNode),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExpressionNode` 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/parsing.rs:91:15
[INFO] [stdout]    |
[INFO] [stdout] 91 |     Statement(StatementNode),
[INFO] [stdout]    |     --------- ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AstRoot` 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] 91 -     Statement(StatementNode),
[INFO] [stdout] 91 +     Statement(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parsing.rs:91:15
[INFO] [stdout]    |
[INFO] [stdout] 91 |     Statement(StatementNode),
[INFO] [stdout]    |     --------- ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AstRoot` 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] 91 -     Statement(StatementNode),
[INFO] [stdout] 91 +     Statement(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `iteration` and `line_col` are never read
[INFO] [stdout]    --> src/parsing.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct Parser {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 102 |     token_iterator: std::iter::Peekable<std::vec::IntoIter<TokenCluster>>,
[INFO] [stdout] 103 |     iteration: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 104 |     line_col: LineCol,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Parser` 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 `iteration` and `line_col` are never read
[INFO] [stdout]    --> src/parsing.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct Parser {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 102 |     token_iterator: std::iter::Peekable<std::vec::IntoIter<TokenCluster>>,
[INFO] [stdout] 103 |     iteration: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 104 |     line_col: LineCol,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Parser` 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: method `handle_expression` is never used
[INFO] [stdout]    --> src/parsing.rs:183:8
[INFO] [stdout]     |
[INFO] [stdout] 108 | impl<'a> Parser{
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 183 |     fn handle_expression(&'a mut self) -> ExpressionNode {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `handle_expression` is never used
[INFO] [stdout]    --> src/parsing.rs:183:8
[INFO] [stdout]     |
[INFO] [stdout] 108 | impl<'a> Parser{
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 183 |     fn handle_expression(&'a mut self) -> ExpressionNode {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/parsing.rs:151:49
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub fn incrementally_build(&'a mut self) -> &mut Self {
[INFO] [stdout]     |                                 --              ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub fn incrementally_build(&'a mut self) -> &'a mut Self {
[INFO] [stdout]     |                                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/parsing.rs:151:49
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub fn incrementally_build(&'a mut self) -> &mut Self {
[INFO] [stdout]     |                                 --              ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 151 |     pub fn incrementally_build(&'a mut self) -> &'a mut Self {
[INFO] [stdout]     |                                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/parsing.rs:163:33
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn consume(&'a mut self) -> &mut Self {
[INFO] [stdout]     |                 --              ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn consume(&'a mut self) -> &'a mut Self {
[INFO] [stdout]     |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/parsing.rs:163:33
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn consume(&'a mut self) -> &mut Self {
[INFO] [stdout]     |                 --              ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn consume(&'a mut self) -> &'a mut Self {
[INFO] [stdout]     |                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/parsing.rs:167:66
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn handle_assignment(&'a mut self, ident: IdentifierNode) -> &mut Self {
[INFO] [stdout]     |                           -- the lifetime is named here          ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn handle_assignment(&'a mut self, ident: IdentifierNode) -> &'a mut Self {
[INFO] [stdout]     |                                                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/parsing.rs:167:66
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn handle_assignment(&'a mut self, ident: IdentifierNode) -> &mut Self {
[INFO] [stdout]     |                           -- the lifetime is named here          ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 167 |     fn handle_assignment(&'a mut self, ident: IdentifierNode) -> &'a mut Self {
[INFO] [stdout]     |                                                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `serde`
[INFO] [stderr]  --> Cargo.toml:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | serde = "1.0"
[INFO] [stderr]   | ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `serde`
[INFO] [stderr] warning: unused dependency `smallvec`
[INFO] [stderr]  --> Cargo.toml:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | smallvec = "1.7"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr] help: consider removing the dependency on `smallvec`
[INFO] [stderr] warning: `topos-frontend` (manifest) generated 2 warnings
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.55s
[INFO] running `Command { std: "docker" "inspect" "c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551", kill_on_drop: false }`
[INFO] [stdout] c2557de43bbaaf8fab060bd77647aa950861a95a1fe1c192086e095689516551
