rust/library/core
Matthias Krüger 68f8a53f12
Rollup merge of #133651 - scottmcm:nonnull-nonzero-no-field-projection, r=oli-obk
Update `NonZero` and `NonNull` to not field-project (per MCP#807)

https://github.com/rust-lang/compiler-team/issues/807#issuecomment-2506098540 was accepted, so this is the first PR towards moving the library to not using field projections into `[rustc_layout_scalar_valid_range_*]` types.

`NonZero` was already using `transmute` nearly everywhere, so there are very few changes to it.

`NonNull` needed more changes, but they're mostly simple, changing `.pointer` to `.as_ptr()`.

r? libs

cc #133324, which will tidy up some of the MIR from this a bit more, but isn't a blocker.
2024-12-04 05:42:07 +01:00
..
benches Auto merge of #122770 - iximeow:ixi/int-formatting-optimization, r=workingjubilee 2024-11-14 04:17:20 +00:00
src Rollup merge of #133651 - scottmcm:nonnull-nonzero-no-field-projection, r=oli-obk 2024-12-04 05:42:07 +01:00
tests stabilize const_{size,align}_of_val 2024-12-02 20:18:25 +01:00
Cargo.toml update cfgs 2024-11-27 15:14:54 +00:00