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) { |