Closed
Description
Example:
fn main() {
let a = 10; // Comment 1
// Comment 2
}
=>
fn main() {
let a =
10; // Comment 1
// Comment 2
}
Affected tests:
[pretty] pretty\issue-20427.rs
[pretty] pretty\issue-22992.rs
[pretty] pretty\issue-23338-ensure-param-drop-order.rs
[pretty] pretty\issue-27401-dropflag-reinit.rs
The issue disappears if comments are not packed into ibox
(see try!(self.ibox(0))
and self.end()
in pprust.rs/fn print_comment/comments::Trailing), but formatting become worse and other tests fail.
I spent whole day investigating how these boxes work and reading Derek C. Oppen's "Pretty Printing" but still have no idea why this extra newline appears.