mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 13:48:12 +00:00
LibCpp: Support parsing empty return statements
This commit is contained in:
parent
0babb39cae
commit
ee35fc0da3
2 changed files with 7 additions and 4 deletions
|
@ -901,9 +901,11 @@ NonnullRefPtr<ReturnStatement> Parser::parse_return_statement(ASTNode& parent)
|
|||
SCOPE_LOGGER();
|
||||
auto return_statement = create_ast_node<ReturnStatement>(parent, position(), {});
|
||||
consume(Token::Type::Keyword);
|
||||
auto expression = parse_expression(*return_statement);
|
||||
return_statement->m_value = expression;
|
||||
return_statement->set_end(expression->end());
|
||||
if(!peek(Token::Type::Semicolon).has_value()) {
|
||||
auto expression = parse_expression(*return_statement);
|
||||
return_statement->m_value = expression;
|
||||
}
|
||||
return_statement->set_end(position());
|
||||
return return_statement;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue