JSTests/ChakraCore/test/es5/enumerable.baseline-jsc

@@TypeError : Attempting to change access mechanism for an unconfigurable property
195195value:2
196196writable:false
197197enumerable:false
198 configurable:false
 198configurable:true
199199value:1
200200writable:false
201201enumerable:false
202 configurable:false
 202configurable:true
203203value:1
204204writable:false
205205enumerable:false
206 configurable:false
 206configurable:true
207207value:1
208208writable:false
209209enumerable:false
210 configurable:false
 210configurable:true
211211value:1
212212writable:false
213213enumerable:false
214 configurable:false
 214configurable:true

JSTests/ChangeLog

 12017-04-09 Joseph Pecoraro <pecoraro@apple.com>
 2
 3 test262: test262/test/built-ins/Array/S15.4.3_A2.2.js
 4 https://bugs.webkit.org/show_bug.cgi?id=170652
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 * stress/native-constructors-length.js: Added.
 9 (assertLengthDescriptorAttributes):
 10 Add a quick test for the length properties of all native constructors.
 11
 12 * ChakraCore/test/es5/enumerable.baseline-jsc:
 13 Rebaseline expectations for this test.
 14
 15 * test262.yaml:
 16
1172017-04-10 Keith Miller <keith_miller@apple.com>
218
319 WebAssembly: Update spec tests

JSTests/stress/native-constructors-length.js

 1function assert(b) {
 2 if (!b)
 3 throw new Error("Bad assertion");
 4}
 5
 6function assertLengthDescriptorAttributes(ctor, lengthValue) {
 7 let descriptor = Object.getOwnPropertyDescriptor(ctor, "length");
 8
 9 assert(descriptor.value === lengthValue);
 10 assert(!descriptor.enumerable);
 11 assert(!descriptor.writable);
 12 assert(descriptor.configurable);
 13}
 14
 15assertLengthDescriptorAttributes(Array, 1);
 16assertLengthDescriptorAttributes(ArrayBuffer, 1);
 17assertLengthDescriptorAttributes(Boolean, 1);
 18assertLengthDescriptorAttributes(DataView, 3);
 19assertLengthDescriptorAttributes(Date, 7);
 20assertLengthDescriptorAttributes(Error, 1);
 21assertLengthDescriptorAttributes(Function, 1);
 22assertLengthDescriptorAttributes(Map, 0);
 23assertLengthDescriptorAttributes(Number, 1);
 24assertLengthDescriptorAttributes(Object, 1);
 25assertLengthDescriptorAttributes(Promise, 1);
 26assertLengthDescriptorAttributes(Proxy, 2);
 27assertLengthDescriptorAttributes(RegExp, 2);
 28assertLengthDescriptorAttributes(Set, 0);
 29assertLengthDescriptorAttributes(String, 1);
 30assertLengthDescriptorAttributes(Symbol, 0);
 31assertLengthDescriptorAttributes(WeakMap, 0);
 32assertLengthDescriptorAttributes(WeakSet, 0);
 33
 34assertLengthDescriptorAttributes(Int8Array, 3);
 35assertLengthDescriptorAttributes(Uint8Array, 3);
 36assertLengthDescriptorAttributes(Int16Array, 3);
 37assertLengthDescriptorAttributes(Uint16Array, 3);
 38assertLengthDescriptorAttributes(Int32Array, 3);
 39assertLengthDescriptorAttributes(Uint32Array, 3);
 40assertLengthDescriptorAttributes(Float32Array, 3);
 41assertLengthDescriptorAttributes(Float64Array, 3);

JSTests/test262.yaml

25702570- path: test262/test/built-ins/Array/S15.4.3_A2.1.js
25712571 cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [:strict]
25722572- path: test262/test/built-ins/Array/S15.4.3_A2.2.js
2573  cmd: runTest262 :fail, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], []
 2573 cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], []
25742574- path: test262/test/built-ins/Array/S15.4.3_A2.2.js
2575  cmd: runTest262 :fail, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [:strict]
 2575 cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js"], [:strict]
25762576- path: test262/test/built-ins/Array/S15.4.3_A2.3.js
25772577 cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js", "../../../harness/propertyHelper.js"], []
25782578- path: test262/test/built-ins/Array/S15.4.3_A2.3.js

