Skip to content

Conversation

@matthiaskrgr
Copy link
Member

@matthiaskrgr matthiaskrgr commented Nov 1, 2025

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Jarcho and others added 30 commits September 30, 2025 14:08
…r=GuillaumeGomez

Return spans out of `is_doc_comment` to reduce reliance on `.span()` on attributes

r? `@GuillaumeGomez`
Remove boxes from ast list elements

Less indirection should be better perf.
When matched against `Result` with copyable `Ok` variant, uncopyable scrutinee won't
actually be moved. But `manual_unwrap_or`/`manual_unwrap_or_default`
will force it to move, which can cause problem if scrutinee is used later.

changelog: [`manual_unwrap_or`]: don't lint if not safe to move scrutinee
changelog: [`manual_unwrap_or_default`]: don't lint if not safe to move scrutinee

Signed-off-by: Zihan <zihanli0822@gmail.com>
Update to direct link to the Code of Conduct

changelog: none
The errors were unrelated to the lint...
- make them `verbose` -- the ones spanning multiple lines were
  especially egregious
- give a more descriptive help message
estebank and others added 13 commits October 31, 2025 20:46
Tweak output of missing lifetime on associated type

Each commit can be reviewed independently. Address parts of rust-lang#135589.

---

When an associated type is missing a lifetime, point at its enclosing `impl`, whether it has or doesn't have lifetimes defined. If it does have a lifetime, suggest using it.

```
error: in the trait associated type is declared without lifetime parameters, so using a borrowed type for them requires that lifetime to come from the implemented type
  --> $DIR/missing-lifetime-in-assoc-type-1.rs:8:17
   |
LL | impl<'a> IntoIterator for &S {
   |     ---- there is a named lifetime specified on the impl block you could use
...
LL |     type Item = &T;
   |                 ^ this lifetime must come from the implemented type
   |
help: consider using the lifetime from the impl block
   |
LL |     type Item = &'a T;
   |                  ++
```

```
error: in the trait associated type is declared without lifetime parameters, so using a borrowed type for them requires that lifetime to come from the implemented type
  --> $DIR/missing-lifetime-in-assoc-type-2.rs:5:17
   |
LL | impl IntoIterator for &S {
   |     - you could add a lifetime on the impl block, if the trait or the self type can have one
LL |     type Item = &T;
   |                 ^ this lifetime must come from the implemented type
```

---

On unconstrained lifetime on impl block, suggest using it if there's an implicit borrow in the self type
```
error[E0207]: the lifetime parameter `'a` is not constrained by the impl trait, self type, or predicates
  --> $DIR/missing-lifetime-in-assoc-type-1.rs:4:6
   |
LL | impl<'a> IntoIterator for &S {
   |      ^^ unconstrained lifetime parameter
   |
help: consider using the named lifetime here instead of an implict lifetime
   |
LL | impl<'a> IntoIterator for &'a S {
   |                            ++
```

---

Do not suggest introducing lifetime in impl assoc type

---

Previously we only showed the trait's assoc item if the trait was local, because we were looking for a small span only for the generics, which we don't have for foreign traits. We now use `def_span` for the item, so we at least provide some context, even if its span is too wide.

```
error[E0195]: lifetime parameters or bounds on type `IntoIter` do not match the trait declaration
   --> tests/ui/lifetimes/missing-lifetime-in-assoc-type-4.rs:7:18
    |
7   |     type IntoIter<'a> = std::collections::btree_map::Values<'a, i32, T>;
    |                  ^^^^ lifetimes do not match type in trait
    |
   ::: /home/gh-estebank/rust/library/core/src/iter/traits/collect.rs:292:5
    |
292 |     type IntoIter: Iterator<Item = Self::Item>;
    |     ------------------------------------------ lifetimes in impl do not match this type in trait
```
…Nadrieril,traviscross

Implement pin-project in pattern matching for `&pin mut|const T`

This PR implements part of rust-lang#130494. It supports pin-project in pattern matching for `&pin mut|const T`.

~Pin-projection by field access (i.e. `&pin mut|const place.field`) is not fully supported yet since pinned-borrow is not ready (rust-lang#135731).~

CC ````@traviscross````
…wiser

Update bundled musl to 1.2.5

Update the bundled musl library from 1.2.3 to the 1.2.5 release from February 29, 2024.

* mcp: rust-lang/compiler-team#887
* blog: rust-lang/blog.rust-lang.org#1641
* Prior update: rust-lang#107129
* [musl releases page](https://musl.libc.org/releases.html)

--------

This is a rebase of

* rust-lang#125692

Which removes the second speculative commit which ended up not panning out.

I've added my own second commit that updates all other places I could find that referenced musl 1.2.3 in the codebase.

try-job: dist-x86_64-musl
try-job: dist-i586-gnu-i586-i686-musl
try-job: dist-x86_64-linux
…ht, r=yotamofek,lolbinarycat

Simplify code to generate line numbers in highlight

Follow-up of rust-lang#146992.

cc ```@yotamofek```
r? ```@lolbinarycat```
Unpin `libc` and `rustix` in `compiler` and `rustbook`

Closes rust-lang#147501
…triddle

[rustdoc search] Include extern crates when filtering on `import`

As discussed rust-lang#147909, some filters should have been "grouped". This PR allows extern crates to match the `import` filter.

This PR also allowed me to uncover a bug for the URL generated for renamed extern crates. Opened rust-lang#148300 for it.

r? ```@notriddle```
…=mati865

Don't require dlltool with the dummy backend on MinGW

The dummy backend should be able to cross-compile to any target without requiring any external tool or library other than the rust standard library.

For rust-lang/miri#4648.
…orkingjubilee

cleanup: upstream dropped amx-transpose functionality

See also LLVM change 5322fb626820. Looks like this was just removed entirely.
It seems a little bad to just drop it, but I don't see an easy way to conditionalize
this and if it's really just Gone and we marked it as unstable (which it looks like
we did?) I guess we should just dump it.

```@rustbot``` label llvm-main
…Manishearth

Clippy subtree update

r? `@Manishearth`

Cargo.lock update due to Clippy version bump
…Amanieu

`nonpoison::Condvar` should take `MutexGuard` by reference

Feature: `#![feature(nonpoison_condvar)]`
Tracking Issue: rust-lang#134645
Specific comment: rust-lang#134645 (comment)

Changes the `nonpoison::Condvar` API to take `MutexGuard` by reference instead of ownership.

I'm actually not entirely sure why the current poison variant of `Condvar` takes by ownership, is it just legacy reasons?

Additionally, the `nonpoison_and_poison_unwrap_test` macro doesn't really make sense anymore now that the APIs are completely different, so this reverts that change from a few months ago.

r? ```@Amanieu```
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-rustdoc-search Area: Rustdoc's search feature A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-clippy Relevant to the Clippy team. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. rollup A PR which is a rollup labels Nov 1, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Nov 1, 2025

📌 Commit c972d22 has been approved by matthiaskrgr

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 Nov 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-rustdoc-search Area: Rustdoc's search feature A-testsuite Area: The testsuite used to check the correctness of rustc rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-clippy Relevant to the Clippy team. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.

Projects

None yet

Development

Successfully merging this pull request may close these issues.