Rustfmt generates invalid code for associated type bounds with where-clause and comments
Open
@saberoueslati is already working on this.
Since Aug 4, 2026.
A-comments
- Dominant language
- Rust
- Stars
- 7k
- Forks
- 1.1k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 24
Description
Input (Playground):
pub trait Trait {
type I: Iterator<
// This is an item
Item = Self,
>
where
Self: Copy;
}
Expected: rustfmt produces the same code as input.
Output: rustfmt produces the following invalid code
pub trait Trait {
type I: Iterator<
// This is an item
Item = Self,
>
: Iterator<
// This is an item
Item = Self,
>
where
Self: Copy;
}
Version
$ rustfmt --version
rustfmt 1.8.0-stable (ded5c06cf2 2025-12-08)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.