From ba306eb14615ac5e261b5f22c396b5d80f5289a0 Mon Sep 17 00:00:00 2001 From: Alexandre Ardhuin Date: Wed, 17 Apr 2019 22:13:40 +0200 Subject: [PATCH] fix issue 1518 --- lib/src/rules/unnecessary_await_in_return.dart | 2 +- test/rules/unnecessary_await_in_return.dart | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/src/rules/unnecessary_await_in_return.dart b/lib/src/rules/unnecessary_await_in_return.dart index d411989e3..9d926f5d4 100644 --- a/lib/src/rules/unnecessary_await_in_return.dart +++ b/lib/src/rules/unnecessary_await_in_return.dart @@ -96,7 +96,7 @@ class _Visitor extends SimpleAstVisitor { } if (returnType != null && returnType.isDartAsyncFuture && - type.isAssignableTo(returnType)) { + type.isSubtypeOf(returnType)) { rule.reportLintForToken((expression as AwaitExpression).awaitKeyword); } } diff --git a/test/rules/unnecessary_await_in_return.dart b/test/rules/unnecessary_await_in_return.dart index c5179a2c1..1986ba982 100644 --- a/test/rules/unnecessary_await_in_return.dart +++ b/test/rules/unnecessary_await_in_return.dart @@ -56,3 +56,10 @@ class A { } } } + +// https://github.com/dart-lang/linter/issues/1518 +class B { + Future foo() async => 1; + Future bar() async => await foo(); // OK + Future buzz() async => await bar(); // LINT +}