<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/library/core/src/sync, branch master</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=master</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-09-28T16:13:12+00:00</updated>
<entry>
<title>Rollup merge of #146675 - Jules-Bertholet:sync-nonexclusive, r=Mark-Simulacrum</title>
<updated>2025-09-28T16:13:12+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>476013+matthiaskrgr@users.noreply.github.com</email>
</author>
<published>2025-09-28T16:13:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=750e902a751a8761ad0a9e8ba806c5c543d17e34'/>
<id>urn:sha1:750e902a751a8761ad0a9e8ba806c5c543d17e34</id>
<content type='text'>
Allow shared access to `Exclusive&lt;T&gt;` when `T: Sync`

Addresses libs-api request in https://github.com/rust-lang/rust/issues/98407#issuecomment-3299348713.

Adds the following trait impls to `Exclusive&lt;T&gt;`, all bounded on `T: Sync`:

- `AsRef&lt;T&gt;`
- `Clone`
- `Copy`
- `PartialEq`
- `StructuralPartialEq`
- `Eq`
- `Hash`
- `PartialOrd`
- `Ord`
- `Fn`

``@rustbot`` label T-libs-api
</content>
</entry>
<entry>
<title>Update CURRENT_RUSTC_VERSION post-bump</title>
<updated>2025-09-26T22:41:32+00:00</updated>
<author>
<name>Mark Rousskov</name>
<email>mark.simulacrum@gmail.com</email>
</author>
<published>2025-09-14T14:30:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4e9716fbc5fb0f85d838ee9350ade2be5c2a6201'/>
<id>urn:sha1:4e9716fbc5fb0f85d838ee9350ade2be5c2a6201</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Allow shared access to `Exclusive&lt;T&gt;` when `T: Sync`</title>
<updated>2025-09-21T18:12:54+00:00</updated>
<author>
<name>Jules Bertholet</name>
<email>julesbertholet@quoi.xyz</email>
</author>
<published>2025-09-17T14:26:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=97b2292b065f825d482899149001a74b6a5450c4'/>
<id>urn:sha1:97b2292b065f825d482899149001a74b6a5450c4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #145279 - clarfonthey:const-convert-initial, r=tgross35</title>
<updated>2025-09-03T13:08:06+00:00</updated>
<author>
<name>Stuart Cook</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-09-03T13:08:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f4b946a14788df30b693a28e96aa18c9bee618ad'/>
<id>urn:sha1:f4b946a14788df30b693a28e96aa18c9bee618ad</id>
<content type='text'>
Constify conversion traits (part 1)

This is the first part of rust-lang/rust#144289 being split into smaller pieces. It adds/moves constness of several traits under the `const_convert` feature:

* `From`
* `Into`
* `TryFrom`
* `TryInto`
* `FromStr`
* `AsRef`
* `AsMut`
* `Borrow`
* `BorrowMut`
* `Deref`
* `DerefMut`

There are a few methods that are intrinsically tied to these traits which I've included in the feature. Particularly, those which are wrappers over `AsRef`:

* `ByteStr::new` (unstable under `bstr` feature)
* `OsStr::new`
* `Path::new`

Those which directly use `Into`:

* `Result::into_ok`
* `Result::into_err`

And those which use `Deref` and `DerefMut`:

* `Pin::as_ref`
* `Pin::as_mut`
* `Pin::as_deref_mut`
* `Option::as_deref`
* `Option::as_deref_mut`
* `Result::as_deref`
* `Result::as_deref_mut`

(note: the `Option` and `Result` methods were suggested by ``@npmccallum`` initially as rust-lang/rust#146101)

The parts which are missing from this PR are:

* Anything that involves heap-allocated types
* Making any method const than the ones listed above
* Anything that could rely on the above, *or* could rely on system-specific code for `OsStr` or `Path` (note: this mostly makes these methods useless since `str` doesn't implement `AsRef&lt;OsStr&gt;` yet, but it's better to track the method for now and add impls later, IMHO)

r? ``@tgross35`` (who mostly already reviewed this)
</content>
</entry>
<entry>
<title>Constify conversion traits</title>
<updated>2025-09-02T01:38:26+00:00</updated>
<author>
<name>ltdk</name>
<email>usr@ltdk.xyz</email>
</author>
<published>2025-08-11T23:36:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1c64d3e6d1fe6256cb11b8dd455ccad1b5f9848c'/>
<id>urn:sha1:1c64d3e6d1fe6256cb11b8dd455ccad1b5f9848c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>stabilize strict provenance atomic ptr</title>
<updated>2025-08-15T16:56:11+00:00</updated>
<author>
<name>Kivooeo</name>
<email>Kivooeo123@gmail.com</email>
</author>
<published>2025-08-15T16:56:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b951b5dca116803b89380aae55ce9053a4674f31'/>
<id>urn:sha1:b951b5dca116803b89380aae55ce9053a4674f31</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #144192 - RalfJung:atomicrmw-ptr, r=nikic</title>
<updated>2025-08-08T19:22:44+00:00</updated>
<author>
<name>Trevor Gross</name>
<email>t.gross35@gmail.com</email>
</author>
<published>2025-08-08T19:22:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6fa6a854cd791e9efa813e9b18cd1a5337ded971'/>
<id>urn:sha1:6fa6a854cd791e9efa813e9b18cd1a5337ded971</id>
<content type='text'>
atomicrmw on pointers: move integer-pointer cast hacks into backend

Conceptually, we want to have atomic operations on pointers of the form `fn atomic_add(ptr: *mut T, offset: usize, ...)`. However, LLVM does not directly support such operations (https://github.com/llvm/llvm-project/issues/120837), so we have to cast the `offset` to a pointer somewhere.

This PR moves that hack into the LLVM backend, so that the standard library, intrinsic, and Miri all work with the conceptual operation we actually want. Hopefully, one day LLVM will gain a way to represent these operations without integer-pointer casts, and then the hack will disappear entirely.

Cc ```@nikic``` -- this is the best we can do right now, right?
Fixes https://github.com/rust-lang/rust/issues/134617
</content>
</entry>
<entry>
<title>fix `Atomic*::as_ptr` wording</title>
<updated>2025-07-28T12:41:24+00:00</updated>
<author>
<name>usamoi</name>
<email>usamoi@outlook.com</email>
</author>
<published>2025-07-28T12:41:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=71920e265caf363ba3408adc2744c0441ef58472'/>
<id>urn:sha1:71920e265caf363ba3408adc2744c0441ef58472</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #144072 - usamoi:docs, r=Mark-Simulacrum</title>
<updated>2025-07-28T06:36:51+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>476013+matthiaskrgr@users.noreply.github.com</email>
</author>
<published>2025-07-28T06:36:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a9f58bff03969533800491c24b4f538b6b53c609'/>
<id>urn:sha1:a9f58bff03969533800491c24b4f538b6b53c609</id>
<content type='text'>
update `Atomic*::from_ptr` and `Atomic*::as_ptr` docs

Since https://github.com/rust-lang/rust/pull/128778, it's allowed to perform atomic read and non-atomic read on the same atomic at the same time. Update the `Atomic*::from_ptr` and `Atomic*::as_ptr` documentation to remove expressions such as `not allowed to mix atomic and non-atomic accesses`.

see also [std::sync::atomic](https://doc.rust-lang.org/std/sync/atomic/index.html#memory-model-for-atomic-accesses)
</content>
</entry>
<entry>
<title>atomicrmw on pointers: move integer-pointer cast hacks into backend</title>
<updated>2025-07-23T06:32:55+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2025-07-19T21:23:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=de1b999ff6c981475e4491ea2fff1851655587e5'/>
<id>urn:sha1:de1b999ff6c981475e4491ea2fff1851655587e5</id>
<content type='text'>
</content>
</entry>
</feed>
