diff options
| author | Ayaz Hafiz <ayaz.hafiz.1@gmail.com> | 2020-08-15 13:34:06 -0700 |
|---|---|---|
| committer | Caleb Cartwright <calebcartwright@users.noreply.github.com> | 2020-11-14 11:50:28 -0600 |
| commit | ce13ff15c33da1e31931ba4bc692709be3a2cf30 (patch) | |
| tree | cf4f70b41a601ecf95906a44b7dd61212ecbd828 /src/expr.rs | |
| parent | dd32de74ce4911bdf46621d53ed72cfc6071d8ed (diff) | |
Correctly create artificial span for formatting closure body
This commit partially reverts #3934, opting to create a span that covers the entire body of a closure when formatting a closure body with a block-formatting strategy, rather than having the block-formatting code determine if the visitor pointer should be rewound. The problem with rewinding the visitor pointer is it may be incorrect for other (i.e. non-artificial) AST nodes, as in the case of #4382. Closes #4382
Diffstat (limited to 'src/expr.rs')
| -rw-r--r-- | src/expr.rs | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/src/expr.rs b/src/expr.rs index 6bc54ff8601..1ba879ccc1d 100644 --- a/src/expr.rs +++ b/src/expr.rs @@ -528,17 +528,7 @@ pub(crate) fn rewrite_block_with_visitor( let open_pos = snippet.find_uncommented("{")?; visitor.last_pos = block.span.lo() + BytePos(open_pos as u32) } - (ast::BlockCheckMode::Default, None) => { - visitor.last_pos = block.span.lo(); - if let Some(attrs) = attrs { - if let Some(first) = attrs.first() { - let first_lo_span = first.span.lo(); - if first_lo_span < visitor.last_pos { - visitor.last_pos = first_lo_span; - } - } - } - } + (ast::BlockCheckMode::Default, None) => visitor.last_pos = block.span.lo(), } let inner_attrs = attrs.map(inner_attributes); |
