Skip to content

Add support for wasm exception handling to Emscripten target #131830

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 7, 2025

Conversation

hoodmane
Copy link
Contributor

@hoodmane hoodmane commented Oct 17, 2024

This is a draft because we need some additional setting for the Emscripten target to select between the old exception handling and the new exception handling. I don't know how to add a setting like that, would appreciate advice from Rust folks. We could maybe choose to use the new exception handling if Ctarget-feature=+exception-handling is passed? I tried this but I get errors from llvm so I'm not doing it right.

cc @kleisauke @kripken @sbc100 @workingjubilee @alexcrichton

@rustbot
Copy link
Collaborator

rustbot commented Oct 17, 2024

r? @compiler-errors

rustbot has assigned @compiler-errors.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Oct 17, 2024
@hoodmane hoodmane marked this pull request as draft October 17, 2024 12:05
@rust-log-analyzer

This comment has been minimized.

@workingjubilee
Copy link
Member

workingjubilee commented Oct 18, 2024

This is a draft because we need some additional setting for the Emscripten target to select between the old exception handling and the new exception handling.

Hm. I feel a little out-of-context here. Could you explain

  1. what makes the "old" exception-handling old?
  2. what makes the "new" exception-handling new?
  3. what parts of an emscripten program must agree on which exception handling we're using?
    • in the minimal case: linkage of a Rust main.rs, std, and Emscripten?
    • in other configurations of linkage that Emscripten supports?
  4. why we must have a toggle for this?

Is "new" meaning the wasm exception-handling proposal with exnref and wasm-level try blocks?

@workingjubilee workingjubilee added the O-emscripten Target: 50% off wasm32-unknown-musl. the savings come out of stdio.h, but hey, you get SDL! label Oct 21, 2024
@hoodmane
Copy link
Contributor Author

Thanks for the questions.

The short answer is these are two different ABIs. Perhaps it would be most accurate to think of wasm32-emscripten-old-eh and wasm32-emscripten-new-eh as distinct targets. This is similar to -sWASM_BIGINT. Unfortunately, Emscripten has tons of different ABIs. But some of the ABIs are better than others in terms of code speed, size, and bugginess.

What makes the "old" / "new" exception-handling old / new?

Well the older system has existed for a lot longer and worked with the first version of WebAssembly deployed in browsers. The new exception handling uses native support and has only been universally available in engines since ~March 2022.

what parts of an emscripten program must agree on which exception handling we're using?

We need different IR, different object files, and different linker arguments. But it's transparent to Rust/C++/C code.

in the minimal case: linkage of a Rust main.rs, std, and Emscripten?

Yeah so we need a distinct build of the standard library because the object files are different. The compilation of both main.rs and std need to change, namely by changing the implementation of the try intrinsic. Perhaps only libpanicunwind is affected and other libs that don't use the try intrinsic are unaffected, but it's unclear. Also, the linker arguments change.

why we must have a toggle for this?

Currently, Pyodide is stuck using the old ABI because Rust only supports the old ABI. If Rust switched to only supporting the new ABI, it would make the transition difficult.

@hoodmane
Copy link
Contributor Author

hoodmane commented Oct 21, 2024

To make matters worse, the new exception handling support was changed in October of 2023 so there are now two new exception handling variants:

  • the old new exception handling, which is universally supported but also deprecated, and
  • the new new exception handling, which is currently only supported in the most recent release of Firefox.

I think there is no difference in the IR the frontend generates between the old new and new new variants, though the lowering pass has distinct code for the two cases, the object file format is different, and so the new variant will require a different setting code generation time. It's a fairly simple transform to adjust an old object file to support the new variant and they plan "to provide a converter tool from the old binary to the new format to facilitate the use of the new instructions without the need for recompilation."

So we may end up with three ABIs.

@sbc100
Copy link

sbc100 commented Oct 21, 2024

I think there is no difference in the IR the frontend generates between the old new and new new variants

That is true today but the plan is to make llvm support the new variant natively ASAP. However at the at point I imagine there will be a lowering pass added to binaryen to support the previous version, so you should still only need a single object file format / libc build.

@sbc100
Copy link

sbc100 commented Oct 21, 2024

Unfortunately, Emscripten has tons of different ABIs.

While its true emscripten supports a lot of different options almost all of them are link-time only settings and don't effect the object file ABI. There are only subset of settings that effect the object format (i.e. that are vaslid at compile time): https://github.com/emscripten-core/emscripten/blob/10cb9d46cdd17e7a96de68137c9649d9a630fbc7/tools/settings.py#L81-L112. Note that WASM_BIGINT is not one of them.

@hoodmane
Copy link
Contributor Author

Are MAIN_MODULE/SIDE_MODULE really compile time settings? I only pass them in LDFLAGS...

@sbc100
Copy link

sbc100 commented Oct 21, 2024

Are MAIN_MODULE/SIDE_MODULE really compile time settings? I only pass them in LDFLAGS...

Only in the sense that they enable -fPIC.. you can use -fPIC itself instead if you prefer.

@workingjubilee
Copy link
Member

In general, "more_compiler_abi_flags == more_compatibility" is actually "more_compiler_flags == incompatibility", because you now have to have even more flags set to the correct values to compile code correctly.

So I would prefer that we not expose, nor even pretend that we wish to offer compatibility with, "tons of different ABIs". We already have quite enough problems with ABI-affecting flags. It does not really take many booleans to be able to count to a million, and a few million untested variants of Rust is not a thing we should be trying to support.

Having said that, supporting the new ABI behind an unstable flag that will then be ditched at some point has precedent, especially for wasm targets, see #117919

@workingjubilee
Copy link
Member

workingjubilee commented Oct 21, 2024

If a -Z flag for such a transition period is acceptable, @hoodmane, then like that flag did, opening an MCP, would be the next step: https://github.com/rust-lang/compiler-team/issues/new?template=major_change.md

While we Just Merged the soundness-fixing change of #131533 we usually do MCPs for Significant Changes To Preexisting Targets, especially ones that require this... shindig. A transition period and involvement of rustc's CLI.

They're usually sensible enough that it's a bit of a formality, so don't overthink it, the answers to my questions are more-or-less what you would paste in there, with a bit of additional stitching up to explain why e.g. Pyodide needs a flag for this transition and we don't want to do just a hard cut over.

@workingjubilee workingjubilee added the A-ABI Area: Concerning the application binary interface (ABI) label Oct 21, 2024
@hoodmane
Copy link
Contributor Author

do MCPs

Sounds good. Thanks again @workingjubilee for all of your help. I really appreciate it.

It does not really take many booleans to be able to count to a million, and a few million untested variants of Rust is not a thing we should be trying to support.

Yeah this is why I'm raising this as a concern. It seems clearly out of scope to support all of them. It's important to have a solution to this in mind ahead of time. I would prefer that Rust only supports the 2 configurations I care about and has real test coverage for them, but different projects will standardize on different options. It's a thorny issue coordination problem. It would be nice if Emscripten could formalize specific triples...

@hoodmane
Copy link
Contributor Author

hoodmane commented Oct 22, 2024

The fact that the ABIs can be linearly sorted by runtime support date is helpful. Instead of 20 different booleans leading to 2^20 different options toggling each independently, there are 21 options when we sort. Then if you only support:

  • the most recent date with a -Z flag
  • some option that you think is "old enough to be universally available"

maybe it's good enough. But having the in-between steps available as -Z flags would be helpful for debugging the target.

@hoodmane
Copy link
Contributor Author

Okay I opened a MCP:
rust-lang/compiler-team#801

@compiler-errors compiler-errors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Nov 4, 2024
@RalfJung
Copy link
Member

RalfJung commented Dec 3, 2024

what parts of an emscripten program must agree on which exception handling we're using?

We need different IR, different object files, and different linker arguments. But it's transparent to Rust/C++/C code.

This does not answer the question: what happens when I link together crates that were compiled with different values for this flag? In particular, what if std was built with one value and the user uses a different value?

If the answer is Undefined Behavior, that must at least be very clearly documented as part of the flag docs, and that is a blocker for stabilizing this flag.

@RalfJung
Copy link
Member

RalfJung commented Dec 3, 2024

