Skip to content

Commit e3aac9e

Browse files
scheglovcommit-bot@chromium.org
authored andcommitted
Check more in LegacyTypeAsserter.
Change-Id: Ie90ff509dd4327ef33a1ce7fb81657ff8c2f1412 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/124500 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent 0957c13 commit e3aac9e

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

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

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ class LegacyTypeAsserter extends GeneralizingAstVisitor {
7474
@override
7575
visitExpression(Expression e) {
7676
_assertLegacyType(e.staticType);
77+
_assertLegacyType(e.staticParameterElement?.type);
7778
super.visitExpression(e);
7879
}
7980

@@ -89,6 +90,13 @@ class LegacyTypeAsserter extends GeneralizingAstVisitor {
8990
super.visitFunctionDeclaration(node);
9091
}
9192

93+
@override
94+
visitInvocationExpression(InvocationExpression node) {
95+
_assertLegacyType(node.staticInvokeType);
96+
node.typeArgumentTypes?.forEach(_assertLegacyType);
97+
return super.visitInvocationExpression(node);
98+
}
99+
92100
@override
93101
visitTypeAnnotation(TypeAnnotation node) {
94102
_assertLegacyType(node.type);

pkg/analyzer/test/src/diagnostics/default_list_constructor_mismatch_test.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@ var l = new List<String?>(3);
5151
''');
5252
}
5353

54+
@FailingTest(
55+
reason: 'The type of the parameterElement for `3` is non-nullable',
56+
)
5457
test_optOut() async {
5558
await assertNoErrorsInCode('''
5659
// @dart = 2.2

0 commit comments

Comments
 (0)