[INFO] cloning repository https://github.com/DreamLarva/learn-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DreamLarva/learn-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDreamLarva%2Flearn-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDreamLarva%2Flearn-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e9546aa1f7b7a83540397d0339249300ffa14b63 [INFO] checking DreamLarva/learn-rust against master#0d37dca25a51fb900a402c94c8818ad1c2789e30 for pr-77526 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDreamLarva%2Flearn-rust" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/DreamLarva/learn-rust on toolchain 0d37dca25a51fb900a402c94c8818ad1c2789e30 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+0d37dca25a51fb900a402c94c8818ad1c2789e30" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/DreamLarva/learn-rust [INFO] finished tweaking git repo https://github.com/DreamLarva/learn-rust [INFO] tweaked toml for git repo https://github.com/DreamLarva/learn-rust written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/DreamLarva/learn-rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+0d37dca25a51fb900a402c94c8818ad1c2789e30" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+0d37dca25a51fb900a402c94c8818ad1c2789e30" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 292d0a32c29b55caeebab2f4680a4cfe6fc9b0c1d9963de3a92c364cbde1bd8f [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "292d0a32c29b55caeebab2f4680a4cfe6fc9b0c1d9963de3a92c364cbde1bd8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "292d0a32c29b55caeebab2f4680a4cfe6fc9b0c1d9963de3a92c364cbde1bd8f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "292d0a32c29b55caeebab2f4680a4cfe6fc9b0c1d9963de3a92c364cbde1bd8f", kill_on_drop: false }` [INFO] [stdout] 292d0a32c29b55caeebab2f4680a4cfe6fc9b0c1d9963de3a92c364cbde1bd8f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+0d37dca25a51fb900a402c94c8818ad1c2789e30" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4a7c127b58928e0eb239d6b0cd418fa90e3799c7d1d08915781b20b2b0c33b96 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "4a7c127b58928e0eb239d6b0cd418fa90e3799c7d1d08915781b20b2b0c33b96", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Checking adder v0.1.0 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking the_rust_programming_language v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `hosting` is imported redundantly [INFO] [stdout] --> src/lib.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | use crate::front_of_house::hosting; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub use crate::front_of_house::hosting; [INFO] [stdout] | ------------------------------ the item `hosting` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt` [INFO] [stdout] --> src/lib.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | use std::fmt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Result as IoResult` [INFO] [stdout] --> src/lib.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | use std::io::Result as IoResult; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `borrow`, `cmp::Ordering` [INFO] [stdout] --> src/lib.rs:120:11 [INFO] [stdout] | [INFO] [stdout] 120 | use std::{borrow, cmp::Ordering}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> src/lib.rs:124:15 [INFO] [stdout] | [INFO] [stdout] 124 | use std::io::{self, Write}; // use io 本身 和 io::Write [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::*` [INFO] [stdout] --> src/lib.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | use std::collections::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `order1` [INFO] [stdout] --> src/lib.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let order1 = back_of_house::Appetizer::Soup; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_order1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `order2` [INFO] [stdout] --> src/lib.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let order2 = back_of_house::Appetizer::Salad; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_order2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `hosting` is imported redundantly [INFO] [stdout] --> src/lib.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | use crate::front_of_house::hosting; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub use crate::front_of_house::hosting; [INFO] [stdout] | ------------------------------ the item `hosting` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt` [INFO] [stdout] --> src/lib.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | use std::fmt; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Result as IoResult` [INFO] [stdout] --> src/lib.rs:106:5 [INFO] [stdout] | [INFO] [stdout] 106 | use std::io::Result as IoResult; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `borrow`, `cmp::Ordering` [INFO] [stdout] --> src/lib.rs:120:11 [INFO] [stdout] | [INFO] [stdout] 120 | use std::{borrow, cmp::Ordering}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> src/lib.rs:124:15 [INFO] [stdout] | [INFO] [stdout] 124 | use std::io::{self, Write}; // use io 本身 和 io::Write [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::*` [INFO] [stdout] --> src/lib.rs:127:5 [INFO] [stdout] | [INFO] [stdout] 127 | use std::collections::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `serve_order` [INFO] [stdout] --> src/lib.rs:15:4 [INFO] [stdout] | [INFO] [stdout] 15 | fn serve_order() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `main` [INFO] [stdout] --> src/lib.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn main() {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fix_incorrect_order` [INFO] [stdout] --> src/lib.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | fn fix_incorrect_order() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cook_order` [INFO] [stdout] --> src/lib.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | fn cook_order() {} [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `seasonal_fruit` [INFO] [stdout] --> src/lib.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | seasonal_fruit: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Appetizer` [INFO] [stdout] --> src/lib.rs:49:14 [INFO] [stdout] | [INFO] [stdout] 49 | pub enum Appetizer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eat_at_restaurant` [INFO] [stdout] --> src/lib.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn eat_at_restaurant() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `order1` [INFO] [stdout] --> src/lib.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | let order1 = back_of_house::Appetizer::Soup; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_order1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `order2` [INFO] [stdout] --> src/lib.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let order2 = back_of_house::Appetizer::Salad; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_order2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `serve_order` [INFO] [stdout] --> src/lib.rs:15:4 [INFO] [stdout] | [INFO] [stdout] 15 | fn serve_order() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fix_incorrect_order` [INFO] [stdout] --> src/lib.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | fn fix_incorrect_order() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `cook_order` [INFO] [stdout] --> src/lib.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 27 | fn cook_order() {} [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `seasonal_fruit` [INFO] [stdout] --> src/lib.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | seasonal_fruit: String, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Appetizer` [INFO] [stdout] --> src/lib.rs:49:14 [INFO] [stdout] | [INFO] [stdout] 49 | pub enum Appetizer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `eat_at_restaurant` [INFO] [stdout] --> src/lib.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn eat_at_restaurant() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `macos` in `os` [INFO] [stdout] --> src/ch06.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use std::os::macos::raw::stat; [INFO] [stdout] | ^^^^^ could not find `macos` in `os` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: could not find `macos` in `os` [INFO] [stdout] --> src/ch06.rs:3:14 [INFO] [stdout] | [INFO] [stdout] 3 | use std::os::macos::raw::stat; [INFO] [stdout] | ^^^^^ could not find `macos` in `os` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `self` [INFO] [stdout] --> src/main.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::ErrorKind` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::ErrorKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Add`, `Index` [INFO] [stdout] --> src/main.rs:9:16 [INFO] [stdout] | [INFO] [stdout] 9 | use std::ops::{Add, Index}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/ch03.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | /** 基本类型 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 7 | // 直接的赋值能够直接推断出值的类型 [INFO] [stdout] 8 | let a = 1; // 默认为 i32 [INFO] [stdout] | ---------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/ch03.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 77 | /** 符合类型 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | let _tup1: (i32, f64, u8) = (500, 6.4, 1); // 可以设置多种类型 [INFO] [stdout] | ------------------------------------------ rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/ch03.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | /// 方法只要在作用域中声明 就能够调用(不用先声明在前) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 150 | fun_1(); [INFO] [stdout] | ------- rustdoc does not generate documentation for expressions [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around pattern [INFO] [stdout] --> src/ch05.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | let (x) = &origin; [INFO] [stdout] | ^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/ch07/mod.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | use std::collections::HashMap; // 引入HashMap 的习惯用法 而不是 use std::collections; 在使用 collections::HashMap [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Result` [INFO] [stdout] --> src/ch07/mod.rs:122:13 [INFO] [stdout] | [INFO] [stdout] 122 | use std::fmt::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Result as IoResult` [INFO] [stdout] --> src/ch07/mod.rs:123:13 [INFO] [stdout] | [INFO] [stdout] 123 | use std::io::Result as IoResult; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/ch07/mod.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/ch07/mod.rs:165:13 [INFO] [stdout] | [INFO] [stdout] 165 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cmp::Ordering`, `io` [INFO] [stdout] --> src/ch07/mod.rs:169:19 [INFO] [stdout] | [INFO] [stdout] 169 | use std::{cmp::Ordering, io}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/ch07/mod.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/ch07/mod.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> src/ch07/mod.rs:179:23 [INFO] [stdout] | [INFO] [stdout] 179 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::*` [INFO] [stdout] --> src/ch07/mod.rs:185:13 [INFO] [stdout] | [INFO] [stdout] 185 | use std::collections::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `self` [INFO] [stdout] --> src/ch08.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/ch08.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::ErrorKind` [INFO] [stdout] --> src/ch08.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::ErrorKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `HashMap` is imported redundantly [INFO] [stdout] --> src/ch08.rs:244:13 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ------------------------- the item `HashMap` is already imported here [INFO] [stdout] ... [INFO] [stdout] 244 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/ch09.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Future` [INFO] [stdout] --> src/ch09.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::future::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `setup` [INFO] [stdout] --> tests/common/mod.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn setup() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `self` [INFO] [stdout] --> src/main.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::ErrorKind` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::ErrorKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Add`, `Index` [INFO] [stdout] --> src/main.rs:9:16 [INFO] [stdout] | [INFO] [stdout] 9 | use std::ops::{Add, Index}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/ch03.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | /** 基本类型 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 7 | // 直接的赋值能够直接推断出值的类型 [INFO] [stdout] 8 | let a = 1; // 默认为 i32 [INFO] [stdout] | ---------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/ch03.rs:77:5 [INFO] [stdout] | [INFO] [stdout] 77 | /** 符合类型 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | let _tup1: (i32, f64, u8) = (500, 6.4, 1); // 可以设置多种类型 [INFO] [stdout] | ------------------------------------------ rustdoc does not generate documentation for statements [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/ch03.rs:149:5 [INFO] [stdout] | [INFO] [stdout] 149 | /// 方法只要在作用域中声明 就能够调用(不用先声明在前) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 150 | fun_1(); [INFO] [stdout] | ------- rustdoc does not generate documentation for expressions [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around pattern [INFO] [stdout] --> src/ch05.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | let (x) = &origin; [INFO] [stdout] | ^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/ch07/mod.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | use std::collections::HashMap; // 引入HashMap 的习惯用法 而不是 use std::collections; 在使用 collections::HashMap [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fmt::Result` [INFO] [stdout] --> src/ch07/mod.rs:122:13 [INFO] [stdout] | [INFO] [stdout] 122 | use std::fmt::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Result as IoResult` [INFO] [stdout] --> src/ch07/mod.rs:123:13 [INFO] [stdout] | [INFO] [stdout] 123 | use std::io::Result as IoResult; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/ch07/mod.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/ch07/mod.rs:165:13 [INFO] [stdout] | [INFO] [stdout] 165 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cmp::Ordering`, `io` [INFO] [stdout] --> src/ch07/mod.rs:169:19 [INFO] [stdout] | [INFO] [stdout] 169 | use std::{cmp::Ordering, io}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/ch07/mod.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/ch07/mod.rs:175:13 [INFO] [stdout] | [INFO] [stdout] 175 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> src/ch07/mod.rs:179:23 [INFO] [stdout] | [INFO] [stdout] 179 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::*` [INFO] [stdout] --> src/ch07/mod.rs:185:13 [INFO] [stdout] | [INFO] [stdout] 185 | use std::collections::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `self` [INFO] [stdout] --> src/ch08.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/ch08.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::ErrorKind` [INFO] [stdout] --> src/ch08.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::ErrorKind; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `HashMap` is imported redundantly [INFO] [stdout] --> src/ch08.rs:244:13 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ------------------------- the item `HashMap` is already imported here [INFO] [stdout] ... [INFO] [stdout] 244 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/ch09.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Future` [INFO] [stdout] --> src/ch09.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::future::Future; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/ch08.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/ch08.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `the_rust_programming_language` [INFO] [stdout] error: aborting due to previous error; 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "4a7c127b58928e0eb239d6b0cd418fa90e3799c7d1d08915781b20b2b0c33b96", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4a7c127b58928e0eb239d6b0cd418fa90e3799c7d1d08915781b20b2b0c33b96", kill_on_drop: false }` [INFO] [stdout] 4a7c127b58928e0eb239d6b0cd418fa90e3799c7d1d08915781b20b2b0c33b96