Remove duplicate code

This commit is contained in:
Alex Beregszaszi 2017-05-26 21:00:08 +01:00
parent 9337003d5e
commit 48f58aa3f9

View File

@ -1442,19 +1442,18 @@ Token::Value Parser::expectAssignmentOperator()
Token::Value op = m_scanner->currentToken(); Token::Value op = m_scanner->currentToken();
if (!Token::isAssignmentOp(op)) if (!Token::isAssignmentOp(op))
{ {
string tokenName;
if (Token::isElementaryTypeName(op)) //for the sake of accuracy in reporting if (Token::isElementaryTypeName(op)) //for the sake of accuracy in reporting
{ {
ElementaryTypeNameToken elemTypeName = m_scanner->currentElementaryTypeNameToken(); ElementaryTypeNameToken elemTypeName = m_scanner->currentElementaryTypeNameToken();
fatalParserError( tokenName = elemTypeName.toString();
string("Expected assignment operator, got '") +
elemTypeName.toString() +
string("'")
);
} }
else else
tokenName = Token::name(m_scanner->currentToken());
fatalParserError( fatalParserError(
string("Expected assignment operator, got '") + string("Expected assignment operator, got '") +
string(Token::name(m_scanner->currentToken())) + tokenName +
string("'") string("'")
); );
} }
@ -1467,19 +1466,18 @@ ASTPointer<ASTString> Parser::expectIdentifierToken()
Token::Value id = m_scanner->currentToken(); Token::Value id = m_scanner->currentToken();
if (id != Token::Identifier) if (id != Token::Identifier)
{ {
string tokenName;
if (Token::isElementaryTypeName(id)) //for the sake of accuracy in reporting if (Token::isElementaryTypeName(id)) //for the sake of accuracy in reporting
{ {
ElementaryTypeNameToken elemTypeName = m_scanner->currentElementaryTypeNameToken(); ElementaryTypeNameToken elemTypeName = m_scanner->currentElementaryTypeNameToken();
fatalParserError( tokenName = elemTypeName.toString();
string("Expected identifier, got '") +
elemTypeName.toString() +
string("'")
);
} }
else else
tokenName = Token::name(id);
fatalParserError( fatalParserError(
string("Expected identifier, got '") + string("Expected identifier, got '") +
string(Token::name(id)) + tokenName +
string("'") string("'")
); );
} }