RESOLVED FIXED Bug 154516
[JSC shell] Don't put empty arguments array to VM.
https://bugs.webkit.org/show_bug.cgi?id=154516
Summary [JSC shell] Don't put empty arguments array to VM.
Konstantin Tokarev
Reported 2016-02-21 11:35:56 PST
This allows arrowfunction-lexical-bind-arguments-top-level test to pass in jsc as well as in browser.
Attachments
Patch (3.41 KB, patch)
2016-02-21 11:40 PST, Konstantin Tokarev
no flags
Konstantin Tokarev
Comment 1 2016-02-21 11:40:24 PST
Yusuke Suzuki
Comment 2 2016-02-22 03:15:21 PST
Comment on attachment 271884 [details] Patch I don't think the current approach is good because we would like to assume that there is an empty `arguments` if the CLI does not pass any arguments. How about the following idea? 1. adding an Option (see runtime/Options.h), that controls exposing the `arguments`. Now, we can control this behavior with the environment variable JSC_XXX (If you add an option XXX, we can switch it with the environment variable JSC_XXX) 3. adding a ruby function notExposeArguments() in run-jsc-stress-tests, which defines JSC_XXX environment variable before executing the command. (Let's define addEnvVar(X, Y). And calling it as def notExposeArguments addEnvVar("JSC_XXX", "true")) 4. defining the annotation "//@ notExposeArguments" instead of "//@ skip"
Konstantin Tokarev
Comment 3 2016-02-22 04:47:11 PST
(In reply to comment #2) > Comment on attachment 271884 [details] > Patch > > I don't think the current approach is good because we would like to assume > that there is an empty `arguments` if the CLI does not pass any arguments. > > How about the following idea? > 1. adding an Option (see runtime/Options.h), that controls exposing the > `arguments`. Now, we can control this behavior with the environment variable > JSC_XXX (If you add an option XXX, we can switch it with the environment > variable JSC_XXX) > 3. adding a ruby function notExposeArguments() in run-jsc-stress-tests, > which defines JSC_XXX environment variable before executing the command. > (Let's define addEnvVar(X, Y). And calling it as def notExposeArguments > addEnvVar("JSC_XXX", "true")) > 4. defining the annotation "//@ notExposeArguments" instead of "//@ skip" Problem is that I use run-layout-jsc, which does not support annotations, and my initial motivation for this change was to allow this test to pass without @ skip annotation. Though run-layout-jsc may unconditionally use this mode.
Geoffrey Garen
Comment 4 2016-02-22 11:37:02 PST
Comment on attachment 271884 [details] Patch r=me
WebKit Commit Bot
Comment 5 2016-02-22 11:40:57 PST
Comment on attachment 271884 [details] Patch Clearing flags on attachment: 271884 Committed r196948: <http://trac.webkit.org/changeset/196948>
WebKit Commit Bot
Comment 6 2016-02-22 11:41:02 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.