Property setters should not be called for bound arguments list entries.
authormark.lam@apple.com <mark.lam@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 10 Jan 2017 23:17:42 +0000 (23:17 +0000)
committermark.lam@apple.com <mark.lam@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 10 Jan 2017 23:17:42 +0000 (23:17 +0000)
commite2f88042604a3e7e2ce06734b8367e32e4c04bfd
tree5b3717464ed405f6ea8b4efcecec704f4c5f8d08
parentcc9f309dc03c88f60bf4cb9b50763ad16185ff8b
Property setters should not be called for bound arguments list entries.
https://bugs.webkit.org/show_bug.cgi?id=165631

Reviewed by Filip Pizlo.

JSTests:

* stress/property-setters-should-not-be-called-for-bound-arguments-list-entries.js: Added.

Source/JavaScriptCore:

* builtins/FunctionPrototype.js:
(bind):
- use @putByValDirect to set the bound arguments so that we don't consult the
  prototype chain for setters.

* runtime/IntlDateTimeFormatPrototype.cpp:
(JSC::IntlDateTimeFormatPrototypeGetterFormat):
* runtime/IntlNumberFormatPrototype.cpp:
(JSC::IntlNumberFormatPrototypeGetterFormat):
- no need to create a bound arguments array because these bound functions binds
  no arguments according to the spec.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@210563 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JSTests/ChangeLog
JSTests/stress/property-setters-should-not-be-called-for-bound-arguments-list-entries.js [new file with mode: 0644]
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/builtins/FunctionPrototype.js
Source/JavaScriptCore/runtime/IntlDateTimeFormatPrototype.cpp
Source/JavaScriptCore/runtime/IntlNumberFormatPrototype.cpp