diff options
author | Alex Beregszaszi <alex@rtfs.hu> | 2017-04-28 02:20:53 +0800 |
---|---|---|
committer | Alex Beregszaszi <alex@rtfs.hu> | 2017-04-28 02:20:53 +0800 |
commit | 20206a04dd276d1f1d80aa9318328728fea13025 (patch) | |
tree | 31f39a8940a2676e40cd7969e369bf7b91617db8 /libsolidity/inlineasm | |
parent | 8020144d06e035cfac1d2621e732bc7354c56e2c (diff) | |
download | dexon-solidity-20206a04dd276d1f1d80aa9318328728fea13025.tar.gz dexon-solidity-20206a04dd276d1f1d80aa9318328728fea13025.tar.zst dexon-solidity-20206a04dd276d1f1d80aa9318328728fea13025.zip |
Disallow assign from stack in Julia (=: var)
Diffstat (limited to 'libsolidity/inlineasm')
-rw-r--r-- | libsolidity/inlineasm/AsmParser.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libsolidity/inlineasm/AsmParser.cpp b/libsolidity/inlineasm/AsmParser.cpp index 848e488d..885e54ff 100644 --- a/libsolidity/inlineasm/AsmParser.cpp +++ b/libsolidity/inlineasm/AsmParser.cpp @@ -69,12 +69,14 @@ assembly::Statement Parser::parseStatement() return parseBlock(); case Token::Assign: { + if (m_julia) + break; assembly::Assignment assignment = createWithLocation<assembly::Assignment>(); m_scanner->next(); expectToken(Token::Colon); assignment.variableName.location = location(); assignment.variableName.name = m_scanner->currentLiteral(); - if (!m_julia && instructions().count(assignment.variableName.name)) + if (instructions().count(assignment.variableName.name)) fatalParserError("Identifier expected, got instruction name."); assignment.location.end = endPosition(); expectToken(Token::Identifier); |