1549415494- path: test262/test/built-ins/Date/prototype/constructor/S15.9.5.1_A3_T1.js
1549515495 cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js", "../../../../../harness/propertyHelper.js"], [:strict]
1549615496- path: test262/test/built-ins/Date/prototype/constructor/S15.9.5.1_A3_T2.js
15497  cmd: runTest262 :fail, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], []
 15497 cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], []
1549815498- path: test262/test/built-ins/Date/prototype/constructor/S15.9.5.1_A3_T2.js
15499  cmd: runTest262 :fail, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], [:strict]
 15499 cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], [:strict]
1550015500- path: test262/test/built-ins/Date/prototype/constructor/S15.9.5.1_A3_T3.js
1550115501 cmd: runTest262 :normal, "NoException", ["../../../../../harness/assert.js", "../../../../../harness/sta.js"], []
1550215502- path: test262/test/built-ins/Date/prototype/constructor/S15.9.5.1_A3_T3.js

1752817528- path: test262/test/built-ins/Function/instance-name.js
1752917529 cmd: runTest262 :normal, "NoException", ["../../../harness/assert.js", "../../../harness/sta.js", "../../../harness/propertyHelper.js"], [:strict]
1753017530- path: test262/test/built-ins/Function/length/15.3.3.2-1.js
17531  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
 17531 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
1753217532- path: test262/test/built-ins/Function/length/15.3.3.2-1.js
17533  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
 17533 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
1753417534- path: test262/test/built-ins/Function/length/S15.3.5.1_A1_T1.js
1753517535 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
1753617536- path: test262/test/built-ins/Function/length/S15.3.5.1_A1_T1.js

3187031870- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-185.js
3187131871 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3187231872- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-186.js
31873  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
 31873 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3187431874- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-186.js
31875  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
 31875 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3187631876- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-187.js
3187731877 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3187831878- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-187.js

3189431894- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-190.js
3189531895 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3189631896- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-191.js
31897  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
 31897 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3189831898- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-191.js
31899  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
 31899 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3190031900- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-192.js
3190131901 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3190231902- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-192.js

3190631906- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-193.js
3190731907 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3190831908- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-194.js
31909  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
 31909 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3191031910- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-194.js
31911  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
 31911 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3191231912- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-195.js
3191331913 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3191431914- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-195.js

3194231942- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-200.js
3194331943 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3194431944- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-201.js
31945  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
 31945 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3194631946- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-201.js
31947  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
 31947 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
3194831948- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-202.js
3194931949 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
3195031950- path: test262/test/built-ins/Object/getOwnPropertyDescriptor/15.2.3.3-4-202.js

6079460794- path: test262/test/language/expressions/delete/11.4.1-5-a-28-s.js
6079560795 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], []
6079660796- path: test262/test/language/expressions/delete/11.4.1-5-a-28-s.js
60797  cmd: runTest262 :fail, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
 60797 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
6079860798- path: test262/test/language/expressions/delete/11.4.1-5-a-3-s.js
6079960799 cmd: runTest262 :normal, "NoException", ["../../../../harness/assert.js", "../../../../harness/sta.js"], [:strict]
6080060800- path: test262/test/language/expressions/delete/11.4.1-5-a-4-s.js

LayoutTests/ChangeLog

 12017-04-09 Joseph Pecoraro <pecoraro@apple.com>
 2
 3 test262: test262/test/built-ins/Array/S15.4.3_A2.2.js
 4 https://bugs.webkit.org/show_bug.cgi?id=170652
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 * ietestcenter/Javascript/15.2.3.3-4-186-expected.txt:
 9 * ietestcenter/Javascript/15.2.3.3-4-191-expected.txt:
 10 * ietestcenter/Javascript/15.2.3.3-4-194-expected.txt:
 11 * ietestcenter/Javascript/15.2.3.3-4-201-expected.txt:
 12 * ietestcenter/Javascript/15.3.3.2-1-expected.txt:
 13 * sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.3/S15.4.3_A2.2-expected.txt:
 14 * sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.1_Date.prototype.constructor/S15.9.5.1_A3_T2-expected.txt:
 15 These tests expected the opposite, they are now out of date.
 16
1172017-04-10 Jiewen Tan <jiewen_tan@apple.com>
218
319 Unreviewed, test expectations update

