Bug 160417 - update a class extending null w.r.t the ES7 spec
Summary: update a class extending null w.r.t the ES7 spec
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Saam Barati
URL:
Keywords:
: 160418 (view as bug list)
Depends on:
Blocks: 160392
  Show dependency treegraph
 
Reported: 2016-08-01 12:37 PDT by Saam Barati
Modified: 2017-03-07 11:01 PST (History)
13 users (show)

See Also:


Attachments
patch (9.20 KB, patch)
2016-08-01 13:55 PDT, Saam Barati
keith_miller: review-
Details | Formatted Diff | Diff
patch (32.04 KB, patch)
2016-08-02 13:25 PDT, Saam Barati
no flags Details | Formatted Diff | Diff
patch (31.73 KB, patch)
2016-08-02 13:52 PDT, Saam Barati
keith_miller: review+
Details | Formatted Diff | Diff
patch for landing (33.12 KB, patch)
2016-08-02 16:02 PDT, Saam Barati
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Saam Barati 2016-08-01 12:37:42 PDT
...
Comment 1 GSkachkov 2016-08-01 12:43:44 PDT
*** Bug 160418 has been marked as a duplicate of this bug. ***
Comment 2 Saam Barati 2016-08-01 13:55:11 PDT
Created attachment 285039 [details]
patch
Comment 3 Mark Lam 2016-08-01 13:59:07 PDT
Comment on attachment 285039 [details]
patch

r=me
Comment 4 Keith Miller 2016-08-01 14:00:27 PDT
Comment on attachment 285039 [details]
patch

I don't think this is right if you do:

let foo = null;
class A extends foo { }

Shouldn't that also be a base class? https://tc39.github.io/ecma262/#sec-runtime-semantics-classdefinitionevaluation
Comment 5 Saam Barati 2016-08-01 14:28:55 PDT
(In reply to comment #4)
> Comment on attachment 285039 [details]
> patch
> 
> I don't think this is right if you do:
> 
> let foo = null;
> class A extends foo { }
> 
> Shouldn't that also be a base class?
> https://tc39.github.io/ecma262/#sec-runtime-semantics-
> classdefinitionevaluation

Yup. My implementation is quite broken.
This may be a bit annoying to refactor to make this work.
Comment 6 Saam Barati 2016-08-02 13:25:30 PDT
Created attachment 285130 [details]
patch
Comment 7 Saam Barati 2016-08-02 13:52:07 PDT
Created attachment 285136 [details]
patch
Comment 8 Keith Miller 2016-08-02 13:58:18 PDT
Comment on attachment 285136 [details]
patch

r=me.
Comment 9 Saam Barati 2016-08-02 16:02:15 PDT
Created attachment 285154 [details]
patch for landing

with updated test262 results.
Comment 10 WebKit Commit Bot 2016-08-02 18:29:36 PDT
Comment on attachment 285154 [details]
patch for landing

Clearing flags on attachment: 285154

Committed r204058: <http://trac.webkit.org/changeset/204058>
Comment 11 WebKit Commit Bot 2016-08-02 18:29:44 PDT
All reviewed patches have been landed.  Closing bug.
Comment 12 Adam Klein 2017-01-25 10:20:36 PST
Heads-up that this has been reverted from ES2017 (and came in after ES2016) after a discussion at January's TC39 meeting. The spec revert was https://github.com/tc39/ecma262/commit/c57ef95c45a371f9c9485bb1c3881dbdc04524a2
Comment 13 Saam Barati 2017-03-07 11:01:54 PST
(In reply to comment #12)
> Heads-up that this has been reverted from ES2017 (and came in after ES2016)
> after a discussion at January's TC39 meeting. The spec revert was
> https://github.com/tc39/ecma262/commit/
> c57ef95c45a371f9c9485bb1c3881dbdc04524a2

Thanks for the heads up.
I filed: https://bugs.webkit.org/show_bug.cgi?id=169293 to fix this.