Skip to content

Commit a493e3d

Browse files
fixup! Support member access
1 parent a4a18a6 commit a493e3d

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

libsolidity/analysis/ReferencesResolver.cpp

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -509,11 +509,9 @@ void ReferencesResolver::validateYulIdentifierName(yul::YulName _name, SourceLoc
509509

510510
void ReferencesResolver::endVisit(MemberAccess const& _memberAccess)
511511
{
512+
// This is only for specific cases to support ConstantEvaluator.
512513
std::vector<Declaration const*> candidates;
513-
auto const* identifier = dynamic_cast<Identifier const*>(&_memberAccess.expression());
514-
auto const* nestedMemberAccess = dynamic_cast<MemberAccess const*>(&_memberAccess.expression());
515-
516-
if (identifier)
514+
if (auto const* identifier = dynamic_cast<Identifier const*>(&_memberAccess.expression()))
517515
{
518516
if (auto const* contract = dynamic_cast<ContractDefinition const*>(identifier->annotation().referencedDeclaration))
519517
candidates += contract->stateVariables();
@@ -525,7 +523,7 @@ void ReferencesResolver::endVisit(MemberAccess const& _memberAccess)
525523
candidates += ASTNode::filteredNodes<ContractDefinition>(sourceUnit->nodes());
526524
}
527525
}
528-
else if (nestedMemberAccess)
526+
else if (auto const* nestedMemberAccess = dynamic_cast<MemberAccess const*>(&_memberAccess.expression()))
529527
{
530528
auto const* contract = dynamic_cast<ContractDefinition const*>(nestedMemberAccess->annotation().referencedDeclaration);
531529
if (!contract)

0 commit comments

Comments
 (0)