| Index: src/js/v8natives.js
|
| diff --git a/src/js/v8natives.js b/src/js/v8natives.js
|
| index 2aeca951280a7c5a6257c3cb343a98a8e98e77ae..d2cbf9675a09114ba25cf9f22ac60184fd2001e7 100644
|
| --- a/src/js/v8natives.js
|
| +++ b/src/js/v8natives.js
|
| @@ -25,6 +25,7 @@ var ObserveEnqueueSpliceRecord;
|
| var ProxyDelegateCallAndConstruct;
|
| var ProxyDerivedHasOwnTrap;
|
| var ProxyDerivedKeysTrap;
|
| +var SameValue = utils.ImportNow("SameValue");
|
| var StringIndexOf;
|
| var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol");
|
|
|
| @@ -653,17 +654,17 @@ function DefineObjectProperty(obj, p, desc, should_throw) {
|
| if ((IsGenericDescriptor(desc) ||
|
| IsDataDescriptor(desc) == IsDataDescriptor(current)) &&
|
| (!desc.hasEnumerable() ||
|
| - $sameValue(desc.isEnumerable(), current.isEnumerable())) &&
|
| + SameValue(desc.isEnumerable(), current.isEnumerable())) &&
|
| (!desc.hasConfigurable() ||
|
| - $sameValue(desc.isConfigurable(), current.isConfigurable())) &&
|
| + SameValue(desc.isConfigurable(), current.isConfigurable())) &&
|
| (!desc.hasWritable() ||
|
| - $sameValue(desc.isWritable(), current.isWritable())) &&
|
| + SameValue(desc.isWritable(), current.isWritable())) &&
|
| (!desc.hasValue() ||
|
| - $sameValue(desc.getValue(), current.getValue())) &&
|
| + SameValue(desc.getValue(), current.getValue())) &&
|
| (!desc.hasGetter() ||
|
| - $sameValue(desc.getGet(), current.getGet())) &&
|
| + SameValue(desc.getGet(), current.getGet())) &&
|
| (!desc.hasSetter() ||
|
| - $sameValue(desc.getSet(), current.getSet()))) {
|
| + SameValue(desc.getSet(), current.getSet()))) {
|
| return true;
|
| }
|
| if (!current.isConfigurable()) {
|
| @@ -702,7 +703,7 @@ function DefineObjectProperty(obj, p, desc, should_throw) {
|
| }
|
| }
|
| if (!currentIsWritable && desc.hasValue() &&
|
| - !$sameValue(desc.getValue(), current.getValue())) {
|
| + !SameValue(desc.getValue(), current.getValue())) {
|
| if (should_throw) {
|
| throw MakeTypeError(kRedefineDisallowed, p);
|
| } else {
|
| @@ -713,14 +714,14 @@ function DefineObjectProperty(obj, p, desc, should_throw) {
|
| // Step 11
|
| if (IsAccessorDescriptor(desc) && IsAccessorDescriptor(current)) {
|
| if (desc.hasSetter() &&
|
| - !$sameValue(desc.getSet(), current.getSet())) {
|
| + !SameValue(desc.getSet(), current.getSet())) {
|
| if (should_throw) {
|
| throw MakeTypeError(kRedefineDisallowed, p);
|
| } else {
|
| return false;
|
| }
|
| }
|
| - if (desc.hasGetter() && !$sameValue(desc.getGet(),current.getGet())) {
|
| + if (desc.hasGetter() && !SameValue(desc.getGet(),current.getGet())) {
|
| if (should_throw) {
|
| throw MakeTypeError(kRedefineDisallowed, p);
|
| } else {
|
| @@ -1259,12 +1260,6 @@ function ObjectIsExtensible(obj) {
|
| }
|
|
|
|
|
| -// ECMA-262, Edition 6, section 19.1.2.10
|
| -function ObjectIs(obj1, obj2) {
|
| - return $sameValue(obj1, obj2);
|
| -}
|
| -
|
| -
|
| // ECMA-262, Edition 6, section 19.1.2.1
|
| function ObjectAssign(target, sources) {
|
| // TODO(bmeurer): Move this to toplevel.
|
| @@ -1360,7 +1355,7 @@ utils.InstallFunctions(GlobalObject, DONT_ENUM, [
|
| "getOwnPropertyDescriptor", ObjectGetOwnPropertyDescriptor,
|
| "getOwnPropertyNames", ObjectGetOwnPropertyNames,
|
| // getOwnPropertySymbols is added in symbol.js.
|
| - "is", ObjectIs,
|
| + "is", SameValue, // ECMA-262, Edition 6, section 19.1.2.10
|
| "isExtensible", ObjectIsExtensible,
|
| "isFrozen", ObjectIsFrozen,
|
| "isSealed", ObjectIsSealed,
|
|
|