commit | b449fe4398f5188a54694bfcea8f2dc8f645e45e | [log] [tgz] |
---|---|---|
author | Konstantin Shcheglov <scheglov@google.com> | Wed Jan 19 02:20:45 2022 +0000 |
committer | Commit Bot <commit-bot@chromium.org> | Wed Jan 19 02:20:45 2022 +0000 |
tree | 720762dcdb496de15c2a01f939833484a9d8719e | |
parent | df2e8fedbbe23e5a79dbda114c2ff3c115ac85a1 [diff] |
Issue 48124. Set enclosingElement for synthetic FieldElementImpl in top-merge. Bug: https://github.com/dart-lang/sdk/issues/48124 Change-Id: I0ad7cfe46edd4333fe292c7ddbe1b0044335ec0a Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/228723 Reviewed-by: Brian Wilkerson <brianwilkerson@google.com> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/analyzer/lib/src/dart/element/inheritance_manager3.dart b/pkg/analyzer/lib/src/dart/element/inheritance_manager3.dart index 168cc9a..6195260 100644 --- a/pkg/analyzer/lib/src/dart/element/inheritance_manager3.dart +++ b/pkg/analyzer/lib/src/dart/element/inheritance_manager3.dart
@@ -863,6 +863,7 @@ result.parameters = resultType.parameters; var field = FieldElementImpl(variableName, -1); + field.enclosingElement = targetClass; if (firstAccessor.isGetter) { field.getter = result; field.type = result.returnType;
diff --git a/pkg/analyzer/test/src/dart/element/inheritance_manager3_test.dart b/pkg/analyzer/test/src/dart/element/inheritance_manager3_test.dart index ba5aa89..73da833 100644 --- a/pkg/analyzer/test/src/dart/element/inheritance_manager3_test.dart +++ b/pkg/analyzer/test/src/dart/element/inheritance_manager3_test.dart
@@ -1425,6 +1425,7 @@ if (element is PropertyAccessorElement) { var variable = element.variable; + expect(variable.enclosingElement, same(element.enclosingElement)); expect(variable.name, element.displayName); if (element.isGetter) { expect(variable.type, element.returnType);