Create List<TypeParameterElement>, not Impl.
Otherwise this Impl type gets propagated via toList(), and we get
a cast failure when attempt to assign TypeParameterMember element to
it. I'd like that we did not use TypeParameterMember at all, but
for now we do.
R=brianwilkerson@google.com
Change-Id: I03e1392fbd52d5a0fc7c257265d17d1cbd391edb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/99718
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analyzer/lib/src/dart/element/element.dart b/pkg/analyzer/lib/src/dart/element/element.dart
index 2750b66..c188876 100644
--- a/pkg/analyzer/lib/src/dart/element/element.dart
+++ b/pkg/analyzer/lib/src/dart/element/element.dart
@@ -9444,7 +9444,8 @@
if (typeParameters == null) {
return _typeParameterElements = const [];
}
- return _typeParameterElements = typeParameters.typeParameters.map((node) {
+ return _typeParameterElements =
+ typeParameters.typeParameters.map<TypeParameterElement>((node) {
TypeParameterElementImpl element = node.declaredElement;
element.enclosingElement = this;
return element;