Fix compile error caused by updated Step::steps_between in Rust

This commit is contained in:
Marsman1996
2024-11-30 18:58:18 +08:00
committed by Tate, Hongliang Tian
parent 5e35704e38
commit 6d3bb5a9d0
10 changed files with 14 additions and 18 deletions

View File

@ -89,7 +89,7 @@ impl<const N: u16> Sub<u64> for BlockId<N> {
/// Implements the `Step` trait to iterate over `Range<Id>`.
impl<const N: u16> Step for BlockId<N> {
fn steps_between(start: &Self, end: &Self) -> Option<usize> {
fn steps_between(start: &Self, end: &Self) -> (usize, Option<usize>) {
u64::steps_between(&start.0, &end.0)
}

View File

@ -3,7 +3,6 @@
//! The framebuffer of Asterinas.
#![no_std]
#![deny(unsafe_code)]
#![feature(strict_provenance)]
extern crate alloc;

View File

@ -9,7 +9,6 @@
#![allow(incomplete_features)]
#![feature(btree_cursors)]
#![feature(btree_extract_if)]
#![feature(const_option)]
#![feature(extend_one)]
#![feature(fn_traits)]
#![feature(format_args_nl)]

View File

@ -108,9 +108,9 @@ fn do_select(
let mut poll_fds = Vec::with_capacity(nfds as usize);
for fd in 0..nfds {
let events = {
let readable = readfds.as_ref().map_or(false, |fds| fds.is_set(fd));
let writable = writefds.as_ref().map_or(false, |fds| fds.is_set(fd));
let except = exceptfds.as_ref().map_or(false, |fds| fds.is_set(fd));
let readable = readfds.as_ref().is_some_and(|fds| fds.is_set(fd));
let writable = writefds.as_ref().is_some_and(|fds| fds.is_set(fd));
let except = exceptfds.as_ref().is_some_and(|fds| fds.is_set(fd));
convert_rwe_to_events(readable, writable, except)
};