Skip to content

Commit 1c3aef3

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 4031111 commit 1c3aef3

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)