mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Fix infinite loop when accessing circular constants from inline assembly.
This commit is contained in:
@@ -753,6 +753,16 @@ bool TypeChecker::visit(InlineAssembly const& _inlineAssembly)
|
||||
}
|
||||
if (var->isConstant())
|
||||
{
|
||||
if (isConstantVariableRecursive(*var))
|
||||
{
|
||||
m_errorReporter.typeError(
|
||||
3558_error,
|
||||
_identifier.location,
|
||||
"Constant variable is circular."
|
||||
);
|
||||
return false;
|
||||
}
|
||||
|
||||
var = rootConstVariableDeclaration(*var);
|
||||
|
||||
if (var && !var->value())
|
||||
|
||||
Reference in New Issue
Block a user