LayoutTests/ietestcenter/Javascript/15.2.3.3-4-186-expected.txt

@@On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
44
55
66PASS ES5Harness.preconditionPassed is true
7 PASS ES5Harness.testPassed is true
 7FAIL ES5Harness.testPassed should be true (of type boolean). Was undefined (of type undefined).
88PASS successfullyParsed is true
99
1010TEST COMPLETE

LayoutTests/ietestcenter/Javascript/15.2.3.3-4-191-expected.txt

@@On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
44
55
66PASS ES5Harness.preconditionPassed is true
7 PASS ES5Harness.testPassed is true
 7FAIL ES5Harness.testPassed should be true (of type boolean). Was undefined (of type undefined).
88PASS successfullyParsed is true
99
1010TEST COMPLETE

LayoutTests/ietestcenter/Javascript/15.2.3.3-4-194-expected.txt

@@On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
44
55
66PASS ES5Harness.preconditionPassed is true
7 PASS ES5Harness.testPassed is true
 7FAIL ES5Harness.testPassed should be true (of type boolean). Was undefined (of type undefined).
88PASS successfullyParsed is true
99
1010TEST COMPLETE

LayoutTests/ietestcenter/Javascript/15.2.3.3-4-201-expected.txt

@@On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
44
55
66PASS ES5Harness.preconditionPassed is true
7 PASS ES5Harness.testPassed is true
 7FAIL ES5Harness.testPassed should be true (of type boolean). Was undefined (of type undefined).
88PASS successfullyParsed is true
99
1010TEST COMPLETE

LayoutTests/ietestcenter/Javascript/15.3.3.2-1-expected.txt

@@On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
44
55
66PASS ES5Harness.preconditionPassed is true
7 PASS ES5Harness.testPassed is true
 7FAIL ES5Harness.testPassed should be true (of type boolean). Was undefined (of type undefined).
88PASS successfullyParsed is true
99
1010TEST COMPLETE

LayoutTests/sputnik/Conformance/15_Native_Objects/15.4_Array/15.4.3/S15.4.3_A2.2-expected.txt

11S15.4.3_A2.2
22
3 PASS
 3FAIL SputnikError: #2: delete Array.length; Array.hasOwnProperty('length') === true. Actual: false
44
55TEST COMPLETE
66

LayoutTests/sputnik/Conformance/15_Native_Objects/15.9_Date/15.9.5/15.9.5.1_Date.prototype.constructor/S15.9.5.1_A3_T2-expected.txt

11S15.9.5.1_A3_T2
22
3 PASS
 3FAIL SputnikError: #1: The Date.prototype.constructor.length property has the attributes DontDelete
44
55TEST COMPLETE
66

Source/JavaScriptCore/ChangeLog

 12017-04-09 Joseph Pecoraro <pecoraro@apple.com>
 2
 3 test262: test262/test/built-ins/Array/S15.4.3_A2.2.js
 4 https://bugs.webkit.org/show_bug.cgi?id=170652
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 * runtime/ArrayConstructor.cpp:
 9 (JSC::ArrayConstructor::finishCreation):
 10 * runtime/BooleanConstructor.cpp:
 11 (JSC::BooleanConstructor::finishCreation):
 12 * runtime/DateConstructor.cpp:
 13 (JSC::DateConstructor::finishCreation):
 14 * runtime/FunctionConstructor.cpp:
 15 (JSC::FunctionConstructor::finishCreation):
 16 * runtime/JSArrayBufferConstructor.cpp:
 17 (JSC::JSArrayBufferConstructor::finishCreation):
 18 * runtime/NumberConstructor.cpp:
 19 (JSC::NumberConstructor::finishCreation):
 20 * runtime/ObjectConstructor.cpp:
 21 (JSC::ObjectConstructor::finishCreation):
 22 * runtime/RegExpConstructor.cpp:
 23 (JSC::RegExpConstructor::finishCreation):
 24 * runtime/StringConstructor.cpp:
 25 (JSC::StringConstructor::finishCreation):
 26 * runtime/SymbolConstructor.cpp:
 27 (JSC::SymbolConstructor::finishCreation):
 28 Ensure the "length" property on these native constructors is configurable (deletable).
 29
