Skip to content

Commit 7d864ac

Browse files
committed
Prevent name resolution failure logging on bare inherited expressions
Delphi allows unresolved bare inherited expressions, and even generates them in event handlers. Logging them would be useless noise.
1 parent e83bde6 commit 7d864ac

File tree

1 file changed

+5
-0
lines changed
  • delphi-frontend/src/main/java/au/com/integradev/delphi/symbol/resolve

1 file changed

+5
-0
lines changed

delphi-frontend/src/main/java/au/com/integradev/delphi/symbol/resolve/NameResolver.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -374,6 +374,11 @@ private boolean handleInheritedExpression(PrimaryExpressionNode node) {
374374
disambiguateVisibility();
375375
disambiguateParameters(routine.getParameterTypes());
376376
addResolvedDeclaration();
377+
if (nameResolutionFailed()) {
378+
// We don't want to log name resolution failures for unresolved bare inherited expressions,
379+
// as Delphi allows them (and even generates them in event handlers).
380+
names.clear();
381+
}
377382
} else {
378383
NameReferenceNode routineName = (NameReferenceNode) node.getChild(1);
379384
NameOccurrenceImpl occurrence = new NameOccurrenceImpl(routineName.getIdentifier());

0 commit comments

Comments
 (0)