Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Normative: Add Optional Chaining #1646

Merged
merged 1 commit into from
Dec 12, 2019

Conversation

DanielRosenwasser
Copy link
Member

@DanielRosenwasser DanielRosenwasser commented Jul 25, 2019

This change adds the relevant updates for the stage 3 Optional Chaining proposal. The intended changes can be viewed at https://tc39.es/proposal-optional-chaining/.

The Test262 PR is available at tc39/test262#2212

@ljharb ljharb added normative change Affects behavior required to correctly evaluate some ECMAScript source text pending stage 4 This proposal has not yet achieved stage 4, but may otherwise be ready to merge. proposal This is related to a specific proposal, and will be closed/merged when the proposal reaches stage 4. labels Jul 25, 2019
@ljharb ljharb requested review from zenparsing, a team and waldemarhorwat July 25, 2019 18:32
@ljharb ljharb added the needs test262 tests The proposal should specify how to test an implementation. Ideally via github.com/tc39/test262 label Jul 25, 2019
@ljharb ljharb requested a review from jridgewell July 25, 2019 18:32
@ljharb ljharb removed the request for review from zenparsing October 12, 2019 05:06
@ljharb ljharb added has test262 tests and removed needs test262 tests The proposal should specify how to test an implementation. Ideally via github.com/tc39/test262 labels Oct 31, 2019
spec.html Outdated Show resolved Hide resolved
spec.html Outdated Show resolved Hide resolved
spec.html Show resolved Hide resolved
spec.html Show resolved Hide resolved
@syg
Copy link
Contributor

syg commented Nov 12, 2019

Could someone update this PR to reflect the upstream fixes and editorial changes?

spec.html Show resolved Hide resolved
@DanielRosenwasser
Copy link
Member Author

DanielRosenwasser commented Nov 13, 2019

I've integrated the upstream changes and addressed feedback provided apart from the Evaluate_______PropertyAccess naming discussion which I'll try to address shortly.

spec.html Show resolved Hide resolved
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 4, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 4, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 4, 2020
PR tc39#1646 introduced an ambiguity to the lexical grammar:
Punctuator derives OtherPunctuator in two different ways --
directly, and indirectly via OptionalChainingPunctuator.

It doesn't make sense for OptionalChainingPunctuator to derive OtherPunctuator,
so I've eliminated that alternative.
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 5, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 5, 2020
... from non-defining production.
(PR tc39#1646)
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 5, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 5, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 5, 2020
PR tc39#1646 introduced an ambiguity to the lexical grammar:
Punctuator derives OtherPunctuator in two different ways --
directly, and indirectly via OptionalChainingPunctuator.

It doesn't make sense for OptionalChainingPunctuator to derive OtherPunctuator,
so I've eliminated that alternative.
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
... from non-defining production.
(PR tc39#1646)
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
PR tc39#1646 introduced an ambiguity to the lexical grammar:
Punctuator derives OtherPunctuator in two different ways --
directly, and indirectly via OptionalChainingPunctuator.

It doesn't make sense for OptionalChainingPunctuator to derive OtherPunctuator,
so I've eliminated that alternative.
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
... from non-defining production.
(PR tc39#1646)
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 13, 2020
PR tc39#1646 introduced an ambiguity to the lexical grammar:
Punctuator derives OtherPunctuator in two different ways --
directly, and indirectly via OptionalChainingPunctuator.

It doesn't make sense for OptionalChainingPunctuator to derive OtherPunctuator,
so I've eliminated that alternative.
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 15, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 15, 2020
... from non-defining production.
(PR tc39#1646)
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 15, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 15, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 15, 2020
PR tc39#1646 introduced an ambiguity to the lexical grammar:
Punctuator derives OtherPunctuator in two different ways --
directly, and indirectly via OptionalChainingPunctuator.

It doesn't make sense for OptionalChainingPunctuator to derive OtherPunctuator,
so I've eliminated that alternative.
ljharb pushed a commit to jmdyck/ecma262 that referenced this pull request Feb 19, 2020
 - insert space before paren in clause heading
 - eliminate grammatical parameters from non-defining production
 - Add 4 <emu-prodref> elements to Annex A
 - tweak syntax in algorithms
 - eliminate accidental ambiguity in Punctuator
      PR tc39#1646 introduced an ambiguity to the lexical grammar:
      Punctuator derives OtherPunctuator in two different ways --
      directly, and indirectly via OptionalChainingPunctuator.

      It doesn't make sense for OptionalChainingPunctuator to derive OtherPunctuator,
      so I've eliminated that alternative.
 - minor grammar refactoring re Punctuator
      Move the Punctuator production back to its former position.
      (Grammars are generally written top-down.)
 - Fix a 'use' production for AsyncConciseBody to match the new defining production
 - Add an <emu-prodref> for ExpressionBody to Annex A
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Feb 20, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request May 29, 2020
(These steps come from PR tc39#1646, which went through its whole
life-cycle while tc39#1519 was dormant. Properly, after tc39#1646 was merged,
I should have rebased tc39#1519 and included these changes there.)
@bakkot bakkot mentioned this pull request May 29, 2020
jmdyck added a commit to jmdyck/ecma262 that referenced this pull request Jun 4, 2020
(These steps come from PR tc39#1646, which went through its whole
life-cycle while tc39#1519 was dormant. Properly, after tc39#1646 was merged,
I should have rebased tc39#1519 and included these changes there.)
ljharb pushed a commit to jmdyck/ecma262 that referenced this pull request Jun 15, 2020
)

These steps come from PR tc39#1646, which went through its whole life-cycle while tc39#1519 was dormant. Properly, after tc39#1646 was merged, I should have rebased tc39#1519 and included these changes there.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
has stage 4 This PR represents a proposal that has achieved stage 4, and is ready to merge. has test262 tests normative change Affects behavior required to correctly evaluate some ECMAScript source text proposal This is related to a specific proposal, and will be closed/merged when the proposal reaches stage 4.
Projects
None yet
Development

Successfully merging this pull request may close these issues.