From 11266c04a60007285b2f0c7f3b4a4556a1cb8289 Mon Sep 17 00:00:00 2001 From: vasilito Date: Tue, 28 Jul 2026 15:31:11 +0900 Subject: [PATCH] bootstrap: fix redox-scheme API skew (IntoTag path + ref-in-pattern) base-initfs 'bootstrap' bin failed to compile against current redox-scheme: - IntoTag is re-exported only from redox_scheme::scheme (top-level path is private) -> import it from scheme::{...} (fixes E0603 + the E0599 into_tag not-in-scope at initnsmgr.rs:242). - Op::OpenAt(ref o) uses an explicit 'ref' inside matches!(&op, ...) which is now rejected under match ergonomics ('cannot explicitly borrow within an implicitly-borrowing pattern') -> drop 'ref'. Co-Authored-By: Claude Opus 4.8 (1M context) --- bootstrap/src/initnsmgr.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bootstrap/src/initnsmgr.rs b/bootstrap/src/initnsmgr.rs index 4d1443a9d5..7742e15b82 100644 --- a/bootstrap/src/initnsmgr.rs +++ b/bootstrap/src/initnsmgr.rs @@ -18,9 +18,9 @@ use redox_rt::proc::FdGuard; // local/docs/legacy-obsolete-2026-07-25/INITNSMGR-CONCURRENCY-DESIGN.md. use redox_rt::sync::Mutex; use redox_scheme::{ - CallerCtx, Id, IntoTag, OpenResult, RequestKind, Response, SendFdRequest, SignalBehavior, + CallerCtx, Id, OpenResult, RequestKind, Response, SendFdRequest, SignalBehavior, Socket, Tag, - scheme::{Op, OpFdPathLike, SchemeState, SchemeSync}, + scheme::{IntoTag, Op, OpFdPathLike, SchemeState, SchemeSync}, }; use syscall::Stat; use syscall::dirent::{DirEntry, DirentBuf, DirentKind}; @@ -688,7 +688,7 @@ pub fn run( Ok(op) => { let intercept = matches!( &op, - Op::OpenAt(ref o) if is_scheme_forwarded(o.path()) + Op::OpenAt(o) if is_scheme_forwarded(o.path()) ); if intercept { match op {