[INFO] fetching crate fe_rtos 0.1.1...
[INFO] checking fe_rtos-0.1.1 against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] extracting crate fe_rtos 0.1.1 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate fe_rtos 0.1.1 on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate fe_rtos 0.1.1
[INFO] finished tweaking crates.io crate fe_rtos 0.1.1
[INFO] tweaked toml for crates.io crate fe_rtos 0.1.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded aligned v0.3.5
[INFO] [stderr]   Downloaded cty v0.1.5
[INFO] [stderr]   Downloaded cstr_core v0.1.2
[INFO] [stderr]   Downloaded fe_osi v0.1.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 539f67a4db4b17e453c34d44be6505e09aa4aabc7f07b649db2008f3fc3c6e5c
[INFO] running `Command { std: "docker" "start" "-a" "539f67a4db4b17e453c34d44be6505e09aa4aabc7f07b649db2008f3fc3c6e5c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "539f67a4db4b17e453c34d44be6505e09aa4aabc7f07b649db2008f3fc3c6e5c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "539f67a4db4b17e453c34d44be6505e09aa4aabc7f07b649db2008f3fc3c6e5c", kill_on_drop: false }`
[INFO] [stdout] 539f67a4db4b17e453c34d44be6505e09aa4aabc7f07b649db2008f3fc3c6e5c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3d8c8adf647313a725339900fa23a6772a3c072a0674c2c4d215649d6ccc9ffe
[INFO] running `Command { std: "docker" "start" "-a" "3d8c8adf647313a725339900fa23a6772a3c072a0674c2c4d215649d6ccc9ffe", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling fe_osi v0.1.1
[INFO] [stderr]     Checking cty v0.1.5
[INFO] [stderr]    Compiling fe_rtos v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking cstr_core v0.1.2
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stdout] error: the `#[alloc_error_handler]` in fe_osi conflicts with allocation error handler in: std
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl`
[INFO] [stdout]    --> src/interrupt.rs:92:1
[INFO] [stdout]     |
[INFO] [stdout] 92  | / fn panic(panic_info: &PanicInfo<'_>) -> ! {
[INFO] [stdout] 93  | |     let pid = unsafe { get_cur_task().pid };
[INFO] [stdout] 94  | |
[INFO] [stdout] 95  | |     unsafe {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |     loop {}
[INFO] [stdout] 118 | | }
[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/30f74ff0dc4d66debc8b50724c446f817e5f75f4/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-eb900a948ffb2e3b.rlib
[INFO] [stdout]     = note: second definition in the local crate (`fe_rtos`)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_btree_new` has been partially stabilized since 1.66.0 and is succeeded by the feature `const_btree_len`
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_btree_new)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] help: if you are using features which are still unstable, change to using `const_btree_len`
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_btree_len)]
[INFO] [stdout]   |            ~~~~~~~~~~~~~~~
[INFO] [stdout] help: if you are using features which are now stable, remove this line
[INFO] [stdout]   |
[INFO] [stdout] 2 - #![feature(const_btree_new)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `fe_rtos` (lib test) due to 3 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/fe_alloc.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 215 |     HEAP = &mut _sheap as *mut u8;
[INFO] [stdout]     |            ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 215 |     HEAP = addr_of_mut!(_sheap) as *mut u8;
[INFO] [stdout]     |            ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/fe_alloc.rs:216:18
[INFO] [stdout]     |
[INFO] [stdout] 216 |     HEAP_SIZE = (&mut _eheap as *mut u8 as usize) - (HEAP as usize);
[INFO] [stdout]     |                  ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 216 |     HEAP_SIZE = (addr_of_mut!(_eheap) as *mut u8 as usize) - (HEAP as usize);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = &_ebss as *const u8 as usize - &_sbss as *const u8 as usize;
[INFO] [stdout]    |                 ^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = addr_of!(_ebss) as *const u8 as usize - &_sbss as *const u8 as usize;
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:74:48
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = &_ebss as *const u8 as usize - &_sbss as *const u8 as usize;
[INFO] [stdout]    |                                                ^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = &_ebss as *const u8 as usize - addr_of!(_sbss) as *const u8 as usize;
[INFO] [stdout]    |                                                ~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ptr::write_bytes(&mut _sbss as *mut u8, 0, count);
[INFO] [stdout]    |                      ^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ptr::write_bytes(addr_of_mut!(_sbss) as *mut u8, 0, count);
[INFO] [stdout]    |                      ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = &_edata as *const u8 as usize - &_sdata as *const u8 as usize;
[INFO] [stdout]    |                 ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = addr_of!(_edata) as *const u8 as usize - &_sdata as *const u8 as usize;
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:77:49
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = &_edata as *const u8 as usize - &_sdata as *const u8 as usize;
[INFO] [stdout]    |                                                 ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = &_edata as *const u8 as usize - addr_of!(_sdata) as *const u8 as usize;
[INFO] [stdout]    |                                                 ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:78:53
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ptr::copy_nonoverlapping(&_sidata as *const u8, &mut _sdata as *mut u8, count);
[INFO] [stdout]    |                                                     ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ptr::copy_nonoverlapping(&_sidata as *const u8, addr_of_mut!(_sdata) as *mut u8, count);
[INFO] [stdout]    |                                                     ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |             if self.count.compare_and_swap(0, 1, Ordering::SeqCst) == 0 {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:39:23
[INFO] [stdout]    |
[INFO] [stdout] 39 |         if self.count.compare_and_swap(0, 1, Ordering::SeqCst) == 0 {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/task/task_state.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |         if !self.in_use.compare_and_swap(false, true, Ordering::SeqCst) {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/task/task_state.rs:38:25
[INFO] [stdout]    |
[INFO] [stdout] 38 |         if !self.in_use.compare_and_swap(false, true, Ordering::SeqCst) {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicU32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/task/tick.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |                 .compare_and_swap(old_msb, old_msb + 1, Ordering::SeqCst);
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 |     match &mut CUR_TASK {
[INFO] [stdout]    |           ^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 85 |     match addr_of_mut!(CUR_TASK) {
[INFO] [stdout]    |           ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |         None => &mut PLACEHOLDER_TASK,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 87 |         None => addr_of_mut!(PLACEHOLDER_TASK),
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:93:11
[INFO] [stdout]    |
[INFO] [stdout] 93 |     match &CUR_TASK {
[INFO] [stdout]    |           ^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 93 |     match addr_of!(CUR_TASK) {
[INFO] [stdout]    |           ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:95:17
[INFO] [stdout]    |
[INFO] [stdout] 95 |         None => &PLACEHOLDER_TASK,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 95 |         None => addr_of!(PLACEHOLDER_TASK),
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 |     match &NEXT_TASK {
[INFO] [stdout]     |           ^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 106 |     match addr_of!(NEXT_TASK) {
[INFO] [stdout]     |           ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:108:17
[INFO] [stdout]     |
[INFO] [stdout] 108 |         None => &PLACEHOLDER_TASK,
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 108 |         None => addr_of!(PLACEHOLDER_TASK),
[INFO] [stdout]     |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:113:30
[INFO] [stdout]     |
[INFO] [stdout] 113 |     let default_task = match &KERNEL_TASK {
[INFO] [stdout]     |                              ^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 113 |     let default_task = match addr_of!(KERNEL_TASK) {
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:120:23
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let count = match &NEXT_TASK {
[INFO] [stdout]     |                       ^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let count = match addr_of!(NEXT_TASK) {
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/fe_alloc.rs:275:13
[INFO] [stdout]     |
[INFO] [stdout] 275 |             Box::from_raw(ALLOC_LIST[i].ptr);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 275 |             let _ = Box::from_raw(ALLOC_LIST[i].ptr);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3d8c8adf647313a725339900fa23a6772a3c072a0674c2c4d215649d6ccc9ffe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3d8c8adf647313a725339900fa23a6772a3c072a0674c2c4d215649d6ccc9ffe", kill_on_drop: false }`
[INFO] [stdout] 3d8c8adf647313a725339900fa23a6772a3c072a0674c2c4d215649d6ccc9ffe
[INFO] checking fe_rtos-0.1.1 against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] extracting crate fe_rtos 0.1.1 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate fe_rtos 0.1.1 on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate fe_rtos 0.1.1
[INFO] finished tweaking crates.io crate fe_rtos 0.1.1
[INFO] tweaked toml for crates.io crate fe_rtos 0.1.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e480c492b0afbe6068c0391a38fb5e4bf9de9d1855b1108c4d9aaed5549d9b2d
[INFO] running `Command { std: "docker" "start" "-a" "e480c492b0afbe6068c0391a38fb5e4bf9de9d1855b1108c4d9aaed5549d9b2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e480c492b0afbe6068c0391a38fb5e4bf9de9d1855b1108c4d9aaed5549d9b2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e480c492b0afbe6068c0391a38fb5e4bf9de9d1855b1108c4d9aaed5549d9b2d", kill_on_drop: false }`
[INFO] [stdout] e480c492b0afbe6068c0391a38fb5e4bf9de9d1855b1108c4d9aaed5549d9b2d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c856dcf54c7f8e086e6f5a12a581b16b81a85e0c10f0aad85eef98f0b2e8d6e5
[INFO] running `Command { std: "docker" "start" "-a" "c856dcf54c7f8e086e6f5a12a581b16b81a85e0c10f0aad85eef98f0b2e8d6e5", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling fe_osi v0.1.1
[INFO] [stderr]     Checking cty v0.1.5
[INFO] [stderr]    Compiling fe_rtos v0.1.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking cstr_core v0.1.2
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stdout] error: the `#[alloc_error_handler]` in fe_osi conflicts with allocation error handler in: std
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl`
[INFO] [stdout]    --> src/interrupt.rs:92:1
[INFO] [stdout]     |
[INFO] [stdout] 92  | / fn panic(panic_info: &PanicInfo<'_>) -> ! {
[INFO] [stdout] 93  | |     let pid = unsafe { get_cur_task().pid };
[INFO] [stdout] 94  | |
[INFO] [stdout] 95  | |     unsafe {
[INFO] [stdout] ...   |
[INFO] [stdout] 117 | |     loop {}
[INFO] [stdout] 118 | | }
[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/72eda894eb3548c7ba774079ce0afab42958d4ee/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-eb900a948ffb2e3b.rlib
[INFO] [stdout]     = note: second definition in the local crate (`fe_rtos`)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_btree_new` has been partially stabilized since 1.66.0 and is succeeded by the feature `const_btree_len`
[INFO] [stdout]  --> src/lib.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_btree_new)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] help: if you are using features which are still unstable, change to using `const_btree_len`
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_btree_len)]
[INFO] [stdout]   |            ~~~~~~~~~~~~~~~
[INFO] [stdout] help: if you are using features which are now stable, remove this line
[INFO] [stdout]   |
[INFO] [stdout] 2 - #![feature(const_btree_new)]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `fe_rtos` (lib test) due to 3 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/fe_alloc.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 215 |     HEAP = &mut _sheap as *mut u8;
[INFO] [stdout]     |            ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` on by default
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 215 |     HEAP = addr_of_mut!(_sheap) as *mut u8;
[INFO] [stdout]     |            ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]    --> src/fe_alloc.rs:216:18
[INFO] [stdout]     |
[INFO] [stdout] 216 |     HEAP_SIZE = (&mut _eheap as *mut u8 as usize) - (HEAP as usize);
[INFO] [stdout]     |                  ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 216 |     HEAP_SIZE = (addr_of_mut!(_eheap) as *mut u8 as usize) - (HEAP as usize);
[INFO] [stdout]     |                  ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:74:17
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = &_ebss as *const u8 as usize - &_sbss as *const u8 as usize;
[INFO] [stdout]    |                 ^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = addr_of!(_ebss) as *const u8 as usize - &_sbss as *const u8 as usize;
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:74:48
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = &_ebss as *const u8 as usize - &_sbss as *const u8 as usize;
[INFO] [stdout]    |                                                ^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let count = &_ebss as *const u8 as usize - addr_of!(_sbss) as *const u8 as usize;
[INFO] [stdout]    |                                                ~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:75:22
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ptr::write_bytes(&mut _sbss as *mut u8, 0, count);
[INFO] [stdout]    |                      ^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ptr::write_bytes(addr_of_mut!(_sbss) as *mut u8, 0, count);
[INFO] [stdout]    |                      ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = &_edata as *const u8 as usize - &_sdata as *const u8 as usize;
[INFO] [stdout]    |                 ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = addr_of!(_edata) as *const u8 as usize - &_sdata as *const u8 as usize;
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:77:49
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = &_edata as *const u8 as usize - &_sdata as *const u8 as usize;
[INFO] [stdout]    |                                                 ^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let count = &_edata as *const u8 as usize - addr_of!(_sdata) as *const u8 as usize;
[INFO] [stdout]    |                                                 ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/interrupt.rs:78:53
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ptr::copy_nonoverlapping(&_sidata as *const u8, &mut _sdata as *mut u8, count);
[INFO] [stdout]    |                                                     ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 78 |     ptr::copy_nonoverlapping(&_sidata as *const u8, addr_of_mut!(_sdata) as *mut u8, count);
[INFO] [stdout]    |                                                     ~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:22:27
[INFO] [stdout]    |
[INFO] [stdout] 22 |             if self.count.compare_and_swap(0, 1, Ordering::SeqCst) == 0 {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/spinlock.rs:39:23
[INFO] [stdout]    |
[INFO] [stdout] 39 |         if self.count.compare_and_swap(0, 1, Ordering::SeqCst) == 0 {
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/task/task_state.rs:29:25
[INFO] [stdout]    |
[INFO] [stdout] 29 |         if !self.in_use.compare_and_swap(false, true, Ordering::SeqCst) {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/task/task_state.rs:38:25
[INFO] [stdout]    |
[INFO] [stdout] 38 |         if !self.in_use.compare_and_swap(false, true, Ordering::SeqCst) {
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::sync::atomic::AtomicU32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]   --> src/task/tick.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |                 .compare_and_swap(old_msb, old_msb + 1, Ordering::SeqCst);
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:85:11
[INFO] [stdout]    |
[INFO] [stdout] 85 |     match &mut CUR_TASK {
[INFO] [stdout]    |           ^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 85 |     match addr_of_mut!(CUR_TASK) {
[INFO] [stdout]    |           ~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |         None => &mut PLACEHOLDER_TASK,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this mutable reference has lifetime `'static`, but if the static gets accessed (read or written) by any other means, or any other reference is created, then any further use of this mutable reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of_mut!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 87 |         None => addr_of_mut!(PLACEHOLDER_TASK),
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:93:11
[INFO] [stdout]    |
[INFO] [stdout] 93 |     match &CUR_TASK {
[INFO] [stdout]    |           ^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 93 |     match addr_of!(CUR_TASK) {
[INFO] [stdout]    |           ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]   --> src/task/mod.rs:95:17
[INFO] [stdout]    |
[INFO] [stdout] 95 |         None => &PLACEHOLDER_TASK,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]    = note: this will be a hard error in the 2024 edition
[INFO] [stdout]    = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 95 |         None => addr_of!(PLACEHOLDER_TASK),
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 |     match &NEXT_TASK {
[INFO] [stdout]     |           ^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 106 |     match addr_of!(NEXT_TASK) {
[INFO] [stdout]     |           ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:108:17
[INFO] [stdout]     |
[INFO] [stdout] 108 |         None => &PLACEHOLDER_TASK,
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 108 |         None => addr_of!(PLACEHOLDER_TASK),
[INFO] [stdout]     |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:113:30
[INFO] [stdout]     |
[INFO] [stdout] 113 |     let default_task = match &KERNEL_TASK {
[INFO] [stdout]     |                              ^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 113 |     let default_task = match addr_of!(KERNEL_TASK) {
[INFO] [stdout]     |                              ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static is discouraged
[INFO] [stdout]    --> src/task/mod.rs:120:23
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let count = match &NEXT_TASK {
[INFO] [stdout]     |                       ^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see issue #114447 <https://github.com/rust-lang/rust/issues/114447>
[INFO] [stdout]     = note: this will be a hard error in the 2024 edition
[INFO] [stdout]     = note: this shared reference has lifetime `'static`, but if the static ever gets mutated, or a mutable reference is created, then any further use of this shared reference is Undefined Behavior
[INFO] [stdout] help: use `addr_of!` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let count = match addr_of!(NEXT_TASK) {
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Box::<T>::from_raw` that must be used
[INFO] [stdout]    --> src/fe_alloc.rs:275:13
[INFO] [stdout]     |
[INFO] [stdout] 275 |             Box::from_raw(ALLOC_LIST[i].ptr);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: call `drop(Box::from_raw(ptr))` if you intend to drop the `Box`
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 275 |             let _ = Box::from_raw(ALLOC_LIST[i].ptr);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c856dcf54c7f8e086e6f5a12a581b16b81a85e0c10f0aad85eef98f0b2e8d6e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c856dcf54c7f8e086e6f5a12a581b16b81a85e0c10f0aad85eef98f0b2e8d6e5", kill_on_drop: false }`
[INFO] [stdout] c856dcf54c7f8e086e6f5a12a581b16b81a85e0c10f0aad85eef98f0b2e8d6e5
