| Index: runtime/vm/parser.cc
|
| ===================================================================
|
| --- runtime/vm/parser.cc (revision 9727)
|
| +++ runtime/vm/parser.cc (working copy)
|
| @@ -1081,6 +1081,7 @@
|
| RawFunction::kSignatureFunction,
|
| /* is_static = */ false,
|
| /* is_const = */ false,
|
| + /* is_abstract = */ false,
|
| parameter.name_pos));
|
| signature_function.set_owner(current_class());
|
| signature_function.set_result_type(result_type);
|
| @@ -2462,8 +2463,6 @@
|
| RawFunction::Kind function_kind;
|
| if (method->IsFactoryOrConstructor()) {
|
| function_kind = RawFunction::kConstructor;
|
| - } else if (method->has_abstract) {
|
| - function_kind = RawFunction::kAbstract;
|
| } else if (method->IsGetter()) {
|
| function_kind = RawFunction::kGetterFunction;
|
| } else if (method->IsSetter()) {
|
| @@ -2476,6 +2475,7 @@
|
| function_kind,
|
| method->has_static,
|
| method->has_const,
|
| + method->has_abstract,
|
| method_pos));
|
| func.set_result_type(*method->type);
|
| func.set_end_token_pos(method_end_pos);
|
| @@ -2548,6 +2548,7 @@
|
| String& getter_name = String::Handle(Field::GetterSymbol(*field->name));
|
| getter = Function::New(getter_name, RawFunction::kConstImplicitGetter,
|
| field->has_static, field->has_final,
|
| + /* is_abstract */ false,
|
| field->name_pos);
|
| getter.set_result_type(*field->type);
|
| members->AddFunction(getter);
|
| @@ -2558,6 +2559,7 @@
|
| String& getter_name = String::Handle(Field::GetterSymbol(*field->name));
|
| getter = Function::New(getter_name, RawFunction::kImplicitGetter,
|
| field->has_static, field->has_final,
|
| + /* is_abstract */ false,
|
| field->name_pos);
|
| ParamList params;
|
| params.AddReceiver(TokenPos());
|
| @@ -2569,6 +2571,7 @@
|
| String& setter_name = String::Handle(Field::SetterSymbol(*field->name));
|
| setter = Function::New(setter_name, RawFunction::kImplicitSetter,
|
| field->has_static, field->has_final,
|
| + /* is_abstract */ false,
|
| field->name_pos);
|
| ParamList params;
|
| params.AddReceiver(TokenPos());
|
| @@ -2936,6 +2939,7 @@
|
| RawFunction::kConstructor,
|
| /* is_static = */ false,
|
| /* is_const = */ false,
|
| + /* is_abstract = */ false,
|
| class_desc->token_pos()));
|
| ParamList params;
|
| // Add implicit 'this' parameter.
|
| @@ -3054,6 +3058,7 @@
|
| RawFunction::kSignatureFunction,
|
| /* is_static = */ false,
|
| /* is_const = */ false,
|
| + /* is_abstract = */ false,
|
| alias_name_pos));
|
| signature_function.set_owner(alias_owner);
|
| signature_function.set_result_type(result_type);
|
| @@ -3448,6 +3453,7 @@
|
| TRACE_PARSER("ParseTopLevelVariable");
|
| const bool is_final = (CurrentToken() == Token::kFINAL);
|
| const bool is_static = true;
|
| + const bool is_abstract = false;
|
| const AbstractType& type = AbstractType::ZoneHandle(ParseFinalVarOrType(
|
| FLAG_enable_type_checks ? ClassFinalizer::kTryResolve :
|
| ClassFinalizer::kIgnore));
|
| @@ -3483,7 +3489,7 @@
|
| // Create a static const getter.
|
| String& getter_name = String::ZoneHandle(Field::GetterSymbol(var_name));
|
| getter = Function::New(getter_name, RawFunction::kConstImplicitGetter,
|
| - is_static, is_final, name_pos);
|
| + is_static, is_final, is_abstract, name_pos);
|
| getter.set_result_type(type);
|
| top_level->functions.Add(getter);
|
| } else if (is_final) {
|
| @@ -3557,7 +3563,7 @@
|
| }
|
| Function& func = Function::Handle(
|
| Function::New(func_name, RawFunction::kFunction,
|
| - is_static, false, function_pos));
|
| + is_static, false, false, function_pos));
|
| func.set_result_type(result_type);
|
| func.set_end_token_pos(function_end_pos);
|
| AddFormalParamsToFunction(¶ms, func);
|
| @@ -3639,7 +3645,7 @@
|
| Function::New(accessor_name,
|
| is_getter? RawFunction::kGetterFunction :
|
| RawFunction::kSetterFunction,
|
| - is_static, false, accessor_pos));
|
| + is_static, false, false, accessor_pos));
|
| func.set_result_type(result_type);
|
| AddFormalParamsToFunction(¶ms, func);
|
| top_level->functions.Add(func);
|
|
|