Skip to content

Commit 95dcd5c

Browse files
committed
Fix two bugs and refactor and extend the tests
Change-Id: Ie6e1a15c5332ab437a525fa8086e4ce58f671afd Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/110545 Reviewed-by: Konstantin Shcheglov <[email protected]>
1 parent 8b24e21 commit 95dcd5c

File tree

4 files changed

+428
-105
lines changed

4 files changed

+428
-105
lines changed

pkg/analyzer/lib/src/dart/resolver/scope.dart

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -162,16 +162,12 @@ class ExtensionScope extends EnclosedScope {
162162
List<PropertyAccessorElement> accessors = extensionElement.accessors;
163163
int accessorLength = accessors.length;
164164
for (int i = 0; i < accessorLength; i++) {
165-
if (accessors[i].isStatic) {
166-
define(accessors[i]);
167-
}
165+
define(accessors[i]);
168166
}
169167
List<MethodElement> methods = extensionElement.methods;
170168
int methodLength = methods.length;
171169
for (int i = 0; i < methodLength; i++) {
172-
if (methods[i].isStatic) {
173-
define(methods[i]);
174-
}
170+
define(methods[i]);
175171
}
176172
}
177173
}

pkg/analyzer/lib/src/generated/resolver.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4466,7 +4466,10 @@ class ResolverVisitor extends ScopedVisitor {
44664466
// Continue the extension resolution.
44674467
//
44684468
try {
4469-
typeAnalyzer.thisType = node.declaredElement.extendedType;
4469+
DartType extendedType = node.declaredElement.extendedType;
4470+
if (extendedType is InterfaceType) {
4471+
typeAnalyzer.thisType = extendedType;
4472+
}
44704473
super.visitExtensionDeclaration(node);
44714474
node.accept(elementResolver);
44724475
node.accept(typeAnalyzer);

0 commit comments

Comments
 (0)