1302017-04-10 Alex Christensen <achristensen@webkit.org>
231
332 Continue enabling WebRTC

Source/JavaScriptCore/runtime/ArrayConstructor.cpp

@@void ArrayConstructor::finishCreation(VM& vm, JSGlobalObject* globalObject, Arra
5959{
6060 Base::finishCreation(vm, arrayPrototype->classInfo(vm)->className);
6161 putDirectWithoutTransition(vm, vm.propertyNames->prototype, arrayPrototype, DontEnum | DontDelete | ReadOnly);
62  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum | DontDelete);
 62 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
6363 putDirectNonIndexAccessor(vm, vm.propertyNames->speciesSymbol, speciesSymbol, Accessor | ReadOnly | DontEnum);
6464 JSC_BUILTIN_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->isArray, arrayConstructorIsArrayCodeGenerator, DontEnum);
6565}

Source/JavaScriptCore/runtime/AsyncFunctionConstructor.cpp

@@void AsyncFunctionConstructor::finishCreation(VM& vm, AsyncFunctionPrototype* pr
4545{
4646 Base::finishCreation(vm, "AsyncFunction");
4747 putDirectWithoutTransition(vm, vm.propertyNames->prototype, prototype, DontEnum | DontDelete | ReadOnly);
48 
49  // Number of arguments for constructor
5048 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
5149}
5250

Source/JavaScriptCore/runtime/BooleanConstructor.cpp

@@void BooleanConstructor::finishCreation(VM& vm, BooleanPrototype* booleanPrototy
4040{
4141 Base::finishCreation(vm, booleanPrototype->classInfo()->className);
4242 putDirectWithoutTransition(vm, vm.propertyNames->prototype, booleanPrototype, DontEnum | DontDelete | ReadOnly);
43 
44  // no. of arguments for constructor
45  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontDelete | DontEnum);
 43 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
4644}
4745
4846// ECMA 15.6.2

Source/JavaScriptCore/runtime/DateConstructor.cpp

@@void DateConstructor::finishCreation(VM& vm, DatePrototype* datePrototype)
104104{
105105 Base::finishCreation(vm, "Date");
106106 putDirectWithoutTransition(vm, vm.propertyNames->prototype, datePrototype, DontEnum | DontDelete | ReadOnly);
107  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(7), ReadOnly | DontEnum | DontDelete);
 107 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(7), ReadOnly | DontEnum);
108108}
109109
110110static double millisecondsFromComponents(ExecState* exec, const ArgList& args, WTF::TimeType timeType)

Source/JavaScriptCore/runtime/FunctionConstructor.cpp

@@void FunctionConstructor::finishCreation(VM& vm, FunctionPrototype* functionProt
4545{
4646 Base::finishCreation(vm, functionPrototype->classInfo()->className);
4747 putDirectWithoutTransition(vm, vm.propertyNames->prototype, functionPrototype, DontEnum | DontDelete | ReadOnly);
48 
49  // Number of arguments for constructor
50  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontDelete | DontEnum);
 48 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
5149}
5250
5351static EncodedJSValue JSC_HOST_CALL constructWithFunctionConstructor(ExecState* exec)

Source/JavaScriptCore/runtime/GeneratorFunctionConstructor.cpp

@@void GeneratorFunctionConstructor::finishCreation(VM& vm, GeneratorFunctionProto
4545{
4646 Base::finishCreation(vm, "GeneratorFunction");
4747 putDirectWithoutTransition(vm, vm.propertyNames->prototype, generatorFunctionPrototype, DontEnum | DontDelete | ReadOnly);
48 
49  // Number of arguments for constructor
5048 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
5149}
5250

Source/JavaScriptCore/runtime/JSArrayBufferConstructor.cpp

@@void JSArrayBufferConstructor::finishCreation(VM& vm, JSArrayBufferPrototype* pr
5454{
5555 Base::finishCreation(vm, ASCIILiteral(arrayBufferSharingModeName(m_sharingMode)));
5656 putDirectWithoutTransition(vm, vm.propertyNames->prototype, prototype, DontEnum | DontDelete | ReadOnly);
57  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), DontEnum | DontDelete | ReadOnly);
 57 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), DontEnum | ReadOnly);
