Chromium Code Reviews| Index: pkg/analyzer/lib/src/generated/error_verifier.dart |
| diff --git a/pkg/analyzer/lib/src/generated/error_verifier.dart b/pkg/analyzer/lib/src/generated/error_verifier.dart |
| index b18fe654c5ae5f0ec024e1b50edef88fa9851780..41654bdee88249b5a72d5dc37cb68a7d2f942579 100644 |
| --- a/pkg/analyzer/lib/src/generated/error_verifier.dart |
| +++ b/pkg/analyzer/lib/src/generated/error_verifier.dart |
| @@ -5198,15 +5198,20 @@ class ErrorVerifier extends RecursiveAstVisitor<Object> { |
| } |
| void _checkForNotInstantiatedBound(TypeAnnotation node) { |
| - if (!_options.strongMode || |
| - node == null || |
| - (node is TypeName && node.typeArguments != null)) { |
| + if (!_options.strongMode || node == null) { |
| return; |
| } |
| - DartType type = node.type; |
| - if (type is InterfaceType && type.element.typeParameters.isNotEmpty) { |
| - _errorReporter.reportErrorForNode( |
| - StrongModeCode.NOT_INSTANTIATED_BOUND, node, [type]); |
| + |
| + if (node is TypeName) { |
|
Brian Wilkerson
2017/01/20 15:41:58
For GenericFunctionType I think we will need to ch
scheglov
2017/01/20 16:05:44
Done.
|
| + if (node.typeArguments == null) { |
| + DartType type = node.type; |
| + if (type is InterfaceType && type.element.typeParameters.isNotEmpty) { |
| + _errorReporter.reportErrorForNode( |
| + StrongModeCode.NOT_INSTANTIATED_BOUND, node, [type]); |
| + } |
| + } else { |
| + node.typeArguments.arguments.forEach(_checkForNotInstantiatedBound); |
| + } |
| } |
| } |