Index: pkg/analyzer/lib/src/summary/link.dart |
diff --git a/pkg/analyzer/lib/src/summary/link.dart b/pkg/analyzer/lib/src/summary/link.dart |
index b12d17dad26cc168b4d98bbc6d3b862c47c7bc0a..0587df1322e7bb2621550c509412fd6c96ea3054 100644 |
--- a/pkg/analyzer/lib/src/summary/link.dart |
+++ b/pkg/analyzer/lib/src/summary/link.dart |
@@ -4672,6 +4672,9 @@ class TypeInferenceNode extends Node<TypeInferenceNode> { |
var linker = functionElement.compilationUnit.library._linker; |
var typeProvider = linker.typeProvider; |
var typeSystem = linker.typeSystem; |
+ if (bodyType.isDartAsyncFutureOr) { |
+ bodyType = (bodyType as InterfaceType).typeArguments[0]; |
+ } |
bodyType = typeProvider.futureType |
.instantiate([bodyType.flattenFutures(typeSystem)]); |
} |