5858 putDirectNonIndexAccessor(vm, vm.propertyNames->speciesSymbol, speciesSymbol, Accessor | ReadOnly | DontEnum);
5959
6060 if (m_sharingMode == ArrayBufferSharingMode::Default) {

Source/JavaScriptCore/runtime/NumberConstructor.cpp

@@void NumberConstructor::finishCreation(VM& vm, NumberPrototype* numberPrototype)
6464 Base::finishCreation(vm, NumberPrototype::info()->className);
6565 ASSERT(inherits(vm, info()));
6666
67  // Number.Prototype
6867 putDirectWithoutTransition(vm, vm.propertyNames->prototype, numberPrototype, DontEnum | DontDelete | ReadOnly);
69 
70  // no. of arguments for constructor
71  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum | DontDelete);
 68 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
7269
7370 putDirectWithoutTransition(vm, Identifier::fromString(&vm, "EPSILON"), jsDoubleNumber(std::numeric_limits<double>::epsilon()), DontDelete | DontEnum | ReadOnly);
7471 putDirectWithoutTransition(vm, Identifier::fromString(&vm, "MAX_VALUE"), jsDoubleNumber(1.7976931348623157E+308), DontDelete | DontEnum | ReadOnly);

Source/JavaScriptCore/runtime/ObjectConstructor.cpp

@@ObjectConstructor::ObjectConstructor(VM& vm, Structure* structure)
9696void ObjectConstructor::finishCreation(VM& vm, JSGlobalObject* globalObject, ObjectPrototype* objectPrototype)
9797{
9898 Base::finishCreation(vm, objectPrototype->classInfo(vm)->className);
99  // ECMA 15.2.3.1
 99
100100 putDirectWithoutTransition(vm, vm.propertyNames->prototype, objectPrototype, DontEnum | DontDelete | ReadOnly);
101  // no. of arguments for constructor
102  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum | DontDelete);
 101 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
103102
104103 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().createPrivateName(), objectConstructorCreate, DontEnum, 2);
105104 JSC_NATIVE_FUNCTION_WITHOUT_TRANSITION(vm.propertyNames->builtinNames().definePropertyPrivateName(), objectConstructorDefineProperty, DontEnum, 3);

Source/JavaScriptCore/runtime/RegExpConstructor.cpp

@@void RegExpConstructor::finishCreation(VM& vm, RegExpPrototype* regExpPrototype,
8989 ASSERT(inherits(vm, info()));
9090
9191 putDirectWithoutTransition(vm, vm.propertyNames->prototype, regExpPrototype, DontEnum | DontDelete | ReadOnly);
92 
93  // no. of arguments for constructor
94  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(2), ReadOnly | DontDelete | DontEnum);
 92 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(2), ReadOnly | DontEnum);
9593
9694 putDirectNonIndexAccessor(vm, vm.propertyNames->speciesSymbol, speciesSymbol, Accessor | ReadOnly | DontEnum);
9795}

Source/JavaScriptCore/runtime/StringConstructor.cpp

@@void StringConstructor::finishCreation(VM& vm, StringPrototype* stringPrototype)
6161{
6262 Base::finishCreation(vm, stringPrototype->classInfo()->className);
6363 putDirectWithoutTransition(vm, vm.propertyNames->prototype, stringPrototype, ReadOnly | DontEnum | DontDelete);
64  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum | DontDelete);
 64 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(1), ReadOnly | DontEnum);
6565}
6666
6767// ------------------------------ Functions --------------------------------

Source/JavaScriptCore/runtime/SymbolConstructor.cpp

@@void SymbolConstructor::finishCreation(VM& vm, SymbolPrototype* prototype)
6868{
6969 Base::finishCreation(vm, prototype->classInfo(vm)->className);
7070 putDirectWithoutTransition(vm, vm.propertyNames->prototype, prototype, DontEnum | DontDelete | ReadOnly);
71  putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(0), DontDelete | ReadOnly | DontEnum);
 71 putDirectWithoutTransition(vm, vm.propertyNames->length, jsNumber(0), ReadOnly | DontEnum);
7272
7373 JSC_COMMON_PRIVATE_IDENTIFIERS_EACH_WELL_KNOWN_SYMBOL(INITIALIZE_WELL_KNOWN_SYMBOLS)
7474}