Rollup merge of #107488 - nnethercote:fix-PartialEq-syntax, r=RalfJung
Fix syntax in `-Zunpretty-expanded` output for derived `PartialEq`. If you do `derive(PartialEq)` on a packed struct, the output shown by `-Zunpretty=expanded` includes expressions like this: ``` { self.x } == { other.x } ``` This is invalid syntax. This doesn't break compilation, because the AST nodes are constructed within the compiler. But it does mean anyone using `-Zunpretty=expanded` output as a guide for hand-written impls could get a nasty surprise. This commit fixes things by instead using this form: ``` ({ self.x }) == ({ other.x }) ``` r? ``@RalfJung``
This commit is contained in:
commit
150b9d753b
3 changed files with 26 additions and 8 deletions
|
@ -272,6 +272,10 @@ impl<'a> ExtCtxt<'a> {
|
|||
self.expr(sp, ast::ExprKind::AddrOf(ast::BorrowKind::Ref, ast::Mutability::Not, e))
|
||||
}
|
||||
|
||||
pub fn expr_paren(&self, sp: Span, e: P<ast::Expr>) -> P<ast::Expr> {
|
||||
self.expr(sp, ast::ExprKind::Paren(e))
|
||||
}
|
||||
|
||||
pub fn expr_call(
|
||||
&self,
|
||||
span: Span,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue