| Index: runtime/vm/parser.h
|
| ===================================================================
|
| --- runtime/vm/parser.h (revision 23536)
|
| +++ runtime/vm/parser.h (working copy)
|
| @@ -101,6 +101,7 @@
|
| return expression_temp_var_ != NULL;
|
| }
|
| static LocalVariable* CreateExpressionTempVar(intptr_t token_pos);
|
| + LocalVariable* EnsureExpressionTemp();
|
|
|
| int first_parameter_index() const { return first_parameter_index_; }
|
| int first_stack_local_index() const { return first_stack_local_index_; }
|
| @@ -168,6 +169,8 @@
|
| va_list args);
|
|
|
| private:
|
| + friend class EffectGraphVisitor; // For BuildNoSuchMethodArguments.
|
| +
|
| struct Block;
|
| class TryBlocks;
|
|
|
| @@ -385,14 +388,18 @@
|
| String& ParseNativeDeclaration();
|
| void ParseInterfaceList(const Class& cls);
|
| RawAbstractType* ParseMixins(const AbstractType& super_type);
|
| - StaticCallNode* BuildInvocationMirrorAllocation(
|
| + static StaticCallNode* BuildInvocationMirrorAllocation(
|
| intptr_t call_pos,
|
| const String& function_name,
|
| - const ArgumentListNode& function_args);
|
| - ArgumentListNode* BuildNoSuchMethodArguments(
|
| + const ArgumentListNode& function_args,
|
| + const LocalVariable* temp = NULL);
|
| + // Build arguments for a NoSuchMethodCall. If LocalVariable temp is not NULL,
|
| + // the last argument is stored in temp.
|
| + static ArgumentListNode* BuildNoSuchMethodArguments(
|
| intptr_t call_pos,
|
| const String& function_name,
|
| - const ArgumentListNode& function_args);
|
| + const ArgumentListNode& function_args,
|
| + const LocalVariable* temp = NULL);
|
| RawFunction* GetSuperFunction(intptr_t token_pos,
|
| const String& name,
|
| ArgumentListNode* arguments,
|
| @@ -610,7 +617,6 @@
|
|
|
| void CheckOperatorArity(const MemberDesc& member);
|
|
|
| - const LocalVariable* GetIncrementTempLocal();
|
| void EnsureExpressionTemp();
|
| void EnsureSavedCurrentContext();
|
| AstNode* CreateAssignmentNode(AstNode* original, AstNode* rhs);
|
|
|