[INFO] cloning repository https://github.com/thegedge/gesh
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/thegedge/gesh" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthegedge%2Fgesh", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthegedge%2Fgesh'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 379264e1b72d03985511de118929bb28cf8a088b
[INFO] checking thegedge/gesh against master#03c609abb6638f9d7f49f34326d4137d07f5cd61 for pr-155945
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fthegedge%2Fgesh" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/thegedge/gesh
[INFO] finished tweaking git repo https://github.com/thegedge/gesh
[INFO] tweaked toml for git repo https://github.com/thegedge/gesh written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/thegedge/gesh on toolchain 03c609abb6638f9d7f49f34326d4137d07f5cd61
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/thegedge/gesh 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" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: /workspace/builds/worker-7-tc1/source/Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: /workspace/builds/worker-7-tc1/source/gesh-geshl/Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[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 memchr v2.0.1
[INFO] [stderr]   Downloaded rustyline v1.0.0
[INFO] [stderr]   Downloaded unicode-width v0.1.5
[INFO] [stderr]   Downloaded bitflags v0.4.0
[INFO] [stderr]   Downloaded winapi-build v0.1.1
[INFO] [stderr]   Downloaded encode_unicode v0.1.3
[INFO] [stderr]   Downloaded glob v0.2.11
[INFO] [stderr]   Downloaded kernel32-sys v0.2.2
[INFO] [stderr]   Downloaded nom v4.0.0
[INFO] [stderr]   Downloaded nix v0.5.1
[INFO] [stderr]   Downloaded libc v0.2.42
[INFO] [stderr]   Downloaded winapi v0.2.8
[INFO] [stderr]   Downloaded winapi v0.3.5
[INFO] [stderr]   Downloaded dirs v1.0.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 82c04fc0f6e68df4edff3bd4598395ddc3b5904643d6fbf6ef0523e10d46a7a7
[INFO] running `Command { std: "docker" "start" "-a" "82c04fc0f6e68df4edff3bd4598395ddc3b5904643d6fbf6ef0523e10d46a7a7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "82c04fc0f6e68df4edff3bd4598395ddc3b5904643d6fbf6ef0523e10d46a7a7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "82c04fc0f6e68df4edff3bd4598395ddc3b5904643d6fbf6ef0523e10d46a7a7", kill_on_drop: false }`
[INFO] [stdout] 82c04fc0f6e68df4edff3bd4598395ddc3b5904643d6fbf6ef0523e10d46a7a7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+03c609abb6638f9d7f49f34326d4137d07f5cd61" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 28817025ba2cdb683b77fd0ea3e1624dc8702139c61a2a10392fa7815a07c095
[INFO] running `Command { std: "docker" "start" "-a" "28817025ba2cdb683b77fd0ea3e1624dc8702139c61a2a10392fa7815a07c095", kill_on_drop: false }`
[INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: /opt/rustwide/workdir/gesh-geshl/Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]     Checking libc v0.2.42
[INFO] [stderr]     Checking bitflags v0.4.0
[INFO] [stderr]     Checking encode_unicode v0.1.3
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking glob v0.2.11
[INFO] [stderr]     Checking memchr v2.0.1
[INFO] [stderr]     Checking nix v0.5.1
[INFO] [stderr]     Checking dirs v1.0.2
[INFO] [stderr]     Checking nom v4.0.0
[INFO] [stderr]     Checking geshl v0.1.0 (/opt/rustwide/workdir/gesh-geshl)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | / /// Parses an arbitrary line.
[INFO] [stdout] 33 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / /// Parses one or more variable setting expressions.
[INFO] [stdout] 44 | | ///
[INFO] [stdout] 45 | | /// # Examples
[INFO] [stdout] 46 | | ///
[INFO] [stdout] 47 | | /// - `FOO=bar`
[INFO] [stdout] 48 | | /// - `FOO=bar BAR=spam`
[INFO] [stdout] 49 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | / /// Parses a variable setting expression.
[INFO] [stdout] 59 | | ///
[INFO] [stdout] 60 | | /// # Examples
[INFO] [stdout] 61 | | ///
[INFO] [stdout] 62 | | /// - `FOO=bar`
[INFO] [stdout] 63 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | / /// Parses a command prefixed with zero or more environment variables to set.
[INFO] [stdout] 78 | | ///
[INFO] [stdout] 79 | | /// # Examples
[INFO] [stdout] 80 | | ///
[INFO] [stdout] 81 | | /// - `FOO=bar command`
[INFO] [stdout] 82 | | /// - `FOO=bar BAR=spam command arg1 "arg2 in quotes"
[INFO] [stdout] 83 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:96:1
[INFO] [stdout]    |
[INFO] [stdout] 96 | / /// Parses a string "piece".
[INFO] [stdout] 97 | | ///
[INFO] [stdout] 98 | | /// A piece could be a path, a glob, an unquoted string, an interpolated string, and so on.
[INFO] [stdout] 99 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / /// Parses a glob
[INFO] [stdout] 115 | | ///
[INFO] [stdout] 116 | | /// A piece could be a path, a glob, an unquoted string, an interpolated string, and so on.
[INFO] [stdout] 117 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | / /// Parses a path-like component.
[INFO] [stdout] 134 | | ///
[INFO] [stdout] 135 | | /// ## Examples
[INFO] [stdout] 136 | | ///
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | | /// - `~/home/directory`
[INFO] [stdout] 143 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:167:1
[INFO] [stdout]     |
[INFO] [stdout] 167 | / /// Parses an interpolated string from the command line.
[INFO] [stdout] 168 | | ///
[INFO] [stdout] 169 | | /// ## Examples
[INFO] [stdout] 170 | | ///
[INFO] [stdout] 171 | | /// - `"just some text"`
[INFO] [stdout] 172 | | /// - `"some text with an ${ENVVAR} interpolated"`
[INFO] [stdout] 173 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | / /// Parses an environment variable interpolation.
[INFO] [stdout] 187 | | ///
[INFO] [stdout] 188 | | /// ## Examples
[INFO] [stdout] 189 | | ///
[INFO] [stdout] 190 | | /// - `${HOME}`
[INFO] [stdout] 191 | | /// - `${SOME_DIR}`
[INFO] [stdout] 192 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:232:1
[INFO] [stdout]     |
[INFO] [stdout] 232 | / /// Parses regular text inside of an interpolated string.
[INFO] [stdout] 233 | | ///
[INFO] [stdout] 234 | | /// Some characters can be escaped with a backslash.
[INFO] [stdout] 235 | | /// - `\n` becomes a newline
[INFO] [stdout] ...   |
[INFO] [stdout] 247 | | /// - `C:\\Windows\\System\\folder`
[INFO] [stdout] 248 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:268:1
[INFO] [stdout]     |
[INFO] [stdout] 268 | / /// Parses an uninterpolated string from the command line.
[INFO] [stdout] 269 | | ///
[INFO] [stdout] 270 | | /// Some characters can be escaped with a backslash:
[INFO] [stdout] 271 | | /// - `\\` becomes a backslash
[INFO] [stdout] ...   |
[INFO] [stdout] 278 | | /// - `'This isn't a newline, just a backslash and an n: \n'`
[INFO] [stdout] 279 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:224:12
[INFO] [stdout]     |
[INFO] [stdout] 224 |         'a'...'z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:225:12
[INFO] [stdout]     |
[INFO] [stdout] 225 |         'A'...'Z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 226 |         '0'...'9' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 315 |         'a'...'z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:316:12
[INFO] [stdout]     |
[INFO] [stdout] 316 |         'A'...'Z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 |         '0'...'9' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | / /// Parses an arbitrary line.
[INFO] [stdout] 33 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / /// Parses one or more variable setting expressions.
[INFO] [stdout] 44 | | ///
[INFO] [stdout] 45 | | /// # Examples
[INFO] [stdout] 46 | | ///
[INFO] [stdout] 47 | | /// - `FOO=bar`
[INFO] [stdout] 48 | | /// - `FOO=bar BAR=spam`
[INFO] [stdout] 49 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | / /// Parses a variable setting expression.
[INFO] [stdout] 59 | | ///
[INFO] [stdout] 60 | | /// # Examples
[INFO] [stdout] 61 | | ///
[INFO] [stdout] 62 | | /// - `FOO=bar`
[INFO] [stdout] 63 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | / /// Parses a command prefixed with zero or more environment variables to set.
[INFO] [stdout] 78 | | ///
[INFO] [stdout] 79 | | /// # Examples
[INFO] [stdout] 80 | | ///
[INFO] [stdout] 81 | | /// - `FOO=bar command`
[INFO] [stdout] 82 | | /// - `FOO=bar BAR=spam command arg1 "arg2 in quotes"
[INFO] [stdout] 83 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> gesh-geshl/src/parser.rs:96:1
[INFO] [stdout]    |
[INFO] [stdout] 96 | / /// Parses a string "piece".
[INFO] [stdout] 97 | | ///
[INFO] [stdout] 98 | | /// A piece could be a path, a glob, an unquoted string, an interpolated string, and so on.
[INFO] [stdout] 99 | | ///
[INFO] [stdout]    | |_--^
[INFO] [stdout]    |   |
[INFO] [stdout]    |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / /// Parses a glob
[INFO] [stdout] 115 | | ///
[INFO] [stdout] 116 | | /// A piece could be a path, a glob, an unquoted string, an interpolated string, and so on.
[INFO] [stdout] 117 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:133:1
[INFO] [stdout]     |
[INFO] [stdout] 133 | / /// Parses a path-like component.
[INFO] [stdout] 134 | | ///
[INFO] [stdout] 135 | | /// ## Examples
[INFO] [stdout] 136 | | ///
[INFO] [stdout] ...   |
[INFO] [stdout] 142 | | /// - `~/home/directory`
[INFO] [stdout] 143 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:167:1
[INFO] [stdout]     |
[INFO] [stdout] 167 | / /// Parses an interpolated string from the command line.
[INFO] [stdout] 168 | | ///
[INFO] [stdout] 169 | | /// ## Examples
[INFO] [stdout] 170 | | ///
[INFO] [stdout] 171 | | /// - `"just some text"`
[INFO] [stdout] 172 | | /// - `"some text with an ${ENVVAR} interpolated"`
[INFO] [stdout] 173 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:186:1
[INFO] [stdout]     |
[INFO] [stdout] 186 | / /// Parses an environment variable interpolation.
[INFO] [stdout] 187 | | ///
[INFO] [stdout] 188 | | /// ## Examples
[INFO] [stdout] 189 | | ///
[INFO] [stdout] 190 | | /// - `${HOME}`
[INFO] [stdout] 191 | | /// - `${SOME_DIR}`
[INFO] [stdout] 192 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:232:1
[INFO] [stdout]     |
[INFO] [stdout] 232 | / /// Parses regular text inside of an interpolated string.
[INFO] [stdout] 233 | | ///
[INFO] [stdout] 234 | | /// Some characters can be escaped with a backslash.
[INFO] [stdout] 235 | | /// - `\n` becomes a newline
[INFO] [stdout] ...   |
[INFO] [stdout] 247 | | /// - `C:\\Windows\\System\\folder`
[INFO] [stdout] 248 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:268:1
[INFO] [stdout]     |
[INFO] [stdout] 268 | / /// Parses an uninterpolated string from the command line.
[INFO] [stdout] 269 | | ///
[INFO] [stdout] 270 | | /// Some characters can be escaped with a backslash:
[INFO] [stdout] 271 | | /// - `\\` becomes a backslash
[INFO] [stdout] ...   |
[INFO] [stdout] 278 | | /// - `'This isn't a newline, just a backslash and an n: \n'`
[INFO] [stdout] 279 | | ///
[INFO] [stdout]     | |_--^
[INFO] [stdout]     |   |
[INFO] [stdout]     |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:224:12
[INFO] [stdout]     |
[INFO] [stdout] 224 |         'a'...'z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:225:12
[INFO] [stdout]     |
[INFO] [stdout] 225 |         'A'...'Z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:226:12
[INFO] [stdout]     |
[INFO] [stdout] 226 |         '0'...'9' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 315 |         'a'...'z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:316:12
[INFO] [stdout]     |
[INFO] [stdout] 316 |         'A'...'Z' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> gesh-geshl/src/parser.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 |         '0'...'9' => true,
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rustyline v1.0.0
[INFO] [stderr]     Checking gesh v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `builtin::*`
[INFO] [stdout]   --> src/command/mod.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     builtin::*,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/prompt/mod.rs:44:30
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn set_prompt(&mut self, String);
[INFO] [stdout]    |                              ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `target_famlily`
[INFO] [stdout]    --> src/command/registry.rs:104:11
[INFO] [stdout]     |
[INFO] [stdout] 104 |     #[cfg(target_famlily = "unix")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(target_famlily, values("unix"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(target_famlily, values(\"unix\"))");` to the top of the `build.rs`
[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] help: there is a config with a similar name and value
[INFO] [stdout]     |
[INFO] [stdout] 104 -     #[cfg(target_famlily = "unix")]
[INFO] [stdout] 104 +     #[cfg(target_family = "unix")]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `target_famlily`
[INFO] [stdout]    --> src/command/registry.rs:112:11
[INFO] [stdout]     |
[INFO] [stdout] 112 |     #[cfg(target_famlily = "unix")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(target_famlily, values("unix"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(target_famlily, values(\"unix\"))");` to the top of the `build.rs`
[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] help: there is a config with a similar name and value
[INFO] [stdout]     |
[INFO] [stdout] 112 -     #[cfg(target_famlily = "unix")]
[INFO] [stdout] 112 +     #[cfg(target_family = "unix")]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `target_famlily`
[INFO] [stdout]    --> src/command/registry.rs:120:11
[INFO] [stdout]     |
[INFO] [stdout] 120 |     #[cfg(target_famlily = "unix")]
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(target_famlily, values("unix"))'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(target_famlily, values(\"unix\"))");` to the top of the `build.rs`
[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] help: there is a config with a similar name and value
[INFO] [stdout]     |
[INFO] [stdout] 120 -     #[cfg(target_famlily = "unix")]
[INFO] [stdout] 120 +     #[cfg(target_family = "unix")]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `builtin::*`
[INFO] [stdout]   --> src/command/mod.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     builtin::*,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/prompt/mod.rs:44:30
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn set_prompt(&mut self, String);
[INFO] [stdout]    |                              ^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: String`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `empty` is never used
[INFO] [stdout]   --> src/environment/mod.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Environment {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn empty() -> Environment {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/prompt/mod.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Io(io::Error),
[INFO] [stdout]    |     -- ^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 21 -     Io(io::Error),
[INFO] [stdout] 21 +     Io(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/shell.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 49 |     CommandError(command::Error),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 49 -     CommandError(command::Error),
[INFO] [stdout] 49 +     CommandError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/shell.rs:50:14
[INFO] [stdout]    |
[INFO] [stdout] 50 |     VarError(env::VarError),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 50 -     VarError(env::VarError),
[INFO] [stdout] 50 +     VarError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/shell.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |     PromptError(prompt::Error),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 52 -     PromptError(prompt::Error),
[INFO] [stdout] 52 +     PromptError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::os::unix::process::CommandExt::exec` that must be used
[INFO] [stdout]   --> src/command/builtin/exec.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 | /             process::Command::new(path)
[INFO] [stdout] 24 | |                 .args(args.iter().skip(1))
[INFO] [stdout] 25 | |                 .envs(env.exported_vars())
[INFO] [stdout] 26 | |                 .current_dir(env.working_directory())
[INFO] [stdout] 27 | |                 .exec();
[INFO] [stdout]    | |_______________________^
[INFO] [stdout]    |
[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] 23 |             let _ = process::Command::new(path)
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `fn_traits` is declared but not used
[INFO] [stdout]  --> src/main.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(fn_traits)]
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/prompt/mod.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Io(io::Error),
[INFO] [stdout]    |     -- ^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 21 -     Io(io::Error),
[INFO] [stdout] 21 +     Io(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/shell.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 49 |     CommandError(command::Error),
[INFO] [stdout]    |     ------------ ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 49 -     CommandError(command::Error),
[INFO] [stdout] 49 +     CommandError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/shell.rs:50:14
[INFO] [stdout]    |
[INFO] [stdout] 50 |     VarError(env::VarError),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 50 -     VarError(env::VarError),
[INFO] [stdout] 50 +     VarError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/shell.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |     PromptError(prompt::Error),
[INFO] [stdout]    |     ----------- ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 52 -     PromptError(prompt::Error),
[INFO] [stdout] 52 +     PromptError(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::os::unix::process::CommandExt::exec` that must be used
[INFO] [stdout]   --> src/command/builtin/exec.rs:23:13
[INFO] [stdout]    |
[INFO] [stdout] 23 | /             process::Command::new(path)
[INFO] [stdout] 24 | |                 .args(args.iter().skip(1))
[INFO] [stdout] 25 | |                 .envs(env.exported_vars())
[INFO] [stdout] 26 | |                 .current_dir(env.working_directory())
[INFO] [stdout] 27 | |                 .exec();
[INFO] [stdout]    | |_______________________^
[INFO] [stdout]    |
[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] 23 |             let _ = process::Command::new(path)
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: feature `fn_traits` is declared but not used
[INFO] [stdout]  --> src/main.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![feature(fn_traits)]
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_features)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.74s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.4.0, nom v4.0.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "28817025ba2cdb683b77fd0ea3e1624dc8702139c61a2a10392fa7815a07c095", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28817025ba2cdb683b77fd0ea3e1624dc8702139c61a2a10392fa7815a07c095", kill_on_drop: false }`
[INFO] [stdout] 28817025ba2cdb683b77fd0ea3e1624dc8702139c61a2a10392fa7815a07c095
