[INFO] cloning repository https://github.com/shawtao/RustOS-v1 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/shawtao/RustOS-v1" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshawtao%2FRustOS-v1", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshawtao%2FRustOS-v1'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0ff877f3601319bb83cea6a95e6384737af0f61a [INFO] checking shawtao/RustOS-v1 against master#33fdb797f59421c7bbecaa4588ed5d7a31a9494a for pr-87190-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fshawtao%2FRustOS-v1" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/shawtao/RustOS-v1 on toolchain 33fdb797f59421c7bbecaa4588ed5d7a31a9494a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/shawtao/RustOS-v1 [INFO] finished tweaking git repo https://github.com/shawtao/RustOS-v1 [INFO] tweaked toml for git repo https://github.com/shawtao/RustOS-v1 written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/shawtao/RustOS-v1 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "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-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 666e06f53677486601e1fc4d99f57172252287871545b7137052c5fa406e3ea6 [INFO] running `Command { std: "docker" "start" "-a" "666e06f53677486601e1fc4d99f57172252287871545b7137052c5fa406e3ea6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "666e06f53677486601e1fc4d99f57172252287871545b7137052c5fa406e3ea6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "666e06f53677486601e1fc4d99f57172252287871545b7137052c5fa406e3ea6", kill_on_drop: false }` [INFO] [stdout] 666e06f53677486601e1fc4d99f57172252287871545b7137052c5fa406e3ea6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 489a97ffe998febecddd3cef33bb45b9402eaad8f374f2c447892d90cbe7e208 [INFO] running `Command { std: "docker" "start" "-a" "489a97ffe998febecddd3cef33bb45b9402eaad8f374f2c447892d90cbe7e208", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling x86_64 v0.14.4 [INFO] [stderr] Checking bit_field v0.9.0 [INFO] [stderr] Checking bitflags v0.4.0 [INFO] [stderr] Checking volatile v0.4.4 [INFO] [stderr] Checking rlibc v1.0.0 [INFO] [stderr] Checking bitflags v0.9.1 [INFO] [stderr] Checking volatile v0.2.7 [INFO] [stderr] Checking lock_api v0.4.4 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking multiboot2 v0.1.0 [INFO] [stderr] Checking spin v0.9.2 [INFO] [stderr] Checking x86_64-blog_os v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::memory::FrameAllocator` [INFO] [stdout] --> src/lib.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::memory::FrameAllocator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/vga_buffer.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | 0x20...0x7e | b'\n' => self.write_byte(byte), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::memory::FrameAllocator` [INFO] [stdout] --> src/lib.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::memory::FrameAllocator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/vga_buffer.rs:100:21 [INFO] [stdout] | [INFO] [stdout] 100 | 0x20...0x7e | b'\n' => self.write_byte(byte), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/memory/paging/entry.rs:34:1 [INFO] [stdout] | [INFO] [stdout] 34 | / bitflags! { [INFO] [stdout] 35 | | pub struct EntryFlags: u64 { [INFO] [stdout] 36 | | const PRESENT = 1 << 0; [INFO] [stdout] 37 | | const WRITABLE = 1 << 1; [INFO] [stdout] ... | [INFO] [stdout] 46 | | } [INFO] [stdout] 47 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `__impl_bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0152]: found duplicate lang item `eh_personality` [INFO] [stdout] --> src/lib.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | pub extern fn eh_personality() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the lang item is first defined in crate `panic_unwind` (which `std` depends on) [INFO] [stdout] = note: first definition in `panic_unwind` loaded from /opt/rustwide/rustup-home/toolchains/33fdb797f59421c7bbecaa4588ed5d7a31a9494a/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-4695c0f6311791db.rlib [INFO] [stdout] = note: second definition in the local crate (`x86_64_blog_os`) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl` [INFO] [stdout] --> src/lib.rs:58:1 [INFO] [stdout] | [INFO] [stdout] 58 | pub extern fn panic_fmt(info: &PanicInfo) -> ! { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the lang item is first defined in crate `std` (which `test` depends on) [INFO] [stdout] = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/33fdb797f59421c7bbecaa4588ed5d7a31a9494a/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-1dd6c19f0820d51d.rlib [INFO] [stdout] = note: second definition in the local crate (`x86_64_blog_os`) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `memory_map_tag` [INFO] [stdout] --> src/memory/mod.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | let memory_map_tag = boot_info.memory_map_tag() [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_memory_map_tag` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/memory/Area_frame_allocator.rs:50:36 [INFO] [stdout] | [INFO] [stdout] 50 | fn deallocate_frame(&mut self, frame: Frame) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0152`. [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/memory/paging/mod.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | let mut p3 = self.p4_mut().next_table_create(page.p4_index(), allocator); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/memory/paging/mod.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | let mut p2 = p3.next_table_create(page.p3_index(), allocator); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/memory/paging/mod.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 99 | let mut p1 = p2.next_table_create(page.p2_index(), allocator); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `x86_64-blog_os` due to 3 previous errors; 6 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: associated function is never used: `start_address` [INFO] [stdout] --> src/memory/paging/mod.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | fn start_address(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `map` [INFO] [stdout] --> src/memory/paging/mod.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 105 | pub fn map(&mut self, page: Page, flags: EntryFlags, allocator: &mut A) [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `identity_map` [INFO] [stdout] --> src/memory/paging/mod.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 112 | pub fn identity_map(&mut self, frame: Frame, flags:EntryFlags, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `unmap` [INFO] [stdout] --> src/memory/paging/mod.rs:120:8 [INFO] [stdout] | [INFO] [stdout] 120 | fn unmap(&mut self, page: Page, allocator: &mut A) [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Area_frame_allocator` should have a snake case name [INFO] [stdout] --> src/memory/mod.rs:1:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub mod Area_frame_allocator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `area_frame_allocator` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "489a97ffe998febecddd3cef33bb45b9402eaad8f374f2c447892d90cbe7e208", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "489a97ffe998febecddd3cef33bb45b9402eaad8f374f2c447892d90cbe7e208", kill_on_drop: false }` [INFO] [stdout] 489a97ffe998febecddd3cef33bb45b9402eaad8f374f2c447892d90cbe7e208