@@ -1752,25 +1752,22 @@ impl<'a> Parser<'a> {
1752
1752
fn recover_nested_adt_item ( & mut self , keyword : Symbol ) -> PResult < ' a , bool > {
1753
1753
if self . token . is_keyword ( kw:: Enum ) ||
1754
1754
self . token . is_keyword ( kw:: Struct ) ||
1755
- self . token . is_keyword ( kw:: Union ) {
1756
-
1757
- let prev_token = self . token . clone ( ) ;
1755
+ self . token . is_keyword ( kw:: Union )
1756
+ {
1757
+ let kw_token = self . token . clone ( ) ;
1758
+ let kw_str = pprust:: token_to_string ( & kw_token) ;
1758
1759
let item = self . parse_item ( ) ?;
1759
- if self . token == token:: Comma {
1760
- self . bump ( ) ;
1761
- }
1760
+ self . eat ( & token:: Comma ) ;
1762
1761
1763
- let mut err = self . struct_span_err (
1764
- prev_token. span ,
1765
- & format ! ( "`{}` definition cannot be nested inside `{}`" , pprust:: token_to_string( & prev_token) , keyword) ,
1766
- ) ;
1767
- err. span_suggestion (
1762
+ self . struct_span_err (
1763
+ kw_token. span ,
1764
+ & format ! ( "`{}` definition cannot be nested inside `{}`" , kw_str, keyword) ,
1765
+ ) . span_suggestion (
1768
1766
item. unwrap ( ) . span ,
1769
- & format ! ( "consider creating a new `{}` definition instead of nesting" , pprust :: token_to_string ( & prev_token ) ) ,
1767
+ & format ! ( "consider creating a new `{}` definition instead of nesting" , kw_str ) ,
1770
1768
String :: new ( ) ,
1771
1769
Applicability :: MaybeIncorrect ,
1772
- ) ;
1773
- err. emit ( ) ;
1770
+ ) . emit ( ) ;
1774
1771
// We successfully parsed the item but we must inform the caller about nested problem.
1775
1772
return Ok ( false )
1776
1773
}
0 commit comments