rust/library
bors f6faef4475 Auto merge of #114795 - RalfJung:cell-swap, r=dtolnay
make Cell::swap panic if the Cells partially overlap

The following function ought to be sound:
```rust
fn as_cell_of_array<T, const N: usize>(c: &[Cell<T>; N]) -> &Cell<[T; N]> {
    unsafe { transmute(c) }
}
```
However, due to `Cell::swap`, it currently is not -- safe code can [cause a use-after-free](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=c9415799722d985ff7d2c2c997b724ca). This PR fixes that.

Fixes https://github.com/rust-lang/rust/issues/80778
2023-08-29 07:53:56 +00:00
..
alloc Auto merge of #113859 - Manishearth:vec-as-mut-ptr-stacked-borrow, r=dtolnay 2023-08-29 06:04:55 +00:00
backtrace@99faef833f Bump backtrace to 0.3.69 2023-08-22 15:01:14 -07:00
core Auto merge of #114795 - RalfJung:cell-swap, r=dtolnay 2023-08-29 07:53:56 +00:00
panic_abort Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
panic_unwind Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
portable-simd
proc_macro Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
profiler_builtins Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
rtstartup
rustc-std-workspace-alloc
rustc-std-workspace-core
rustc-std-workspace-std
std Auto merge of #115312 - hermitcore:hermit-is_interrupted, r=thomcc 2023-08-29 04:11:13 +00:00
stdarch@d77878b729
sysroot
test Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
unwind Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00