| Index: test/cctest/test-heap.cc
|
| diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc
|
| index 318166536e7087c75af15b871fb3c09ab002c2de..85e7988e490694a023c51a38aefc4b752e97c678 100644
|
| --- a/test/cctest/test-heap.cc
|
| +++ b/test/cctest/test-heap.cc
|
| @@ -756,6 +756,7 @@ TEST(JSArray) {
|
| Handle<JSFunction> function = Handle<JSFunction>::cast(fun_obj);
|
|
|
| // Allocate the object.
|
| + Handle<Object> element;
|
| Handle<JSObject> object = factory->NewJSObject(function);
|
| Handle<JSArray> array = Handle<JSArray>::cast(object);
|
| // We just initialized the VM, no heap allocation failure yet.
|
| @@ -770,7 +771,8 @@ TEST(JSArray) {
|
| // array[length] = name.
|
| JSReceiver::SetElement(array, 0, name, NONE, SLOPPY).Check();
|
| CHECK_EQ(Smi::FromInt(1), array->length());
|
| - CHECK_EQ(*i::Object::GetElement(isolate, array, 0).ToHandleChecked(), *name);
|
| + element = i::Object::GetElement(isolate, array, 0).ToHandleChecked();
|
| + CHECK_EQ(*element, *name);
|
|
|
| // Set array length with larger than smi value.
|
| Handle<Object> length =
|
| @@ -787,9 +789,10 @@ TEST(JSArray) {
|
| uint32_t new_int_length = 0;
|
| CHECK(array->length()->ToArrayIndex(&new_int_length));
|
| CHECK_EQ(static_cast<double>(int_length), new_int_length - 1);
|
| - CHECK_EQ(*i::Object::GetElement(isolate, array, int_length).ToHandleChecked(),
|
| - *name);
|
| - CHECK_EQ(*i::Object::GetElement(isolate, array, 0).ToHandleChecked(), *name);
|
| + element = Object::GetElement(isolate, array, int_length).ToHandleChecked();
|
| + CHECK_EQ(*element, *name);
|
| + element = Object::GetElement(isolate, array, 0).ToHandleChecked();
|
| + CHECK_EQ(*element, *name);
|
| }
|
|
|
|
|
| @@ -817,18 +820,23 @@ TEST(JSObjectCopy) {
|
| JSReceiver::SetElement(obj, 1, second, NONE, SLOPPY).Check();
|
|
|
| // Make the clone.
|
| + Handle<Object> value1, value2;
|
| Handle<JSObject> clone = JSObject::Copy(obj);
|
| CHECK(!clone.is_identical_to(obj));
|
|
|
| - CHECK_EQ(*i::Object::GetElement(isolate, obj, 0).ToHandleChecked(),
|
| - *i::Object::GetElement(isolate, clone, 0).ToHandleChecked());
|
| - CHECK_EQ(*i::Object::GetElement(isolate, obj, 1).ToHandleChecked(),
|
| - *i::Object::GetElement(isolate, clone, 1).ToHandleChecked());
|
| + value1 = Object::GetElement(isolate, obj, 0).ToHandleChecked();
|
| + value2 = Object::GetElement(isolate, clone, 0).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
| + value1 = Object::GetElement(isolate, obj, 1).ToHandleChecked();
|
| + value2 = Object::GetElement(isolate, clone, 1).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
|
|
| - CHECK_EQ(*Object::GetProperty(obj, first).ToHandleChecked(),
|
| - *Object::GetProperty(clone, first).ToHandleChecked());
|
| - CHECK_EQ(*Object::GetProperty(obj, second).ToHandleChecked(),
|
| - *Object::GetProperty(clone, second).ToHandleChecked());
|
| + value1 = Object::GetProperty(obj, first).ToHandleChecked();
|
| + value2 = Object::GetProperty(clone, first).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
| + value1 = Object::GetProperty(obj, second).ToHandleChecked();
|
| + value2 = Object::GetProperty(clone, second).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
|
|
| // Flip the values.
|
| JSReceiver::SetProperty(clone, first, two, NONE, SLOPPY).Check();
|
| @@ -837,15 +845,19 @@ TEST(JSObjectCopy) {
|
| JSReceiver::SetElement(clone, 0, second, NONE, SLOPPY).Check();
|
| JSReceiver::SetElement(clone, 1, first, NONE, SLOPPY).Check();
|
|
|
| - CHECK_EQ(*i::Object::GetElement(isolate, obj, 1).ToHandleChecked(),
|
| - *i::Object::GetElement(isolate, clone, 0).ToHandleChecked());
|
| - CHECK_EQ(*i::Object::GetElement(isolate, obj, 0).ToHandleChecked(),
|
| - *i::Object::GetElement(isolate, clone, 1).ToHandleChecked());
|
| -
|
| - CHECK_EQ(*Object::GetProperty(obj, second).ToHandleChecked(),
|
| - *Object::GetProperty(clone, first).ToHandleChecked());
|
| - CHECK_EQ(*Object::GetProperty(obj, first).ToHandleChecked(),
|
| - *Object::GetProperty(clone, second).ToHandleChecked());
|
| + value1 = Object::GetElement(isolate, obj, 1).ToHandleChecked();
|
| + value2 = Object::GetElement(isolate, clone, 0).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
| + value1 = Object::GetElement(isolate, obj, 0).ToHandleChecked();
|
| + value2 = Object::GetElement(isolate, clone, 1).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
| +
|
| + value1 = Object::GetProperty(obj, second).ToHandleChecked();
|
| + value2 = Object::GetProperty(clone, first).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
| + value1 = Object::GetProperty(obj, first).ToHandleChecked();
|
| + value2 = Object::GetProperty(clone, second).ToHandleChecked();
|
| + CHECK_EQ(*value1, *value2);
|
| }
|
|
|
|
|
|
|