Remove SpiderMonkey support for let expressions

VERIFIED FIXED in Firefox 41

Status

()

defect
VERIFIED FIXED
5 years ago
4 years ago

People

(Reporter: shu, Assigned: cpeterson)

Tracking

(Blocks 1 bug, {addon-compat, dev-doc-complete, site-compat})

unspecified
mozilla41
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox40 wontfix, firefox41 fixed)

Details

(Whiteboard: [DocArea=JS])

Attachments

(2 attachments)

Reporter

Description

5 years ago
ES6 does not spec let blocks and let expressions. We should remove them.
Reporter

Updated

5 years ago
Blocks: es6:let
Reporter

Updated

5 years ago
Depends on: 1023686
Whiteboard: [DocArea=JS]
Assignee

Updated

5 years ago
Depends on: 1102131
Assignee

Updated

5 years ago
Depends on: 1108304
Assignee

Updated

5 years ago
Depends on: 1108305
Assignee

Updated

5 years ago
Depends on: 1108310
Assignee

Updated

5 years ago
Depends on: 1108311
Assignee

Updated

5 years ago
Depends on: 1113819
Assignee

Updated

4 years ago
Depends on: 1120051
Assignee

Updated

4 years ago
Depends on: 1121323
Blocks: 1103158
Assignee

Updated

4 years ago
Depends on: 1129321
Assignee

Updated

4 years ago
Depends on: 1129325
Assignee

Updated

4 years ago
Depends on: 1129326
Assignee

Updated

4 years ago
Depends on: 1129330
Assignee

Updated

4 years ago
Depends on: 1129331
Assignee

Updated

4 years ago
Depends on: 1129333
Assignee

Updated

4 years ago
Depends on: 1129336

Updated

4 years ago
Depends on: 1129923
Assignee

Updated

4 years ago
Depends on: 1133185
Assignee

Updated

4 years ago
Depends on: 1133277
Assignee

Updated

4 years ago
Depends on: 1133279
Assignee

Updated

4 years ago
Depends on: 1137987
Assignee

Updated

4 years ago
Depends on: 1149001
Assignee

Comment 1

4 years ago
Part 1: Remove SpiderMonkey tests for nonstandard let expressions.

This patch removes fuzz tests that use let expressions and updates functional tests to not use let expressions.
Assignee: nobody → cpeterson
Status: NEW → ASSIGNED
Attachment #8607350 - Flags: review?(shu)
Assignee

Comment 2

4 years ago
Part 2: Remove SpiderMonkey support for nonstandard let expressions.

This patch removes let expressions, but leaves let blocks for now. This work was easier to do in separate steps.
Attachment #8607351 - Flags: review?(shu)
Assignee

Updated

4 years ago
Duplicate of this bug: 1149001
Reporter

Comment 4

4 years ago
Comment on attachment 8607350 [details] [diff] [review]
part-1-remove-let-extension-tests.patch

Review of attachment 8607350 [details] [diff] [review]:
-----------------------------------------------------------------

Wondrous removal
Attachment #8607350 - Flags: review?(shu) → review+
Reporter

Comment 5

4 years ago
Comment on attachment 8607351 [details] [diff] [review]
part-2-remove-let-extension-code.patch

Review of attachment 8607351 [details] [diff] [review]:
-----------------------------------------------------------------

Wondrous removal.

::: js/src/frontend/Parser.cpp
@@ +8106,2 @@
>           *   }
> +         *   array

Nit: could you change the pseudocode to

{
  let array = new Array, i, j;
  ...
  array
}

That is, add an extra pair of { } around everything. Otherwise it looks like we're introducing new bindings into an existing block scope.
Attachment #8607351 - Flags: review?(shu) → review+
Assignee

Updated

4 years ago
Summary: Delete support for let blocks and let expressions for ES6 → Remove SpiderMonkey support for let expressions
Assignee

Updated

4 years ago
Blocks: 1167029
https://hg.mozilla.org/mozilla-central/rev/fc18eefd9329
Status: ASSIGNED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla41
Keywords: addon-compat
Assignee

Comment 9

4 years ago
(In reply to Tooru Fujisawa [:arai] from comment #8)
> Updated following documents:

Thanks, Tooru! :)
Status: RESOLVED → VERIFIED

Updated

4 years ago
Depends on: 1168085

Comment 11

4 years ago
Does this mean SM is now ES6-spec-compliant wrt let?
Flags: needinfo?(cpeterson)
Assignee

Comment 12

4 years ago
(In reply to Florian Bender from comment #11)
> Does this mean SM is now ES6-spec-compliant wrt let?

Not yet. There are some remaining let issues described in tracking bug 950547.
Flags: needinfo?(cpeterson)

Comment 13

4 years ago
Yeah, sorry, forgot about that one.
You need to log in before you can comment on or make changes to this bug.