[Webkit-unassigned] [Bug 158116] Own "arguments" and "caller" properties of non-strict functions don't observe the invariability of nonconfigurable, nonwritable properties

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri May 29 16:24:13 PDT 2020


https://bugs.webkit.org/show_bug.cgi?id=158116

--- Comment #1 from Leo Balter <leonardo.balter at gmail.com> ---
I've observed this bug within a non directly related code: 

```
(function() {
  'use strict';
  class Foo {}
  const a = new Proxy(function() {}, { ownKeys() { return Reflect.ownKeys(Foo) } });
  console.log(Object.getOwnPropertySymbols(a));
})(); // strict mode, ok

(function() {
  'use sloppy';
  class Foo {}
  const a = new Proxy(function() {}, { ownKeys() { return Reflect.ownKeys(Foo) } });
  console.log(Object.getOwnPropertySymbols(a));
})();
```

The code in sloppy mode breaks in Chrome and Safari because the function object will have non-configurable own properties arguments and caller and the Proxy trap is required to list all non-configurable properties from the Proxy target.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200529/9e852f18/attachment-0001.htm>


More information about the webkit-unassigned mailing list