Index: runtime/vm/dart_api_impl.cc |
diff --git a/runtime/vm/dart_api_impl.cc b/runtime/vm/dart_api_impl.cc |
index 8a9e31ecf3ecb99fbf2fba69486d8b3804c142d9..a1c6e32638cfcf71a092f24d31b3d1287b673c2f 100644 |
--- a/runtime/vm/dart_api_impl.cc |
+++ b/runtime/vm/dart_api_impl.cc |
@@ -2747,10 +2747,9 @@ static RawObject* ThrowArgumentError(const char* exception_message) { |
} |
Instance& exception = Instance::Handle(zone); |
exception = Instance::New(cls); |
- const Array& args = Array::Handle(zone, Array::New(3)); |
+ const Array& args = Array::Handle(zone, Array::New(2)); |
args.SetAt(0, exception); |
- args.SetAt(1, Smi::Handle(zone, Smi::New(Function::kCtorPhaseAll))); |
- args.SetAt(2, String::Handle(String::New(exception_message))); |
+ args.SetAt(1, String::Handle(String::New(exception_message))); |
result = DartEntry::InvokeFunction(constructor, args); |
if (result.IsError()) return result.raw(); |
ASSERT(result.IsNull()); |
@@ -3604,7 +3603,7 @@ static RawObject* ResolveConstructor(const char* current_func, |
return ApiError::New(message); |
} |
} |
- int extra_args = (constructor.IsGenerativeConstructor() ? 2 : 1); |
+ int extra_args = 1; |
String& error_message = String::Handle(); |
if (!constructor.AreValidArgumentCounts(num_args + extra_args, |
0, |
@@ -3718,11 +3717,11 @@ DART_EXPORT Dart_Handle Dart_New(Dart_Handle type, |
// Create the argument list. |
intptr_t arg_index = 0; |
- int extra_args = (constructor.IsGenerativeConstructor() ? 2 : 1); |
+ int extra_args = 1; |
const Array& args = |
Array::Handle(Z, Array::New(number_of_arguments + extra_args)); |
if (constructor.IsGenerativeConstructor()) { |
- // Constructors get the uninitialized object and a constructor phase. |
+ // Constructors get the uninitialized object. |
if (!type_arguments.IsNull()) { |
// The type arguments will be null if the class has no type parameters, in |
// which case the following call would fail because there is no slot |
@@ -3730,7 +3729,6 @@ DART_EXPORT Dart_Handle Dart_New(Dart_Handle type, |
new_object.SetTypeArguments(type_arguments); |
} |
args.SetAt(arg_index++, new_object); |
- args.SetAt(arg_index++, Smi::Handle(Z, Smi::New(Function::kCtorPhaseAll))); |
} else { |
// Factories get type arguments. |
args.SetAt(arg_index++, type_arguments); |
@@ -3922,14 +3920,14 @@ DART_EXPORT Dart_Handle Dart_InvokeConstructor(Dart_Handle object, |
TypeArguments::Handle(Z, type_obj.arguments()); |
const Function& constructor = |
Function::Handle(Z, cls.LookupFunctionAllowPrivate(dot_name)); |
- const int extra_args = 2; |
+ const int extra_args = 1; |
if (!constructor.IsNull() && |
constructor.IsGenerativeConstructor() && |
constructor.AreValidArgumentCounts(number_of_arguments + extra_args, |
0, |
NULL)) { |
// Create the argument list. |
- // Constructors get the uninitialized object and a constructor phase. |
+ // Constructors get the uninitialized object. |
if (!type_arguments.IsNull()) { |
// The type arguments will be null if the class has no type |
// parameters, in which case the following call would fail |
@@ -3943,7 +3941,6 @@ DART_EXPORT Dart_Handle Dart_InvokeConstructor(Dart_Handle object, |
T, number_of_arguments, arguments, extra_args, &args); |
if (!::Dart_IsError(result)) { |
args.SetAt(0, instance); |
- args.SetAt(1, Smi::Handle(Z, Smi::New(Function::kCtorPhaseAll))); |
const Object& retval = Object::Handle(Z, |
DartEntry::InvokeFunction(constructor, args)); |
if (retval.IsError()) { |