| Index: runtime/vm/parser.h
|
| diff --git a/runtime/vm/parser.h b/runtime/vm/parser.h
|
| index 9134bb12058952b5321c64ae913560252d93e0be..0756cba1a981b75dc2087031fb536d31a59b0a70 100644
|
| --- a/runtime/vm/parser.h
|
| +++ b/runtime/vm/parser.h
|
| @@ -14,6 +14,7 @@
|
| #include "vm/ast.h"
|
| #include "vm/class_finalizer.h"
|
| #include "vm/compiler_stats.h"
|
| +#include "vm/kernel.h"
|
| #include "vm/hash_table.h"
|
| #include "vm/object.h"
|
| #include "vm/raw_object.h"
|
| @@ -22,6 +23,13 @@
|
| namespace dart {
|
|
|
| // Forward declarations.
|
| +
|
| +namespace kernel {
|
| +
|
| +class ScopeBuildingResult;
|
| +
|
| +} // kernel
|
| +
|
| class ArgumentsDescriptor;
|
| class Isolate;
|
| class LocalScope;
|
| @@ -101,7 +109,8 @@ class ParsedFunction : public ZoneAllocated {
|
| first_stack_local_index_(0),
|
| num_copied_params_(0),
|
| num_stack_locals_(0),
|
| - have_seen_await_expr_(false) {
|
| + have_seen_await_expr_(false),
|
| + kernel_scopes_(NULL) {
|
| ASSERT(function.IsZoneHandle());
|
| // Every function has a local variable for the current context.
|
| LocalVariable* temp = new(zone()) LocalVariable(
|
| @@ -215,6 +224,8 @@ class ParsedFunction : public ZoneAllocated {
|
|
|
| void Bailout(const char* origin, const char* reason) const;
|
|
|
| + kernel::ScopeBuildingResult* EnsureKernelScopes();
|
| +
|
| private:
|
| Thread* thread_;
|
| const Function& function_;
|
| @@ -235,6 +246,8 @@ class ParsedFunction : public ZoneAllocated {
|
| int num_stack_locals_;
|
| bool have_seen_await_expr_;
|
|
|
| + kernel::ScopeBuildingResult* kernel_scopes_;
|
| +
|
| friend class Parser;
|
| DISALLOW_COPY_AND_ASSIGN(ParsedFunction);
|
| };
|
|
|