Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(65)

Unified Diff: pkg/front_end/lib/src/fasta/source/diet_listener.dart

Issue 2899073004: Use declared return type for inference of return and yield statements. (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/front_end/lib/src/fasta/source/diet_listener.dart
diff --git a/pkg/front_end/lib/src/fasta/source/diet_listener.dart b/pkg/front_end/lib/src/fasta/source/diet_listener.dart
index 1c55c6ea42041591ca83e1db3a599335e3ad1a0b..d25cb22acdd472386424618257d653f827d0329e 100644
--- a/pkg/front_end/lib/src/fasta/source/diet_listener.dart
+++ b/pkg/front_end/lib/src/fasta/source/diet_listener.dart
@@ -13,7 +13,7 @@ import 'package:front_end/src/fasta/type_inference/type_inference_engine.dart'
import 'package:front_end/src/fasta/type_inference/type_inference_listener.dart'
show TypeInferenceListener;
-import 'package:kernel/ast.dart' show AsyncMarker;
+import 'package:kernel/ast.dart' show AsyncMarker, FunctionNode;
import 'package:kernel/class_hierarchy.dart' show ClassHierarchy;
@@ -433,6 +433,7 @@ class DietListener extends StackListener {
assert(typeParameterScope != null);
assert(formalParameterScope != null);
parseFunctionBody(
+ builder.function,
createListener(builder, typeParameterScope, builder.isInstanceMember,
formalParameterScope),
token,
@@ -515,7 +516,8 @@ class DietListener extends StackListener {
AsyncMarker getAsyncMarker(StackListener listener) => listener.pop();
- void parseFunctionBody(StackListener listener, Token token, MemberKind kind) {
+ void parseFunctionBody(FunctionNode function, StackListener listener,
+ Token token, MemberKind kind) {
try {
Parser parser = new Parser(listener);
token = parser.parseFormalParametersOpt(token, kind);
@@ -534,7 +536,7 @@ class DietListener extends StackListener {
listener.pop(); // separator before constructor initializers
}
listener.checkEmpty(token.charOffset);
- listener.finishFunction(formals, asyncModifier, body);
+ listener.finishFunction(function, formals, asyncModifier, body);
} on InputError {
rethrow;
} catch (e, s) {

Powered by Google App Engine
This is Rietveld 408576698