Add support for super expressions

Change-Id: I7d78810ca7fe8f669370803f2dd8146379ca2f7b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106164
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
This commit is contained in:
Brian Wilkerson 2019-06-17 16:15:54 +00:00 committed by commit-bot@chromium.org
parent 9a2eecf67f
commit 071a99bfbe
2 changed files with 11 additions and 1 deletions

View file

@ -547,7 +547,7 @@ $stackTrace''');
@override
DecoratedType visitSuperExpression(SuperExpression node) {
throw new UnimplementedError('TODO(brianwilkerson)');
return DecoratedType(node.staticType, _graph.never);
}
@override

View file

@ -1216,6 +1216,16 @@ String f() {
assertNoUpstreamNullability(decoratedTypeAnnotation('String').node);
}
test_superExpression() async {
await analyze('''
class C {
C f() => super;
}
''');
assertNoUpstreamNullability(decoratedTypeAnnotation('C f').node);
}
test_symbolLiteral() async {
await analyze('''
Symbol f() {