-
Notifications
You must be signed in to change notification settings - Fork 13k
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
Rollup of 10 pull requests #89373
Rollup of 10 pull requests #89373
Conversation
Write down the missing safety arguments.
thinLTOResolvePrevailingInModule became thinLTOFinalizeInModule and gained the ability to propagate noRecurse and noUnwind function attributes. I ran codegen tests with it both on and off, as the upstream patch uses it in both modes, and the tests pass both ways. Given that, it seemed reasonable to go ahead and let the propagation be enabled in rustc, and see what happens. See https://reviews.llvm.org/D36850 for more examples of how the new version of the function gets used.
The `Step` trait guarantees that `Range<impl Step>` yields items in sorted order. We can override the `Iterator::is_sorted` method based on this guarantee, as we already do for `Iterator::min` and `max`.
…r=notriddle Fix union keyword highlighting in rustdoc HTML sources I followed this logic: if I find an ident "union", I check if it followed by another ident or not. If it's the case, then I consider this is a keyword because it's declaring a union type. To do so I created a new Iterator which allows to peek the next items without moving the current iterator position. This is part of rust-lang#85016. If the fix makes sense, I'll extend it to other weak keywords (the issue only mentions they exist but https://doc.rust-lang.org/nightly/reference/keywords.html#weak-keywords only talks about `dyn` and `'static` so not sure if there is anything else to be done?). cc `@notriddle` (you're one of the last ones who worked on this part of rustdoc so here you go 😉 ) r? `@jyn514`
Remove ignore-tidy-undocumented-unsafe from core::slice::sort Write down the missing safety arguments to be able to remove `ignore-tidy-undocumented-unsafe` from `core::slice::sort`. Helps with rust-lang#66219 `@rustbot` label C-cleanup T-libs
…r=camelid Fix generics where bounds order Fixes rust-lang#88809. Like said on the above issue, the issue is that we were expecting `Symbol` comparisons to be string-based but they are integer-based (because `Symbol` is an integer), messing up the bounds order. To fix it, I simply stored into a `FxIndexMap` instead. r? `@jyn514`
Improve help for recursion limit errors - Tweak help message and suggested limit (handle `0` case). - Add test for rust-lang#75602 (it was already fixed, maybe can be resolved too). Fixes rust-lang#76424
…pe-enum, r=camelid Remove Never variant from clean::Type enum Fixes rust-lang#89287. r? `@camelid`
Add unit assignment to MIR for `asm!()` Fixes rust-lang#89305. `ExprKind::LlvmInlineAsm` gets a `push_assign_unit()` here: https://github.com/rust-lang/rust/blob/2b6ed3b675475abc01ce7e68bb75b457f0c85684/compiler/rustc_mir_build/src/build/expr/into.rs#L475-L479 The same should probably happen for `ExprKind::InlineAsm`, which fixes the "use of possibly-uninitialized variable" error described in rust-lang#89305.
…ilingInModule, r=nikic PassWrapper: handle function rename from upstream D36850 thinLTOResolvePrevailingInModule became thinLTOFinalizeInModule and gained the ability to propagate noRecurse and noUnwind function attributes. I ran codegen tests with it both on and off, as the upstream patch uses it in both modes, and the tests pass both ways. Given that, it seemed reasonable to go ahead and let the propagation be enabled in rustc, and see what happens. See https://reviews.llvm.org/D36850 for more examples of how the new version of the function gets used. r? `@nikic` cc `@nagisa`
…r=yaahc Clarify that `CString::from_vec_unchecked` appends 0 byte.
Optimize is_sorted for Range and RangeInclusive The [`Step`] trait guarantees that `Range<impl Step>` yields items in sorted order. We can override `Iterator::is_sorted` based on this guarantee, as we already do for `Iterator::min` and `max`. Thank you to `@fiveseven-lambda` who pointed this out [on the Rust Users Forum](https://users.rust-lang.org/t/is-sorted-method-in-impl-iterator-for-range/64717). [`Step`]: https://doc.rust-lang.org/stable/std/iter/trait.Step.html
…r=jyn514 rustdoc: Remove lazy_static dependency The macro was used in only one place and there are equivalents in the std, so it seemed weird to keep it around... I think running a perf check would be a good idea though, just in case. r? `@jyn514`
@bors: r+ p=10 rollup=never |
📌 Commit 0d81368 has been approved by |
⌛ Testing commit 0d81368 with merge d140f0b1713528ff54bfce1679cdca19819ca416... |
💔 Test failed - checks-actions |
The job Click to see the possible cause of the failure (guessed by this bot)
|
@bors retry |
⌛ Testing commit 0d81368 with merge c4b66c3838508c19dac43cbaf1b760440cdad783... |
💔 Test failed - checks-actions |
@rust-lang/infra Is the CI broken? @bors retry |
⌛ Testing commit 0d81368 with merge c1228398ac1cba52ccf98a7f2845372ddcb4da3a... |
💔 Test failed - checks-actions |
@bors treeclosed=100 |
The job Click to see the possible cause of the failure (guessed by this bot)
|
The job Click to see the possible cause of the failure (guessed by this bot)
|
Recreated in #89386. |
Successful merges:
asm!()
#89311 (Add unit assignment to MIR forasm!()
)CString::from_vec_unchecked
appends 0 byte. #89315 (Clarify thatCString::from_vec_unchecked
appends 0 byte.)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup