diff options
| author | bors <bors@rust-lang.org> | 2022-09-25 04:12:30 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-09-25 04:12:30 +0000 |
| commit | e20fabb0d04cb25fe3159d58920856533f1b5cf0 (patch) | |
| tree | de03c67751cd45a374d9acc81832cf8c37fd019f /library/std/src/sys_common | |
| parent | e58621a4a30db1ae7fcc041e108042c1ce14d3bd (diff) | |
| parent | 513eda0f7bd1461fab01d7c26eb2ecfa364420cd (diff) | |
| download | rust-e20fabb0d04cb25fe3159d58920856533f1b5cf0.tar.gz rust-e20fabb0d04cb25fe3159d58920856533f1b5cf0.zip | |
Auto merge of #98457 - japaric:gh98378, r=m-ou-se
make Condvar, Mutex, RwLock const constructors work with the `unsupported` impl applying this patch locally to the `rust-src` component fixes #98378 however, the solution seems wrong to me because PR #97791 didn't add any `rustc_const_stable` attribute to underlying implementations like `std::sys::unix::futex`, so I must be missing something about how const-stability is checked ... maybe the `restricted_std` feature (gate?) has an effect? fixes #98378 fixes #98293 (probably)
Diffstat (limited to 'library/std/src/sys_common')
| -rw-r--r-- | library/std/src/sys_common/condvar.rs | 1 | ||||
| -rw-r--r-- | library/std/src/sys_common/condvar/check.rs | 1 | ||||
| -rw-r--r-- | library/std/src/sys_common/mutex.rs | 1 | ||||
| -rw-r--r-- | library/std/src/sys_common/rwlock.rs | 1 |
4 files changed, 4 insertions, 0 deletions
diff --git a/library/std/src/sys_common/condvar.rs b/library/std/src/sys_common/condvar.rs index f3ac1061b89..8bc5b24115d 100644 --- a/library/std/src/sys_common/condvar.rs +++ b/library/std/src/sys_common/condvar.rs @@ -15,6 +15,7 @@ pub struct Condvar { impl Condvar { /// Creates a new condition variable for use. #[inline] + #[rustc_const_stable(feature = "const_locks", since = "1.63.0")] pub const fn new() -> Self { Self { inner: imp::MovableCondvar::new(), check: CondvarCheck::new() } } diff --git a/library/std/src/sys_common/condvar/check.rs b/library/std/src/sys_common/condvar/check.rs index ce8f3670487..4ac9e62bf86 100644 --- a/library/std/src/sys_common/condvar/check.rs +++ b/library/std/src/sys_common/condvar/check.rs @@ -50,6 +50,7 @@ pub struct NoCheck; #[allow(dead_code)] impl NoCheck { + #[rustc_const_stable(feature = "const_locks", since = "1.63.0")] pub const fn new() -> Self { Self } diff --git a/library/std/src/sys_common/mutex.rs b/library/std/src/sys_common/mutex.rs index 48479f5bdb3..7b9f7ef5487 100644 --- a/library/std/src/sys_common/mutex.rs +++ b/library/std/src/sys_common/mutex.rs @@ -61,6 +61,7 @@ unsafe impl Sync for MovableMutex {} impl MovableMutex { /// Creates a new mutex. #[inline] + #[rustc_const_stable(feature = "const_locks", since = "1.63.0")] pub const fn new() -> Self { Self(imp::MovableMutex::new()) } diff --git a/library/std/src/sys_common/rwlock.rs b/library/std/src/sys_common/rwlock.rs index 36d721fcbcb..042981dac60 100644 --- a/library/std/src/sys_common/rwlock.rs +++ b/library/std/src/sys_common/rwlock.rs @@ -15,6 +15,7 @@ pub struct MovableRwLock(imp::MovableRwLock); impl MovableRwLock { /// Creates a new reader-writer lock for use. #[inline] + #[rustc_const_stable(feature = "const_locks", since = "1.63.0")] pub const fn new() -> Self { Self(imp::MovableRwLock::new()) } |
