diff --git a/src/lib.rs b/src/lib.rs index e79fc2add39e..e0da83840edd 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -39,18 +39,18 @@ pub use rustc_mir::interpret::*; // Resolve ambiguity. pub use rustc_mir::interpret::{self, AllocMap, PlaceTy}; -pub use crate::shims::dlsym::{Dlsym, EvalContextExt as DlsymEvalContextExt}; -pub use crate::shims::env::{EnvVars, EvalContextExt as EnvEvalContextExt}; -pub use crate::shims::foreign_items::EvalContextExt as ForeignItemsEvalContextExt; -pub use crate::shims::fs::{DirHandler, EvalContextExt as FileEvalContextExt, FileHandler}; -pub use crate::shims::intrinsics::EvalContextExt as IntrinsicsEvalContextExt; -pub use crate::shims::os_str::EvalContextExt as OsStrEvalContextExt; -pub use crate::shims::panic::{CatchUnwindData, EvalContextExt as PanicEvalContextExt}; -pub use crate::shims::sync::{EvalContextExt as SyncShimsEvalContextExt}; -pub use crate::shims::thread::EvalContextExt as ThreadShimsEvalContextExt; -pub use crate::shims::time::EvalContextExt as TimeEvalContextExt; -pub use crate::shims::tls::{EvalContextExt as TlsEvalContextExt, TlsData}; -pub use crate::shims::EvalContextExt as ShimsEvalContextExt; +pub use crate::shims::dlsym::{Dlsym, EvalContextExt as _}; +pub use crate::shims::env::{EnvVars, EvalContextExt as _}; +pub use crate::shims::foreign_items::EvalContextExt as _; +pub use crate::shims::fs::{DirHandler, EvalContextExt as _, FileHandler}; +pub use crate::shims::intrinsics::EvalContextExt as _; +pub use crate::shims::os_str::EvalContextExt as _; +pub use crate::shims::panic::{CatchUnwindData, EvalContextExt as _}; +pub use crate::shims::posix_sync::{EvalContextExt as _}; +pub use crate::shims::thread::EvalContextExt as _; +pub use crate::shims::time::EvalContextExt as _; +pub use crate::shims::tls::{EvalContextExt as _, TlsData}; +pub use crate::shims::EvalContextExt as _; pub use crate::diagnostics::{ register_diagnostic, report_error, EvalContextExt as DiagnosticsEvalContextExt, diff --git a/src/shims/sync.rs b/src/shims/posix_sync.rs similarity index 99% rename from src/shims/sync.rs rename to src/shims/posix_sync.rs index 8986455a14fc..cdc1f8cc763a 100644 --- a/src/shims/sync.rs +++ b/src/shims/posix_sync.rs @@ -522,6 +522,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriEvalContextExt<'mir, 'tcx mutex_set_kind(this, mutex_op, ScalarMaybeUninit::Uninit)?; mutex_set_id(this, mutex_op, ScalarMaybeUninit::Uninit)?; + // FIXME: delete interpreter state associated with this mutex. Ok(0) } @@ -640,6 +641,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriEvalContextExt<'mir, 'tcx } rwlock_set_id(this, rwlock_op, ScalarMaybeUninit::Uninit)?; + // FIXME: delete interpreter state associated with this rwlock. Ok(0) } @@ -833,6 +835,7 @@ pub trait EvalContextExt<'mir, 'tcx: 'mir>: crate::MiriEvalContextExt<'mir, 'tcx } cond_set_id(this, cond_op, ScalarMaybeUninit::Uninit)?; cond_set_clock_id(this, cond_op, ScalarMaybeUninit::Uninit)?; + // FIXME: delete interpreter state associated with this condvar. Ok(0) } diff --git a/src/thread.rs b/src/thread.rs index 246a383d178b..896f93ef1a3a 100644 --- a/src/thread.rs +++ b/src/thread.rs @@ -91,8 +91,8 @@ pub enum ThreadState { /// responsibility of the synchronization primitives to track threads that /// are blocked by them. BlockedOnSync, - /// The thread has terminated its execution (we do not delete terminated - /// threads). + /// The thread has terminated its execution. We do not delete terminated + /// threads (FIXME: why?). Terminated, } diff --git a/tests/run-pass/sync_singlethread.rs b/tests/run-pass/concurrency/sync_singlethread.rs similarity index 100% rename from tests/run-pass/sync_singlethread.rs rename to tests/run-pass/concurrency/sync_singlethread.rs