File tree 2 files changed +7
-10
lines changed
2 files changed +7
-10
lines changed Original file line number Diff line number Diff line change @@ -169,8 +169,10 @@ impl MsSqlDialect {
169
169
}
170
170
} ;
171
171
172
+ let mut prior_statement_ended_with_semi_colon = false ;
172
173
while let Token :: SemiColon = parser. peek_token_ref ( ) . token {
173
174
parser. advance_token ( ) ;
175
+ prior_statement_ended_with_semi_colon = true ;
174
176
}
175
177
176
178
let mut else_block = None ;
@@ -201,6 +203,10 @@ impl MsSqlDialect {
201
203
} ,
202
204
} ) ;
203
205
}
206
+ } else {
207
+ if prior_statement_ended_with_semi_colon {
208
+ parser. prev_token ( ) ;
209
+ }
204
210
}
205
211
206
212
Ok ( Statement :: If ( IfStatement {
Original file line number Diff line number Diff line change @@ -4454,16 +4454,7 @@ impl<'a> Parser<'a> {
4454
4454
}
4455
4455
}
4456
4456
values.push(self.parse_statement()?);
4457
-
4458
- let semi_colon_expected = match values.last() {
4459
- Some(Statement::If(if_statement)) => if_statement.end_token.is_some(),
4460
- Some(_) => true,
4461
- None => false,
4462
- };
4463
-
4464
- if semi_colon_expected {
4465
- self.expect_token(&Token::SemiColon)?;
4466
- }
4457
+ self.expect_token(&Token::SemiColon)?;
4467
4458
}
4468
4459
Ok(values)
4469
4460
}
You can’t perform that action at this time.
0 commit comments