Bug 155813 - Implement Annex B.3.3 function hoisting rules for global scope and eval
Summary: Implement Annex B.3.3 function hoisting rules for global scope and eval
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Alexey Shvayka
URL:
Keywords:
Depends on: 163209 163208
Blocks:
  Show dependency treegraph
 
Reported: 2016-03-23 15:35 PDT by Saam Barati
Modified: 2021-03-04 10:32 PST (History)
14 users (show)

See Also:


Attachments
Patch (66.32 KB, patch)
2016-10-04 14:38 PDT, GSkachkov
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from ews102 for mac-yosemite (1.02 MB, application/zip)
2016-10-04 15:25 PDT, Build Bot
no flags Details
Archive of layout-test-results from ews104 for mac-yosemite-wk2 (1.04 MB, application/zip)
2016-10-04 15:38 PDT, Build Bot
no flags Details
Archive of layout-test-results from ews121 for ios-simulator-elcapitan-wk2 (8.54 MB, application/zip)
2016-10-04 15:49 PDT, Build Bot
no flags Details
Archive of layout-test-results from ews114 for mac-yosemite (2.56 MB, application/zip)
2016-10-04 16:13 PDT, Build Bot
no flags Details
Patch (92.74 KB, patch)
2016-10-07 15:15 PDT, GSkachkov
buildbot: commit-queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from ews103 for mac-yosemite (1.09 MB, application/zip)
2016-10-07 18:16 PDT, Build Bot
no flags Details
Archive of layout-test-results from ews104 for mac-yosemite-wk2 (1.01 MB, application/zip)
2016-10-07 18:17 PDT, Build Bot
no flags Details
Archive of layout-test-results from ews122 for ios-simulator-wk2 (13.84 MB, application/zip)
2016-10-07 18:38 PDT, Build Bot
no flags Details
Archive of layout-test-results from ews117 for mac-yosemite (2.74 MB, application/zip)
2016-10-07 19:34 PDT, Build Bot
no flags Details
Archive of layout-test-results from ews112 for mac-yosemite (2.60 MB, application/zip)
2016-10-07 20:51 PDT, Build Bot
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Saam Barati 2016-03-23 15:35:40 PDT
...
Comment 1 GSkachkov 2016-09-13 12:01:09 PDT
I'll start work on this task. I think it should cover https://bugs.webkit.org/show_bug.cgi?id=161099 also
Comment 2 GSkachkov 2016-10-04 14:38:56 PDT
Created attachment 290646 [details]
Patch

Some intermediate result
Comment 3 Build Bot 2016-10-04 15:25:17 PDT
Comment on attachment 290646 [details]
Patch

Attachment 290646 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/2220036

New failing tests:
js/parser-syntax-check.html
js/mozilla/strict/eval-variable-environment.html
Comment 4 Build Bot 2016-10-04 15:25:21 PDT
Created attachment 290654 [details]
Archive of layout-test-results from ews102 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews102  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 5 Build Bot 2016-10-04 15:38:38 PDT
Comment on attachment 290646 [details]
Patch

Attachment 290646 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/2220093

New failing tests:
js/parser-syntax-check.html
js/mozilla/strict/eval-variable-environment.html
Comment 6 Build Bot 2016-10-04 15:38:42 PDT
Created attachment 290656 [details]
Archive of layout-test-results from ews104 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews104  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5
Comment 7 Build Bot 2016-10-04 15:49:47 PDT
Comment on attachment 290646 [details]
Patch

Attachment 290646 [details] did not pass ios-sim-ews (ios-simulator-wk2):
Output: http://webkit-queues.webkit.org/results/2220099

New failing tests:
js/parser-syntax-check.html
js/mozilla/strict/eval-variable-environment.html
Comment 8 Build Bot 2016-10-04 15:49:52 PDT
Created attachment 290657 [details]
Archive of layout-test-results from ews121 for ios-simulator-elcapitan-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews121  Port: ios-simulator-elcapitan-wk2  Platform: Mac OS X 10.11.6
Comment 9 Build Bot 2016-10-04 16:13:44 PDT
Comment on attachment 290646 [details]
Patch

Attachment 290646 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/2220193

New failing tests:
js/mozilla/eval/exhaustive-fun-normalcaller-indirect-normalcode.html
js/parser-syntax-check.html
js/mozilla/eval/exhaustive-fun-strictcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-fun-normalcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-indirect-normalcode.html
js/mozilla/strict/eval-variable-environment.html
js/mozilla/eval/exhaustive-global-normalcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-indirect-normalcode.html
js/mozilla/eval/exhaustive-global-normalcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-direct-normalcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-direct-normalcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-global-normalcaller-indirect-normalcode.html
js/mozilla/eval/exhaustive-fun-normalcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-indirect-strictcode.html
Comment 10 Build Bot 2016-10-04 16:13:47 PDT
Created attachment 290661 [details]
Archive of layout-test-results from ews114 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews114  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 11 GSkachkov 2016-10-07 15:15:35 PDT
Created attachment 290975 [details]
Patch

