| Index: pkg/analyzer/lib/src/summary/resynthesize.dart
|
| diff --git a/pkg/analyzer/lib/src/summary/resynthesize.dart b/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| index b79cf76d27469da4e09b35f53960663f2cc8e059..de36f0a16d7d5d8ab9f05102e0c12520dccf7a9f 100644
|
| --- a/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| +++ b/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| @@ -480,22 +480,17 @@ class _ConstExprBuilder {
|
| }
|
|
|
| TypeName _buildTypeAst(DartType type) {
|
| - if (type is DynamicTypeImpl) {
|
| - TypeName node = AstFactory.typeName4('dynamic');
|
| - node.type = type;
|
| - (node.name as SimpleIdentifier).staticElement = type.element;
|
| - return node;
|
| - } else if (type is InterfaceType) {
|
| + List<TypeName> argumentNodes;
|
| + if (type is ParameterizedType) {
|
| List<DartType> typeArguments = type.typeArguments;
|
| - List<TypeName> argumentNodes = typeArguments.every((a) => a.isDynamic)
|
| + argumentNodes = typeArguments.every((a) => a.isDynamic)
|
| ? null
|
| : typeArguments.map(_buildTypeAst).toList();
|
| - TypeName node = AstFactory.typeName4(type.name, argumentNodes);
|
| - node.type = type;
|
| - (node.name as SimpleIdentifier).staticElement = type.element;
|
| - return node;
|
| }
|
| - throw new StateError('Unsupported type $type');
|
| + TypeName node = AstFactory.typeName4(type.name, argumentNodes);
|
| + node.type = type;
|
| + (node.name as SimpleIdentifier).staticElement = type.element;
|
| + return node;
|
| }
|
|
|
| InterpolationElement _newInterpolationElement(Expression expr) {
|
|
|