Bug 170668

Summary: test262: test262/test/built-ins/NativeErrors/EvalError/proto.js
Product: WebKit Reporter: Joseph Pecoraro <joepeck>
Component: JavaScriptCoreAssignee: Joseph Pecoraro <joepeck>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, commit-queue, joepeck, keith_miller, mark.lam, msaboff, rniwa, sbarati
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
[PATCH] Proposed Fix
joepeck: commit-queue-
Archive of layout-test-results from ews103 for mac-elcapitan
none
Archive of layout-test-results from ews107 for mac-elcapitan-wk2
none
Archive of layout-test-results from ews117 for mac-elcapitan
none
Archive of layout-test-results from ews126 for ios-simulator-wk2
none
[PATCH] Proposed Fix none

Description Joseph Pecoraro 2017-04-10 01:30:53 PDT
test262/test/built-ins/NativeErrors/EvalError/proto.js

Simplified:
assert( Object.getPrototypeOf(EvalError) === Error )

Spec:
https://tc39.github.io/ecma262/#sec-properties-of-the-nativeerror-constructors

> 19.5.6.2Properties of the NativeError Constructors
>
> The value of the [[Prototype]] internal slot of a NativeError
> constructor is the intrinsic object %Error%.

This affects all NativeError Constructors (EvalError, RangeError, TypeError, etc.)

Notes:
- Chrome passes this test
  Object.getPrototypeOf(EvalError) === Error
- Safari, Firefox, and Edge are all currently:
  Object.getPrototypeOf(EvalError) === Function.prototype

Given 3 browsers have same behavior we might want to consider changing the spec.
Comment 1 Joseph Pecoraro 2017-04-10 01:37:29 PDT
Created attachment 306670 [details]
[PATCH] Proposed Fix

Again, we may want to change the spec, so setting cq- for now.
Comment 2 Build Bot 2017-04-10 02:14:17 PDT
Comment on attachment 306670 [details]
[PATCH] Proposed Fix

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

New failing tests:
ChakraCore.yaml/ChakraCore/test/Lib/error.js.default
Comment 3 Build Bot 2017-04-10 02:51:06 PDT
Comment on attachment 306670 [details]
[PATCH] Proposed Fix

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

New failing tests:
ietestcenter/Javascript/15.2.3.2-2-16.html
ietestcenter/Javascript/15.2.3.2-2-14.html
ietestcenter/Javascript/15.2.3.2-2-12.html
ietestcenter/Javascript/15.2.3.2-2-13.html
ietestcenter/Javascript/15.2.3.2-2-15.html
ietestcenter/Javascript/15.2.3.2-2-17.html
Comment 4 Build Bot 2017-04-10 02:51:11 PDT
Created attachment 306673 [details]
Archive of layout-test-results from ews103 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews103  Port: mac-elcapitan  Platform: Mac OS X 10.11.6
Comment 5 Build Bot 2017-04-10 02:55:23 PDT
Comment on attachment 306670 [details]
[PATCH] Proposed Fix

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

New failing tests:
ietestcenter/Javascript/15.2.3.2-2-16.html
ietestcenter/Javascript/15.2.3.2-2-14.html
ietestcenter/Javascript/15.2.3.2-2-12.html
ietestcenter/Javascript/15.2.3.2-2-13.html
ietestcenter/Javascript/15.2.3.2-2-15.html
ietestcenter/Javascript/15.2.3.2-2-17.html
Comment 6 Build Bot 2017-04-10 02:55:25 PDT
Created attachment 306674 [details]
Archive of layout-test-results from ews107 for mac-elcapitan-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews107  Port: mac-elcapitan-wk2  Platform: Mac OS X 10.11.6
Comment 7 Build Bot 2017-04-10 03:00:41 PDT
Comment on attachment 306670 [details]
[PATCH] Proposed Fix

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

New failing tests:
ietestcenter/Javascript/15.2.3.2-2-16.html
ietestcenter/Javascript/15.2.3.2-2-14.html
ietestcenter/Javascript/15.2.3.2-2-12.html
ietestcenter/Javascript/15.2.3.2-2-13.html
ietestcenter/Javascript/15.2.3.2-2-15.html
ietestcenter/Javascript/15.2.3.2-2-17.html
Comment 8 Build Bot 2017-04-10 03:00:42 PDT
Created attachment 306676 [details]
Archive of layout-test-results from ews117 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews117  Port: mac-elcapitan  Platform: Mac OS X 10.11.6
Comment 9 Build Bot 2017-04-10 03:16:09 PDT
Comment on attachment 306670 [details]
[PATCH] Proposed Fix

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

New failing tests:
ietestcenter/Javascript/15.2.3.2-2-16.html
ietestcenter/Javascript/15.2.3.2-2-14.html
ietestcenter/Javascript/15.2.3.2-2-12.html
ietestcenter/Javascript/15.2.3.2-2-13.html
ietestcenter/Javascript/15.2.3.2-2-15.html
ietestcenter/Javascript/15.2.3.2-2-17.html
Comment 10 Build Bot 2017-04-10 03:16:10 PDT
Created attachment 306677 [details]
Archive of layout-test-results from ews126 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews126  Port: ios-simulator-wk2  Platform: Mac OS X 10.11.6
Comment 11 Joseph Pecoraro 2017-04-10 23:07:22 PDT
Created attachment 306780 [details]
[PATCH] Proposed Fix

Still wondering if we should just change the spec here.
Comment 12 Keith Miller 2017-04-12 19:42:18 PDT
Comment on attachment 306780 [details]
[PATCH] Proposed Fix

I think it's pretty reasonable in the current spec. This change means that EvalError.__proto__.prototype === EvalError.prototype.__proto__, which should probably be true.
Comment 13 Keith Miller 2017-04-12 19:42:39 PDT
r=me.
Comment 14 Joseph Pecoraro 2017-04-12 19:44:17 PDT
Comment on attachment 306780 [details]
[PATCH] Proposed Fix

Makes sense to me.
Comment 15 WebKit Commit Bot 2017-04-12 20:12:12 PDT
Comment on attachment 306780 [details]
[PATCH] Proposed Fix

Clearing flags on attachment: 306780

Committed r215312: <http://trac.webkit.org/changeset/215312>
Comment 16 WebKit Commit Bot 2017-04-12 20:12:14 PDT
All reviewed patches have been landed.  Closing bug.