mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Fix source location of yul multi-assignemnt.
This commit is contained in:
@@ -175,7 +175,8 @@ Statement Parser::parseStatement()
|
||||
case Token::Comma:
|
||||
case Token::AssemblyAssign:
|
||||
{
|
||||
std::vector<Identifier> variableNames;
|
||||
Assignment assignment;
|
||||
assignment.location = locationOf(elementary);
|
||||
|
||||
while (true)
|
||||
{
|
||||
@@ -197,7 +198,7 @@ Statement Parser::parseStatement()
|
||||
if (m_dialect.builtin(identifier.name))
|
||||
fatalParserError(6272_error, "Cannot assign to builtin function \"" + identifier.name.str() + "\".");
|
||||
|
||||
variableNames.emplace_back(identifier);
|
||||
assignment.variableNames.emplace_back(identifier);
|
||||
|
||||
if (currentToken() != Token::Comma)
|
||||
break;
|
||||
@@ -207,10 +208,6 @@ Statement Parser::parseStatement()
|
||||
elementary = parseElementaryOperation();
|
||||
}
|
||||
|
||||
Assignment assignment;
|
||||
assignment.location = std::get<Identifier>(elementary).location;
|
||||
assignment.variableNames = std::move(variableNames);
|
||||
|
||||
expectToken(Token::AssemblyAssign);
|
||||
|
||||
assignment.value = make_unique<Expression>(parseExpression());
|
||||
|
||||
Reference in New Issue
Block a user