File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -3809,7 +3809,9 @@ impl<'a> Parser<'a> {
38093809 fn recover_stmt_ ( & mut self , break_on_semi : SemiColonMode ) {
38103810 let mut brace_depth = 0 ;
38113811 let mut bracket_depth = 0 ;
3812+ debug ! ( "recover_stmt_ enter loop" ) ;
38123813 loop {
3814+ debug ! ( "recover_stmt_ loop {:?}" , self . token) ;
38133815 match self . token {
38143816 token:: OpenDelim ( token:: DelimToken :: Brace ) => {
38153817 brace_depth += 1 ;
@@ -3821,6 +3823,7 @@ impl<'a> Parser<'a> {
38213823 }
38223824 token:: CloseDelim ( token:: DelimToken :: Brace ) => {
38233825 if brace_depth == 0 {
3826+ debug ! ( "recover_stmt_ return - close delim {:?}" , self . token) ;
38243827 return ;
38253828 }
38263829 brace_depth -= 1 ;
@@ -3833,12 +3836,16 @@ impl<'a> Parser<'a> {
38333836 }
38343837 self . bump ( ) ;
38353838 }
3836- token:: Eof => return ,
3839+ token:: Eof => {
3840+ debug ! ( "recover_stmt_ return - Eof" ) ;
3841+ return ;
3842+ }
38373843 token:: Semi => {
38383844 self . bump ( ) ;
38393845 if break_on_semi == SemiColonMode :: Break &&
38403846 brace_depth == 0 &&
38413847 bracket_depth == 0 {
3848+ debug ! ( "recover_stmt_ return - Semi" ) ;
38423849 return ;
38433850 }
38443851 }
@@ -4027,6 +4034,8 @@ impl<'a> Parser<'a> {
40274034 while !self . eat ( & token:: CloseDelim ( token:: Brace ) ) {
40284035 let Spanned { node, span} = if let Some ( s) = self . parse_stmt_ ( ) {
40294036 s
4037+ } else if self . token == token:: Eof {
4038+ break ;
40304039 } else {
40314040 // Found only `;` or `}`.
40324041 continue ;
You can’t perform that action at this time.
0 commit comments