diff --git a/lib/source/pl/core/parser.cpp b/lib/source/pl/core/parser.cpp index 84399e79..5907f3ee 100644 --- a/lib/source/pl/core/parser.cpp +++ b/lib/source/pl/core/parser.cpp @@ -977,6 +977,7 @@ namespace pl::core { errorHere("Invalid {} found in function.", getFormattedToken(0)); else errorHere("Invalid function statement."); + next(); return nullptr; } @@ -1938,11 +1939,11 @@ namespace pl::core { return parseTryCatchStatement([this] { return parseMember(); }); else if (oneOf(tkn::Keyword::Return, tkn::Keyword::Break, tkn::Keyword::Continue)) member = parseFunctionControlFlowStatement(); - else if (m_curr[0].type == Token::Type::Keyword) { - errorHere("Invalid {} found in custom type.", getFormattedToken(0)); - return nullptr; - } else { - errorHere("Invalid struct member definition."); + else { + if (m_curr[0].type == Token::Type::Keyword) + errorHere("Invalid {} found in custom type.", getFormattedToken(0)); + else + errorHere("Invalid struct member definition."); next(); return nullptr; }