mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-22 17:28:30 +00:00
By spec, calling an ECMAScript function object in non-strict mode should always create a new top-level declarative environment, even if there are no lexically scoped bindings (let/const) that belong in it. This is used for scope disambiguation in direct eval() calls. However, if there are no direct eval() calls within the function, and no lexically scoped bindings, we can simply not allocate the extra environment and save ourselves the trouble.
21 KiB
21 KiB