Skip to content

Commit 3e68474

Browse files
committed
Verify identifier use in FindParameterFromArgument. Closes #4577
1 parent 8bea806 commit 3e68474

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

Rubberduck.Parsing/VBA/DeclarationCaching/DeclarationFinder.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -552,8 +552,10 @@ public ParameterDeclaration FindParameterFromArgument(VBAParser.ArgumentExpressi
552552
}
553553

554554
var procedure = MatchName(procedureName)
555-
.Where(p => AccessibilityCheck.IsAccessible(enclosingProcedure, p))
556-
.SingleOrDefault(p => !p.DeclarationType.HasFlag(DeclarationType.Property) || p.DeclarationType.HasFlag(DeclarationType.PropertyGet));
555+
.SingleOrDefault(p =>
556+
(!p.DeclarationType.HasFlag(DeclarationType.Property) ||
557+
p.DeclarationType.HasFlag(DeclarationType.PropertyGet)) &&
558+
p.References.Any(r => callStmt == r.Context.GetAncestor<VBAParser.CallStmtContext>()));
557559
if (procedure?.ParentScopeDeclaration is ClassModuleDeclaration)
558560
{
559561
// we can't know that the member is on the class' default interface

0 commit comments

Comments
 (0)