New PoC of the solution
Comment 12 WebKit Commit Bot 2016-10-07 15:18:14 PDT
Attachment 290975 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/jit/JITPropertyAccess32_64.cpp:733:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/runtime/JSScope.cpp:243:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/runtime/JSScope.cpp:244:  One line control clauses should not use braces.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:819:  One line control clauses should not use braces.  [whitespace/braces] [4]
ERROR: JSTests/stress/foo_func_decl_in_eval_within_block_with_let.js:2:  Line contains tab character.  [whitespace/tab] [5]
ERROR: JSTests/stress/foo_func_decl_in_eval_within_block_with_let.js:3:  Line contains tab character.  [whitespace/tab] [5]
ERROR: JSTests/stress/foo_func_decl_in_eval_within_block_with_let.js:4:  Line contains tab character.  [whitespace/tab] [5]
ERROR: Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:4842:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Total errors found: 8 in 29 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 13 GSkachkov 2016-10-07 15:20:24 PDT
Comment on attachment 290975 [details]
Patch

No need for review
Comment 14 Build Bot 2016-10-07 18:16:49 PDT
Comment on attachment 290975 [details]
Patch

Attachment 290975 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/2240737

New failing tests:
js/parser-syntax-check.html
js/mozilla/strict/eval-variable-environment.html
Comment 15 Build Bot 2016-10-07 18:16:53 PDT
Created attachment 290992 [details]
Archive of layout-test-results from ews103 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews103  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 16 Build Bot 2016-10-07 18:17:26 PDT
Comment on attachment 290975 [details]
Patch

Attachment 290975 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/2240735

New failing tests:
js/parser-syntax-check.html
js/mozilla/strict/eval-variable-environment.html
Comment 17 Build Bot 2016-10-07 18:17:30 PDT
Created attachment 290993 [details]
Archive of layout-test-results from ews104 for mac-yosemite-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews104  Port: mac-yosemite-wk2  Platform: Mac OS X 10.10.5
Comment 18 Build Bot 2016-10-07 18:38:18 PDT
Comment on attachment 290975 [details]
Patch

Attachment 290975 [details] did not pass ios-sim-ews (ios-simulator-wk2):
Output: http://webkit-queues.webkit.org/results/2240766

New failing tests:
js/parser-syntax-check.html
js/mozilla/strict/eval-variable-environment.html
Comment 19 Build Bot 2016-10-07 18:38:22 PDT
Created attachment 290998 [details]
Archive of layout-test-results from ews122 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews122  Port: ios-simulator-wk2  Platform: Mac OS X 10.11.6
Comment 20 Build Bot 2016-10-07 19:34:55 PDT
Comment on attachment 290975 [details]
Patch

Attachment 290975 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/2240767

New failing tests:
js/mozilla/eval/exhaustive-fun-normalcaller-indirect-normalcode.html
js/parser-syntax-check.html
js/mozilla/eval/exhaustive-fun-strictcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-fun-normalcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-indirect-normalcode.html
js/mozilla/strict/eval-variable-environment.html
js/mozilla/eval/exhaustive-global-normalcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-indirect-normalcode.html
js/mozilla/eval/exhaustive-global-normalcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-direct-normalcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-direct-normalcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-global-normalcaller-indirect-normalcode.html
js/mozilla/eval/exhaustive-fun-normalcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-indirect-strictcode.html
Comment 21 Build Bot 2016-10-07 19:34:59 PDT
Created attachment 291002 [details]
Archive of layout-test-results from ews117 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews117  Port: mac-yosemite  Platform: Mac OS X 10.10.5
Comment 22 Build Bot 2016-10-07 20:51:36 PDT
Comment on attachment 290975 [details]
Patch

Attachment 290975 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/2241324

New failing tests:
js/mozilla/eval/exhaustive-fun-normalcaller-indirect-normalcode.html
js/parser-syntax-check.html
js/mozilla/strict/eval-variable-environment.html
js/mozilla/eval/exhaustive-global-strictcaller-direct-normalcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-indirect-normalcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-normalcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-fun-normalcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-global-normalcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-global-strictcaller-direct-strictcode.html
js/mozilla/eval/exhaustive-fun-normalcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-direct-normalcode.html
js/mozilla/eval/exhaustive-fun-strictcaller-indirect-strictcode.html
js/mozilla/eval/exhaustive-global-normalcaller-indirect-normalcode.html
js/mozilla/eval/exhaustive-global-strictcaller-indirect-normalcode.html
js/dom/line-column-numbers.html
Comment 23 Build Bot 2016-10-07 20:51:40 PDT
Created attachment 291008 [details]
Archive of layout-test-results from ews112 for mac-yosemite

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews112  Port: mac-yosemite  Platform: Mac OS X 10.10.5