mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 16:47:36 +00:00
LibCpp: Allow 'const' after a function's signature
This is too lax for functions that aren't class members, but let's allow that anyway.
This commit is contained in:
parent
3319114127
commit
b3cbe14569
1 changed files with 8 additions and 0 deletions
|
@ -132,6 +132,11 @@ NonnullRefPtr<FunctionDeclaration> Parser::parse_function_declaration(ASTNode& p
|
||||||
|
|
||||||
consume(Token::Type::RightParen);
|
consume(Token::Type::RightParen);
|
||||||
|
|
||||||
|
if (match_keyword("const")) {
|
||||||
|
consume();
|
||||||
|
// FIXME: Note that this function is supposed to be a class member, and `this` has to be const, somehow.
|
||||||
|
}
|
||||||
|
|
||||||
RefPtr<FunctionDefinition> body;
|
RefPtr<FunctionDefinition> body;
|
||||||
Position func_end {};
|
Position func_end {};
|
||||||
if (peek(Token::Type::LeftCurly).has_value()) {
|
if (peek(Token::Type::LeftCurly).has_value()) {
|
||||||
|
@ -739,6 +744,9 @@ bool Parser::match_function_declaration()
|
||||||
|
|
||||||
while (consume().type() != Token::Type::RightParen && !eof()) { };
|
while (consume().type() != Token::Type::RightParen && !eof()) { };
|
||||||
|
|
||||||
|
if (match_keyword("const"))
|
||||||
|
consume();
|
||||||
|
|
||||||
if (peek(Token::Type::Semicolon).has_value() || peek(Token::Type::LeftCurly).has_value())
|
if (peek(Token::Type::Semicolon).has_value() || peek(Token::Type::LeftCurly).has_value())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue