Bug 86509 - Add support for private names
: Add support for private names
Status: RESOLVED FIXED
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore
: 528+ (Nightly build)
: Unspecified Unspecified
: P2 Normal
Assigned To: Gavin Barraclough
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-15 12:30 PDT by Gavin Barraclough
Modified: 2012-05-28 14:25 PDT (History)
6 users (show)

See Also:


Attachments
Fix (132.87 KB, patch)
2012-05-15 12:46 PDT, Gavin Barraclough
oliver: review+
webkit-ews: commit‑queue-
Details | Formatted Diff | Diff
Add tests, fix style & Qt. (136.29 KB, patch)
2012-05-15 13:40 PDT, Gavin Barraclough
webkit-ews: commit‑queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from ec2-cr-linux-03 (791.80 KB, application/zip)
2012-05-15 15:16 PDT, WebKit Review Bot
no flags Details
More Qt fixes (139.56 KB, patch)
2012-05-15 15:32 PDT, Gavin Barraclough
webkit-ews: commit‑queue-
Details | Formatted Diff | Diff
More Qt fixes (137.86 KB, patch)
2012-05-15 18:53 PDT, Gavin Barraclough
webkit.review.bot: commit‑queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from ec2-cr-linux-02 (753.38 KB, application/zip)
2012-05-16 00:53 PDT, WebKit Review Bot
no flags Details
Archive of layout-test-results from ec2-cr-linux-03 (858.30 KB, application/zip)
2012-05-16 02:03 PDT, WebKit Review Bot
no flags Details
Skip test on chrome (138.99 KB, patch)
2012-05-21 15:03 PDT, Gavin Barraclough
webkit.review.bot: commit‑queue-
Details | Formatted Diff | Diff
Archive of layout-test-results from ec2-cr-linux-03 (682.77 KB, application/zip)
2012-05-21 16:56 PDT, WebKit Review Bot
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gavin Barraclough 2012-05-15 12:30:02 PDT
The spec isn't final, but we can start adding support for property maps to contain keys that aren't identifiers.
Comment 1 Gavin Barraclough 2012-05-15 12:46:40 PDT
Created attachment 142034 [details]
Fix

No performance impact.
Comment 2 WebKit Review Bot 2012-05-15 12:50:01 PDT
Attachment 142034 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'LayoutTests/ChangeLog', u'LayoutTests/fast..." exit_code: 1
Source/JavaScriptCore/interpreter/Interpreter.cpp:49:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/runtime/NameConstructor.h:29:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/jit/JITStubs.cpp:54:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/runtime/JSGlobalObject.cpp:56:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/runtime/JSGlobalObject.cpp:66:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/dfg/DFGOperations.cpp:38:  Alphabetical sorting problem.  [build/include_order] [4]
Source/JavaScriptCore/runtime/NameConstructor.cpp:29:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 7 in 62 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Oliver Hunt 2012-05-15 12:59:24 PDT
Comment on attachment 142034 [details]
Fix

Add a test for for-in enumeration with a private name -- I couldn't see anything that would prevent optimised for-in from observing the private name.
Comment 4 Gavin Barraclough 2012-05-15 13:03:41 PDT
(In reply to comment #3)
> (From update of attachment 142034 [details])
> Add a test for for-in enumeration with a private name -- I couldn't see anything that would prevent optimised for-in from observing the private name.

Will do - cheers oliver.
Comment 5 Early Warning System Bot 2012-05-15 13:32:48 PDT
Comment on attachment 142034 [details]
Fix

Attachment 142034 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/12701562
Comment 6 Gavin Barraclough 2012-05-15 13:40:59 PDT
Created attachment 142043 [details]
Add tests, fix style & Qt.
Comment 7 Early Warning System Bot 2012-05-15 13:45:33 PDT
Comment on attachment 142034 [details]
Fix

Attachment 142034 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12715033
Comment 8 Early Warning System Bot 2012-05-15 15:09:57 PDT
Comment on attachment 142043 [details]
Add tests, fix style & Qt.

Attachment 142043 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12706433
Comment 9 Early Warning System Bot 2012-05-15 15:14:27 PDT
Comment on attachment 142043 [details]
Add tests, fix style & Qt.

Attachment 142043 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/12705561
Comment 10 WebKit Review Bot 2012-05-15 15:16:08 PDT
Comment on attachment 142034 [details]
Fix

Attachment 142034 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/12704561

New failing tests:
fast/js/names.html
Comment 11 WebKit Review Bot 2012-05-15 15:16:13 PDT
Created attachment 142075 [details]
Archive of layout-test-results from ec2-cr-linux-03

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: ec2-cr-linux-03  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Comment 12 Gavin Barraclough 2012-05-15 15:32:33 PDT
Created attachment 142081 [details]
More Qt fixes
Comment 13 Early Warning System Bot 2012-05-15 16:28:58 PDT
Comment on attachment 142081 [details]
More Qt fixes

Attachment 142081 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12703606
Comment 14 Gavin Barraclough 2012-05-15 18:53:24 PDT
Created attachment 142124 [details]
More Qt fixes
Comment 15 WebKit Review Bot 2012-05-16 00:53:06 PDT
Comment on attachment 142124 [details]
More Qt fixes

Attachment 142124 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/12694913

New failing tests:
fast/js/names.html
Comment 16 WebKit Review Bot 2012-05-16 00:53:11 PDT
Created attachment 142184 [details]
Archive of layout-test-results from ec2-cr-linux-02

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: ec2-cr-linux-02  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Comment 17 WebKit Review Bot 2012-05-16 02:03:33 PDT
Comment on attachment 142124 [details]
More Qt fixes

Attachment 142124 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/12716169

New failing tests:
fast/js/names.html
Comment 18 WebKit Review Bot 2012-05-16 02:03:39 PDT
Created attachment 142199 [details]
Archive of layout-test-results from ec2-cr-linux-03

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: ec2-cr-linux-03  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Comment 19 Gavin Barraclough 2012-05-21 15:03:15 PDT
Created attachment 143109 [details]
Skip test on chrome
Comment 20 WebKit Review Bot 2012-05-21 16:55:57 PDT
Comment on attachment 143109 [details]
Skip test on chrome

Attachment 143109 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/12738616

New failing tests:
svg/custom/use-css-no-effect-on-shadow-tree.svg
Comment 21 WebKit Review Bot 2012-05-21 16:56:15 PDT
Created attachment 143137 [details]
Archive of layout-test-results from ec2-cr-linux-03

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: ec2-cr-linux-03  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Comment 22 Gavin Barraclough 2012-05-21 17:36:53 PDT
Fixed in r117859
Comment 23 Thiago Marcos P. Santos 2012-05-22 03:48:16 PDT
After this patch, we are hitting an assertion on our EFL Debug Bot:

ASSERTION FAILED: inherits(&s_info)
Source/JavaScriptCore/runtime/NameInstance.h(63) : void JSC::NameInstance::finishCreation(JSC::JSGlobalData&)
1   0x7f4b7ae54dc0 JSC::NameInstance::finishCreation(JSC::JSGlobalData&)
2   0x7f4b7ae54d51 JSC::NameInstance::create(JSC::JSGlobalData&, JSC::Structure*, JSC::JSString*)
3   0x7f4b7ae54c7e
4   0x7f4b7ad6a786 cti_op_call_NotJSFunction
5   0x7f4b7ad65dad
6   0x7ffff37fcb90
Comment 24 Thiago Marcos P. Santos 2012-05-22 03:51:18 PDT
(In reply to comment #23)
> After this patch, we are hitting an assertion on our EFL Debug Bot:
> 
> ASSERTION FAILED: inherits(&s_info)
> Source/JavaScriptCore/runtime/NameInstance.h(63) : void JSC::NameInstance::finishCreation(JSC::JSGlobalData&)
> 1   0x7f4b7ae54dc0 JSC::NameInstance::finishCreation(JSC::JSGlobalData&)
> 2   0x7f4b7ae54d51 JSC::NameInstance::create(JSC::JSGlobalData&, JSC::Structure*, JSC::JSString*)
> 3   0x7f4b7ae54c7e
> 4   0x7f4b7ad6a786 cti_op_call_NotJSFunction
> 5   0x7f4b7ad65dad
> 6   0x7ffff37fcb90

Forgot to mention the test: fast/js/names.html
Comment 25 Thiago Marcos P. Santos 2012-05-22 06:14:35 PDT
Also fails on GTK:

http://build.webkit.org/results/GTK%20Linux%2064-bit%20Debug/r117861%20(33465)/fast/js/names-crash-log.txt

Ps.: I added this test to EFL test_expectations.