[INFO] cloning repository imondrag/toy_os [INFO] running `"git" "clone" "--bare" "git://github.com/imondrag/toy_os.git" "work/cache/sources/gh/imondrag/toy_os"` [INFO] [stderr] Cloning into bare repository 'work/cache/sources/gh/imondrag/toy_os'... [INFO] running `"git" "clone" "work/cache/sources/gh/imondrag/toy_os" "work/ex/pr-58899/sources/master#c0086b9e8972fef9fd4af24bae20d45021ed06c6/gh/imondrag/toy_os"` [INFO] [stderr] Cloning into 'work/ex/pr-58899/sources/master#c0086b9e8972fef9fd4af24bae20d45021ed06c6/gh/imondrag/toy_os'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/imondrag/toy_os" "work/ex/pr-58899/sources/try#290ac7b29f41ff9fa5232f9a1116ea71a3501063/gh/imondrag/toy_os"` [INFO] [stderr] Cloning into 'work/ex/pr-58899/sources/try#290ac7b29f41ff9fa5232f9a1116ea71a3501063/gh/imondrag/toy_os'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 08d34b5ca9700f2d708a7498175e7f1609391cff [INFO] sha for GitHub repo imondrag/toy_os: 08d34b5ca9700f2d708a7498175e7f1609391cff [INFO] validating manifest of imondrag/toy_os on toolchain master#c0086b9e8972fef9fd4af24bae20d45021ed06c6 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c0086b9e8972fef9fd4af24bae20d45021ed06c6-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of imondrag/toy_os on toolchain try#290ac7b29f41ff9fa5232f9a1116ea71a3501063 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+290ac7b29f41ff9fa5232f9a1116ea71a3501063-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing imondrag/toy_os [INFO] finished frobbing imondrag/toy_os [INFO] frobbed toml for imondrag/toy_os written to work/ex/pr-58899/sources/master#c0086b9e8972fef9fd4af24bae20d45021ed06c6/gh/imondrag/toy_os/Cargo.toml [INFO] started frobbing imondrag/toy_os [INFO] finished frobbing imondrag/toy_os [INFO] frobbed toml for imondrag/toy_os written to work/ex/pr-58899/sources/try#290ac7b29f41ff9fa5232f9a1116ea71a3501063/gh/imondrag/toy_os/Cargo.toml [INFO] crate imondrag/toy_os has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+c0086b9e8972fef9fd4af24bae20d45021ed06c6-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded bootloader v0.3.11 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+290ac7b29f41ff9fa5232f9a1116ea71a3501063-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking imondrag/toy_os against try#290ac7b29f41ff9fa5232f9a1116ea71a3501063 for pr-58899 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-58899/worker-4/try#290ac7b29f41ff9fa5232f9a1116ea71a3501063:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-58899/sources/try#290ac7b29f41ff9fa5232f9a1116ea71a3501063/gh/imondrag/toy_os:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+290ac7b29f41ff9fa5232f9a1116ea71a3501063-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 4ac09f4e083bfb196a9cf1c6665bbe91003708010d29d29ce19887ddd8550126 [INFO] running `"docker" "start" "-a" "4ac09f4e083bfb196a9cf1c6665bbe91003708010d29d29ce19887ddd8550126"` [INFO] [stderr] Checking ux v0.1.3 [INFO] [stderr] Checking nodrop v0.1.13 [INFO] [stderr] Checking spin v0.4.10 [INFO] [stderr] Checking font8x8 v0.2.4 [INFO] [stderr] Checking cpuio v0.2.0 [INFO] [stderr] Checking volatile v0.2.5 [INFO] [stderr] Checking pc-keyboard v0.3.1 [INFO] [stderr] Checking array-init v0.0.4 [INFO] [stderr] Checking pic8259_simple v0.1.1 [INFO] [stderr] Checking lazy_static v1.2.0 [INFO] [stderr] Compiling rand v0.4.3 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Compiling skeptic v0.5.0 [INFO] [stderr] Compiling fixedvec v0.2.3 [INFO] [stderr] Checking x86_64 v0.2.14 [INFO] [stderr] Checking x86_64 v0.3.4 [INFO] [stderr] Checking uart_16550 v0.1.0 [INFO] [stderr] Checking bootloader v0.3.11 [INFO] [stderr] Checking toy_os v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused variable: `stack_frame` [INFO] [stderr] --> src/interrupts.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 91 | stack_frame: &mut ExceptionStackFrame, [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_stack_frame` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `TIMER_INTERRUPT_ID` [INFO] [stderr] --> src/interrupts.rs:11:1 [INFO] [stderr] | [INFO] [stderr] 11 | const TIMER_INTERRUPT_ID: u8 = PIC1_OFFSET; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `timer_interrupt_handler` [INFO] [stderr] --> src/interrupts.rs:90:1 [INFO] [stderr] | [INFO] [stderr] 90 | / extern "x86-interrupt" fn timer_interrupt_handler( [INFO] [stderr] 91 | | stack_frame: &mut ExceptionStackFrame, [INFO] [stderr] 92 | | ) { [INFO] [stderr] 93 | | write!(Writer, "."); [INFO] [stderr] 94 | | unsafe { PICS.lock().notify_end_of_interrupt(TIMER_INTERRUPT_ID) } [INFO] [stderr] 95 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: unused `core::result::Result` that must be used [INFO] [stderr] --> src/interrupts.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | writeln!(Writer, "\n\nEXCEPTION: BREAKPOINT"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `core::result::Result` that must be used [INFO] [stderr] --> src/interrupts.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | writeln!(Writer, "{:#?}", stack_frame); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `core::result::Result` that must be used [INFO] [stderr] --> src/interrupts.rs:84:5 [INFO] [stderr] | [INFO] [stderr] 84 | writeln!(Writer, "\n\nEXCEPTION: DOUBLE FAULT"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `core::result::Result` that must be used [INFO] [stderr] --> src/interrupts.rs:85:5 [INFO] [stderr] | [INFO] [stderr] 85 | writeln!(Writer, "{:#?}", stack_frame); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `core::result::Result` that must be used [INFO] [stderr] --> src/interrupts.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | writeln!(Writer, "ERROR_CODE: {:#x}", error_code); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `core::result::Result` that must be used [INFO] [stderr] --> src/interrupts.rs:93:5 [INFO] [stderr] | [INFO] [stderr] 93 | write!(Writer, "."); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `core::result::Result` that must be used [INFO] [stderr] --> src/interrupts.rs:115:13 [INFO] [stderr] | [INFO] [stderr] 115 | / match key { [INFO] [stderr] 116 | | DecodedKey::Unicode(character) => write!(Writer, "{}", character), [INFO] [stderr] 117 | | DecodedKey::RawKey(key) => write!(Writer, "{:?}", key), [INFO] [stderr] 118 | | }; [INFO] [stderr] | |______________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `port3D4` should have a snake case name [INFO] [stderr] --> src/vga_buffer/mod.rs:111:17 [INFO] [stderr] | [INFO] [stderr] 111 | let mut port3D4 = Port::new(0x3D4); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `port3_d4` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable `port3D5` should have a snake case name [INFO] [stderr] --> src/vga_buffer/mod.rs:112:17 [INFO] [stderr] | [INFO] [stderr] 112 | let mut port3D5 = Port::new(0x3D5); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `port3_d5` [INFO] [stderr] [INFO] [stderr] error[E0277]: the trait bound `x86_64::registers::model_specific::Efer: core::fmt::LowerHex` is not satisfied [INFO] [stderr] --> src/main.rs:30:50 [INFO] [stderr] | [INFO] [stderr] 30 | writeln!(Writer, "These are my flags: {:x}", msr); [INFO] [stderr] | ^^^ the trait `core::fmt::LowerHex` is not implemented for `x86_64::registers::model_specific::Efer` [INFO] [stderr] | [INFO] [stderr] = note: required by `core::fmt::LowerHex::fmt` [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0277`. [INFO] [stderr] error: Could not compile `toy_os`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: build failed [INFO] running `"docker" "inspect" "4ac09f4e083bfb196a9cf1c6665bbe91003708010d29d29ce19887ddd8550126"` [INFO] running `"docker" "rm" "-f" "4ac09f4e083bfb196a9cf1c6665bbe91003708010d29d29ce19887ddd8550126"` [INFO] [stdout] 4ac09f4e083bfb196a9cf1c6665bbe91003708010d29d29ce19887ddd8550126