@hoodmane I also have a question regarding the plan outlined in the MCP (I'd prefer to ask this on Zulip but could not find your handle there):

  • Pyodide switches to using new ABI and starts passing the flag

Given that (IIUC) the flag you choose must match the flag used to build the standard library, how is this supposed to work?

@hoodmane
Copy link
Contributor Author

hoodmane commented Dec 3, 2024

I just signed up for Zulip. Thanks @RalfJung.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jan 6, 2025
@workingjubilee
Copy link
Member

also fine!

@bors r+ rollup

@bors
Copy link
Collaborator

bors commented Jan 6, 2025

📌 Commit 49c7423 has been approved by workingjubilee

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 6, 2025
jhpratt added a commit to jhpratt/rust that referenced this pull request Jan 7, 2025
…kingjubilee

Add support for wasm exception handling to Emscripten target

This is a draft because we need some additional setting for the Emscripten target to select between the old exception handling and the new exception handling. I don't know how to add a setting like that, would appreciate advice from Rust folks. We could maybe choose to use the new exception handling if `Ctarget-feature=+exception-handling` is passed? I tried this but I get errors from llvm so I'm not doing it right.
bors added a commit to rust-lang-ci/rust that referenced this pull request Jan 7, 2025
Rollup of 9 pull requests

Successful merges:

 - rust-lang#131830 (Add support for wasm exception handling to Emscripten target)
 - rust-lang#132345 (Improve diagnostics for `HostEffectPredicate` in the new solver)
 - rust-lang#134568 (Release notes for 1.84.0)
 - rust-lang#134744 (Don't ice on bad transmute in typeck in new solver)
 - rust-lang#135090 (Suggest to replace tuple constructor through projection)
 - rust-lang#135116 (rustdoc: Fix mismatched capitalization in sidebar)
 - rust-lang#135126 (mark deprecated option as deprecated in rustc_session to remove copypasta and small refactor)
 - rust-lang#135139 ([generic_assert] Constify methods used by the formatting system)
 - rust-lang#135170 (Update triagebot.toml: celinval vacation is over)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit 4e4a93c into rust-lang:master Jan 7, 2025
6 checks passed
@rustbot rustbot added this to the 1.86.0 milestone Jan 7, 2025
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Jan 7, 2025
Rollup merge of rust-lang#131830 - hoodmane:emscripten-wasm-eh, r=workingjubilee

Add support for wasm exception handling to Emscripten target

This is a draft because we need some additional setting for the Emscripten target to select between the old exception handling and the new exception handling. I don't know how to add a setting like that, would appreciate advice from Rust folks. We could maybe choose to use the new exception handling if `Ctarget-feature=+exception-handling` is passed? I tried this but I get errors from llvm so I'm not doing it right.
@hoodmane
Copy link
Contributor Author

hoodmane commented Jan 8, 2025

There seems to be a problem that if you try to build a crate with panic=abort with this flag it says:

error: the crate `panic_abort` does not have the panic strategy `abort`

@hoodmane hoodmane deleted the emscripten-wasm-eh branch January 8, 2025 23:09
@hoodmane
Copy link
Contributor Author

hoodmane commented Jan 8, 2025

I see emscripten mentioned in panic_abort so probably that's related.

@workingjubilee
Copy link
Member

huh, weird.

@hoodmane
Copy link
Contributor Author

There seems to be a problem with -Zbuild-std and unwind=abort in general...

@hoodmane
Copy link
Contributor Author

Seems to be related to this issue:
rust-lang/wg-cargo-std-aware#29

hoodmane added a commit to hoodmane/rust that referenced this pull request Jan 13, 2025
If we build the standard library with wasm-eh then we need to link
with `-fwasm-exceptions` even if we compile with `panic=abort`
Without this change, linking a `panic=abort` crate fails with:
`undefined symbol: __cpp_exception`.

Followup to rust-lang#131830.
jhpratt added a commit to jhpratt/rust that referenced this pull request Jan 14, 2025
…ingjubilee

Fix emscripten-wasm-eh with unwind=abort

If we build the standard library with wasm-eh then we need to link with `-fwasm-exceptions` even if we compile with `panic=abort`.

Without this change, linking a `panic=abort` crate fails with: `undefined symbol: __cpp_exception`.

Followup to rust-lang#131830.

r? workingjubilee
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Jan 14, 2025
Rollup merge of rust-lang#135450 - hoodmane:wasm-eh-abort-fix, r=workingjubilee

Fix emscripten-wasm-eh with unwind=abort

If we build the standard library with wasm-eh then we need to link with `-fwasm-exceptions` even if we compile with `panic=abort`.

Without this change, linking a `panic=abort` crate fails with: `undefined symbol: __cpp_exception`.

Followup to rust-lang#131830.

r? workingjubilee
tautschnig added a commit to tautschnig/verify-rust-std that referenced this pull request Jan 17, 2025
b102eb97611 Rollup merge of #135003 - RalfJung:deprecate-allowed-through-unstable, r=davidtwco
09ccac89813 Rollup merge of #132654 - joboet:lazy_main, r=ChrisDenton
9a5f11b6bdc Auto merge of #135525 - jhpratt:rollup-4gu2wpm, r=jhpratt
808a28bb2e5 Rollup merge of #134678 - zachs18:offset-ptr-update, r=tgross35
038b55923da Rollup merge of #134338 - tgross35:overflowing-c-safe-ret, r=bjorn3,antoyo
afb7906d983 Rollup merge of #134143 - nyurik:err-nul, r=dtolnay
09f7f735638 intrinsics: deprecate calling them via the unstable std::intrinsics path
b1bab8efb30 Update ReadDir::next in std::sys::pal::unix::fs to use `&raw const (*ptr).field` instead of `ptr.offset(...).cast()`.
6b3eb0e11bc Update compiler-builtins to 0.1.143
c26fde2487d Rollup merge of #135423 - compiler-errors:enforce-const-trait-syntactical, r=oli-obk,RalfJung
d4e61054fa0 Enforce syntactical stability of const traits in HIR
8cba3108c65 Update compiler-builtins to 0.1.141
72304171451 add comments explaining main thread identification
de1528ca1d5 std: lazily allocate the main thread handle
7d65632251e Revert "Remove the Arc rt::init allocation for thread info"
1938ccffee3 Auto merge of #135473 - matthiaskrgr:rollup-ksnst4l, r=matthiaskrgr
e57af4cc513 Rollup merge of #135381 - cod10129:vec-splice-doc, r=tgross35
4b1f813eb19 Auto merge of #135359 - RalfJung:lang-start-unwind, r=joboet
3a1522edb09 Auto merge of #135465 - jhpratt:rollup-7p93bct, r=jhpratt
d68853badd5 Rollup merge of #135393 - Ayush1325:uefi-helper-path, r=thomcc
2583e5e939e Add another `Vec::splice` example
e53c5c9c5db uefi: helpers: Introduce OwnedDevicePath
f17b1628cec Rollup merge of #135405 - Ayush1325:path-is-absolute, r=tgross35
41ac367ffc7 path: Move is_absolute check to sys::path
44a9def9f39 Auto merge of #135420 - GuillaumeGomez:rollup-93vepka, r=GuillaumeGomez
242154d7a56 Auto merge of #135384 - saethlin:inline-copy-from-slice, r=joboet
d76bc765c20 Update the explanation for why we use box_new in vec!
a8314e3425d Auto merge of #135402 - matthiaskrgr:rollup-cz7hs13, r=matthiaskrgr
736f71506f1 Rollup merge of #135379 - steffahn:uniquerc-invariant, r=Mark-Simulacrum
f1fd86b54fa Add inherent versions of MaybeUninit methods for slices
50cffd12adb Add #[inline] to copy_from_slice
221253c726d Auto merge of #135360 - RalfJung:structural-partial-eq, r=compiler-errors
8853a8d51d2 Make UniqueRc invariant for soundness
5c997f2acdc avoid nesting the user-defined main so deeply on the stack
1f09d97cbf0 use a single large catch_unwind in lang_start
3093827de07 update and clarify StructuralPartialEq docs
e2f8a108b9a Rename `pos` to `position`
c6dff32f287 Convert `struct FromBytesWithNulError` into enum
e47fc56aa4a Rollup merge of #135347 - samueltardieu:push-qvyxtxsqyxyr, r=jhpratt
d8923fc714a Rollup merge of #135324 - Ayush1325:uefi-fs-unsupported, r=joboet
9709d9bad5d Rollup merge of #135236 - scottmcm:more-mcp807-library-updates, r=ChrisDenton
849afc40e34 Improve the safety documentation on new_unchecked
2add857ca03 Use `NonNull::without_provenance` within the standard library
2764b7e14ab alloc: remove unsound `IsZero` for raw pointers
c577821efe2 Rollup merge of #134693 - SpriteOvO:proc-macro-use-to-tokens-in-quote, r=tgross35
7dbc3bcab16 Rollup merge of #132607 - YohDeadfall:pthread-name-fn-with-result, r=tgross35
ab71837c330 Update a bunch of library types for MCP807
4052574937d Initial fs module for uefi
946c19e04cb Rollup merge of #134908 - madsmtm:ptr-from_ref-docs, r=ibraheemdev
01372432cbb Rollup merge of #134619 - hkBst:patch-7, r=jhpratt
c22148b767f Fix `proc_macro::quote!` for raw ident
c421c1a946a Append `TokenTree` with `ToTokens` in `proc_macro::quote!`
c283b86cc76 Used pthread name functions returning result for FreeBSD and DragonFly
668cb10cba5 Auto merge of #135268 - pietroalbini:pa-bump-stage0, r=Mark-Simulacrum
f3f0119335a Rollup merge of #135269 - estebank:unneeded-into, r=compiler-errors
d7dd4a6bc58 Rollup merge of #135242 - RalfJung:nonnull-provenance, r=jhpratt
a34edcbbb60 Remove some unnecessary `.into()` calls
661c077ae5b fmt
9d29620a31a update cfg(bootstrap)
60fa1562951 update version placeholders
c0e33bf31ca add missing provenance APIs on NonNull
830ee4bb4d6 Rollup merge of #135176 - kornelski:env-example, r=cuviper
790735e2a6d Rollup merge of #134389 - rust-wasi-web:condvar-no-threads, r=m-ou-se
b3fa835baa8 Rollup merge of #133057 - tisonkun:into-chars, r=Amanieu
3987eb22905 Avoid naming variables `str`
7c71ffcfa97 Rollup merge of #135139 - c410-f3r:8-years-rfc, r=jhpratt
6536ec2d9b0 Rollup merge of #131830 - hoodmane:emscripten-wasm-eh, r=workingjubilee
e44be94c9eb More compelling env_clear() examples
5db91e58005 Rollup merge of #135153 - crystalstall:master, r=workingjubilee
cb8cf0fa5d0 Add support for wasm exception handling to Emscripten target
a1da07b21df chore: remove redundant words in comment
b2b55f6bdae Rollup merge of #135111 - tgross35:float-doc-aliases, r=Noratrieb
0bd45849186 [generic_assert] Constify methods used by the formatting system
c200a189c66 Rollup merge of #135121 - okaneco:const_slice_reverse, r=jhpratt
e03872bb30a Mark `slice::reverse` unstably const
0e581b92097 Clarified the documentation on core::iter::from_fn and core::iter::successors
320482169fb Rollup merge of #135110 - matthiaskrgr:adler, r=workingjubilee
e7ca1049aa7 Rollup merge of #135104 - the8472:disable-in-place-iter-for-flatten, r=Mark-Simulacrum
8ffc4e84463 Rollup merge of #134996 - bdbai:uwp-support, r=jieyouxu,ChrisDenton
fee42729979 Add doc aliases for `libm` and IEEE names
f4b33a3e46f library: fix adler{-> 2}.debug
2e05379f866 add regression test for unsound Flatten/FlatMap specialization
9467350f844 do not in-place-iterate over flatmap/flatten
6346a915b55 Rollup merge of #135091 - workingjubilee:backtrace-0.3.75, r=workingjubilee
3ef2891d388 Rollup merge of #135070 - klensy:backtrace-deps, r=workingjubilee
24366d36dce Rollup merge of #135046 - RalfJung:rustc_box_intrinsic, r=compiler-errors
307f559c6c4 Rollup merge of #133964 - joboet:select_unpredictable, r=tgross35
0b2fd26bdc8 Bump backtrace to 0.3.75
3d624d66f11 Rollup merge of #133420 - thesummer:rtems-unwind, r=workingjubilee
6137ccc52ac sync to actual dep verions of backtrace
318269a33f4 turn rustc_box into an intrinsic
bd743cec036 Auto merge of #135059 - matthiaskrgr:rollup-0ka9o3h, r=matthiaskrgr
e74ac082b32 Rollup merge of #134241 - liigo:patch-16, r=dtolnay
53e41a6a5a7 Auto merge of #134692 - GrigorenkoPV:sync_poision, r=tgross35
366ac34fa96 Fix UWP build
cd6c49f49b5 Bump backtrace to rust-lang/backtrace-rs@4d7906b
98ee6c8c68c Auto merge of #122565 - Zoxc:atomic-panic-msg, r=the8472
ffaa2184220 path in detail
aa0e6e8bd1a Move some things to `std::sync::poison` and reexport them in `std::sync`
b8087f526a0 fix doc for missing Box allocator consistency
40434b2c26c Auto merge of #135005 - matthiaskrgr:rollup-5ubuitt, r=matthiaskrgr
32614550fb9 Rollup merge of #134985 - mgsloan:remove-unnecessary-qualification-in-Ord-trait-docs, r=Noratrieb
d5f262cc53a Rename the internal simpler `quote` macro to `minimal_quote`
6c8e14169a9 Auto merge of #134080 - kleisauke:avoid-lfs64-emscripten, r=Noratrieb
33b4b03fe6a Try to write the panic message with a single `write_all` call
8795c3547eb std::fs::DirEntry.metadata(): prefer use of lstat() on Emscripten
fb895251bd9 Avoid use of LFS64 symbols on Emscripten
ed5888769c6 Auto merge of #134969 - Marcondiro:master, r=jhpratt,programmerjake
c1b709541e2 Rollup merge of #131439 - mu001999-contrib:cleanup/static-mut, r=estebank
847cd898006 Remove qualification of `std::cmp::Ordering` in `Ord` doc
e38fc1b0843 Auto merge of #132195 - clarfonthey:bigint-mul, r=scottmcm
4f7e5a623be Auto merge of #134966 - matthiaskrgr:rollup-lmhmgsv, r=matthiaskrgr
aff952b674c char to_digit: avoid unnecessary casts to u64
9e0a6b0a3c4 Rollup merge of #134953 - DiuDiu777:unaligned-doc, r=RalfJung
b003e5812c2 Auto merge of #134620 - ChrisDenton:line-writer, r=tgross35
8b8fd2d5855 Rollup merge of #134930 - RalfJung:ptr-docs-valid-access, r=jhpratt
d487d12d362 Rollup merge of #134927 - DaniPopes:const-as_flattened_mut, r=scottmcm
bfe0d0f6000 fix doc for read write unaligned in zst operation
99ca6ca7611 Auto merge of #134757 - RalfJung:const_swap, r=scottmcm
316349488dc ptr docs: make it clear that we are talking only about memory accesses
b7b6a5d0649 Make slice::as_flattened_mut unstably const
0b1d0d95c67 Fix ptr::from_ref documentation example comment
f26cc531ab6 Rollup merge of #134884 - calciumbe:patch1, r=jieyouxu
b7620c7c1d9 Rollup merge of #134870 - geofft:patch-1, r=jhpratt
9adc4a11633 fix: typos
f5e949debed Rollup merge of #134851 - lukas-code:alloc-ffi, r=tgross35
309cb6599b7 Fix sentence fragment in `pin` module docs
d086afd99b8 docs: inline `alloc::ffi::c_str` types to `alloc::ffi`
15137457840 Auto merge of #134547 - SUPERCILEX:unify-copy, r=thomcc
5807d879643 Rollup merge of #134832 - tgross35:update-builtins, r=tgross35
c6c4ae7c842 Tidy up bigint mul methods
a9e94810233 Rollup merge of #134823 - chloefeal:fix, r=tgross35,dtolnay
0e23de8b41d Update library/alloc/tests/sort/tests.rs
c94032f1779 Update `compiler-builtins` to 0.1.140
a41400395c5 Rollup merge of #133663 - scottmcm:carrying_mul_add, r=Amanieu
764af3bad24 Override `carrying_mul_add` in cg_llvm
18ee1da10b9 Move `{widening, carrying}_mul` to an intrinsic with fallback MIR
559fdf03383 Fix typos
acfeed3d3df Auto merge of #134822 - jieyouxu:rollup-5xuaq82, r=jieyouxu
5fb4df97165 Rollup merge of #134819 - ChrisDenton:trunc, r=Mark-Simulacrum
68b148643ac Rollup merge of #134622 - ChrisDenton:write-file-utf8, r=Mark-Simulacrum
6f23131fac2 Rollup merge of #134606 - RalfJung:ptr-copy-docs, r=Mark-Simulacrum
e290e70bdc1 Auto merge of #134786 - ChrisDenton:fix-rename-symlink, r=tgross35
5cf455ff60d Fix renaming symlinks on Windows
0a3943e9496 Fix mistake in windows file open
051ece2a59c Rollup merge of #134791 - notriddle:notriddle/inline-ffi-error-types, r=tgross35
3a2ca84c46f Rollup merge of #134789 - betrusted-io:bump-unwinding-to-0.25.0, r=Mark-Simulacrum
3cbbd43963e Rollup merge of #134782 - wtlin1228:docs/iter-rposition, r=Mark-Simulacrum
1e8a843e7fd Rollup merge of #134728 - deltragon:barrier-doc, r=tgross35
9b632c12457 Rollup merge of #134649 - SUPERCILEX:statx-remember, r=thomcc
a9b12533594 Rollup merge of #134644 - kpreid:duplicates, r=Mark-Simulacrum
7d72bc6894b Rollup merge of #134379 - bjoernager:slice-as-array, r=dtolnay
c988c5c469a docs: inline `core::ffi::c_str` types to `core::ffi`
f3a43e876b3 docs: inline `std::ffi::c_str` types to `std::ffi`
ef9344328ea unwinding: bump version to fix asm
b5a7e1cb2c3 Impl FromIterator for tuples with arity 1-12
97a492b242e Fix formatting
7bb71817d2d docs: update code example for Iterator#rposition
838b01dae5e stabilize const_alloc_layout
7c4bb0b875d rename typed_swap → typed_swap_nonoverlapping
3d7df0fa2cb stabilize const_swap
adefdcb1aaf Auto merge of #134729 - oliveredget:typo, r=jieyouxu
a76414742c2 Auto merge of #134722 - ChrisDenton:trunc, r=Amanieu
7102c61d871 Auto merge of #134333 - daxpedda:stdarch-bump, r=daxpedda
781fb68dbba Fix compilation issues on other unixes
2b6589fec62 Bump `stdarch`
301f4c8ba3f chore: fix typos
b3642490a4a Use scoped threads in `std::sync::Barrier` examples
efbda65a57a Windows: Use FILE_ALLOCATION_INFO for truncation
0429732714d Rollup merge of #134689 - RalfJung:ptr-swap-test, r=oli-obk
f71f75d522a Rollup merge of #134662 - ionicmc-rs:any-safety-docs, r=Amanieu
6fc5a515b01 core: fix const ptr::swap_nonoverlapping when there are pointers at odd offsets in the type
2a7c4107dd3 Rollup merge of #134363 - estebank:derive-default, r=SparrowLii
6a41c5bd0cd Rollup merge of #134672 - Zalathar:revert-coverage-attr, r=wesleywiser
00523c6df55 Use `#[derive(Default)]` instead of manually implementing it
7a6c4cf81d9 Revert "Auto merge of #130766 - clarfonthey:stable-coverage-attribute, r=wesleywiser"
1d47e6a5af8 Auto merge of #134666 - matthiaskrgr:rollup-whe0chp, r=matthiaskrgr
47eacac789d Auto merge of #131311 - rust-lang:cargo_update, r=clubby789
08311d3b105 Rollup merge of #134642 - kpreid:pointerlike-cell, r=compiler-errors
49d33b15720 Rollup merge of #134583 - Enselic:maybe-uninit-transmute, r=workingjubilee
ce16d167b68 Rollup merge of #130289 - intgr-forks:Permissions-readonly-vs-unix-root, r=ChrisDenton
5ec57233686 Fixes safety docs for `dyn Any + Send {+ Sync}`
e31ed41f4ba Implement `PointerLike` for `isize`, `NonNull`, `Cell`, `UnsafeCell`, and `SyncUnsafeCell`.
736e842fc2a Auto merge of #134330 - scottmcm:no-more-rvalue-len, r=matthewjasper
1a45918d751 docs: Permissions.readonly() also ignores root user special permissions
e15ef644395 Improve prose around `as_slice` example of IterMut
d03b67c2429 Specify only that duplicates are discarded, not the order.
e70cbb149f5 Auto merge of #131193 - EFanZh:asserts-vec-len, r=the8472
619365dce13 Delete `Rvalue::Len`
f913021f500 docs: `transmute<&mut T, &mut MaybeUninit<T>>` is unsound when exposed to safe code
0233b4ec888 Impl String::into_chars
56cc86af99f Rollup merge of #134602 - kpreid:pointerlike-doc, r=tgross35
9549c0c5306 Fix forgetting to save statx availability on success
c50706f5f04 Auto merge of #134640 - matthiaskrgr:rollup-xlstm3o, r=matthiaskrgr
42621a94cbe Document collection `From` and `FromIterator` impls that drop duplicate keys.
22c6dcd7b19 Rollup merge of #134630 - fifty-six:master, r=workingjubilee
9c5420a144f Auto merge of #130733 - okaneco:is_ascii, r=scottmcm
a5f05c31739 cargo update
88936d663d5 Eliminate redundant statx syscalls
ae80bcc9736 Rollup merge of #134325 - theemathas:is_null-docs, r=RalfJung
37803ed66ad Rollup merge of #131072 - Fulgen301:windows-rename-posix-semantics, r=ChrisDenton
3edae543ffa Use `&raw` for `ptr` primitive docs
9f89bf55fb2 Unify fs::copy and io::copy
8f6317d2b8a Windows: Use WriteFile to write to a UTF-8 console
dca1911ca13 Avoid short writes in LineWriter
10f58801c5e Document CTFE behavior of methods that call is_null
52c70cefc4e Correctly document is_null CTFE behavior.
8240334bbea ptr::copy: fix docs for the overlapping case
3d7ea928c48 Rollup merge of #134593 - kornelski:less-unwrap, r=jhpratt
8d44917bb2b Rollup merge of #134579 - hkBst:patch-6, r=jhpratt
d1a3570e402 Rollup merge of #134577 - hkBst:patch-5, r=jhpratt
797d88a4f6e Rollup merge of #134576 - hkBst:patch-4, r=jhpratt
0d4f2977e8f Document `PointerLike` implementation restrictions.
39c036dacf9 Less unwrap() in documentation
9eacbacb845 Rollup merge of #123604 - michaelvanstraten:proc_thread_attribute_list, r=ChrisDenton
605e793d35f Rollup merge of #134573 - lukas-code:unimpl-dyn-pointerlike, r=compiler-errors
03b554d4296 Rollup merge of #134570 - hkBst:patch-3, r=joboet
cb9fd5abb2d Rollup merge of #134560 - RalfJung:miri-thread-spawn, r=jhpratt
8ef4e1708c6 Improve prose around into_slice example of IterMut
490893e4337 Improve prose around `as_slice` example of Iter
346bb96231a Improve prose around basic examples of Iter and IterMut
b2c67187209 remove reference to dangling from slice::Iter
8a76ac07549 fix `PointerLike` docs
ea624faa800 unimplement `PointerLike` for trait objects
0348754b8e8 split up `#[rustc_deny_explicit_impl]` attribute
83961772930 mri: add track_caller to thread spawning methods for better backtraces
47c18d11c25 Rollup merge of #134518 - hltj:typo-fix, r=tgross35
a407b54ba53 Rollup merge of #132830 - wr7:substr_range_documentation, r=tgross35
1e42e55ad7f Rollup merge of #126118 - jan-ferdinand:docs_for_vec_set_len, r=the8472
325c2c83a7d fix typos in the example code in the doc comments of `Ipv4Addr::from_bits()`, `Ipv6Addr::from_bits()` & `Ipv6Addr::to_bits()`
2a30c761db7 build: Update libc version
ff8e6c7266c Rollup merge of #134490 - hong9lol:typo, r=jhpratt
1ef2006c9ff Rollup merge of #132056 - weiznich:diagnostic_do_not_recommend_final_tests, r=compiler-errors
36dec866386 fix typo in ptr/mod.rs
ba3898d82f3 Auto merge of #134443 - joshtriplett:use-field-init-shorthand, r=lqd,tgross35,nnethercote
815119ea508 Rollup merge of #134452 - jalil-salame:fix-lazy-cell-docs, r=tgross35
e5a64b47a53 Add 'into_array' conversion destructors for 'Box', 'Rc', and 'Arc';
1e20f65b874 Implement Condvar::wait_timeout for targets without threads
0d4be900a97 Auto merge of #134425 - clubby789:cargo-update, r=jieyouxu
e94636ef1eb fix(LazyCell): documentation of get[_mut] was wrong
9552b94e220 Stabilize `#[diagnostic::do_not_recommend]`
8f6473ca201 Use field init shorthand where possible
4dd1bd84b80 Rollup merge of #134426 - hkBst:patch-3, r=lqd
439ea50e256 Rollup merge of #133265 - the8472:extract-if-ranges, r=cuviper
5b50e4a613b compiler & tools dependencies:     Updating allocator-api2 v0.2.20 -> v0.2.21     Updating annotate-snippets v0.11.4 -> v0.11.5     Updating anyhow v1.0.93 -> v1.0.94     Updating bstr v1.11.0 -> v1.11.1     Updating chrono v0.4.38 -> v0.4.39     Updating clap v4.5.21 -> v4.5.23     Updating clap_builder v4.5.21 -> v4.5.23     Updating clap_complete v4.5.38 -> v4.5.39     Updating clap_lex v0.7.3 -> v0.7.4     Updating colored v2.1.0 -> v2.2.0     Updating console v0.15.8 -> v0.15.10     Updating crossbeam-channel v0.5.13 -> v0.5.14     Updating crossbeam-deque v0.8.5 -> v0.8.6     Updating crossbeam-utils v0.8.20 -> v0.8.21     Updating encode_unicode v0.3.6 -> v1.0.0     Updating fastrand v2.2.0 -> v2.3.0     Updating home v0.5.9 -> v0.5.11     Updating js-sys v0.3.74 -> v0.3.76     Updating libc v0.2.167 -> v0.2.168     Updating miniz_oxide v0.8.0 -> v0.8.1     Updating pest v2.7.14 -> v2.7.15     Updating pest_derive v2.7.14 -> v2.7.15     Updating pest_generator v2.7.14 -> v2.7.15     Updating pest_meta v2.7.14 -> v2.7.15     Updating redox_syscall v0.5.7 -> v0.5.8     Updating rustc-stable-hash v0.1.0 -> v0.1.1     Updating rustix v0.38.41 -> v0.38.42     Updating self_cell v1.0.4 -> v1.1.0     Updating semver v1.0.23 -> v1.0.24     Updating serde v1.0.215 -> v1.0.216     Updating serde_derive v1.0.215 -> v1.0.216       Adding thiserror v2.0.7       Adding thiserror-impl v2.0.7     Updating time v0.3.36 -> v0.3.37     Updating time-macros v0.2.18 -> v0.2.19     Updating tokio v1.41.1 -> v1.42.0     Updating wasm-bindgen v0.2.97 -> v0.2.99     Updating wasm-bindgen-backend v0.2.97 -> v0.2.99     Updating wasm-bindgen-macro v0.2.97 -> v0.2.99     Updating wasm-bindgen-macro-support v0.2.97 -> v0.2.99     Updating wasm-bindgen-shared v0.2.97 -> v0.2.99     Updating wasm-encoder v0.221.0 -> v0.221.2     Updating wasmparser v0.221.0 -> v0.221.2     Updating wast v221.0.0 -> v221.0.2     Updating wat v1.221.0 -> v1.221.2
fbac32d2761 Auto merge of #130766 - clarfonthey:stable-coverage-attribute, r=wesleywiser
f8d5f2f5031 Fix typo in uint_macros.rs
773ce8e12e0 Rollup merge of #134202 - nnethercote:rm-existing_doc_keyword, r=GuillaumeGomez
1ea6333e43b Remove `rustc::existing_doc_keyword` lint.
879b904eae9 Move `doc(keyword = "while")`.
d655fd187d6 Stabilize #[coverage] attribute
7adb8ab561b remove obsolete comment and pub(super) visibility
71740c5e592 remove bounds from vec and linkedlist ExtractIf
f5981cec754 Add a range argument to vec.extract_if
f0297f13dde Rollup merge of #134277 - notriddle:notriddle/inline-into, r=GuillaumeGomez
e88df256c16 Auto merge of #134332 - Zalathar:rollup-oe23hkw, r=Zalathar
93329f34b67 Rollup merge of #134310 - tkr-sh:master, r=Noratrieb
ab4f84cae3e Rollup merge of #133406 - EFanZh:lock-value-accessors, r=Noratrieb
69756988c15 Rollup merge of #130361 - devnexen:sock_cloexec_solaris, r=cuviper
114f5e2c405 Auto merge of #133223 - zachs18:uniquerc-impls, r=Noratrieb
cd6542897cb Asserts the maximum value that can be returned from `Vec::len`
9d2ca9a3477 Auto merge of #134258 - bjorn3:no_public_specialization, r=petrochenkov
66b6e751301 Rollup merge of #134022 - shahn:doc_clarify_extend_for_tuple_version, r=tgross35
3aa32597ed9 Rollup merge of #133986 - olishmollie:tracking-issue-127154-documentation, r=tgross35
b35e7babfbf Correct spelling of CURRENT_RUSTC_VERSION
dca96f2d618 Replace i32 by char in `split_at` & `_unchecked`
5c0062fd6ba Add clarity to the "greater" of `VecDeque::insert`
36d2006d1e1 Replace i32 by char to add clarity
f9d5fcf495e Auto merge of #134296 - matthiaskrgr:rollup-o0sxozj, r=matthiaskrgr
5416be5795f Add documentation for anonymous pipe module
bd52a6d6b8d Rollup merge of #133942 - BD103:black-box-docs, r=saethlin
1d8c71769ac Rollup merge of #134255 - bjoernager:master, r=Noratrieb
cd53ef86a04 Rollup merge of #134254 - hermit-os:hermit-c_char, r=workingjubilee
feb218aac4a Rollup merge of #134252 - hermit-os:hermit-is_absolute, r=tgross35
78ef2d597d4 rustdoc-search: let From and Into be unboxed
c1f85483921 Rollup merge of #134229 - purplesyringa:provenance-docs, r=saethlin
d03fb91bd4d Rollup merge of #134140 - compiler-errors:unsafe-binders-ast, r=oli-obk
c90e7e3ca98 Remove support for specializing ToString outside the standard library
1c55c9fbc60 Auto merge of #134047 - saethlin:inline-fmt-rt, r=m-ou-se
12a12d4f161 Update includes in '/library/core/src/error.rs';
5a5d80fb80a Fix building `std` for Hermit after `c_char` change
bfe81248fa4 Fix `Path::is_absolute` on Hermit
5d2388da58b Reword prelude for AsyncFn stabilization
9731c019cbe Stabilize async closures
fd9b9cd330a Fix typos in docs on provenance
7837903093e feat: clarify how to use `black_box()`
0c7c57b9e3c Add unwrap_unsafe_binder and wrap_unsafe_binder macro operators
72e40f07dfe Rollup merge of #134179 - zachs18:align_offset_mut_ptr_doc, r=workingjubilee
67ef22c7127 Rollup merge of #134178 - ehuss:stabilize-2024-prelude, r=amanieu,traviscross,tgross35
0834c1f1db0 Rollup merge of #134155 - sthibaul:unsafe_op_in_unsafe_fn, r=tgross35
09d16d15513 Rollup merge of #133859 - bjorn3:move_tests_to_alloctests, r=tgross35
94ec2233bd0 Rollup merge of #122003 - mati865:gnullvm-build-libunwind, r=petrochenkov
fa1541a5660 Stabilize the Rust 2024 prelude
6942ce52e34 Auto merge of #134177 - matthiaskrgr:rollup-hgp8q60, r=matthiaskrgr
3a1745b09e5 Rollup merge of #133598 - ChayimFriedman2:get-many-mut-detailed-err, r=scottmcm
566ea0f3dd8 Rollup merge of #132975 - arichardson:ffi-c-char, r=tgross35
ed224f8c25a Remove consteval note from <*mut T>::align_offset docs.
197f4744559 Rollup merge of #134079 - tbu-:pr_doc_x8_to_from_xe_bytes, r=jhpratt
ff50c42ded8 Add a note saying that `{u8,i8}::from_{be,le,ne}_bytes` is meaningless
809dc2d9649 Forbid unsafe_op_in_unsafe_fn in hurd-specific os and sys files
420c83c0cd8 Rollup merge of #134116 - RalfJung:const_nonnull_new, r=jhpratt
bb71e111888 Rollup merge of #134100 - eholk:noop-rustc-const-stable, r=dtolnay
d846ee80d9e Add references to the specific ABI documents
faa946af9e7 Remove l4re from the unsigned char operating system list
c589942e7af De-duplicate and improve definition of core::ffi::c_char
f5dfac33df4 stabilize const_nonnull_new
e24f63040e1 Rollup merge of #133472 - rust-wasi-web:master, r=joboet
0c9c5edf2d9 Rollup merge of #133456 - clubby789:cargo-update, r=ChrisDenton
1079f47e289 Rollup merge of #133184 - osiewicz:wasm-fix-infinite-loop-in-remove-dir-all, r=Noratrieb
577c96562be Remove rustc_const_stable attribute on const NOOP
7234c4f09e7 Rollup merge of #134032 - snprajwal:fix-docs, r=joboet
24e395ad1ab core: use public method instead of instrinsic
3a36268f22b core: improve comments
a09c0403f2d Auto merge of #134052 - matthiaskrgr:rollup-puxwqrk, r=matthiaskrgr
a9c38ee0d29 Rollup merge of #134050 - RalfJung:miri-sync, r=RalfJung
6fa0126c89c Rollup merge of #133880 - ChrisDenton:homedir, r=Mark-Simulacrum
0e491a9a3b1 Rollup merge of #133789 - rossmacarthur:then-with-doc-alias, r=Mark-Simulacrum
ed50cd40ea2 Switch inline(always) in core/src/fmt/rt.rs to plain inline
886328011ef Downgrade cc
e9bfb10f867 Rollup merge of #134013 - BLANKatGITHUB:intrinsic, r=saethlin
4e0eec33e6f Adds new intrinsic declaration
c1d57f82a0e Rollup merge of #133987 - Will-Low:DefineTlsAcronym, r=workingjubilee
8f4016eba75 docs: better examples for `std::ops::ControlFlow`
a73f6c64a01 Merge from rustc
fd6e8d7358e Auto merge of #133978 - matthiaskrgr:rollup-6gh1iho, r=matthiaskrgr
069b38123a6 Merge from rustc
5852362e5d1 Define acronym for thread local storage
70e63e17b2c Auto merge of #118159 - EliasHolzmann:formatting_options, r=m-ou-se
3bcad5cb18b Rollup merge of #132187 - shahn:extend_more_tuples, r=dtolnay
f761e9c676f Rollup merge of #130254 - GrigorenkoPV:QuotaExceeded, r=dtolnay
ef4c4ae6b50 Rollup merge of #130209 - GrigorenkoPV:CrossesDevices, r=dtolnay
11e4cd165ae Auto merge of #133089 - eholk:stabilize-noop-waker, r=dtolnay
aa5fc647d04 core: implement `bool::select_unpredictable`
70153836edd Rollup merge of #133790 - HypheX:improve-vec-docs, r=harudagondi,workingjubilee
ca5965a8639 Merge from rustc
706da00d0ff Rollup merge of #133821 - Kobzol:replace-black-with-ruff, r=onur-ozkan
debbad652d9 Stabilize noop_waker
fa414d5787d Access members of `FormattingOptions` directly instead of via getters/setters
02156e9faf6 Removed constness for methods receiving a `&mut` parameter
a0526432656 Added better reason for exposing `flags` and `get_flags` as unstable
9492becae41 Formatted
322c8b766b2 Refactored FormattingOptions to use a bitmask for storing flags
a1b4810cfcf Revert "Turned public+unstable+hidden functions into private functions"
8bd8c11c06a Turned public+unstable+hidden functions into private functions
177d5fac526 Made all fns const
b06f16ba681 impl Default for fmt::FormattingOptions
157c4f662e0 Fixed copy+paste error in comment
8fe085f1349 fmt::FormattingOptions: Renamed `alignment` to `align`
7de3770f6c6 Formatter::with_options: Use different lifetimes
3d16495ff6c Fixed another broken test
4d3d0470d23 Added struct `fmt::FormattingOptions`
29f1b2498b6 Formatter: Access members via getter methods wherever possible
7f0a865ead6 Improve documentation
4155a213e3e Add libc funcitons only for wasm32-wasip1-threads.
a58d30811b5 Fix compilation for wasm32-wasip1 (without threads).
2834b3e1213 Rollup merge of #133882 - jyn514:doc-backtraces, r=saethlin
37f75ad5a08 Rollup merge of #133844 - RalfJung:simd_relaxed_fma-nondet, r=workingjubilee
b89e20d1e5e Rollup merge of #127565 - esp-rs:xtensa-vaargs, r=workingjubilee
7af25276b17 Rollup merge of #133863 - oli-obk:push-pystoxvtvssx, r=lqd
f4ab4b484fe Rollup merge of #118833 - Urgau:lint_function_pointer_comparisons, r=cjgillot
db3e689077b Improve comments for the default backtrace printer
8874ede0208 Expand home_dir docs
33345baf830 Reformat Python code with `ruff`
6cfe2423972 Rename `core_pattern_type` and `core_pattern_types` lib feature  gates to `pattern_type_macro`
8d19d7cf046 Move some alloc tests to the alloctests crate
b75783a7146 clarify simd_relaxed_fma non-determinism
04abf699af3 Rollup merge of #133651 - scottmcm:nonnull-nonzero-no-field-projection, r=oli-obk
59c58640a80 Auto merge of #133818 - matthiaskrgr:rollup-iav1wq7, r=matthiaskrgr
6bebe1c8423 Rollup merge of #133726 - joshtriplett:breakpoint, r=oli-obk
57dbb716624 Rollup merge of #132937 - xmh0511:master, r=m-ou-se
1a1fa731d58 Update `NonZero` and `NonNull` to not field-project (per MCP807)
8df6841cf41 Rollup merge of #133796 - TDecking:borrowing-sub, r=tgross35
5248edd2723 Rollup merge of #133762 - RalfJung:const-size-of-val, r=workingjubilee
97f98da1fce Rollup merge of #133696 - RalfJung:const-hashmap, r=cuviper
592d87fafca Use UNIX thread_local implementation for WASI.
0b39639fa39 Update the definition of `borrowing_sub`
2f0494f936b Teach rust core about Xtensa VaListImpl and add a custom lowering of vaarg for xtensa.
fb668a45993 Add `core::arch::breakpoint` and test
1ae06991054 Add doc alias 'then_with' for `then` method on `bool`
04e41db91f5 ./x miri: fix sysroot build
a351bae8511 Rollup merge of #133395 - calebzulawski:simd_relaxed_fma, r=workingjubilee
6dd07606b78 Rollup merge of #133763 - Urgau:f16-midpoint-const-feat, r=Amanieu
7ef9e82c0ea Rollup merge of #133701 - kornelski:c-str, r=workingjubilee
e5e10c242ac Rollup merge of #131713 - tgross35:stabilize-const_maybe_uninit_write, r=RalfJung,dtolnay
eb96f323fa0 stabilize const_{size,align}_of_val
2b42df79e1a Stabilize `const_maybe_uninit_write`
7b043597c80 Use c"lit" for CStrings without unwrap
b06cd98bd77 Allow fn pointers comparisons lint in library
3d21446fa49 Fix `f16::midpoint` const feature gate
072ea73a1f6 Rollup merge of #133743 - bjoernager:slice-as-array, r=joboet
21529533fde stabilize const_collections_with_hasher and build_hasher_default_const_new
166cfb13136 Auto merge of #133728 - jhpratt:rollup-k1i60pg, r=jhpratt
ec43e851a59 Fix docs for '<[T]>::as_array';
4a95157e48e Rollup merge of #133678 - Urgau:stabilize-ptr_fn_addr_eq, r=jhpratt
f7d558398a2 Rollup merge of #133672 - RalfJung:const-stability-cleanup, r=jhpratt
cf34b1540ea Rollup merge of #133711 - cod10129:master, r=Noratrieb
45418e9d2a6 Rollup merge of #131784 - Urgau:stabilize-midpoint, r=dtolnay
0ba4fb63cc1 Rollup merge of #131416 - okaneco:const_copy, r=RalfJung
58b87f49645 Mark `slice::copy_from_slice` unstably const
50363a21191 add isatty alias for is_terminal
06c9316079c Rollup merge of #133674 - scottmcm:chain-carrying-add, r=Amanieu
b2f5848193a Rollup merge of #133669 - RalfJung:const_swap_splitup, r=dtolnay
833dd81deba Run `cargo update` and update licenses
5c2d5ca1784 Stabilize unsigned `num_midpoint` feature
f4630c8d109 Rollup merge of #133686 - samueltardieu:push-xkxwxzxqokuu, r=compiler-errors
487eef7a511 Rollup merge of #133622 - mkroening:exception-blog, r=cuviper
84b80170276 Rollup merge of #133602 - SanchithHegde:fix-pathbuf-example-codeblocks, r=cuviper
2bfc089b74f Rollup merge of #133515 - SteveLauC:fix/hurd, r=ChrisDenton
964c0c061fe Rollup merge of #128184 - joboet:refactor_pthread_sync, r=workingjubilee
7b3ae4b14e8 Auto merge of #133684 - RalfJung:rollup-j2tmrg7, r=RalfJung
b7abc7692ff Switch rtems target to panic unwind
afea5597238 Add diagnostic item for `std::ops::ControlFlow`
d17c5979b26 Rollup merge of #133670 - RalfJung:hashbrown, r=Amanieu
6965d9c1b06 Auto merge of #133659 - jieyouxu:rollup-576gh4p, r=jieyouxu
e142fe090ef std: clarify comments about initialization
0236bd2058d Stabilize `ptr::fn_addr_eq`
a54b5c85a48 Add value accessor methods to `Mutex` and `RwLock`
ec760c9108f fix: hurd build, stat64.st_fsid was renamed to st_dev
550bfc05b24 rustc_allow_const_fn_unstable is not used in proc_macro
1ccf19dc122 get rid of a bunch of unnecessary rustc_const_unstable
70183029716 Fix chaining `carrying_add`s
dd29fadf097 add test for bytewise ptr::swap of a pointer
a7f3a3cc076 remove a whole bunch of unnecessary const feature gates
943aa44906f Abstract `ProcThreadAttributeList` into its own struct
e6a732b0db2 move swap_nonoverlapping constness to separate feature gate
9d56b9dbedd bump hashbrown version
e423a339a39 move slice::swap_unchecked constness to slice_swap_unchecked feature gate
46851ab5cc9 Rollup merge of #133548 - cuviper:btreeset-entry-api, r=Mark-Simulacrum
b6bb042b28c Rollup merge of #133496 - rust-wasi-web:wasi-available-parallelism, r=Amanieu
5e218fe390d Rollup merge of #133106 - BLANKatGITHUB:intrinsic, r=RalfJung
3b2bca7e9f0 Rollup merge of #132515 - kornelski:home_fix, r=jhpratt
407d5985ad5 Rollup merge of #133625 - RalfJung:custom-mir-debug-info, r=compiler-errors
a0b4e2ff644 Rollup merge of #116161 - Soveu:varargs2, r=cjgillot
eeb808edfce Auto merge of #133533 - BoxyUwU:bump-boostrap, r=jieyouxu,Mark-Simulacrum
2992ba7e050 refine mir debuginfo docs
bf4636bee39 Doc comment custom MIR debuginfo.
547854bab55 update link to "C++ Exceptions under the hood" blog
c145db8fec3 Rollup merge of #133530 - timvisee:master, r=jhpratt
3ccd6102eae Rollup merge of #133466 - aksh1618:patch-1, r=thomcc
e5e4ec16636 fix: fix codeblocks in `PathBuf` example
069a3f311a4 Auto merge of #123244 - Mark-Simulacrum:share-inline-never-generics, r=saethlin
aa2609a583f Change `GetManyMutError` to match T-libs-api decision
e97ec53b763 Share inline(never) generics across crates
68d3ed3d908 Also use zero when referencing to capacity or length
657e081ba8f Use consistent wording in docs, use zero instead of 0
e97f024d14b Auto merge of #133561 - GuillaumeGomez:rollup-g4upmv4, r=GuillaumeGomez
c8ce91a5e34 Rollup merge of #133543 - mustartt:aix-lgammaf_r-shim, r=cuviper
3d06a7c117e Rollup merge of #133512 - bjoernager:slice-as-array, r=Amanieu
5a2e12351d7 Rollup merge of #129409 - grinapo:patch-1, r=Amanieu
64d66ce14ba Rollup merge of #133498 - GuillaumeGomez:missing-examples, r=joboet
95afca906a6 Stabilize `extended_varargs_abi_support`
8416a6beeca Fill in a `BTreeSet::entry` example
32276df18d5 Add a tracking issue for `btree_set_entry`
0b8b46754ae Add `BTreeSet` entry APIs to match `HashSet`
de67dab738c fmt
b255bcd4709 update cfgs
d5ee74c8b2c Implement code review
cc94a61244f replace placeholder version
ea762e31d64 Auto merge of #133369 - Zalathar:profiler-builtins-no-core, r=jieyouxu
be4d7f97a51 Rollup merge of #133449 - joboet:io_const_error, r=tgross35
fddc6136036 Rollup merge of #133402 - compiler-errors:drop-and-destruct, r=lcnr
b5baaaa3d2a Auto merge of #133505 - compiler-errors:rollup-xjp8hdi, r=compiler-errors
11a4630ce28 chore: Improve doc comments
d3ade682724 Add '<[T]>::as_array', '<[T]>::as_mut_array', '<*const [T]>::as_array', and '<*mut [T]>::as_mut_array' conversion methods;
cdf278252ad std: update internal uses of `io::const_error!`
182e0fde338 Rollup merge of #133435 - RalfJung:test_downgrade_observe, r=tgross35
6e22739b070 Rollup merge of #133282 - tgross35:maybe-uninit-debug, r=Amanieu
585dfc5b52e Rollup merge of #133136 - ChayimFriedman2:get-many-mut, r=Amanieu
75101ecc49d Rollup merge of #133042 - cuviper:btreemap-insert_entry, r=Amanieu
c590ef03caa Rollup merge of #133464 - RalfJung:whitespace-panic, r=joboet
b0910ed9eec Rollup merge of #133419 - CromFr:add-path-strip_prefix-test-example, r=Amanieu
ec61c1e49a2 Add missing code examples on `LocalKey`
c8c96e00fdc thread::available_parallelism for wasm32-wasip1-threads
85ceea5ea32 Refactor ReadDir into a state machine
9e9b5eeb86b Run TLS destructors for wasm32-wasip1-threads
2dec6432dc5 Fix typos in pin.rs
02b3316cbb9 std::thread: avoid leading whitespace in some panic messages
ee91620dbef Constify Drop and Destruct
7abb3262e5d std: expose `const_io_error!` as `const_error!`
786c3e18dcb Auto merge of #133247 - GuillaumeGomez:reduce-integer-display-impl, r=workingjubilee
992b1d2573c Support ranges in `<[T]>::get_many_mut()`
41bd055eaed miri: disable test_downgrade_observe test on macOS
ca2246ba724 Rollup merge of #132982 - suaviloquence:2-doc-changed-alloc-methods, r=Mark-Simulacrum
6e2012f32d9 Rollup merge of #132533 - SUPERCILEX:patch-4, r=Mark-Simulacrum
ed2598bafce fix `Allocator` method names in `alloc` free function docs
fd68d3e37ee Rollup merge of #133298 - n0toose:remove-dir-all-but-not-paths, r=Noratrieb
74f078b7290 Rollup merge of #133260 - compiler-errors:deref, r=fee1-dead
d1cf863b68f Rollup merge of #132730 - joboet:after_main_sync, r=Noratrieb
3f9124b0cf3 Added a doc test for std::path::strip_prefix
cea713a6711 Rollup merge of #133389 - eduardosm:stabilize-const_float_methods, r=RalfJung
04dab39dbea Rollup merge of #133301 - GuillaumeGomez:add-example-wrapping-neg, r=workingjubilee
dd7b253bb5d changes old intrinsic declaration to new declaration
ce181b51151 Auto merge of #132611 - compiler-errors:async-prelude, r=ibraheemdev
9fc2c20cb23 Auto merge of #132597 - lukas-code:btree-plug-leak, r=jhpratt
7f63ef45955 Make profiler_builtins `#![no_core]` instead of just `#![no_std]`
75fe14cbea0 Remove unnecessary `#![allow(unused_features)]`
8ff9319664c Sort and separate lint/feature attributes in `profiler_builtins`
000c27de7b8 Constify Deref and DerefMut
e105ad36675 Match simd_relaxed_fma documentation to fmuladd intrinsic
bc1b909d1cf Auto merge of #133379 - jieyouxu:rollup-00jxo71, r=jieyouxu
a0222ed6f11 Add simd_relaxed_fma intrinsic
18a772c0abf Stabilize `const_float_methods`
1fa5b7136ba Auto merge of #133377 - jieyouxu:rollup-n536hzq, r=jieyouxu
5048c462f73 Improve code by using `unsigned_abs`
e8829bde64b Rollup merge of #133237 - fee1-dead-contrib:constadd, r=compiler-errors
4151e360996 Rollup merge of #133332 - bjoernager:const-array-as-mut-slice, r=jhpratt
842ed39a839 Rollup merge of #131505 - madsmtm:darwin_user_temp_dir, r=dtolnay
0b0403aade1 Auto merge of #132994 - clubby789:cc-bisect, r=Kobzol
44de774c840 Auto merge of #133360 - compiler-errors:rollup-a2o38tq, r=compiler-errors
6ea276ef35c Rollup merge of #133264 - lolbinarycat:os-string-truncate, r=joboet
5a6926c6a54 Auto merge of #132329 - compiler-errors:fn-and-destruct, r=lcnr
8cace9e9e4d Shorten the `MaybeUninit` `Debug` implementation
9fff2a79a89 aix: create shim for lgammaf_r
0c2dadaf889 Add code example for `wrapping_neg` method for signed integers
b0893a5fb1d Deduplicate checking drop terminator
25cfe493429 Gate const drop behind const_destruct feature, and fix const_precise_live_drops post-drop-elaboration check
df5f774cf44 Auto merge of #133339 - jieyouxu:rollup-gav0nvr, r=jieyouxu
fd9dfbfa58e Rollup merge of #133337 - ColinFinck:thread-scoped-fix-typo, r=joboet
6ca197967f0 Rollup merge of #133330 - RalfJung:close, r=the8472
8cec9604aec Rollup merge of #133313 - thesummer:fix-arc4random, r=cuviper
bd8c70b7603 Rollup merge of #133288 - bjoernager:const-array-each-ref, r=jhpratt
c9a80ad59f4 Rollup merge of #133238 - heiher:loong-stdarch-rexport, r=Amanieu
0eb96d1dc9c Auto merge of #130867 - michirakara:steps_between, r=dtolnay
c57bc831f1c Fix typo in `std::thread::Scope::spawn` documentation.
b621e5886f5 Mark '<[T; N]>::as_mut_slice' as 'const';
01df57db50c library: update comment around close()
125a43354b7 Don't try to use confstr in Miri
dc9cd998086 Auto merge of #129238 - umgefahren:stabilize-ipv6-unique-local, r=dtolnay
e515d5fdd20 distinguish overflow and unimplemented in Step::steps_between
7e9c665fcec Use arc4random of libc for RTEMS target
fb92c4e9f3f Mention that std::fs::remove_dir_all fails on files
7edd22c19b6 Mark and implement 'each_ref' and 'each_mut' in '[T; N]' as const;
e411c3361f6 constify `Add`
956d316aa96 Rollup merge of #131736 - hoodmane:emscripten-wasm-bigint, r=workingjubilee
8defa07da76 implement OsString::truncate
9dd9ebdafe5 Rollup merge of #133226 - compiler-errors:opt-in-pointer-like, r=lcnr
c3a7a9ea54d Rollup merge of #130800 - bjoernager:const-mut-cursor, r=joshtriplett
05d96c22b33 Rollup merge of #129838 - Ayush1325:uefi-process-args, r=joboet
7691bc11882 Make PointerLike opt-in as a trait
5c581c3aadf Reduce integer `Display` implementation size
c819ed39def Stabilize const_pin_2
bb443655059 re-export `is_loongarch_feature_detected`
63a5059a757 Rollup merge of #132732 - gavincrawford:as_ptr_attribute, r=Urgau
f48d6a9b1d9 UniqueRc: platform-specific AsFd/Handle/etc impls to mirror Rc
e3055f65ed6 UniqueRc: PinCoerceUnsized and DerefPure
f53e523d3c8 UniqueRc: comparisons and Hash
5f8f1a32611 Rollup merge of #133183 - n0toose:improve-remove-dir-docs, r=joboet
88965979fa9 Rollup merge of #125405 - m-ou-se:thread-add-spawn-hook, r=WaffleLapkin
4da0cb33032 Rollup merge of #123947 - zopsicle:vec_deque-Iter-as_slices, r=Amanieu
31096758b3f UniqueRc: Add more trait impls.
4f1707779d3 Update doc comments for spawn hook.
e7cb7389192 Address review comments.
595f0d9f0f8 Fix tracking issue.
4fe82dfc2b3 Add tracking issue.
56ea82557bd Use Send + Sync for spawn hooks.
977c4c304f2 Add thread Builder::no_hooks().
e253c673db1 Update thread spawn hooks.
053640f6f35 Use add_spawn_hook for libtest's output capturing.
2a846d803f4 Add std::thread::add_spawn_hook.
525dab97bb6 Correct comments concerning updated dangling pointer lint
d2430399b75 Auto merge of #133205 - matthiaskrgr:rollup-xhhhp5u, r=matthiaskrgr
3c67ef9e5a2 Rollup merge of #133200 - RalfJung:miri-rwlock-test, r=tgross35
3516801bae2 ignore an occasionally-failing test in Miri
207627c1104 Rollup merge of #133182 - RalfJung:const-panic-inline, r=tgross35
fb525301a5f Rollup merge of #132758 - nnethercote:improve-get_key_value-docs, r=cuviper
3bd5a7f4276 Mention std::fs::remove_dir_all in std::fs::remove_dir
40ecf6c22bf wasi/fs: Improve stopping condition for <ReadDir as Iterator>::next
6da3fda3593 Bump `stdarch` to the latest master
d70eaaa68ec const_panic: inline in bootstrap builds to avoid f16/f128 crashes
1da1cc9cf07 std: allow after-main use of synchronization primitives
307d6f22226 Auto merge of #133160 - jhpratt:rollup-wzj9q15, r=jhpratt
e09425b475c Rollup merge of #133145 - kornelski:static-mutex, r=traviscross
58da10b98d8 Auto merge of #128219 - connortsui20:rwlock-downgrade, r=tgross35
997906157b4 rename rustc_const_stable_intrinsic -> rustc_intrinsic_const_stable_indirect
601132a1007 Improve `{BTreeMap,HashMap}::get_key_value` docs.
2e135b01a22 Document alternatives to `static mut`
bde38e315d0 Auto merge of #120370 - x17jiri:likely_unlikely_fix, r=saethlin
b407a672d3c Likely unlikely fix
f1532b9b5b2 Rollup merge of #133126 - ohno418:fix-String-doc, r=jhpratt
91ab1736cfe Rollup merge of #133116 - RalfJung:const-null-ptr, r=dtolnay
6f53685158e alloc: fix `String`'s doc
61efdcc7741 clean up const stability around UB checks
c313f7e9291 stabilize const_ptr_is_null
6aced621042 Rollup merge of #132449 - RalfJung:is_val_statically_known, r=compiler-errors
0250296af6c Rollup merge of #131717 - tgross35:stabilize-const_atomic_from_ptr, r=RalfJung
d27c37b4c4a reduce threads in downgrade test
8619ddabd64 fix `DOWNGRADED` bit unpreserved
45a5a4e3f1d fix memory ordering bug + bad test
525248ca5db add safety comments for queue implementation
e2543ddca9c add `downgrade` to `queue` implementation
c05bcc9c7fb modify queue implementation documentation
ddd48e97263 add `downgrade` to `futex` implementation
f9bcdb4474d add simple `downgrade` implementations
54967218559 add `downgrade` method onto `RwLockWriteGuard`
dcda8df4676 add `RwLock` `downgrade` tests
49b742da57d Rollup merge of #133050 - tgross35:inline-f16-f128, r=saethlin
9b405001aa8 Rollup merge of #133048 - cyrgani:ptr-doc-update, r=Amanieu
3357615fc72 Rollup merge of #133019 - sorairolake:add-missing-period-and-colon, r=tgross35
7e17a11e61d Rollup merge of #132984 - sunshowers:pipe2, r=tgross35
e8a67ba743b Rollup merge of #132977 - cberner:fix_solaris, r=tgross35
dbd5fb14b17 Rollup merge of #132790 - aDotInTheVoid:ioslice-asslice-rides-again, r=cuviper
1b4ad7703eb Pass `f16` and `f128` by value in `const_assert!`
e4c94766246 Remove one stray space.
58c02681d8f use `&raw` in `{read, write}_unaligned` documentation
1239f03791f btree: add `{Entry,VacantEntry}::insert_entry`
9aa607df7aa Auto merge of #132709 - programmerjake:optimize-charto_digit, r=joshtriplett
78626b047b6 Rollup merge of #133027 - no1wudi:master, r=jhpratt
c6347be9b59 Auto merge of #133026 - workingjubilee:rollup-q8ig6ah, r=workingjubilee
28f9f7f6736 Fix a copy-paste issue in the NuttX raw type definition
c1bd3483194 Rollup merge of #133008 - onur-ozkan:update-outdated-comment, r=jieyouxu
51884ccd46d Rollup merge of #133004 - cuviper:unrecover-btree, r=ibraheemdev
9d1b5289926 Rollup merge of #133003 - zachs18:clonetouninit-dyn-compat-u8, r=dtolnay
275fab34cf3 Rollup merge of #132907 - BLANKatGITHUB:intrinsic, r=saethlin
265f69fd7de Rollup merge of #131304 - RalfJung:float-core, r=tgross35
521d06b1f3a Auto merge of #122770 - iximeow:ixi/int-formatting-optimization, r=workingjubilee
0874a0035d0 docs: Fix missing colon in methods for primitive types
524cbdaf3b7 docs: Fix missing period in methods for integer types
948e53de4bb Auto merge of #133006 - matthiaskrgr:rollup-dz6oiq5, r=matthiaskrgr
4a5f8c13225 update outdated comment about test-float-parse
5b9d092b2cf Rollup merge of #126046 - davidzeng0:mixed_integer_ops_unsigned_sub, r=Amanieu
0ec0a66f5ca Auto merge of #132662 - RalfJung:const-panic-inlining, r=tgross35
3a28e6e022a Update core CloneToUninit tests
35e1775fe1f btree: simplify the backdoor between set and map
0495cd155b6 Bump `cc`
ec80ac9760a Fix compilation error on Solaris due to flock usage
cdcb1d2d589 Auto merge of #132556 - clubby789:cargo-update, r=Mark-Simulacrum
a66f410edcd Run `cargo update` and update licenses
1cccc6a94cc const_panic: don't wrap it in a separate function
f79ecc84837 [illumos] use pipe2 to create anonymous pipes
46925ba44db Auto merge of #132883 - LaihoE:vectorized_is_sorted, r=thomcc
4ccf16b1eb0 Auto merge of #132972 - matthiaskrgr:rollup-456osr7, r=matthiaskrgr
fe508063c28 Rollup merge of #132970 - tyilo:nonzero-u-div-ceil-issue, r=tgross35
e35eeacfc3e Rollup merge of #132966 - RalfJung:const_option_ext, r=jhpratt
d1b467ef3b0 Rollup merge of #132948 - RalfJung:const_unicode_case_lookup, r=Noratrieb
5a207560656 Rollup merge of #132851 - chansuke:update-comment, r=thomcc
ff8020378de Auto merge of #132870 - Noratrieb:inline-int-parsing, r=tgross35
7f43800757b Add tracking issue number to unsigned_nonzero_div_ceil feature
dfdaf4d0da8 Make `CloneToUninit` dyn-compatible
a6ab20eb090 stabilize const_option_ext
aef6c7529bf Rollup merge of #132541 - RalfJung:const-stable-extern-crate, r=compiler-errors
9792fc3fa32 stabilize const_unicode_case_lookup
7cd4be6ea3f Stabilize `Ipv6Addr::is_unique_local` and `Ipv6Addr::is_unicast_link_local`
15b4af14a52 adds new declaration to codegen
513cbf8297b Auto merge of #132943 - matthiaskrgr:rollup-164l3ej, r=matthiaskrgr
a636ccb7e8c Rollup merge of #132914 - rcorre:cell-grammar, r=tgross35
5af9cd39bdb Rollup merge of #132895 - scottmcm:generalize-nonnull-from-raw-parts, r=ibraheemdev
bd35c207e83 remove no-longer-needed abs_private
71c0928f8e5 allow rustc_private feature in force-unstable-if-unmarked crates
2d1521ec8d3 Rollup merge of #132929 - cuviper:check-alloc_zeroed, r=tgross35
ba37edb8236 Rollup merge of #132869 - lolbinarycat:library-fix-too_long_first_doc_paragraph, r=tgross35
c3aa0fd6d20 Rollup merge of #132847 - RalfJung:addr-dont-expose, r=Mark-Simulacrum
7b678a96b68 Auto merge of #132919 - matthiaskrgr:rollup-ogghyvp, r=matthiaskrgr
fe2df9994be a release operation synchronizes with an acquire operation
59ea28527ec Check for null in the `alloc_zeroed` example
422c4e8dc6b new intrinsic declaration
be313a69b63 new intrinsic declaration
bf896164821 Rollup merge of #132144 - adetaylor:receiver-trait-itself, r=wesleywiser
95128df8753 Rollup merge of #120077 - SUPERCILEX:set-entry, r=Amanieu
5b2d93dadf0 Update dangling pointer tests
ed8add25d55 Tag relevant functions with #[rustc_as_ptr] attribute
eee61579d6d Auto merge of #132902 - matthiaskrgr:rollup-43qgg3t, r=matthiaskrgr
6bc254b09ed Update grammar in std::cell docs.
bae8842bd22 Emscripten: link with -sWASM_BIGINT
6bc8a98cbb4 Rollup merge of #130999 - cberner:flock_pr, r=joboet
2e3a4db79e1 Auto merge of #127589 - notriddle:notriddle/search-sem-3, r=GuillaumeGomez
08e1228e615 Generalize `NonNull::from_raw_parts` per ACP362
f9a5ed02f86 vectorize slice::is_sorted
318b54e4aa4 `#[inline]` integer parsing functions
2b0fd040446 split up the first paragraph of doc comments for better summaries
863ba5a66b4 Update the doc comment of `ASCII_CASE_MASK`
192601ab1ba elem_offset / subslice_range: use addr() instead of 'as usize'
458dbbd00c3 Rollup merge of #132136 - RalfJung:target-feature-abi-compat, r=Mark-Simulacrum
29571c684a7 honor rustc_const_stable_indirect in non-staged_api crate with -Zforce-unstable-if-unmarked
f1e6a403adc Improve documentation of `element_offset` and related methods
6a9d2a411f5 Rename `elem_offset` to `element_offset`
310a91d1a6a Add as_slice/into_slice for IoSlice/IoSliceMut.
450aa1288bd Rollup merge of #132778 - lolbinarycat:io-Error-into_inner-docs, r=cuviper
e53a11a5e8f update io::Error::into_inner to acknowlage io::Error::other
3a3ed52ed1d Address review comments
70d11b2f164 Update library/std/src/sys/pal/windows/fs.rs
87dd8ff600f Auto merge of #132717 - RalfJung:rustc_safe_intrinsic, r=compiler-errors
d51ad86fa5a remove support for rustc_safe_intrinsic attribute; use rustc_intrinsic functions instead
362e652f6c6 Rollup merge of #132738 - cuviper:channel-heap-init, r=ibraheemdev
ca7caf9db4c mark is_val_statically_known intrinsic as stably const-callable
36fd72193f9 Rollup merge of #132696 - fortanix:raoul/rte-235-fix_fmodl_missing_symbol_issue, r=tgross35
256a7ced72c Rollup merge of #132639 - RalfJung:intrinsics, r=workingjubilee,Amanieu
79569ee933c Initialize channel `Block`s directly on the heap
db2b12c9066 core: move intrinsics.rs into intrinsics folder
0fa9a6c6c9e Auto merge of #132714 - mati865:update-memchr, r=tgross35
6d60a72a8d9 Rollup merge of #132715 - tabokie:fix-lazy-lock-doc, r=Noratrieb
17e5d3b5522 Rollup merge of #132665 - tyilo:nonzero-u-div-ceil, r=joboet
da1331d6c40 Separate f128 `%` operation to deal with missing `fmodl` symbol
57cef21786e Auto merge of #132705 - kornelski:inline-repeat, r=tgross35
7802368a477 fix lazylock comment
a5d839dc87d Auto merge of #131888 - ChrisDenton:deopt, r=ibraheemdev
64f77df1882 unpin and update memchr
2d7984a960f optimize char::to_digit and assert radix is at least 2
7317cd4555d Inline str::repeat
8446e1a5f47 Rollup merge of #132617 - uellenberg:fix-rendered-doc, r=cuviper
df1594bbcf8 Auto merge of #131721 - okaneco:const_eq_ignore_ascii_case, r=m-ou-se
7e7f9ed6a32 Add `is_ascii` function optimized for x86-64 for [u8]
b76ab440a07 Auto merge of #132500 - RalfJung:char-is-whitespace-const, r=jhpratt
a442ac02b25 Add new implementation benchmark
5c39de3744c Add new unstable feature `const_eq_ignore_ascii_case`
3adbc621669 Auto merge of #132664 - matthiaskrgr:rollup-i27nr7i, r=matthiaskrgr
8ddab887db1 Change some code blocks to quotes in rendered std doc
ef47b33a8cb Rollup merge of #131261 - clarfonthey:unsafe-cell-from-mut, r=m-ou-se
dc052ced3b7 Auto merge of #132661 - matthiaskrgr:rollup-npytbl6, r=matthiaskrgr
9be5c2dc1de Implement div_ceil for NonZero<unsigned>
b39a2860435 Rollup merge of #132571 - RalfJung:const_eval_select_macro, r=oli-obk
3a28e6ad6b1 Rollup merge of #132473 - ZhekaS:core_fmt_radix_no_panic, r=joboet
46c3034cd24 Rollup merge of #132153 - bjoernager:const-char-encode-utf16, r=dtolnay
d52956082bc add const_eval_select macro to reduce redundancy
9250b4c4b59 Rollup merge of #132609 - NotWearingPants:patch-1, r=Amanieu
54bd3adf0e3 Rollup merge of #132606 - eduardosm:char-slice-str-pattern-doc, r=tgross35
6b9a5af164d most const intrinsics don't need an explicit rustc_const_unstable any more
49143b3b622 add new rustc_const_stable_intrinsic attribute for const-stable intrinsics
031f9c28368 convert all const-callable intrinsics into the new form (without extern block)
127883633f8 docs: fix grammar in doc comment at unix/process.rs
ff59429bddf Improve example of `impl Pattern for &[char]`
a68e38323fc Add AsyncFn* to to the prelude in all editions
b8fe4fde115 Fixed typo, rebased
29a8fc997da Updated SAFETY comment to address underflow
008a74c9f20 Replace checked slice indexing by unchecked to support panic-free code
ceac65d1adf Rollup merge of #132579 - RalfJung:rustc-std-workspace-crates, r=Amanieu
2ccb95e8380 btree: don't leak value if destructor of key panics
27c96552095 Stabilise 'const_char_encode_utf16';
509dd073b69 Auto merge of #132586 - workingjubilee:rollup-qrmn49a, r=workingjubilee
4926ac05cdf update rustc-std-workspace crates
8d4546d424f Rollup merge of #132423 - RalfJung:const-eval-align-offset, r=dtolnay
ae28b877064 Auto merge of #132434 - tgross35:f128-tests, r=workingjubilee
b82b6a45cf7 Fix and undeprecate home_dir()
db581d1e2bf Enable `f128` tests on all non-buggy platforms 🎉
9e03f8084c3 Auto merge of #132581 - workingjubilee:rollup-4wj318p, r=workingjubilee
c506c0279ef Update `compiler_builtins` to 0.1.138 and pin it
4a3b0948bbe Rollup merge of #132563 - frectonz:master, r=Amanieu
803847138ff Auto merge of #123723 - madsmtm:apple-std-os, r=dtolnay
f2175096363 Auto merge of #132479 - compiler-errors:fx-feat-yeet, r=fee1-dead
caacc66a634 Rename the FIXMEs, remove a few that dont matter anymore
8bb7ce8a697 Auto merge of #132542 - RalfJung:const_panic, r=tgross35
72beb748321 remove const-support for align_offset
48f72455d35 Modify `NonZero` documentation to reference the underlying integer type
b10bc73da0a Rollup merge of #132511 - RalfJung:const_arguments_as_str, r=dtolnay
dee386e7977 Rollup merge of #132503 - RalfJung:const-hash-map, r=Amanieu
028616a5bca Rollup merge of #132499 - RalfJung:unicode_data.rs, r=tgross35
a04ae3433a7 Rollup merge of #132393 - zedddie16:issue-131865-fix, r=tgross35
99edf316755 Rollup merge of #131377 - rick-de-water:nonzero-exp, r=dtolnay
141ffe504bd Rollup merge of #129329 - eduardosm:rc-from-mut-slice, r=dtolnay
0f4c0ab62ba add const_panic macro to make it easier to fall back to non-formatting panic in const
0bad6557b73 stabilize const_arguments_as_str
c77491eb408 Auto merge of #132458 - RalfJung:rustc-const-unstable, r=Amanieu
39157edbc09 Rustdoc: added brief colon explanation
e4225758db0 Add Set entry API
578b3ff91b0 Add BorrowedBuf::into_filled{,_mut} methods to allow returning buffer with original lifetime
2037eace73d Rollup merge of #132495 - Houtamelo:remove_unintended_link, r=jieyouxu
31a805b08cf Rollup merge of #132493 - Houtamelo:doc_type-ref_html-tag, r=jieyouxu
c2f25cd880d Rollup merge of #132482 - lukas-code:stab-attrs, r=Noratrieb
cc5191d1d82 remove const_hash feature leftovers
2728af9203a const_with_hasher test: actually construct a usable HashMap
a4a50b1b672 make char::is_whitespace unstably const
970eae4d52b unicode_data.rs: show command for generating file
f5f55442e3f get rid of a whole bunch of unnecessary rustc_const_unstable attributes
b14c6792db7 Rollup merge of #132398 - krtab:add_doc_link, r=Noratrieb
6f094ac1107 Remove unintended link
a74274e4c08 Fix type reference in documents which was being confused with html tags.
033cb2e7928 fix some stability annotations
bd16467dcc4 Rollup merge of #132459 - RalfJung:byte_sub_ptr, r=scottmcm
e145c80b018 Rollup merge of #132455 - RalfJung:const_alloc_layout, r=dtolnay
c22c341e06a Rollup merge of #132451 - RalfJung:less-rustc_allow_const_fn_unstable, r=tgross35
3bbba3d8bab Rollup merge of #132445 - RalfJung:const-unchecked-shifts, r=tgross35
7df01bee11b Rollup merge of #132413 - lolbinarycat:offset_of_nested-docs, r=workingjubilee
0579de67e47 remove no-longer-needed attribute
b56688f9d64 add missing safety comments
d12f27d4ef9 adjust test gating for f16/f128
d80df07dc04 float types: move copysign, abs, signum to libcore
5f86b1888e2 offset_from / sub_ptr docs: emphasize that pointers must be in the same allocation
c34766cbcdc feat(byte_sub_ptr): add ptr::byte_sub_ptr
080a2e20906 make const_alloc_layout feature gate only about functions that are already stable
e12063485b9 unchecked_shifts, unchecked_neg are safe-to-const-expose-on-stable, so we can get rid of a bunch of attributes
53bc80ca335 remove some unnecessary rustc_allow_const_fn_unstable
9661266001a Auto merge of #132206 - tgross35:update-builtins, r=wesleywiser
c5d1f3effc7 use semantic line break
804ea40144f update offset_of! docs to reflect the stablization of nesting
1f1310db6fc Add intra-doc link in str::xxx_char_boundary
93963fe694b Add a `collect_into` tuple test case
e19e4426450 Don't impl Extend for 13-tuples
86598670051 rustdoc-search: simplify rules for generics and type params
ea2ceffe08d Remove do_not_const_check from Iterator methods
f7e46bc4e8d Add intra-doc link in str::xxx_prefix
ad90a435921 Auto merge of #132238 - Urgau:midpoint-i64-hackers-impl, r=joboet
b1a8ad0421e Implement `From<&mut {slice}>` for `Box/Rc/Arc<{slice}>`
de81c2cfd47 Auto merge of #132326 - matthiaskrgr:rollup-ngyw18g, r=matthiaskrgr
c52ccba99aa Rollup merge of #132321 - betrusted-io:xous/fix-rustc_const_stable-attribute, r=joboet
8148aa07cca Auto merge of #132231 - lukas-code:rc-plug-leaks, r=tgross35
8c010b9c476 xous: sync: remove `rustc_const_stable` attribute
129f8e8c883 Win: rename: Use offset_of! in struct size calculation
38ae7fe6247 Rollup merge of #132270 - yakiimoninja:fs-truncate-docs, r=Noratrieb
94b192d0f13 Rollup merge of #132233 - WaffleLapkin:box-module-split, r=workingjubilee
16b2c9a2db5 Rollup merge of #131520 - zachs18:const-str-split, r=Noratrieb
5a311c1d378 Auto merge of #132277 - workingjubilee:rollup-5e6q6e4, r=workingjubilee
f1a9b205273 Stabilize `const_atomic_from_ptr`
2525108f4c5 Auto merge of #128985 - GrigorenkoPV:instantly-dangling-pointer, r=Urgau
5e9f5b7bb19 Rc destructor: tweak inlining
70e917c03c0 Split `boxed.rs` into a few modules
fedcb7c717f Rollup merge of #131441 - SpriteOvO:proc-macro-to-tokens-trait, r=dtolnay
f156bce99c2 clarified std::fs truncate doc
1050cdf4056 Auto merge of #132145 - RalfJung:stdarch, r=Amanieu
ace4a33dfbb clarified doc for `std::fs::OpenOptions.truncate()`
47fa409434a std: refactor `pthread`-based synchronization
b1d5523119b New lint: `dangling_pointers_from_temporaries`
64c9d4f1857 Rollup merge of #131391 - ChaiTRex:isqrt, r=scottmcm,tgross35
53780a64b4c we can now enable the 'const stable fn must be stable' check
1f1a027091f bump stdarch
56e3763facb Auto merge of #132251 - jieyouxu:rollup-mtv9mpd, r=jieyouxu
4d02c63de8e Auto merge of #132200 - Mark-Simulacrum:strengthen-cross-lang, r=RalfJung
17cb40d2ccc Support `char::is_digit` in const contexts
77075c6dbc8 Use Hacker's Delight impl in `i64::midpoint` instead of wide `i128` impl
8ce9b1cfab9 Rc/Arc: don't leak the allocation if drop panics
99da8532715 add test for panicking drop in Box/Rc/Arc
b737edbfba5 Auto merge of #131284 - dingxiangfei2009:rename-smart-ptr-to-coerce-referent, r=compiler-errors
01a07cd4871 Auto merge of #132191 - Urgau:midpoint_signed_towards_zero, r=dtolnay
c3b9a53453f Add a new trait `proc_macro::ToTokens`
3dd1c135709 Update compiler-builtins to 0.1.136
dc9b4671988 Auto merge of #131715 - tgross35:add-const_sockaddr_setters, r=Amanieu
c40fc128e80 Make clearer that guarantees in ABI compatibility are for Rust only
9be44cb8f7b Add test for all midpoint expectations
c4cdbf7fbb1 Simplify documentation for Extend impl for tuples
c528f49e40c Round negative signed integer towards zero in `iN::midpoint`
a60439c0bce Rollup merge of #132019 - daboross:document-partialeq-oncelock, r=Mark-Simulacrum
c1f1caa4131 Add Extend impls for tuples of arity 1 through 12
b0fc28c0c8b Auto merge of #131349 - RalfJung:const-stability-checks, r=compiler-errors
ac13eae8512 Rollup merge of #132137 - RalfJung:behavior, r=Noratrieb
a8f0d49ac66 get rid of the internal unlikely macro
752b4f49c6f Re-do recursive const stability checks
58397bb1fdd Arbitrary self types v2: (unused) Receiver trait
8ebd2382ca1 library: consistently use American spelling for 'behavior'
75eb49968ea ABI compatibility: remove section on target features
31b83431cee Rollup merge of #131457 - kpreid:fnaddr, r=dtolnay
3e063d045dc Auto merge of #132121 - workingjubilee:rollup-yrtn33e, r=workingjubilee
60585ca1420 Rollup merge of #132113 - LaihoE:pattern_as_utf8_default_impl, r=workingjubilee
b6a311980d5 Rollup merge of #132101 - youknowone:thread_local-gyneiene, r=tgross35
798bde442ca Rollup merge of #132048 - mustartt:aix-random-impl, r=workingjubilee
6feac64de56 Rollup merge of #131851 - sunshowers:musl-posix, r=workingjubilee
f5ccf0690b8 Avoid use imports in thread_local_inner! in statik
2e8a2eb7e08 Auto merge of #132116 - matthiaskrgr:rollup-3a0ia4r, r=matthiaskrgr
2a751f0ecfb Rollup merge of #131790 - nmathewson:doc_socketaddr_representation, r=tgross35
7315f476515 Auto merge of #131985 - compiler-errors:const-pred, r=fee1-dead
deebbdb006e provide default impl for as_utf8_pattern
478357c2879 Auto merge of #123550 - GnomedDev:remove-initial-arc, r=Noratrieb
2ed812b6ba9 Document textual format of SocketAddrV{4,6}
2dd5cd15ed1 Remove associated type based effects logic
c50af69cc05 [musl] use posix_spawn if a directory change was requested
ec9c62c5d8b Rollup merge of #130225 - adetaylor:rename-old-receiver, r=wesleywiser
58baa6b1017 Rollup merge of #132066 - tifv:ptr-docs-typo, r=Amanieu
4eafd5f88bf Rollup merge of #132065 - tifv:dangling-docs, r=Noratrieb
a351830dc1e Rollup merge of #132060 - joshtriplett:innermost-outermost, r=jieyouxu
726032a41a5 Rollup merge of #132039 - a1phyr:vecdeque_read_exact, r=Noratrieb
52be5ab2eba Rollup merge of #130991 - LaihoE:vectorized_slice_contains, r=Noratrieb
ed7dcef9363 const fn str::split_at*
908c430f90b const fn str::is_char_boundary
3804ceb5928 vectorized SliceContains
dab8a07e0c6 s/SmartPointer/CoerceReferent/g
be2e2520a8f fix a typo in documentation of pointer::sub_ptr()
4489ada2533 fix documentation of ptr::dangling() function
beb0813c0f9 "innermost", "outermost", "leftmost", and "rightmost" don't need hyphens
e5207dc3e2f Specialize `read_exact` and `read_buf_exact` for `VecDeque`
57241596b67 Rollup merge of #132031 - slanterns:rc_default, r=ibraheemdev
cdf7373322d Rollup merge of #131707 - clarfonthey:constify-core-tests, r=thomcc
a723e9945c0 Auto merge of #131929 - LaihoE:replace_default_capacity, r=joboet
e4fc33d4c2b AIX use /dev/urandom for impl
c0f78b0fd64 better default capacity for str::replace
6cb2df2e4f2 Rename Receiver -> LegacyReceiver
44957966850 refactor `Arc<T>::default`
82498152f13 optimize `Rc<T>::default`
cd6cb9b77a8 Rollup merge of #131697 - ShE3py:rt-arg-lifetimes, r=Amanieu
9d53c3d831f Document PartialEq impl for OnceLock
f03c8c01999 Rollup merge of #132003 - RalfJung:abi-compat-docs, r=traviscross
4066a64f143 Rollup merge of #130350 - RalfJung:strict-provenance, r=dtolnay
bda4d9a08c4 update ABI compatibility docs for new option-like rules
f215166548f move strict provenance lints to new feature gate, remove old feature gates
f623dd3510b stabilize Strict Provenance and Exposed Provenance
f6c9bdee93a fix docs
8ca8d1c2840 replace FindFirstFileW with FindFirstFileExW and apply optimization
ec7fd656204 replace FindFirstFileW with FindFirstFileExW and regenerate bindings
fe800fec874 Auto merge of #131948 - matthiaskrgr:rollup-c9rvzu6, r=matthiaskrgr
cbce52d7930 Support lock() and lock_shared() on async IO Files
337589b47fe Rollup merge of #131921 - klensy:statx_all, r=ChrisDenton
a18ec462803 Rollup merge of #131772 - GnomedDev:remove-proc_macro-todo, r=petrochenkov
2de2bb8c725 Auto merge of #131907 - saethlin:update-compiler-builtins, r=tgross35
27da9878375 Update `compiler-builtins` to 0.1.134
4926eaf8eb3 Rollup merge of #131919 - RalfJung:zero-sized-accesses, r=jhpratt
128a16b2582 Rollup merge of #131890 - printfn:precise-capturing-docs, r=traviscross
482e00e978e Rollup merge of #127462 - Ayush1325:uefi-env, r=joboet
5b58eaf4c04 Remove the Arc rt::init allocation for thread info
907235305db Auto merge of #131816 - Zalathar:profiler-feature, r=Kobzol
50b999587c3 replace STATX_ALL with (STATX_BASIC_STATS | STATX_BTIME) as former is deprecated
e10007c801c zero-sized accesses are fine on null pointers
c839b06e6f7 Update `use` keyword docs to describe precise capturing
52d741650e3 std: uefi: Use common function for UEFI shell
ee906dc299f std: uefi: Add basic Env variables
bcb8c74ac6d Auto merge of #131895 - jieyouxu:rollup-jyt3pic, r=jieyouxu
ec7185ea142 Rollup merge of #126207 - devnexen:stack_overflow_libc_upd, r=joboet
d490861f932 Auto merge of #131841 - paulmenage:futex-abstraction, r=joboet
321ed487b43 Revert using `HEAP` static in Windows alloc
9f4792a0c17 Rollup merge of #131866 - jieyouxu:thread_local, r=jhpratt
70a07c3e85c Rollup merge of #131858 - AnthonyMikh:AnthonyMikh/repeat_n-is-not-that-special-anymore, r=jhpratt
397c893fc1a Rollup merge of #131809 - collinoc:fix-retain-mut-docs, r=jhpratt
958ce90f8b5 Rollup merge of #131774 - thesummer:rtems-add-getentropy, r=joboet
a02fe2c3ab7 Rollup merge of #130136 - GKFX:stabilize-const-pin, r=dtolnay
b75a761783d Add entropy source for RTEMS
ee0238f6983 Rollup merge of #131850 - lexeyOK:master, r=compiler-errors
2fb1b3123dc Rollup merge of #131823 - thesummer:bump-libc-0.2.160, r=workingjubilee
bad79f7adeb Rollup merge of #131654 - betrusted-io:xous-various-fixes, r=thomcc
5c57b583a5e Avoid shadowing user provided types or type aliases in `thread_local!`
3d6e29ab956 remove outdated documentation for `repeat_n`
2925689b331 Auto merge of #131572 - cuviper:ub-index_range, r=thomcc
7e5438a1c0e Bump libc to 0.2.161
11e5ea4617e std::unix::stack_overflow::drop_handler addressing todo through libc update
f7bd16a03cc Missing parenthesis
1df22fb2b27 Abstract the state type for futexes
704ed799ad7 Rollup merge of #131835 - ferrocene:amanjeev/add-missing-attribute-unwind, r=Noratrieb
afedc50a999 Rollup merge of #131833 - c-ryan747:patch-1, r=Noratrieb
55231fc463a Auto merge of #130223 - LaihoE:faster_str_replace, r=thomcc
e3b067b3d5c Do not run test where it cannot run
96406cc04ba Add must_use to CommandExt::exec
ff3476a0445 Make `profiler_builtins` an optional dependency of sysroot, not std
f94af194acf Remove TODO in proc_macro now `const_refs_to_static` is stable
31b63e6cd04 Fix predicate signatures in retain_mut docs
bfca7d41a5f Win: Remove special casing of the win7 target for `std::fs::rename`
85ffa8b1c0d Auto merge of #131797 - matthiaskrgr:rollup-lzpze2k, r=matthiaskrgr
ea93b310074 Partially stabilize const_pin
5f8ad4da356 Rollup merge of #131730 - zlfn:master, r=tgross35
354887191ca Auto merge of #131792 - matthiaskrgr:rollup-480nwg4, r=matthiaskrgr
828d995efd6 Rollup merge of #130822 - bjoernager:non-null-from-ref, r=dtolnay
0d4e8ae492a Auto merge of #131767 - cuviper:bump-stage0, r=Mark-Simulacrum
3fc0b3dd5ab Rollup merge of #131746 - slanterns:once_box_order, r=joboet
1e8ad2f6796 Rollup merge of #131712 - tgross35:const-lazy_cell_into_inner, r=joboet
67981579caa Auto merge of #131460 - jwong101:default-placement-new, r=ibraheemdev
c38229a1748 update bootstrap configs
0a1c9a389b5 replace placeholder version
9f57bef95bb relax a memory order in `once_box`
fa35f4afd1d Rollup merge of #131521 - jdonszelmann:rc, r=joboet
466bf5e0288 Rollup merge of #130568 - eduardosm:…
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this pull request Mar 11, 2025
2faa3f7c8b4 [create-pull-request] automated change
534f664479d Rollup merge of #137730 - RalfJung:checked_ilog_tests, r=tgross35
0009666d82c Rollup merge of #137673 - ChrisDenton:search-path-bug, r=dtolnay
ab8c0cfc5d8 checked_ilog tests: deal with a bit of float imprecision
f25513693c6 Rollup merge of #137551 - folkertdev:import-simd-intrinsics, r=RalfJung
ef22eba437f Fix Windows `Command` search path bug
ce4e90b25b9 Rollup merge of #137620 - SergioGasquez:fix/espidf-maybeunit, r=ChrisDenton
96922313a57 Rollup merge of #137197 - scottmcm:cmp-20, r=ibraheemdev
5479b2ad6ab make `simd_insert` and `simd_extract` `const fn`s
eb5654f2eae Rollup merge of #136187 - hkBst:patch-27, r=workingjubilee
cd635d994e0 Rollup merge of #137480 - fuzzypixelz:fix/124466, r=workingjubilee
4a53c0ae580 Rollup merge of #134585 - cyrgani:uninit_array, r=Amanieu
9d63c81d91e Rollup merge of #137304 - pitaj:rangebounds-is_empty-intersect, r=ibraheemdev
a4651968d1e Rollup merge of #137614 - xizheyin:issue-134874, r=cuviper
32760e6fb81 require trait impls to have matching const stabilities as the traits
b34926b7454 fix: attr cast for espidf
33f4731e738 Update some comparison tests now that they pass in LLVM20
e70b1ff3285 Do not use CString in the examples of CStr.
915269dc271 Use `.expect(..)` instead
5adeacff2e9 remove MaybeUninit::uninit_array
7705cdfbb1b add `IntoBounds::intersect` and `RangeBounds::is_empty`
869d022a1cf Rollup merge of #137311 - martn3:enable-f16-mips, r=tgross35
72dbd1c0a44 fix doc in library/core/src/pin.rs
30326222d56 Remove speculation on cause of error
d6a2f47fa48 Rollup merge of #137154 - thaliaarchi:wtf8-fast-paths, r=ChrisDenton
c44bf6092e6 Return error on unexpected termination in `Thread::join`.
fdd2b941388 Auto merge of #137594 - RalfJung:miri-sync, r=RalfJung
23d7eb68d9f Auto merge of #137608 - fmease:rollup-h4siso6, r=fmease
8f4472439c5 Rollup merge of #137515 - tgross35:update-builtins, r=tgross35
3488cddc017 Auto merge of #137571 - tgross35:rollup-i1tcnv1, r=tgross35
777eb99bac9 Enable `f16` for MIPS
54ff5f14eb4 Skip scanning for surrogates when not known valid
1aa165f13c3 disable a potentially bogus test on Miri
4deee2f6d22 Rollup merge of #137576 - goffrie:setvalzst, r=lcnr
1f29091cb16 Update `compiler-builtins` to 0.1.148
e075ffa20d0 Rollup merge of #137543 - petrochenkov:wintest, r=ChrisDenton
f479cf06a2d Rollup merge of #137516 - RalfJung:rustc_const_unstable-cleanup, r=Amanieu
9ae17c4ab0a Add fast path for displaying pre-validated Wtf8Buf
aeb606f73ca Merge from rustc
d1d90a7ac0b Don't doc-comment BTreeMap<K, SetValZST, A>
4c37e11f15a Rollup merge of #137489 - RalfJung:no-more-rustc_intrinsic_must_be_overridden, r=oli-obk
5cce5b7cf69 Rollup merge of #137349 - thaliaarchi:io-optional-methods/zkvm, r=Noratrieb
5bd07475269 Merge from rustc
62afeaef8dc Rollup merge of #137321 - aviraxp:patch-1, r=cuviper
da0d982d549 Rollup merge of #137109 - bend-n:knife, r=oli-obk
f14cd2458ca Merge from rustc
5a36578d0cc Simplify trait error message for CoercePointee validation
5abd4842766 Rollup merge of #136775 - robertbastian:patch-2, r=Amanieu
5c3316fe7f9 Merge from rustc
992429ab2d1 Merge from rustc
ec26d66a2d4 Merge from rustc
ef05336af4b Merge from rustc
672a79aee02 Merge from rustc
be9424d8607 Merge from rustc
0741a544fce remove some unnecessary rustc_const_unstable
2bc4b64227e Implement read_buf for zkVM stdin
bc3a61fc61b stabilize extract_if
3bf9c33a87e Rollup merge of #136668 - WaffleLapkin:from_utf8_mut, r=Amanieu
4f39af59827 Update string.rs
8eba2b6091d Rollup merge of #135933 - hkBst:patch-19, r=workingjubilee
de8f76701a7 Stabilize `core::str::from_utf8_mut`
fe32499093f Update string.rs
35e9fddcdbb Rollup merge of #134655 - GrigorenkoPV:hash_extract_if, r=cuviper
1b69fc2ffbc Explain how Vec::with_capacity is faithful
6223aa0fb89 Stabilize `hash_extract_if`
c7caf81fcc8 Rollup merge of #137483 - bend-n:😅, r=Noratrieb
f1fd901a0ca std: Fix another new symlink test on Windows
0272ab0ad12 Rollup merge of #137495 - madhav-madhusoodanan:feature-unstable-control-flow-into-value, r=jhpratt
e53e618a729 remove uses of rustc_intrinsic_must_be_overridden from standard library
58e14c5a08b Correct doc about `temp_dir()` behavior on Android
9a67325bd65 tidying up tidy
fd31454ed56 Rollup merge of #137194 - kornelski:ftls, r=tgross35
b468e6f5ef5 Rollup merge of #137297 - tgross35:update-builtins, r=tgross35
5d96c0eb7f4 rename sub_ptr 😅
aac9abe8d7d Rollup merge of #137484 - chenyukang:yukang-fix-sort-doc, r=Noratrieb
a648e8dae3a Added into_value const function to ControlFlow<T, T>
3038d7dc2b7 replaced the four occurrences of issue ="50547" in library/core/src/future/mod.rs with issue = "none"
f48be49f92a Rollup merge of #136826 - xizheyin:issue-136737, r=thomcc
0860a5bb780 Rollup merge of #136543 - RalfJung:round-ties-even, r=tgross35
8cbc0a92989 Rollup merge of #137482 - rust9x:win-file-open-truncate, r=ChrisDenton
ac72d17b959 Fix documentation for unstable sort
8ff19cd2688 Auto merge of #137237 - cuviper:stage0, r=Mark-Simulacrum
b996f44eb42 Rollup merge of #137393 - chorman0773:unbounded-shifts-stabilize, r=Amanieu
0cf580d229d Win: use existing wrappers for `SetFileInformationByHandle` in `File::open_native`
d301b900d7c Rollup merge of #137061 - progressive-galib:gen_future-closing#76249, r=ibraheemdev
89aab83adb0 Fix unbounded_shifts tests
27ce5417730 Stabilize `unbounded_shifts`
35c4cb8816d Rollup merge of #137383 - folkertdev:stabilize-unsigned-is-multiple-of, r=Noratrieb
be8323f6160 Use faster thread_local! for stdout
0261d2a2d59 Update `compiler-builtins` to 0.1.147
fb4e13bed34 fix by comments
1c34210df0c add stdarch compatibility hack
85c9853792b Rollup merge of #137388 - PaulDance:disable-rename-posix-semantics-tests-under-win7, r=ChrisDenton
8be8047c51d Remove outdated target `unexpected_cfgs`
adea8ad20df Rollup merge of #137121 - bend-n:master, r=Noratrieb
221385a917c stabilize `unsigned_is_multiple_of`
a54fda2b385 Use faster thread_local in current_thread_id()
11411181da1 remove assume_init in stack_overflow
549534e8ba1 make the new intrinsics safe
e7564768204 Rollup merge of #136910 - okaneco:sig_ones, r=thomcc
483de1dface Fix(lib/fs/tests): Disable rename POSIX semantics FS tests under Windows 7
b327b84b988 update `cfg(bootstrap)`
7df9d8c6bd0 Rollup merge of #135501 - tgross35:stdlib-dependencies-private, r=bjorn3
413a3310c0e stabilize (const_)ptr_sub_ptr
7c86b36c74b Highlight thread_local! const init in docs
f7b7aac866c Consistently using as_mut_ptr() and as_ptr() in thread
e459c9f24b6 intrinsics: unify rint, roundeven, nearbyint in a single round_ties_even intrinsic
4415d0742b5 Rollup merge of #137207 - petertodd:2025-add-track-caller-to-duration-div, r=jhpratt
fb387be63b8 Auto merge of #137371 - matthiaskrgr:rollup-3qkdqar, r=matthiaskrgr
0c1fbdb8c85 update version placeholders
a47d1610722 Replace some instances of `pub` with `pub(crate)`
48a14f65549 Replace mem::zeroed with mem::MaybeUninit::uninit for large struct in unix
1a4ad2c3913 Auto merge of #137397 - matthiaskrgr:rollup-ls2pilo, r=matthiaskrgr
6edaafa07dd Use `public-dependencies` in all sysroot crates
0c893c48e28 Auto merge of #136771 - scottmcm:poke-slice-iter-next, r=joboet
093b2dd2c7b Auto merge of #137192 - kornelski:windows-tls-lto, r=ChrisDenton
262b27961d7 Implement feature `isolate_most_least_significant_one` for integer types
e9bacf56aff Rollup merge of #137270 - QianNangong:master, r=ChrisDenton
25dc446e48e Add #[track_caller] to Duration Div impl
42e50993daa Rollup merge of #136089 - jwong101:box-default-debug-stack-usage, r=Amanieu
3193246955e Rollup merge of #137353 - thaliaarchi:io-optional-methods/wasi-stdin, r=alexcrichton
b5c451aceb2 Rollup merge of #134340 - Urgau:stabilize-num_midpoint_signed, r=scottmcm
41f44c0c2a3 Rollup merge of #137336 - riverbl:stabilise-os-str-display, r=tgross35
b8e78e4dd65 Implement read_buf for WASI stdin
1d2dfe5d1df Rollup merge of #136609 - mammothbane:master, r=scottmcm
efe7f5c8635 Stabilise `os_str_display`
f6853d3032f Rollup merge of #136148 - kpreid:type-str, r=joboet
3084f21ee06 core/net: IpAddr*::as_octets()
4c35ec344e3 Optionally add type names to `TypeId`s.
6df10f0d69d Auto merge of #137290 - matthiaskrgr:rollup-a7xdbi4, r=matthiaskrgr
47c13945bbd Rollup merge of #137228 - steffahn:one-coerces-to-supertypes-not-subtypes, r=the8472
45df460bc7e Auto merge of #137295 - matthiaskrgr:rollup-tdu3t39, r=matthiaskrgr
e977bf15ab6 Add real safety comments
c43b4a18dcc Remove obsolete MinGW ThinLTO+TLS workaround
93a7cf2a97a Fix `*-win7-windows-msvc` target since 26eeac1a1e9fe46ffd80dd0d3dafdd2c2a644306
0d3a9c03707 reduce `Box::default` stack copies in debug mode
dd04daec27b Stabilize `num_midpoint_signed` feature
fd1c0eb71ea Rollup merge of #136794 - cberner:stabilize, r=joshtriplett
1f0ce6c90cb Rollup merge of #137155 - thaliaarchi:wtf8-organize, r=ChrisDenton
aa859ac3694 Rollup merge of #137277 - m4rch3n1ng:stabilize-inherent-str-constructors, r=tgross35
013d2bbf3ce Go back to `Some` instead of transmuting to it.
4cdfcdc9eda Rollup merge of #136347 - allevo:patch-1, r=Amanieu
507792b5923 Rollup merge of #136923 - samueltardieu:push-vxxqvqwspssv, r=davidtwco
e3ff56ffacb stabilize `inherent_str_constructors`
46a1649e515 Save another BB by using `SubUnchecked` instead of a call to `arith_offset`
cbe0653d2ce Rollup merge of #136301 - hkBst:patch-33, r=thomcc
5d9388a665d Rollup merge of #136690 - Voultapher:use-more-explicit-and-reliable-ptr-select, r=thomcc
343b2f64bb3 Simplify `slice::Iter::next` enough that it inlines
9e5f0441451 Rollup merge of #134995 - DaniPopes:stable-const_slice_flatten, r=Amanieu
2a2dbaeef74 Rollup merge of #132268 - elichai:string_try_from_vec, r=Amanieu
2caf94f6291 Rollup merge of #120580 - HTGAzureX1212:HTGAzureX1212/issue-45795, r=m-ou-se
41361dac70c Use more explicit and reliable ptr select in sort impls
64c93ea3b67 Rollup merge of #137026 - GrigorenkoPV:integer_sign_cast, r=jhpratt
424699cf8d9 Synchronize platform adaptors for OsString/OsStr
dbd9cedd8df Remove ignored `#[must_use]` attributes from portable-simd
f92489246ed Impl TryFrom<Vec<u8>> for String
5ad759b763c Auto merge of #137235 - matthiaskrgr:rollup-2kjua2t, r=matthiaskrgr
202dbd1f737 Simplify control flow with while-let
ed9315df70a Rollup merge of #137214 - cyrgani:clippy_diagnostic_items, r=compiler-errors
3679c0befaf Improve WTF-8 comments
fcf29f1bbf4 Rollup merge of #137205 - thaliaarchi:remove-wasi-fileext-tell, r=alexcrichton
f0eef585628 Rollup merge of #137167 - martn3:reliable_f16_math-f16-erfc, r=tgross35
20fc20e346b Rollup merge of #136750 - kornelski:ub-bug, r=saethlin
b2a8d7a568b Fix typo in hidden internal docs of `TrustedRandomAccess`
aecf5dc60be Stabilize file_lock
41da80beaa4 Update library/std/src/fs.rs
f18a9df4f26 Improve instant docs
5c5b9457412 Stabilize const_slice_flatten
2194daa6b5a add MAX_LEN_UTF8 and MAX_LEN_UTF16 constants
5ddf2effc5c Stabilize (and const-stabilize) `integer_sign_cast`
00ab0520732 Rollup merge of #137126 - m4rch3n1ng:fix-inherent-str-docs, r=Amanieu
0fc401590d4 add last std diagnostic items for clippy
0bc1f50f46e Remove std::os::wasi::fs::FileExt::tell
37bce540536 Update fs.rs
127536c4152 Rollup merge of #136876 - joshtriplett:locking-might-not-be-advisory, r=Amanieu
d46c1158fd1 fix docs for inherent str constructors
0f003d5d543 Reorder "This lock may be advisory or mandatory." earlier in the lock docs
959937c3333 Clarify that locking on Windows also works for files opened with `.read(true)`
ffa405cf0d8 Document that locking a file fails on Windows if the file is opened only for append
2459763ecf6 Reword file lock documentation to clarify advisory vs mandatory
71651c380d1 Auto merge of #137164 - matthiaskrgr:rollup-dj5826k, r=matthiaskrgr
ea95884ae1b Auto merge of #137065 - jhpratt:rollup-ree9mej, r=jhpratt
bd34cdb4a5e Rollup merge of #137165 - thaliaarchi:file-tell, r=ChrisDenton
1b96604d651 Rollup merge of #137114 - ChrisDenton:error, r=Noratrieb
58f85ded087 Fix &&str and trailing commas in io::const_error!
058bf2127b2 Rollup merge of #136983 - ehuss:misc-2024-prep, r=tgross35
1647e58efa7 docs: fix broken intra-doc links that never worked
b1b5e298cf3 tests: Also gate `f16::erfc()` doctest with `reliable_f16_math` cfg
b513281f252 Make ub_check message clear that it's not an assert
c55966be8b2 Rollup merge of #136976 - jedbrown:jed/doc-boxed-deferred-init, r=tgross35
dc92bbb3d89 Rollup merge of #137101 - GrigorenkoPV:str-inherent-lint, r=Urgau
fa5189d50da Rollup merge of #137105 - zachs18:cow-derefpure-restrict, r=Nadrieril
73f44f78f59 Auto merge of #136324 - GrigorenkoPV:erf, r=tgross35
4c9761775a9 Rollup merge of #137062 - thaliaarchi:io-optional-methods/write, r=workingjubilee
2c71ad17347 Use tell for <File as Seek>::stream_position
14d691f418e Rollup merge of #136986 - ehuss:library-unsafe-fun, r=Noratrieb
ffe84fff3a9 Add an example for std::error::Error
335acee1020 Use io::const_error! when possible over io::Error::new
c6cbff9e0a0 Rollup merge of #134016 - zachs18:stable-const-str-split_at, r=Amanieu
6b40d8ad1fe Rollup merge of #136967 - DaniPopes:io-repeat-fill, r=joboet
d71a4644722 Rollup merge of #136844 - thaliaarchi:const-io-error, r=ChrisDenton
988870ffe34 invalid_from_utf8[_unchecked]: also lint inherent methods
290b6a60dab Restrict DerefPure for Cow<T> impl to T = impl Clone, [impl Clone], str.
27f347e0bc8 Rollup merge of #136978 - ChrisDenton:windows-bindgen, r=Amanieu
25187205ee9 Forward all default methods for I/O impls
98105f36f4d proc_macro: Apply unsafe_op_in_unsafe_fn
3bbbf42e07d Rollup merge of #136879 - kornelski:non1, r=Noratrieb
572414e74a7 std: Apply unsafe_op_in_unsafe_fn
71ce2bdb809 Rollup merge of #136749 - mzeitlin11:extend-asciichar, r=scottmcm
29c1eeff19c Fix safety of windows uwp functions
38e87f92a1d Rollup merge of #135687 - joseluis:feat-reexport_from_coroutine, r=scottmcm
9b22cb80d27 unwind: Apply unsafe_op_in_unsafe_fn
1705de8e70b panic_unwind: Apply unsafe_op_in_unsafe_fn
d0700abec83 panic_abort: Apply unsafe_op_in_unsafe_fn
6083784fc05 core: Apply unsafe_op_in_unsafe_fn
542a752c435 std: Apply deprecated_safe_2024
d47029e790d Implement `f{16,32,64,128}::{erf,erfc}`
f2bbc565dcd Rollup merge of #136886 - ehuss:remove-prelude-common, r=jhpratt
275c20c513d Windows: Update generated bindings to 0.59
1e64ed9c57a Add safe new to NotAllOnes
a81117646e6 Implement Extend<AsciiChar> for String
338454a8a27 re-export `core::iter::FromCoroutine`
93e381990b7 Auto merge of #136735 - scottmcm:transmute-nonnull, r=oli-obk
93c147f58b9 test: Apply deprecated_safe_2024
4fcfc289648 Rollup merge of #136052 - no1wudi:fix, r=workingjubilee
c08b2796eaf Rollup merge of #136992 - ehuss:update-backtrace, r=workingjubilee
2538dbc6ef0 std: Apply fixes for tail drop expressions
fd10bd261a5 Rollup merge of #136908 - mustartt:aix-mutex-destory-einval, r=joboet
d036e2ea0cb std: Apply rust_2024_incompatible_pat
50cba691b78 Rollup merge of #136904 - pitaj:range-into_bounds, r=tgross35
ff5f812a9e4 Auto merge of #134633 - GrigorenkoPV:get_disjoint_mut, r=cuviper
7f43e012253 Rollup merge of #136945 - samueltardieu:push-rsqlyknnvyqm, r=fmease
f2c42c9a031 alloc boxed: docs: use MaybeUninit::write instead of as_mut_ptr
cc3b4f3cb7d Const-stabilize `str::is_char_boundary` and `str::split_at(_mut)(_checked)`.
95dd71787b9 Use `slice::fill` in `io::Repeat` implementation
770553c6500 Remove the common prelude module
5e8e07f5431 `transmute` should also assume non-null pointers
280b371b0ed Correct comment for FreeBSD and DragonFly BSD in unix/thread
b435bb8fab2 Update backtrace
08f2576fd8c std: Apply dependency_on_unit_never_type_fallback
2e1f95046d8 Rollup merge of #136949 - ehuss:wasm-bench-time, r=jhpratt
02020fd5274 Rollup merge of #136818 - a1phyr:io_repeat_exact, r=jhpratt
c9596d6b46a std: Apply missing_unsafe_on_extern
71b655502aa Rollup merge of #136660 - compiler-errors:BikeshedGuaranteedNoDrop, r=lcnr
3132ff74a6b std: Apply unsafe_attr_outside_unsafe
b7b093a5e40 alloc: Apply missing_unsafe_on_extern
8927d3d66dd alloc: Apply unsafe_attr_outside_unsafe
e6d7f591547 alloc: Workaround hidden doctest line
cd108abdaef Migrate coretests to Rust 2024
bcf9e350328 library: Update rand to 0.9.0
e2ecb7d1da7 core: Apply unsafe_attr_outside_unsafe
59fb4eec0a0 Implement and use BikeshedGuaranteedNoDrop for union/unsafe field validity
5d46dccf34d Auto merge of #136897 - workingjubilee:revert-unfcped-stab, r=WaffleLapkin
6c3812a8dc1 expect EINVAL for pthread_mutex_destroy for aix
c6f1b6d70ca add `IntoBounds` trait
dbddb7b91c2 Stabilize `get_many_mut` as `get_disjoint_mut`
896960bafcf Add diagnostic item for `std::io::BufRead`
7e227b9cc0a Fix import in bench for wasm
60608970734 Rollup merge of #136699 - joboet:netaddr_from_inner, r=cuviper
58c91d43dc0 Implement `read*_exact` for `std:io::repeat`
bf0be1b4f5c Rollup merge of #136890 - saethlin:swap_nonoverlapping, r=RalfJung
4147cec2561 Auto merge of #136918 - GuillaumeGomez:rollup-f6h21gg, r=GuillaumeGomez
9b53cbb05d2 Rollup merge of #134090 - veluca93:stable-tf11, r=oli-obk
256c502d022 std: replace the `FromInner` implementation for addresses with private conversion functions
6fc9d804609 Change swap_nonoverlapping from lang to library UB
c6379d38bab Rollup merge of #136915 - eyelash:float-precision, r=workingjubilee
5591f8f2f8d Stabilize target_feature_11
91e69c8946e Auto merge of #136823 - matthiaskrgr:rollup-vp20mk1, r=matthiaskrgr
1928fc43e0a Rollup merge of #136354 - hkBst:patch-34, r=ibraheemdev
bd204869e9a Auto merge of #136851 - jhpratt:rollup-ftijn95, r=jhpratt
4322ecac0ed Rollup merge of #136874 - tgross35:likely-unlikely-tracking, r=jhpratt
26693e32414 library: amend revert of extended_varargs_abi_support for beta diff
bdd68eccd3e Rollup merge of #136107 - dingxiangfei2009:coerce-pointee-wellformed, r=compiler-errors
5ff8d7cf1f0 Rollup merge of #136875 - BoxyUwU:rdg-push, r=jieyouxu
4ed3c3e009b `f128` is quadruple-precision
4e37d766a2d Auto merge of #135701 - calebzulawski:sync-from-portable-simd-2025-01-18, r=workingjubilee
8426a69acd6 Rollup merge of #136246 - hkBst:patch-29, r=ibraheemdev
1b0a9ad9ba7 Update docs for impl keyword
3dad72c8530 Rollup merge of #136704 - benschulz:patch-1, r=ibraheemdev
1c3f1888b82 Change the issue number for `likely_unlikely` and `cold_path`
2c739e20e9e Revert "Stabilize `extended_varargs_abi_support`"
3890690d522 Merge from rustc
abc9673b439 `f16` is half-precision
a0650c42d97 include note on variance and example
2ed24026590 Rollup merge of #136672 - safinaskar:alloc-2025-02-07-09-10, r=cuviper
3e4df80b3e9 Improve examples for file locking
d57627f46ff Merge from rustc
72830f4eb3c Rollup merge of #136663 - WaffleLapkin:count-non-zero-ones, r=cuviper
9c157ba327e Fix long lines which rustfmt fails to format
62cabb84587 Rollup merge of #136714 - tgross35:update-builtins, r=tgross35
e11d62aae3d Reword doc comment on `CoercePointeeValidated`
1d6f47c07f8 Rollup merge of #136805 - RalfJung:miri-win-delete-self, r=Noratrieb
c90c822004e Merge commit '3383cfbd3572465febc7a8f816a46304373de46a' into sync-from-portable-simd-2025-01-18
ef09740694b library: doc: core::alloc::Allocator: trivial typo fix
16799a55ad1 stabilize `NonZero::count_ones`
cab9763ddfb Update `compiler-builtins` to 0.1.146
44782574ab9 block coerce_pointee_validated for stabilization
873be02f532 Rollup merge of #136705 - compiler-errors:edition-library, r=jhpratt
02adfe7cb12 ignore win_delete_self test in Miri
1dfcabf7e70 rename the trait to validity and place a feature gate afront
a0b6ec54ac3 Rollup merge of #136552 - ChrisDenton:option-find-handle, r=Mark-Simulacrum
cafca3be1e0 introduce CoercePointeeWellformed for coherence checks at typeck stage
16db876c02b Rollup merge of #136353 - purplesyringa:libtest-instant-wasm, r=Mark-Simulacrum
2feefb1ba98 Rollup merge of #136228 - hkBst:patch-28, r=Mark-Simulacrum
2b6e0b5cebf Auto merge of #136754 - Urgau:rollup-qlkhjqr, r=Urgau
8b1cc571f4c Auto merge of #136751 - bjorn3:update_rustfmt, r=Mark-Simulacrum
5c3257167bb Rollup merge of #135488 - GrigorenkoPV:vec_pop_if, r=jhpratt
b5c85f2286e Fix pattern matching mode changes and unsafe_op_in_unsafe_fn
a4d2882bd9c Use Option for FindNextFileHandle
8443daefc60 Rollup merge of #136099 - Kijewski:pr-rc-str-default, r=ibraheemdev
b41429a1de1 fix(libtest): Enable Instant on Emscripten targets
bfe81712864 Simplify Rc::as_ptr docs + typo fix
94627a7acd3 Rollup merge of #136724 - steffahn:asyncfn-non-fundamental, r=compiler-errors
ab77653dea1 Rollup merge of #136601 - compiler-errors:borrow-null-zst, r=saethlin
e913eba2cb7 Rustfmt
99148f7ff0b Stabilize `vec_pop_if`
96741b6d758 Mark extern blocks as unsafe
236345afe7a Rollup merge of #135696 - joboet:move_pal_io, r=Noratrieb
b10af806cc1 Rollup merge of #136710 - JakenHerman:jaken/iterator-docs, r=workingjubilee
90cab3802a5 Rename field in OnceWith from gen to make
a2f8502c001 Rollup merge of #136686 - bjoernager:master, r=jhpratt
4d9c35ff217 Mark link_section attr with unsafe
1ddaa63534d Rollup merge of #135945 - estebank:useless-parens, r=compiler-errors
c23ba293a2b Auto merge of #136713 - matthiaskrgr:rollup-sy6py39, r=matthiaskrgr
556a71a5ad3 Rollup merge of #136634 - bjoernager:const-mut-cursor, r=m-ou-se
df2b28f4cc2 Optimize `Rc::<str>::default()` implementation
0a8e0ae70d2 Make `AsyncFnOnce`, `AsyncFnMut`, `AsyncFn` non-`#[fundamental]`
babe720d8d5 Rollup merge of #136213 - erickt:fs, r=Mark-Simulacrum
487228111da occured -> occurred
f5cbf0b076e std: get rid of `sys_common::io`
73263e0c2c9 Document `Sum::sum` returns additive identities for `[]`
2668ab7df56 Clean up 'HashMap' and 'HashSet' docs;
faf1fa55cd2 Rollup merge of #134367 - WaffleLapkin:trait_upcasting_as_a_treat, r=compiler-errors
46d1a628f42 Rollup merge of #136682 - ChrisDenton:move-win-proc-tests, r=joboet
cc9f6150551 Rollup merge of #134679 - ChrisDenton:rm-readonly, r=Mark-Simulacrum
676f0dc6b88 Allow Rust to use a number of libc filesystem calls
485c78afbd9 std: move `io` module out of `pal`
a51f1336522 Rollup merge of #136635 - jieyouxu:base_port, r=joboet
d63c02feafb Windows: Test that deleting a running binary fails
405de076539 Rollup merge of #136615 - Ayush1325:uefi-net-unsupported, r=joboet
9c108e6ae99 Update platform information for remove_file
ed73b90f955 Windows: remove readonly files
8fd1be1fc92 Rollup merge of #136502 - yotamofek:pr/fmt-from-fn-must-use, r=dtolnay
1e966caca8a Rollup merge of #136152 - Urgau:stabilize-map_many_mut, r=joshtriplett
e7e091f280c Use `widening_mul`
a5a7aa57451 Rollup merge of #136630 - jieyouxu:render_tests, r=ChrisDenton
6f08a8baae5 Remove some unnecessary parens in `assert!` conditions
dbe679e7b92 Stabilise 'Cursor::{get_mut, set_position}' in 'const' scenarios;
6f5f4c6b45e remove use of `feature(trait_upcasting)` from core tests
fbb038cb3ba Move two windows process tests to tests/ui
625515aea76 tests(std/net): remove outdated `base_port` calculation
4212c244e13 sys: net: Add UEFI stubs
d1c9f09fa8e Rollup merge of #128045 - pnkfelix:rustc-contracts, r=oli-obk
27807262a03 Stabilize `HashMap::get_many_mut` as `HashMap::get_disjoint_mut`
57714491ddd Auto merge of #136613 - workingjubilee:rollup-ry6rw0m, r=workingjubilee
49980e97e80 tests(std): don't output to std{out,err} in `test_creation_flags` and `test_proc_thread_attributes`
fecb7bd1e46 Auto merge of #136409 - TDecking:mul_hi, r=Mark-Simulacrum
819ec8b3ff2 Rollup merge of #136555 - cramertj:split_off, r=dtolnay
86a08cf5c97 Auto merge of #135760 - scottmcm:disjoint-bitor, r=WaffleLapkin
5218d095293 Rollup merge of #136595 - thaliaarchi:hermit-unreachable-pub, r=Noratrieb
be6f2c1d2d9 Rollup merge of #136537 - tgross35:update-builtins, r=tgross35
5fb44eb49eb Rollup merge of #136566 - hkBst:patch-1, r=scottmcm
d62ea01a329 Fix unreachable_pub lint for hermit target
9b438c66ca7 Rollup merge of #136517 - m4rch3n1ng:inherent-str-constructors, r=jhpratt
413676690c7 Fix link in from_fn.rs
150cb0588b6 Rollup merge of #136449 - joboet:move_pal_net, r=ChrisDenton
ef227845f3c Rollup merge of #136418 - Ayush1325:command-env, r=jhpratt
a35e7dfdace Auto merge of #135265 - pascaldekloe:fmt-int-speed, r=tgross35,ChrisDenton
36061e0452f Auto merge of #136533 - jhpratt:rollup-s0ign8n, r=jhpratt
203b704fa31 Mark `std::fmt::from_fn` as `#[must_use]`
5d134c64b2d Rename rustc_contract to contract
6962454c646 Add OneSidedRangeBound to eliminate panic in `split_point_of`
15bcd0a5a8d Auto merge of #136534 - jhpratt:rollup-dnz57dq, r=jhpratt
08c3ce221b7 More PR feedback
ee844e70671 Update `compiler-builtins` to 0.1.145
a2827b06c26 specify a prim@slice in docs
ad2725f5d75 std: move network code into `sys`
6e9ac9b4622 uefi: process: Add support for command environment variables
300e8fc6f86 Rollup merge of #136289 - Pyr0de:oncecell-docs, r=tgross35
f4208ee75ff Rollup merge of #136334 - ricci009:primitivers, r=tgross35
b7bb312d222 Improve contracts intrisics and remove wrapper function
ac458f18cb6 Rename slice::take methods to split_off
dd30ea2ad34 Rollup merge of #136518 - Urgau:fn_ptr-public-bound, r=Noratrieb
45b4c7a0668 PR feedback
dcba615e5f3 implement inherent str constructors
1aa43ba6783 Rollup merge of #136167 - pitaj:new_range, r=Nadrieril
bdae382f34e Separate contract feature gates for the internal machinery
39089eef4bf Rollup merge of #136511 - joshtriplett:nonzero-cast-signed-unsigned, r=dtolnay
3c33169df45 Add note about `FnPtr` being exposed as public bound
d7242d63ffe Add `unchecked_disjoint_bitor` with fallback intrinsic implementation
514bab55d35 Rollup merge of #135621 - bjorn3:move_tests_to_stdtests, r=Noratrieb
394dcb3e051 Desugars contract into the internal AST extensions
a1746473dce Rollup merge of #136479 - RalfJung:dirent64, r=tgross35
a79b9bac5e8 Add `cast_signed` and `cast_unsigned` methods for `NonZero` types
f34447ba6d7 Express contracts as part of function header and lower it to the contract lang items
1366e7a2a0c Rollup merge of #136398 - pitaj:unsafecell_access, r=dtolnay
939915fc40e std::fs: further simplify dirent64 handling
fc5034db5f8 For NonZero impl macros, give unsigned impls access to the corresponding signed type
552162b9386 contracts: added lang items that act as hooks for rustc-injected code to invoke.
efb9264f7de add UnsafeCell direct access APIs
a53d530e7c2 Contracts core intrinsics.
7d6cbfd0321 Rollup merge of #136452 - RalfJung:miri-sync, r=RalfJung
5e3f612c6e5 Rollup merge of #136351 - Darksonn:coerce-pointee-docs, r=compiler-errors
346b1b9e4d3 no unsafe pointer and no overflowing_literals in fmt::Display of integers
872d2d5e201 Rollup merge of #136364 - hkBst:ptr_cmp_docs, r=tgross35
2dd6f1b954c Docs for f16 and f128: correct a typo and add details
36ee538e947 OnceCell & OnceLock docs: Using (un)initialized consistently
cbcd042fa02 primitive type migration from mod.rs to primitives.rs
a2f17b528ca implement unstable `new_range` feature
545037dfc1f Remove stabilized feature gate
51781333738 Rollup merge of #136434 - RalfJung:rustc_allowed_through_unstable_modules-deprecation-required, r=compiler-errors
dcd915af09a Merge from rustc
d60bdc00a40 Rollup merge of #136163 - uellenberg:driftsort-off-by-one, r=Mark-Simulacrum
239c1fe9c11 black_box integer-input on fmt benches
8fac9d94bdf Rollup merge of #136360 - slanterns:once_wait, r=tgross35
1414e14e849 std::range
4596929935a Move env modifying tests to a separate integration test
5fd1bb52045 Rollup merge of #136283 - hkBst:patch-31, r=workingjubilee
5376994956a rustc_allowed_through_unstable_modules: require deprecation message
85576a8adf6 Merge from rustc
2b9bf95ee7c Rollup merge of #136307 - WaffleLapkin:minminmin, r=scottmcm
9291bab54d7 Fix for SGX
57f8c67fa58 Rollup merge of #134272 - RalfJung:destabilize-rustc_encodable_decodable, r=oli-obk
682595d3679 Merge from rustc
71f0bd67237 Rollup merge of #135684 - ranger-ross:mutex-docs, r=joboet
b495363cf8d Fix benchmarking of libstd
bf36b6da300 Rollup merge of #136133 - hkBst:patch-23, r=ibraheemdev
a628f824f4d Merge from rustc
0495d281aea Move std::sync unit tests to integration tests
5e153c12d71 Merge from rustc
e5ad7c036b2 Move std::thread_local unit tests to integration tests
a668198c1a7 Move std::time unit tests to integration tests
b9146161549 Move std::path unit tests to integration tests
35d67c0c45a Move std::panic unit tests to integration tests
1baab4f2f66 Move std::num unit tests to integration tests
7c5f24af08d Move std float unit tests to integration tests
fc16a437ebd Move std::error unit tests to integration tests
28f5e19b58f Move std::env unit tests to integration tests
6b4756955a3 Rollup merge of #136296 - RalfJung:float-min-max, r=tgross35
60d61846b8f Auto merge of #136332 - jhpratt:rollup-aa69d0e, r=jhpratt
3183d2486aa Rollup merge of #136288 - joshtriplett:would-you-could-you-with-some-locks--would-you-could-you-in-some-docs, r=m-ou-se
97ffa18e8b7 Add documentation for derive(CoercePointee)
9ba61538858 document ptr comparison being by address
e889acbc44e Auto merge of #134824 - niklasf:int_from_ascii, r=ibraheemdev
e72e22d748c Auto merge of #134424 - 1c3t3a:null-checks, r=saethlin
f52f37b64aa Fix off-by-one error causing driftsort to crash
d045c6564e8 stabilize `once_wait`
7da926f4b8d Update encode_utf16 to mention it is native endian
566a5925c01 implement all min/max fns in terms of `<`/`is_lt`
53520b0e8c5 remove Rustc{En,De}codable from library and compiler
60ee85ff5e1 docs: Documented Send and Sync requirements for Mutex + MutexGuard
789f98920cd Fix sentence in process::abort
f5f5b66a6a0 float::min/max: mention the non-determinism around signed 0
4ada84a9be5 Rollup merge of #135414 - tgross35:stabilize-const_black_box, r=dtolnay
0dce309955f Rollup merge of #136300 - RalfJung:compare-and-swap, r=joboet
d49c94b7e1a Rollup merge of #136271 - Sky9x:debug-maybeuninit-footgun, r=tgross35
a5953ffe26b Insert null checks for pointer dereferences when debug assertions are enabled
477fe78bcef improve doc tests for (min/max/minmax).* functions
4daacfd4e5e make rustc_encodable_decodable feature properly unstable
7b0bae311a0 Stabilize `const_black_box`
696ed0b019e atomic: extend compare_and_swap migration docs
b526b38305c Rollup merge of #135852 - lukas-code:asyncfn-prelude-core, r=compiler-errors
57502ae8f45 Rollup merge of #135475 - Ayush1325:uefi-absolute-path, r=jhpratt
da7c5ba28ef Rollup merge of #136259 - hkBst:patch-30, r=thomcc
8d2b87f1012 Rollup merge of #135625 - c410-f3r:cfg-match-foo-bar-baz, r=tgross35,jhpratt
7358983940e Auto merge of #136248 - matthiaskrgr:rollup-leaxgfd, r=matthiaskrgr
6d9ab56fa76 Improve documentation for file locking
a3c624cdddd Implement `int_from_ascii` (#134821)
ba1a8d32f52 Remove minor future footgun in `impl Debug for MaybeUninit`
5cff2cbb997 Add `AsyncFn*` to core prelude
de79c4679bd uefi: Implement path
826fd52be60 Rollup merge of #136215 - btj:patch-1, r=cuviper
ef5c91b3b11 Cleanup docs for Allocator
109ac8f47de Auto merge of #136227 - fmease:rollup-ewpvznh, r=fmease
3b89126217e Rollup merge of #136092 - tbu-:pr_io_pipe_test, r=joboet
bacd65f90f9 Rollup merge of #135847 - edwloef:slice_ptr_rotate_opt, r=scottmcm
43f9d04b18b btree/node.rs: pop_internal_level: does not invalidate other handles
f079c8ac698 add inline attribute and codegen test
945cda6afc7 btree/node.rs: remove incorrect comment from pop_internal_level docs
7a07efab38f split slice::ptr_rotate into three separate algorithms, to hopefully help inlining
9d6cd040bfa optimize slice::ptr_rotate for compile-time-constant small rotates
338e97ae5d4 Auto merge of #136110 - RalfJung:miri-sync, r=RalfJung
ace9ceaeede Auto merge of #136116 - fmease:rollup-c8pk3mj, r=fmease
4d5a27623bd Rollup merge of #135876 - usamoi:mpmc-doc, r=tgross35
dae2af17933 Auto merge of #136203 - matthiaskrgr:rollup-1k0f44l, r=matthiaskrgr
603f0641f16 Auto merge of #135937 - bjorn3:separate_coretests_crate, r=jieyouxu,tgross35
2dc1920a6da [cfg_match] Document the use of expressions
f22a83346af Rollup merge of #136186 - Ayush1325:uefi-process-args-fix, r=nicholasbishop,Noratrieb
629a414e673 Test pipes also when not running on Windows and Linux simultaneously
2cb7f8e7b52 Rollup merge of #136012 - hkBst:patch-22, r=workingjubilee,tgross35
b315a0f3de9 Rollup merge of #135807 - jhpratt:phantom-variance, r=Amanieu
53898c04f20 Rollup merge of #136173 - taiki-e:c-char, r=tgross35
e8989e545ce uefi: process: Fix args
e474bddea42 Rollup merge of #135886 - hkBst:patch-14, r=workingjubilee
32193f9a947 Document powf and powi calls that always return 1.0
41c64eee9da Rollup merge of #135773 - hkBst:patch-10, r=tgross35
28e01c38bec Rollup merge of #136071 - wowinter13:clippy-add-diagnostic-items, r=flip1995
7b555b2f54f Update comments and sort target_arch in c_char_definition
cf42e055734 Rollup merge of #135805 - DiuDiu777:master, r=Noratrieb
72e67242a22 Rollup merge of #135869 - hkBst:patch-12, r=Noratrieb
2ff422c08af [Clippy] Add vec_reserve & vecdeque_reserve diagnostic items
c2d176b4f6f Rollup merge of #135367 - Urgau:unreach_pub-std-3, r=Noratrieb
3494f8f0c9b Fix platform-specific doc string for AtomicUsize::from_mut to be platform-independent
67df310f041 Rollup merge of #133829 - GrigorenkoPV:fetch_update_infallible, r=Noratrieb
352a163d96d Rollup merge of #136039 - nvanbenschoten:pin-typo, r=Amanieu
0c9a1eb5f29 Rollup merge of #135991 - no1wudi:master, r=thomcc
cd5fd526399 Auto merge of #136087 - jhpratt:rollup-tam1mzn, r=jhpratt
da5a6b9e97c Rollup merge of #135948 - bjorn3:update_emscripten_std_tests, r=Mark-Simulacrum
178314d41fd Merge from rustc
59f932e69d9 Rollup merge of #136079 - RalfJung:compiler-fence-example, r=jhpratt
97d526057d1 fix doc for std::sync::mpmc
38a7085ef95 Actually run the bstr test
3c5567b1b6e Update `std::io::{pipe, PipeReader, PipeWriter}` docs the new location
1d46984c30b Implement phantom variance markers
f190cc65ac6 Document purpose of closure in from_fn.rs more clearly
0cd822c2be6 Clarify WindowsMut (Lending)Iterator
45de455044f add missing allocator safety in alloc crate
d5bdbec687e alloc: add `#![warn(unreachable_pub)]`
513ce5be854 Implement `AtomicT::update` & `AtomicT::try_update`
08a8e379cd1 Rollup merge of #136005 - BLANKatGITHUB:library, r=RalfJung
b90df2b2421 Rollup merge of #135977 - nyurik:fix-fmt-options, r=joboet
99ceeecf2bf Rollup merge of #136019 - scottmcm:alias-unchecked-div, r=Mark-Simulacrum
f2855b7c4b0 Rollup merge of #134283 - epage:logfile, r=Amanieu
756e9987736 Merge from rustc
b3533525b98 Rollup merge of #135635 - tbu-:pr_io_pipe, r=joboet
bd0b64380d2 compiler_fence: fix example
4ef7ff23205 Update comment
85603b0989f Move `std::io::pipe` code into its own file
2730800bf90 Improve and expand documentation of pipes
6cca0e21fb5 Rollup merge of #133631 - flba-eb:add_nto_qnx71_iosock_support, r=workingjubilee
7a027f878c7 Add an `unchecked_div` alias to the `Div<NonZero<_>>` impls
f228279fdec Put all coretests in a separate crate
018b8cfbe65 add nto80 x86-64 and aarch64 target
8f906695c8f Add support for QNX 7.1 with io-sock on x64
17ea58476e3 Add new target for supporting Neutrino QNX 6.1 with `io-socket` network stack on aarch64
fa9f10a618c Rollup merge of #135983 - hkBst:patch-13, r=jhpratt
65064c66990 Rollup merge of #135883 - GrigorenkoPV:btree_set_upper_bound_mut, r=tgross35
f3b0c5de77e Auto merge of #135978 - matthiaskrgr:rollup-ni16gqr, r=matthiaskrgr
5965328b56e docs: fix typo in std::pin overview
1a43c91bf7c Fix set_name in thread mod for NuttX
5ebb9b0dbd1 Update a bunch of comments from before wasi support was added
280579b0e64 ports last few library files to new intrinsic style
d7be70d2498 Rollup merge of #135938 - carlsverre:master, r=joboet
64dc2e2881b Fix `FormattingOptions` instantiation with `Default`
ab2aae3059d fix(libtest): Deprecate '--logfile'
416530660b9 Rollup merge of #135956 - GrigorenkoPV:vec_pop_off, r=dtolnay
f51dbbe32c3 Doc difference between extend and extend_from_slice
e33ed931544 Auto merge of #135959 - matthiaskrgr:rollup-0jenyfw, r=matthiaskrgr
59bbbfd1991 Rollup merge of #135890 - GrigorenkoPV:deque-pop-if, r=thomcc
68bf05eab3b Remove a bunch of emscripten test ignores
def0e3fdfd5 Rollup merge of #135728 - hkBst:patch-8, r=joboet
3e1c8fd4372 Update library/core/src/num/nonzero.rs
49413a0e583 Rollup merge of #135073 - joshtriplett:bstr, r=BurntSushi
beb62d1e0c6 Make `Vec::pop_if` a bit more presentable
14692cb73a0 Rollup merge of #135366 - Urgau:unreach_pub-std-2, r=cuviper
decbeed8f89 Rollup merge of #135489 - RalfJung:TryFromSliceError, r=tgross35
28681bf5492 Implement `VecDeque::pop_front_if` & `VecDeque::pop_back_if`
e6dae77e656 Fix testing of the standard library with Emscripten
3990de0922a Rollup merge of #135415 - Harshit933:hard-link-error, r=ChrisDenton
36d426a2eae Fix whitespace
af8bebf2e89 Add memory layout documentation to generic NonZero<T>
bbc192435d3 remove pointless allowed_through_unstable_modules on TryFromSliceError
b27e19cc6bf Add `File already exists` error doc to `hard_link` function
8ffe65b41f8 document order of items in iterator from drain
7651c270120 Rollup merge of #135856 - fmease:library-mv-obj-save-dyn-compat-ii, r=tgross35
1a62fd5d776 Auto merge of #135224 - wyfo:tls-panic-outline, r=cuviper
a8a008c5a9b Rollup merge of #135821 - hkBst:patch-11, r=ibraheemdev
6e4b1e4369b Remove erroneous `unsafe` in `BTreeSet::upper_bound_mut`
c07ef0cc502 Implement `CloneToUninit` for `ByteStr`
2372a0e8aa6 test: add `#![warn(unreachable_pub)]`
0988d269593 Rollup merge of #135837 - ChrisDenton:trunc, r=Noratrieb
92d506bb89f Library: Finalize dyn compatibility renaming
7bf569ac8ef Auto merge of #134286 - Urgau:unreach_pub-std, r=ibraheemdev
7cfd8b7452c Outline panicking code for `LocalKey::with`
17a5fcda59e Rollup merge of #135750 - scottmcm:cma-example, r=cuviper
df4138c7579 fix OsString::from_encoded_bytes_unchecked description
f082d0503fa Add doc aliases for BStr and BString
e17bb4b7260 proc_macro: add `#![warn(unreachable_pub)]`
6281651f43e Remove test panic from File::open
5d8ff700b16 Rollup merge of #135741 - bardiharborow:std/net/rfc9637, r=Amanieu
116bda38044 Add an example of using `carrying_mul_add` to write wider multiplication
24951f74074 Omit some more `From` impls to avoid inference failures
9072ebd71b9 Rollup merge of #133695 - x17jiri:hint_likely, r=Amanieu
99da8ef76b8 Support `no_rc`, `no_sync`, and `no_global_oom_handling`
3fa2a3228c7 Rollup merge of #135762 - TomFryersMidsummer:patch-1, r=joboet
955a59303bf Add `#[cfg(not(test))]` to some impls to work around https://github.com/rust-lang/rust/issues/135100
ceb67fa1590 Rollup merge of #135626 - clubby789:env-note, r=ibraheemdev
196b8e096c4 Implement `ByteStr` and `ByteString` types
344c704afca Rollup merge of #135491 - RalfJung:remove-dead-rustc_allowed_through_unstable_modules, r=Mark-Simulacrum
f77ca067551 Auto merge of #135714 - rust-lang:cargo_update, r=clubby789
be08a093c42 Auto merge of #134976 - mgsloan:improve-select-nth-unstable-docs, r=ibraheemdev
288931bc461 core: `#[allow(unreachable_pub)]` on unreachable `pub use`
7361f398f77 Recognise new IPv6 documentation range from RFC9637
164d8e33936 1. Removed 'rustc_nounwind' 2. Rewording of comments
3d325d714de Correct counting to four in cell module docs
bf25c184ab9 doc: Point to methods on `Command` as alternatives to `set/remove_var`
2592843c025 Rollup merge of #135446 - klensy:panic_immediate_abort_ext, r=Mark-Simulacrum
b1b054ee1a7 wasi/io: remove dead files
94dedd3f6b7 cargo update
d6a1744cbc5 Auto merge of #135709 - lqd:bring-back-len, r=compiler-errors
789ff2a6fbd Rewrap following accepting review suggestions from @ibraheemdev
ce098a55e9c core: add `#![warn(unreachable_pub)]`
edc2593c7b1 Export likely(), unlikely() and cold_path() in std::hint
69cf947e4ca further improve panic_immediate_abort by removing rtprintpanic messages
d207e54829a remove unnecessary rustc_allowed_through_unstable_modules
fe9afd2c322 Rollup merge of #135661 - tgross35:stabilize-float_next_up_down, r=scottmcm
14ee0b17904 Update library/core/src/slice/mod.rs
748d0aea302 rtstartup: add `#![warn(unreachable_pub)]`
1f893ef3511 Rollup merge of #135583 - NobodyXu:move-pipe-to-io, r=joshtriplett
ad43ce43d47 Update library/core/src/slice/mod.rs
0f133c47c1d panic_unwind: add `#![warn(unreachable_pub)]`
760be706a63 Update library/core/src/slice/mod.rs
bb552f305f2 Update library/core/src/slice/mod.rs
7b0632349f8 Rollup merge of #135556 - AeonSolstice:patch-1, r=tgross35
e5ee93dbe25 Revert "Auto merge of #134330 - scottmcm:no-more-rvalue-len, r=matthewjasper"
1cdc6e3044e Add references to the IEEE functions for `float_next_up_down`
6bc12e061f8 Fix import of pipe in kernel_copy.rs
3185ca2fbf3 Update library/core/src/slice/mod.rs
a8ab90278c0 Rollup merge of #134496 - DiuDiu777:fix-doc, r=ibraheemdev
18b98a64742 Clarify note in `std::sync::LazyLock` example
746de56afda Stabilize `float_next_up_down`
08be32e6afa Move `std::pipe::*` into `std::io`
3a16aa1acda Update library/core/src/slice/mod.rs
0fda8d5b87c Rollup merge of #133720 - c410-f3r:cfg-match-foo-bar-baz, r=joshtriplett
0dfee752e16 fix typo in library/alloc/src/sync.rs
f960e15c61c Less unsafe in `dangling`/`without_provenance`
74bac88495d Update library/core/src/slice/mod.rs
0111dd63fe0 Adjust syntax
e46d8fc2087 Add missing safety descriptions to Arc's 'from_raw','increment_strong_count','decrement_strong_count'
3b9643ce23e Auto merge of #135555 - matthiaskrgr:rollup-jnqdbuu, r=matthiaskrgr
b1c0cf9ea1c Update library/core/src/slice/mod.rs
04a2f29ea01 Rollup merge of #135003 - RalfJung:deprecate-allowed-through-unstable, r=davidtwco
9c62a74abd8 Update library/core/src/slice/mod.rs
0abd52ffbab Rollup merge of #132654 - joboet:lazy_main, r=ChrisDenton
83ac196933c Update library/core/src/slice/mod.rs
ef0774a88c0 `then be` -> `be` based on feedback from @ibraheemdev
13d8bfbab1f Improve `select_nth_unstable` documentation clarity
a7db84c9ce7 Auto merge of #135473 - matthiaskrgr:rollup-ksnst4l, r=matthiaskrgr
ad7d754a96a Auto merge of #135465 - jhpratt:rollup-7p93bct, r=jhpratt
b4bd8628dfa Auto merge of #135402 - matthiaskrgr:rollup-cz7hs13, r=matthiaskrgr
dfc75dacde1 alloc: remove unsound `IsZero` for raw pointers
e5fb21f5c29 Auto merge of #135525 - jhpratt:rollup-4gu2wpm, r=jhpratt
3c0d7e50bab Rollup merge of #135497 - DJMrTV:master, r=jhpratt
2be2b2670eb intrinsics: deprecate calling them via the unstable std::intrinsics path
0f249df53ea add comments explaining main thread identification
45017d3d3da Auto merge of #135359 - RalfJung:lang-start-unwind, r=joboet
d64f897ad99 Rollup merge of #135381 - cod10129:vec-splice-doc, r=tgross35
9b7fbf18068 Rollup merge of #135405 - Ayush1325:path-is-absolute, r=tgross35
3bc678c4f0f Rollup merge of #135393 - Ayush1325:uefi-helper-path, r=thomcc
3bab8e46999 Rollup merge of #135379 - steffahn:uniquerc-invariant, r=Mark-Simulacrum
da98d1e46d3 Add inherent versions of MaybeUninit methods for slices
8610d3c4304 Rollup merge of #135423 - compiler-errors:enforce-const-trait-syntactical, r=oli-obk,RalfJung
6cdf20cf1dc Rollup merge of #134678 - zachs18:offset-ptr-update, r=tgross35
40530b8b963 fix typo in typenames of pin documentation
df2e474e444 Update compiler-builtins to 0.1.141
40ea7097744 std: lazily allocate the main thread handle
9254186407f avoid nesting the user-defined main so deeply on the stack
e6bcb57d847 Add another `Vec::splice` example
87bae801bc1 Auto merge of #135420 - GuillaumeGomez:rollup-93vepka, r=GuillaumeGomez
a1d9fd2ab49 path: Move is_absolute check to sys::path
67f43a68cfb uefi: helpers: Introduce OwnedDevicePath
f568a1e95bb Auto merge of #135360 - RalfJung:structural-partial-eq, r=compiler-errors
3947bc26902 Make UniqueRc invariant for soundness
322d8204b7b Enforce syntactical stability of const traits in HIR
9241bd7529e Rollup merge of #134338 - tgross35:overflowing-c-safe-ret, r=bjorn3,antoyo
28853f9cee6 Update ReadDir::next in std::sys::pal::unix::fs to use `&raw const (*ptr).field` instead of `ptr.offset(...).cast()`.
863625372e1 Revert "Remove the Arc rt::init allocation for thread info"
7a0ae510eb3 use a single large catch_unwind in lang_start
453a0d09da6 Rollup merge of #135347 - samueltardieu:push-qvyxtxsqyxyr, r=jhpratt
af3fec81727 Auto merge of #135384 - saethlin:inline-copy-from-slice, r=joboet
026346ff356 Update the explanation for why we use box_new in vec!
070b0d3ba6e update and clarify StructuralPartialEq docs
bf496f4948d Rollup merge of #134143 - nyurik:err-nul, r=dtolnay
92e16bf88c9 Update compiler-builtins to 0.1.143
21d679aa039 Rollup merge of #135324 - Ayush1325:uefi-fs-unsupported, r=joboet
755dfe3dce3 Use `NonNull::without_provenance` within the standard library
52bae79bdba Add #[inline] to copy_from_slice
e7dfd002454 Rename `pos` to `position`
c0f881bd170 Rollup merge of #135236 - scottmcm:more-mcp807-library-updates, r=ChrisDenton
0ec2ec34838 Convert `struct FromBytesWithNulError` into enum
5f93459fd50 Rollup merge of #134693 - SpriteOvO:proc-macro-use-to-tokens-in-quote, r=tgross35
be57dc37e71 Initial fs module for uefi
c5138809bc9 Improve the safety documentation on new_unchecked
c4e74a93a6a Rollup merge of #132607 - YohDeadfall:pthread-name-fn-with-result, r=tgross35
d7f1e02303a Fix `proc_macro::quote!` for raw ident
2f129feaa84 Update a bunch of library types for MCP807
440a9c7993d Rollup merge of #134908 - madsmtm:ptr-from_ref-docs, r=ibraheemdev
7593e8c08da Used pthread name functions returning result for FreeBSD and DragonFly
8c71c64f0f9 Append `TokenTree` with `ToTokens` in `proc_macro::quote!`
435632819aa Auto merge of #135268 - pietroalbini:pa-bump-stage0, r=Mark-Simulacrum
326867e6762 Rollup merge of #134619 - hkBst:patch-7, r=jhpratt
50749415ccb Fix ptr::from_ref documentation example comment
7e9916791c8 Rename the internal simpler `quote` macro to `minimal_quote`
e3f4dc872c1 Rollup merge of #135269 - estebank:unneeded-into, r=compiler-errors
95b7094421d fmt
2039e8df997 Improve prose around `as_slice` example of IterMut
5d599f86db2 Rollup merge of #135242 - RalfJung:nonnull-provenance, r=jhpratt
470a19ef9a9 update cfg(bootstrap)
01959a0f0cd Avoid naming variables `str`
3aff376e546 Remove some unnecessary `.into()` calls
3ad71e11eb8 Rollup merge of #135176 - kornelski:env-example, r=cuviper
3ce08450cb6 add missing provenance APIs on NonNull
1f8f9d1bb7a update version placeholders
50598e921e2 Rollup merge of #135139 - c410-f3r:8-years-rfc, r=jhpratt
ce13c0a4b2c Rollup merge of #134389 - rust-wasi-web:condvar-no-threads, r=m-ou-se
da93e788516 More compelling env_clear() examples
d71e2a7b6dc Rollup merge of #131830 - hoodmane:emscripten-wasm-eh, r=workingjubilee
14b5f1bba24 [generic_assert] Constify methods used by the formatting system
ae6d0c8996f Rollup merge of #133057 - tisonkun:into-chars, r=Amanieu
981947c8b11 Implement Condvar::wait_timeout for targets without threads
086ab355a3e Rollup merge of #135111 - tgross35:float-doc-aliases, r=Noratrieb
fbd5a0531e7 Rollup merge of #135153 - crystalstall:master, r=workingjubilee
b3e6b8b622e Add support for wasm exception handling to Emscripten target
4bc0d59f028 Rollup merge of #135110 - matthiaskrgr:adler, r=workingjubilee
a0ddf4ab33e Impl String::into_chars
226b5755c82 Rollup merge of #135121 - okaneco:const_slice_reverse, r=jhpratt
ef6152cc0f9 Add doc aliases for `libm` and IEEE names
7f65de518d3 chore: remove redundant words in comment
79903f9d43b Rollup merge of #135104 - the8472:disable-in-place-iter-for-flatten, r=Mark-Simulacrum
7923bb5f756 library: fix adler{-> 2}.debug
c4017fd1ecb Clarified the documentation on core::iter::from_fn and core::iter::successors
6bee808b40b Mark `slice::reverse` unstably const
3d27a72d06f Rollup merge of #134996 - bdbai:uwp-support, r=jieyouxu,ChrisDenton
3a8c5a287b2 Rollup merge of #135091 - workingjubilee:backtrace-0.3.75, r=workingjubilee
d7cc83ba407 Rollup merge of #135070 - klensy:backtrace-deps, r=workingjubilee
d938ba2c6f7 Rollup merge of #133964 - joboet:select_unpredictable, r=tgross35
53d537fbd8d fix doc for missing Box allocator consistency
23ddd02a180 add regression test for unsound Flatten/FlatMap specialization
c79c7190828 Rollup merge of #133420 - thesummer:rtems-unwind, r=workingjubilee
1ee92f98104 Fix UWP build
5b2b3c3096d Bump backtrace to 0.3.75
9110a8ff844 Rollup merge of #135046 - RalfJung:rustc_box_intrinsic, r=compiler-errors
5f771af4181 sync to actual dep verions of backtrace
eb900b2d619 core: use public method instead of instrinsic
c837683764d Auto merge of #135005 - matthiaskrgr:rollup-5ubuitt, r=matthiaskrgr
06408480d33 do not in-place-iterate over flatmap/flatten
cde9f27826b Auto merge of #135059 - matthiaskrgr:rollup-0ka9o3h, r=matthiaskrgr
740560e4138 Switch rtems target to panic unwind
c9e2487cf46 turn rustc_box into an intrinsic
8655f273b07 Auto merge of #134692 - GrigorenkoPV:sync_poision, r=tgross35
8a62db80a39 core: improve comments
3a3146b65fd Rollup merge of #134241 - liigo:patch-16, r=dtolnay
e0ec275f7ad Bump backtrace to rust-lang/backtrace-rs@4d7906b
5287cd190ef core: implement `bool::select_unpredictable`
6e3e9450326 path in detail
2259e76b521 Auto merge of #122565 - Zoxc:atomic-panic-msg, r=the8472
a222c95d3f6 Auto merge of #134969 - Marcondiro:master, r=jhpratt,programmerjake
6a4f5400e41 Auto merge of #134080 - kleisauke:avoid-lfs64-emscripten, r=Noratrieb
cb28bad5686 Rollup merge of #134985 - mgsloan:remove-unnecessary-qualification-in-Ord-trait-docs, r=Noratrieb
b526b0da304 Move some things to `std::sync::poison` and reexport them in `std::sync`
a2b498b9538 Try to write the panic message with a single `write_all` call
11e4b71295e Rollup merge of #131439 - mu001999-contrib:cleanup/static-mut, r=estebank
b240f7d15b1 char to_digit: avoid unnecessary casts to u64
adc2653945b std::fs::DirEntry.metadata(): prefer use of lstat() on Emscripten
69b0fa44900 Remove qualification of `std::cmp::Ordering` in `Ord` doc
ee9a7688711 Auto merge of #132195 - clarfonthey:bigint-mul, r=scottmcm
697f28c53c3 Remove allowing static_mut_refs lint
05e93dc814c Avoid use of LFS64 symbols on Emscripten
3ef3a4c8c1f Auto merge of #134966 - matthiaskrgr:rollup-lmhmgsv, r=matthiaskrgr
562249b99ce Tidy up bigint mul methods
9fcf85b78a5 Auto merge of #134620 - ChrisDenton:line-writer, r=tgross35
ec702d2bfe7 Auto merge of #134822 - jieyouxu:rollup-5xuaq82, r=jieyouxu
adbb9b7eebd Rollup merge of #134930 - RalfJung:ptr-docs-valid-access, r=jhpratt
22d86e4b085 Rollup merge of #134851 - lukas-code:alloc-ffi, r=tgross35
dce6c6f58b2 Rollup merge of #134953 - DiuDiu777:unaligned-doc, r=RalfJung
9bb9676e641 Rollup merge of #133663 - scottmcm:carrying_mul_add, r=Amanieu
dbb40a32a09 Avoid short writes in LineWriter
c01618d365d Auto merge of #134786 - ChrisDenton:fix-rename-symlink, r=tgross35
22793b88951 Rollup merge of #134819 - ChrisDenton:trunc, r=Mark-Simulacrum
c4eeaafd4fa Rollup merge of #134927 - DaniPopes:const-as_flattened_mut, r=scottmcm
29d517cbdfd ptr docs: make it clear that we are talking only about memory accesses
af8229d31ea Auto merge of #134547 - SUPERCILEX:unify-copy, r=thomcc
fc51735237e docs: inline `alloc::ffi::c_str` types to `alloc::ffi`
df713c31ec6 fix doc for read write unaligned in zst operation
88e328a42d0 Override `carrying_mul_add` in cg_llvm
e896c946904 Rollup merge of #134791 - notriddle:notriddle/inline-ffi-error-types, r=tgross35
d09e7862ab7 Rollup merge of #134622 - ChrisDenton:write-file-utf8, r=Mark-Simulacrum
bc7ebfb8c71 Fix mistake in windows file open
27790d84a83 Auto merge of #134757 - RalfJung:const_swap, r=scottmcm
463088b1eb9 Make slice::as_flattened_mut unstably const
6c8fda2768e Rollup merge of #134884 - calciumbe:patch1, r=jieyouxu
2ba4093561f Rollup merge of #134832 - tgross35:update-builtins, r=tgross35
5c0677a593a Fix compilation issues on other unixes
1f5b3045be0 Move `{widening, carrying}_mul` to an intrinsic with fallback MIR
727f7a9c5ef Rollup merge of #134789 - betrusted-io:bump-unwinding-to-0.25.0, r=Mark-Simulacrum
236ef9b1463 Rollup merge of #134606 - RalfJung:ptr-copy-docs, r=Mark-Simulacrum
18e2c0d3490 rename typed_swap → typed_swap_nonoverlapping
a18e662fec7 Rollup merge of #134870 - geofft:patch-1, r=jhpratt
a1ac3297d45 fix: typos
9643e93b3a4 Rollup merge of #134823 - chloefeal:fix, r=tgross35,dtolnay
34bc9bb9e6e Update `compiler-builtins` to 0.1.140
98b8e1a91b8 Eliminate redundant statx syscalls
6ba80f87919 Rollup merge of #134782 - wtlin1228:docs/iter-rposition, r=Mark-Simulacrum
7cd8922d4e2 stabilize const_swap
743aa5aef7c Fix sentence fragment in `pin` module docs
bd8181fce26 Update library/alloc/tests/sort/tests.rs
f3f7f4d70a2 Unify fs::copy and io::copy
49201fd5452 Fix typos
6b9bf38917a Rollup merge of #134689 - RalfJung:ptr-swap-test, r=oli-obk
91e2cfe7ad9 Rollup merge of #134672 - Zalathar:revert-coverage-attr, r=wesleywiser
0590e1b585b Fix renaming symlinks on Windows
1a44c2b8380 docs: inline `core::ffi::c_str` types to `core::ffi`
2ed469a073a Windows: Use WriteFile to write to a UTF-8 console
485dd5e5b90 Impl FromIterator for tuples with arity 1-12
c7f76b091ba unwinding: bump version to fix asm
21c2c8c67d0 ptr::copy: fix docs for the overlapping case
74bb3ce4cf9 Rollup merge of #134728 - deltragon:barrier-doc, r=tgross35
cb89336f07f docs: update code example for Iterator#rposition
ba0943ad7de Auto merge of #134729 - oliveredget:typo, r=jieyouxu
b40cc1459b5 Rollup merge of #134662 - ionicmc-rs:any-safety-docs, r=Amanieu
3510a5c2dcb core: fix const ptr::swap_nonoverlapping when there are pointers at odd offsets in the type
1a43c8e1181 Auto merge of #134666 - matthiaskrgr:rollup-whe0chp, r=matthiaskrgr
4adc73546f3 Revert "Auto merge of #130766 - clarfonthey:stable-coverage-attribute, r=wesleywiser"
6efae8c1e5a stabilize const_alloc_layout
5560d0f5aec docs: inline `std::ffi::c_str` types to `std::ffi`
93827feac89 Fix formatting
a1be2e39fa4 Rollup merge of #134649 - SUPERCILEX:statx-remember, r=thomcc
9c317c27776 Use scoped threads in `std::sync::Barrier` examples
2ac5591fe1d Auto merge of #134722 - ChrisDenton:trunc, r=Amanieu
f8668aa23d0 chore: fix typos
4a79c5e078e Rollup merge of #134363 - estebank:derive-default, r=SparrowLii
d87071864d6 Fixes safety docs for `dyn Any + Send {+ Sync}`
aa5298bdc29 Auto merge of #131311 - rust-lang:cargo_update, r=clubby789
83d8e04c381 Rollup merge of #134644 - kpreid:duplicates, r=Mark-Simulacrum
f38b7a8eb70 Fix forgetting to save statx availability on success
84732df6524 Auto merge of #134333 - daxpedda:stdarch-bump, r=daxpedda
e59f16b2659 Windows: Use FILE_ALLOCATION_INFO for truncation
709d7714762 Use `#[derive(Default)]` instead of manually implementing it
be13ae728b1 Rollup merge of #134379 - bjoernager:slice-as-array, r=dtolnay
b04e6d31eb4 Specify only that duplicates are discarded, not the order.
b2613470eb1 Bump `stdarch`
b6f92379aa9 Add 'into_array' conversion destructors for 'Box', 'Rc', and 'Arc';
cf4353a8d7a Document collection `From` and `FromIterator` impls that drop duplicate keys.
062ca741752 Auto merge of #134640 - matthiaskrgr:rollup-xlstm3o, r=matthiaskrgr
5c2a3f5c0dd Rollup merge of #134593 - kornelski:less-unwrap, r=jhpratt
6ee934f66fe Auto merge of #130733 - okaneco:is_ascii, r=scottmcm
f67f15cd92a Rollup merge of #123604 - michaelvanstraten:proc_thread_attribute_list, r=ChrisDenton
ace863d1990 Rollup merge of #134642 - kpreid:pointerlike-cell, r=compiler-errors
5aee570630e Auto merge of #131193 - EFanZh:asserts-vec-len, r=the8472
ae6117c66d2 Auto merge of #134330 - scottmcm:no-more-rvalue-len, r=matthewjasper
1a1f2eed685 cargo update
c3da4055571 Rollup merge of #134630 - fifty-six:master, r=workingjubilee
2840d177bb3 Rollup merge of #134579 - hkBst:patch-6, r=jhpratt
b1ec7aa2a5b Rollup merge of #134325 - theemathas:is_null-docs, r=RalfJung
3f039d44b0b Rollup merge of #134583 - Enselic:maybe-uninit-transmute, r=workingjubilee
820149307d0 Implement `PointerLike` for `isize`, `NonNull`, `Cell`, `UnsafeCell`, and `SyncUnsafeCell`.
bd1bcb03ef5 Rollup merge of #134602 - kpreid:pointerlike-doc, r=tgross35
86d342fce83 Asserts the maximum value that can be returned from `Vec::len`
d37e1841722 Delete `Rvalue::Len`
03d93454780 Use `&raw` for `ptr` primitive docs
43c74f9d408 Rollup merge of #134577 - hkBst:patch-5, r=jhpratt
5e7f3ecc813 Rollup merge of #131072 - Fulgen301:windows-rename-posix-semantics, r=ChrisDenton
185a174290a Rollup merge of #130289 - intgr-forks:Permissions-readonly-vs-unix-root, r=ChrisDenton
76b88277d58 docs: `transmute<&mut T, &mut MaybeUninit<T>>` is unsound when exposed to safe code
44eb34b3368 Document `PointerLike` implementation restrictions.
35a52dee7df Rollup merge of #134576 - hkBst:patch-4, r=jhpratt
9a0553ebaf9 docs: Permissions.readonly() also ignores root user special permissions
ea2bbafa4d1 Less unwrap() in documentation
ae390de3544 Add `is_ascii` function optimized for x86-64 for [u8]
8c4e4172ea4 Rollup merge of #134573 - lukas-code:unimpl-dyn-pointerlike, r=compiler-errors
65eb1f38744 Abstract `ProcThreadAttributeList` into its own struct
bda1416b4c4 Improve prose around into_slice example of IterMut
25401efd1e2 Document CTFE behavior of methods that call is_null
a849da28cde Improve prose around `as_slice` example of Iter
f37928c7f7e Win: rename: Use offset_of! in struct size calculation
730d7b39757 Rollup merge of #134518 - hltj:typo-fix, r=tgross35
d9ad5101237 Improve prose around basic examples of Iter and IterMut
f0a62358887 Add new implementation benchmark
cfad6698f2d Rollup merge of #134570 - hkBst:patch-3, r=joboet
975e6a476c7 fix `PointerLike` docs
eaf8ddf0fdd Correctly document is_null CTFE behavior.
91749613e6b Win: Remove special casing of the win7 target for `std::fs::rename`
a81068cc3a1 Rollup merge of #132830 - wr7:substr_range_documentation, r=tgross35
d82aa03a786 Rollup merge of #134560 - RalfJung:miri-thread-spawn, r=jhpratt
96675c61a8f remove reference to dangling from slice::Iter
6ee6550b2f5 unimplement `PointerLike` for trait objects
ced362460ca Win: Add test cases for renaming a directory while the target file is opened and for renaming over a non-empty directory
86274a989a8 Rollup merge of #126118 - jan-ferdinand:docs_for_vec_set_len, r=the8472
f9a6f81feee mri: add track_caller to thread spawning methods for better backtraces
4d0d8530873 split up `#[rustc_deny_explicit_impl]` attribute
323895fc242 Win: Use `FILE_RENAME_FLAG_POSIX_SEMANTICS` for `std::fs::rename` if available
c8496ccf737 build: Update libc version
d961be2645b Rollup merge of #134277 - notriddle:notriddle/inline-into, r=GuillaumeGomez
d235ece08bd Auto merge of #134425 - clubby789:cargo-update, r=jieyouxu
86484052651 Auto merge of #134258 - bjorn3:no_public_specialization, r=petrochenkov
a430eb008a4 fix typos in the example code in the doc comments of `Ipv4Addr::from_bits()`, `Ipv6Addr::from_bits()` & `Ipv6Addr::to_bits()`
335abd37067 Improve documentation of `element_offset` and related methods
58a0a0f033f docs: Mention `spare_capacity_mut()` in `Vec::set_len`
1e8c0163933 Rollup merge of #134490 - hong9lol:typo, r=jhpratt
5f9fc8f40ed Auto merge of #134332 - Zalathar:rollup-oe23hkw, r=Zalathar
29209a70862 rustdoc-search: let From and Into be unboxed
90931c410c9 Rollup merge of #134426 - hkBst:patch-3, r=lqd
ccab7f859a2 compiler & tools dependencies:     Updating allocator-api2 v0.2.20 -> v0.2.21     Updating annotate-snippets v0.11.4 -> v0.11.5     Updating anyhow v1.0.93 -> v1.0.94     Updating bstr v1.11.0 -> v1.11.1     Updating chrono v0.4.38 -> v0.4.39     Updating clap v4.5.21 -> v4.5.23     Updating clap_builder v4.5.21 -> v4.5.23     Updating clap_complete v4.5.38 -> v4.5.39     Updating clap_lex v0.7.3 -> v0.7.4     Updating colored v2.1.0 -> v2.2.0     Updating console v0.15.8 -> v0.15.10     Updating crossbeam-channel v0.5.13 -> v0.5.14     Updating crossbeam-deque v0.8.5 -> v0.8.6     Updating crossbeam-utils v0.8.20 -> v0.8.21     Updating encode_unicode v0.3.6 -> v1.0.0     Updating fastrand v2.2.0 -> v2.3.0     Updating home v0.5.9 -> v0.5.11     Updating js-sys v0.3.74 -> v0.3.76     Updating libc v0.2.167 -> v0.2.168     Updating miniz_oxide v0.8.0 -> v0.8.1     Updating pest v2.7.14 -> v2.7.15     Updating pest_derive v2.7.14 -> v2.7.15     Updating pest_generator v2.7.14 -> v2.7.15     Updating pest_meta v2.7.14 -> v2.7.15     Updating redox_syscall v0.5.7 -> v0.5.8     Updating rustc-stable-hash v0.1.0 -> v0.1.1     Updating rustix v0.38.41 -> v0.38.42     Updating self_cell v1.0.4 -> v1.1.0     Updating semver v1.0.23 -> v1.0.24     Updating serde v1.0.215 -> v1.0.216     Updating serde_derive v1.0.215 -> v1.0.216       Adding thiserror v2.0.7       Adding thiserror-impl v2.0.7     Updating time v0.3.36 -> v0.3.37     Updating time-macros v0.2.18 -> v0.2.19     Updating tokio v1.41.1 -> v1.42.0     Updating wasm-bindgen v0.2.97 -> v0.2.99     Updating wasm-bindgen-backend v0.2.97 -> v0.2.99     Updating wasm-bindgen-macro v0.2.97 -> v0.2.99     Updating wasm-bindgen-macro-support v0.2.97 -> v0.2.99     Updating wasm-bindgen-shared v0.2.97 -> v0.2.99     Updating wasm-encoder v0.221.0 -> v0.221.2     Updating wasmparser v0.221.0 -> v0.221.2     Updating wast v221.0.0 -> v221.0.2     Updating wat v1.221.0 -> v1.221.2
43f555b192a Rename `elem_offset` to `element_offset`
589340bf8a3 Rollup merge of #132056 - weiznich:diagnostic_do_not_recommend_final_tests, r=compiler-errors
054027d1915 fix typo in ptr/mod.rs
4ebb52245e6 Auto merge of #133223 - zachs18:uniquerc-impls, r=Noratrieb
aa5bd6ec17d Rollup merge of #134310 - tkr-sh:master, r=Noratrieb
6f9e907a02d Rollup merge of #133265 - the8472:extract-if-ranges, r=cuviper
085718d0f94 Fix typo in uint_macros.rs
792104b06bb Auto merge of #134443 - joshtriplett:use-field-init-shorthand, r=lqd,tgross35,nnethercote
a49074f79e3 Stabilize `#[diagnostic::do_not_recommend]`
ccbd471119c Rollup merge of #133406 - EFanZh:lock-value-accessors, r=Noratrieb
7f38bd9249a Auto merge of #130766 - clarfonthey:stable-coverage-attribute, r=wesleywiser
e6221ccc914 remove obsolete comment and pub(super) visibility
3e2f2bef5ba Rollup merge of #134452 - jalil-salame:fix-lazy-cell-docs, r=tgross35
0a84af4a845 Use field init shorthand where possible
0ec3ee74059 Rollup merge of #130361 - devnexen:sock_cloexec_solaris, r=cuviper
275117be975 Rollup merge of #134202 - nnethercote:rm-existing_doc_keyword, r=GuillaumeGomez
c36087fdc89 Stabilize #[coverage] attribute
2e09db085df remove bounds from vec and linkedlist ExtractIf
f737117b57f fix(LazyCell): documentation of get[_mut] was wrong
36762279990 Remove `rustc::existing_doc_keyword` lint.
e0d5972dbc4 Add a range argument to vec.extract_if
10055d30399 Move `doc(keyword = "while")`.
c79f381f8cb Rollup merge of #134022 - shahn:doc_clarify_extend_for_tuple_version, r=tgross35
482ac626467 Remove support for specializing ToString outside the standard library
7b776b10a41 Auto merge of #134047 - saethlin:inline-fmt-rt, r=m-ou-se
defc8957db2 UniqueRc: platform-specific AsFd/Handle/etc impls to mirror Rc
d264b861ef3 Replace i32 by char in `split_at` & `_unchecked`
6b9a87f6cb5 Add value accessor methods to `Mutex` and `RwLock`
f9d5a5459ea std::net: Solaris supports `SOCK_CLOEXEC` as well since 11.4.
752d48d9724 Rollup merge of #133986 - olishmollie:tracking-issue-127154-documentation, r=tgross35
d57e06c85f3 Correct spelling of CURRENT_RUSTC_VERSION
e3531cbbb3c Rollup merge of #134179 - zachs18:align_offset_mut_ptr_doc, r=workingjubilee
525c478edc7 Reword prelude for AsyncFn stabilization
66c89ceefa1 UniqueRc: PinCoerceUnsized and DerefPure
1ac8ad94557 Add clarity to the "greater" of `VecDeque::insert`
5216be921b7 Auto merge of #134296 - matthiaskrgr:rollup-o0sxozj, r=matthiaskrgr
7716936340d Add documentation for anonymous pipe module
2198b5fa530 Stabilize async closures
a147b279904 UniqueRc: comparisons and Hash
c953d929206 Replace i32 by char to add clarity
c2c06f91fbd Rollup merge of #134255 - bjoernager:master, r=Noratrieb
f689885403f Rollup merge of #133942 - BD103:black-box-docs, r=saethlin
cff172484ba UniqueRc: Add more trait impls.
1c0b879495a Rollup merge of #134254 - hermit-os:hermit-c_char, r=workingjubilee
70a1177e009 Update includes in '/library/core/src/error.rs';
2aec00baec2 Rollup merge of #134229 - purplesyringa:provenance-docs, r=saethlin
e788f7b3d9c feat: clarify how to use `black_box()`
1dd52c9e2d4 Rollup merge of #134252 - hermit-os:hermit-is_absolute, r=tgross35
bf710ada1e6 Fix building `std` for Hermit after `c_char` change
dea03df7e6c Rollup merge of #134140 - compiler-errors:unsafe-binders-ast, r=oli-obk
de2cb00e2a3 Fix typos in docs on provenance
0632f329d09 Fix `Path::is_absolute` on Hermit
1e3d7ef3678 Add unwrap_unsafe_binder and wrap_unsafe_binder macro operators
5866fdf5ef6 Rollup merge of #133472 - rust-wasi-web:master, r=joboet
7ed41ff0b0a Switch inline(always) in core/src/fmt/rt.rs to plain inline
394d9a6b2f1 Rollup merge of #134178 - ehuss:stabilize-2024-prelude, r=amanieu,traviscross,tgross35
9c96061c1d9 Remove consteval note from <*mut T>::align_offset docs.
b59baf07f30 Rollup merge of #133456 - clubby789:cargo-update, r=ChrisDenton
1f38b0de3d7 Rollup merge of #134155 - sthibaul:unsafe_op_in_unsafe_fn, r=tgross35
a8a0f6a754f Stabilize the Rust 2024 prelude
6cddada3308 Rollup merge of #134116 - RalfJung:const_nonnull_new, r=jhpratt
cef207f79bc Rollup merge of #133859 - bjorn3:move_tests_to_alloctests, r=tgross35
35fd88c392b Forbid unsafe_op_in_unsafe_fn in hurd-specific os and sys files
77686a282e8 Rollup merge of #134100 - eholk:noop-rustc-const-stable, r=dtolnay
03b2eb79772 Rollup merge of #122003 - mati865:gnullvm-build-libunwind, r=petrochenkov
9ef3c0d479b Move some alloc tests to the alloctests crate
e3792e78842 Auto merge of #134177 - matthiaskrgr:rollup-hgp8q60, r=matthiaskrgr
a3f6e0a59e1 control libunwind linkage mode via `crt-static` on gnullvm targets
c765a343d3d Rollup merge of #134079 - tbu-:pr_doc_x…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-ABI Area: Concerning the application binary interface (ABI) O-emscripten Target: 50% off wasm32-unknown-musl. the savings come out of stdio.h, but hey, you get SDL! S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants