[INFO] cloning repository https://github.com/UnicornRust/rust_json
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/UnicornRust/rust_json" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FUnicornRust%2Frust_json", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FUnicornRust%2Frust_json'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7cc2b243cd9c2a6e02a4448085ff821ce2d1f96d
[INFO] checking UnicornRust/rust_json against try#1baf923b9c3a455162afe43e18647f494c1a4b73 for pr-151510
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FUnicornRust%2Frust_json" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/UnicornRust/rust_json
[INFO] finished tweaking git repo https://github.com/UnicornRust/rust_json
[INFO] tweaked toml for git repo https://github.com/UnicornRust/rust_json written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/UnicornRust/rust_json on toolchain 1baf923b9c3a455162afe43e18647f494c1a4b73
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/UnicornRust/rust_json 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" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking UnicornRust/rust_json against try#1baf923b9c3a455162afe43e18647f494c1a4b73 for pr-151510
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FUnicornRust%2Frust_json" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/UnicornRust/rust_json
[INFO] finished tweaking git repo https://github.com/UnicornRust/rust_json
[INFO] tweaked toml for git repo https://github.com/UnicornRust/rust_json written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/UnicornRust/rust_json on toolchain 1baf923b9c3a455162afe43e18647f494c1a4b73
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/UnicornRust/rust_json 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" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "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-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1847ecee8e66deb3cd3029818596b842325092ef32abb6fdd7957da43ab3b08f
[INFO] running `Command { std: "docker" "start" "-a" "1847ecee8e66deb3cd3029818596b842325092ef32abb6fdd7957da43ab3b08f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1847ecee8e66deb3cd3029818596b842325092ef32abb6fdd7957da43ab3b08f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1847ecee8e66deb3cd3029818596b842325092ef32abb6fdd7957da43ab3b08f", kill_on_drop: false }`
[INFO] [stdout] 1847ecee8e66deb3cd3029818596b842325092ef32abb6fdd7957da43ab3b08f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+1baf923b9c3a455162afe43e18647f494c1a4b73" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bf495b6852b9c57fbd8d6bac929b888ea2cb2bb8709870dbe86186e2d0d4282e
[INFO] running `Command { std: "docker" "start" "-a" "bf495b6852b9c57fbd8d6bac929b888ea2cb2bb8709870dbe86186e2d0d4282e", kill_on_drop: false }`
[INFO] [stderr]     Checking rust_json v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused macro definition: `impl_from_and_to_json_for_number`
[INFO] [stdout]    --> src/json/json_basic.rs:409:14
[INFO] [stdout]     |
[INFO] [stdout] 409 | macro_rules! impl_from_and_to_json_for_number {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `impl_from_and_to_json_for_number`
[INFO] [stdout]    --> src/json/json_basic.rs:409:14
[INFO] [stdout]     |
[INFO] [stdout] 409 | macro_rules! impl_from_and_to_json_for_number {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]   --> src/macs/declaremacs.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | struct Person {}
[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 `name` and `age` are never read
[INFO] [stdout]   --> src/macs/declaremacs.rs:93:29
[INFO] [stdout]    |
[INFO] [stdout] 93 |     create_struct!(Student, name: String, age: u8);
[INFO] [stdout]    |                    -------  ^^^^          ^^^
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Student` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: this warning originates in the macro `create_struct` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonLexer` is never constructed
[INFO] [stdout]  --> src/json/json_lexer.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct JsonLexer<'a> {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]   --> src/macs/declaremacs.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | struct Person {}
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/json/json_lexer.rs:12:12
[INFO] [stdout]     |
[INFO] [stdout]  10 | impl<'a> JsonLexer<'a> {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  11 |
[INFO] [stdout]  12 |     pub fn new(input: &'a str) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  16 |     pub fn peek_char(&mut self) -> Option<char>  {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  20 |     pub fn move_to_next(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  25 |     pub fn next_token(&mut self) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     pub fn handle_char(&mut self, mut c: char) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn handle_escape(&mut self) -> Option<char> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn handle_string(&mut self) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn handle_number(&mut self, n: char) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn handle_boolean(&mut self, b: char) -> Option<JsonToken>{
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn handle_null(&mut self) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `age` are never read
[INFO] [stdout]   --> src/macs/declaremacs.rs:93:29
[INFO] [stdout]    |
[INFO] [stdout] 93 |     create_struct!(Student, name: String, age: u8);
[INFO] [stdout]    |                    -------  ^^^^          ^^^
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Student` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: this warning originates in the macro `create_struct` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_all` is never used
[INFO] [stdout]    --> src/json/json_lexer.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub fn parse_all(input: &str) -> Option<LinkedList<JsonToken>> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonLexer` is never constructed
[INFO] [stdout]  --> src/json/json_lexer.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct JsonLexer<'a> {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsonToken` is never used
[INFO] [stdout]  --> src/json/json_impl.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum JsonToken {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonParser` is never constructed
[INFO] [stdout]  --> src/json/json_parse.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct JsonParser{
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse`, `parse_value`, `parse_object`, `parse_array`, and `parse_all` are never used
[INFO] [stdout]   --> src/json/json_parse.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl JsonParser {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 10 |
[INFO] [stdout] 11 |     pub fn new(tokens: LinkedList<JsonToken>) -> JsonParser { 
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn parse(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn parse_value(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn parse_object(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn parse_array(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn parse_all(tokens: LinkedList<JsonToken>) -> Option<JsonNode>{
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsonNode` is never used
[INFO] [stdout]  --> src/json/json_basic.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum JsonNode {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/json/json_basic.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl JsonNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new() -> JsonNode {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FromAndToJson` is never used
[INFO] [stdout]    --> src/json/json_basic.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait FromAndToJson{
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/json/json_lexer.rs:12:12
[INFO] [stdout]     |
[INFO] [stdout]  10 | impl<'a> JsonLexer<'a> {
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout]  11 |
[INFO] [stdout]  12 |     pub fn new(input: &'a str) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  16 |     pub fn peek_char(&mut self) -> Option<char>  {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  20 |     pub fn move_to_next(&mut self, c: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  25 |     pub fn next_token(&mut self) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     pub fn handle_char(&mut self, mut c: char) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub fn handle_escape(&mut self) -> Option<char> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn handle_string(&mut self) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     pub fn handle_number(&mut self, n: char) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn handle_boolean(&mut self, b: char) -> Option<JsonToken>{
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn handle_null(&mut self) -> Option<JsonToken> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonObjIterRef` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct JsonObjIterRef<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonObjIterMut` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub struct JsonObjIterMut<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_all` is never used
[INFO] [stdout]    --> src/json/json_lexer.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub fn parse_all(input: &str) -> Option<LinkedList<JsonToken>> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonObjIntoIter` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct JsonObjIntoIter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonArrIterRef` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct JsonArrIterRef<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonArrIterMut` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct JsonArrIterMut<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsonToken` is never used
[INFO] [stdout]  --> src/json/json_impl.rs:3:10
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum JsonToken {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonArrIntoIter` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub struct JsonArrIntoIter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonParser` is never constructed
[INFO] [stdout]  --> src/json/json_parse.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct JsonParser{
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `parse`, `parse_value`, `parse_object`, `parse_array`, and `parse_all` are never used
[INFO] [stdout]   --> src/json/json_parse.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl JsonParser {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 10 |
[INFO] [stdout] 11 |     pub fn new(tokens: LinkedList<JsonToken>) -> JsonParser { 
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub fn parse(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn parse_value(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn parse_object(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn parse_array(&mut self) -> Option<JsonNode> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn parse_all(tokens: LinkedList<JsonToken>) -> Option<JsonNode>{
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsonNode` is never used
[INFO] [stdout]  --> src/json/json_basic.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum JsonNode {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/json/json_basic.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl JsonNode {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new() -> JsonNode {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/json/json_basic.rs:286:12
[INFO] [stdout]     |
[INFO] [stdout] 285 | impl JsonNode {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] 286 |     pub fn obj_iter(&self) -> Option<JsonObjIterRef> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn obj_iter_mut(&mut self) -> Option<JsonObjIterMut> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn obj_into_iter(self) -> Option<JsonObjIntoIter> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn arr_iter(&self) -> Option<JsonArrIterRef>{
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 322 |     pub fn arr_iter_mut(&mut self) -> Option<JsonArrIterMut> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub fn arr_into_iter(self) -> Option<JsonArrIntoIter> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     pub fn insert(&mut self, key: String, value: JsonNode) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn push(&mut self, value: JsonNode) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     pub fn reserve(&mut self, additional: usize) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 371 |     pub fn resize(&mut self, new_len: usize) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn remove(&mut self, key: &str) -> Option<JsonNode> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     pub fn contains_key(&self, key: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn set_null(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FromAndToJson` is never used
[INFO] [stdout]    --> src/json/json_basic.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait FromAndToJson{
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonObjIterRef` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct JsonObjIterRef<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonObjIterMut` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub struct JsonObjIterMut<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonObjIntoIter` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:219:12
[INFO] [stdout]     |
[INFO] [stdout] 219 | pub struct JsonObjIntoIter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonArrIterRef` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct JsonArrIterRef<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonArrIterMut` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct JsonArrIterMut<'a> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsonArrIntoIter` is never constructed
[INFO] [stdout]    --> src/json/json_basic.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub struct JsonArrIntoIter {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/json/json_basic.rs:286:12
[INFO] [stdout]     |
[INFO] [stdout] 285 | impl JsonNode {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] 286 |     pub fn obj_iter(&self) -> Option<JsonObjIterRef> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 296 |     pub fn obj_iter_mut(&mut self) -> Option<JsonObjIterMut> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn obj_into_iter(self) -> Option<JsonObjIntoIter> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn arr_iter(&self) -> Option<JsonArrIterRef>{
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 322 |     pub fn arr_iter_mut(&mut self) -> Option<JsonArrIterMut> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub fn arr_into_iter(self) -> Option<JsonArrIntoIter> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     pub fn insert(&mut self, key: String, value: JsonNode) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn push(&mut self, value: JsonNode) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     pub fn reserve(&mut self, additional: usize) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 371 |     pub fn resize(&mut self, new_len: usize) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn clear(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn remove(&mut self, key: &str) -> Option<JsonNode> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     pub fn contains_key(&self, key: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn set_null(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/json/json_basic.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 write!(f, "null");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 let _ = write!(f, "null");
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:286:21
[INFO] [stdout]     |
[INFO] [stdout] 286 |     pub fn obj_iter(&self) -> Option<JsonObjIterRef> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 286 |     pub fn obj_iter(&self) -> Option<JsonObjIterRef<'_>> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/json/json_basic.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 write!(f, "null");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 let _ = write!(f, "null");
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:296:25
[INFO] [stdout]     |
[INFO] [stdout] 296 |     pub fn obj_iter_mut(&mut self) -> Option<JsonObjIterMut> {
[INFO] [stdout]     |                         ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 296 |     pub fn obj_iter_mut(&mut self) -> Option<JsonObjIterMut<'_>> {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:313:21
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn arr_iter(&self) -> Option<JsonArrIterRef>{
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn arr_iter(&self) -> Option<JsonArrIterRef<'_>>{
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:322:25
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn arr_iter_mut(&mut self) -> Option<JsonArrIterMut> {
[INFO] [stdout]     |                         ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn arr_iter_mut(&mut self) -> Option<JsonArrIterMut<'_>> {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:286:21
[INFO] [stdout]     |
[INFO] [stdout] 286 |     pub fn obj_iter(&self) -> Option<JsonObjIterRef> {
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 286 |     pub fn obj_iter(&self) -> Option<JsonObjIterRef<'_>> {
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:296:25
[INFO] [stdout]     |
[INFO] [stdout] 296 |     pub fn obj_iter_mut(&mut self) -> Option<JsonObjIterMut> {
[INFO] [stdout]     |                         ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 296 |     pub fn obj_iter_mut(&mut self) -> Option<JsonObjIterMut<'_>> {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:313:21
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn arr_iter(&self) -> Option<JsonArrIterRef>{
[INFO] [stdout]     |                     ^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 313 |     pub fn arr_iter(&self) -> Option<JsonArrIterRef<'_>>{
[INFO] [stdout]     |                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/json/json_basic.rs:322:25
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn arr_iter_mut(&mut self) -> Option<JsonArrIterMut> {
[INFO] [stdout]     |                         ^^^^^^^^^            ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 322 |     pub fn arr_iter_mut(&mut self) -> Option<JsonArrIterMut<'_>> {
[INFO] [stdout]     |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] running `Command { std: "docker" "inspect" "bf495b6852b9c57fbd8d6bac929b888ea2cb2bb8709870dbe86186e2d0d4282e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf495b6852b9c57fbd8d6bac929b888ea2cb2bb8709870dbe86186e2d0d4282e", kill_on_drop: false }`
[INFO] [stdout] bf495b6852b9c57fbd8d6bac929b888ea2cb2bb8709870dbe86186e2d0d4282e
