Comment before a list element is changed to an end-of-line comment for a different element
Open
Nobody has claimed this yet.
A-comments
C-bug
I-unexpected-motion
S-has-mcve
- Dominant language
- Rust
- Stars
- 7k
- Forks
- 1.1k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 24
Description
Input:
fn hello() {
let _slice = &[
// First item
0x0001,
// Second item
0x0002,
];
two_arg_fn(
// First arg
1,
// Second arg
2,
);
}
fn two_arg_fn(_x: u32, _y: u32) {}
Output:
fn hello() {
let _slice = &[
// First item
0x0001, // Second item
0x0002,
];
two_arg_fn(
// First arg
1, // Second arg
2,
);
}
fn two_arg_fn(_x: u32, _y: u32) {}
Here the intent was to have a comment associated with the element on the following line, but rustfmt confusingly turned the comment for the second element into an end-of-line comment for the first element.
$ rustfmt --version
rustfmt 1.7.0-stable (7cf61ebd 2024-03-27)
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.
Research direction
Reproduce the report with the linked Rust Playground example or the rustfmt 1.7.0-stable CLI. Add coverage for both the array and function-call examples, and verify that comments remain attached to the following elements rather than becoming end-of-line comments for preceding elements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 42/100