about summary refs log tree commit diff
path: root/src/libsyntax/print/pprust.rs
diff options
context:
space:
mode:
authorErick Tryzelaar <erick.tryzelaar@gmail.com>2016-03-07 10:25:02 -0500
committerErick Tryzelaar <erick.tryzelaar@gmail.com>2016-03-07 10:25:02 -0500
commit0e3334eba95ea66f35db15a73181ba8e22f80586 (patch)
tree1b75457639cdef808089b66fb1cb8461aa793aee /src/libsyntax/print/pprust.rs
parente079afa00b58f06de8e2a7596073045cd0983b7b (diff)
downloadrust-0e3334eba95ea66f35db15a73181ba8e22f80586.tar.gz
rust-0e3334eba95ea66f35db15a73181ba8e22f80586.zip
syntax: Always pretty print a newline after doc comments
Before this patch, code that had a doc comment as the first
line, as in:

```rust
/// Foo
struct Foo;
```

Was pretty printed into:

```rust
///Foostruct Foo;
```

This makes sure that that there is always a trailing newline
after a doc comment.

Closes #31722
Diffstat (limited to 'src/libsyntax/print/pprust.rs')
-rw-r--r--src/libsyntax/print/pprust.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs
index 55c1af44cab..a0acfa3ab4a 100644
--- a/src/libsyntax/print/pprust.rs
+++ b/src/libsyntax/print/pprust.rs
@@ -752,7 +752,8 @@ pub trait PrintState<'a> {
         }
         try!(self.maybe_print_comment(attr.span.lo));
         if attr.node.is_sugared_doc {
-            word(self.writer(), &attr.value_str().unwrap())
+            try!(word(self.writer(), &attr.value_str().unwrap()));
+            hardbreak(self.writer())
         } else {
             match attr.node.style {
                 ast::AttrStyle::Inner => try!(word(self.writer(), "#![")),