mirror of
https://github.com/Noratrieb/uwucc.git
synced 2026-01-14 16:45:07 +01:00
more stuff
This commit is contained in:
parent
77e18126e7
commit
c84fdfaf3a
12 changed files with 270 additions and 38 deletions
|
|
@ -484,6 +484,16 @@ where
|
|||
return self.if_statement();
|
||||
}
|
||||
|
||||
if let Some((_, span)) = eat!(self, Tok::Kw(Kw::Return)) {
|
||||
if let Some((_, semi_span)) = eat!(self, Tok::Punct(P::Semicolon)) {
|
||||
return Ok((Stmt::Return(None), span.extend(semi_span)));
|
||||
} else {
|
||||
let expr = self.expr()?;
|
||||
let semi_span = expect!(self, Tok::Punct(P::Semicolon));
|
||||
return Ok((Stmt::Return(Some(expr)), span.extend(semi_span)));
|
||||
}
|
||||
}
|
||||
|
||||
// it must be an expression stmt
|
||||
let (expr, span) = self.expr()?;
|
||||
expect!(self, Tok::Punct(P::Semicolon));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue