Merge pull request #26008 from ajafff/restbindingpattern

allow BindingPattern in BindingRestElement
This commit is contained in:
Mohamed Hegazy 2018-07-31 11:31:22 -07:00 committed by GitHub
commit 114cd80ed9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 1 additions and 15 deletions

View File

@ -29280,10 +29280,6 @@ namespace ts {
}
checkGrammarForDisallowedTrailingComma(elements, Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma);
if (node.name.kind === SyntaxKind.ArrayBindingPattern || node.name.kind === SyntaxKind.ObjectBindingPattern) {
return grammarErrorOnNode(node.name, Diagnostics.A_rest_element_cannot_contain_a_binding_pattern);
}
if (node.propertyName) {
return grammarErrorOnNode(node.name, Diagnostics.A_rest_element_cannot_have_a_property_name);
}

View File

@ -1,7 +0,0 @@
tests/cases/conformance/es6/destructuring/restElementWithBindingPattern.ts(1,9): error TS2501: A rest element cannot contain a binding pattern.
==== tests/cases/conformance/es6/destructuring/restElementWithBindingPattern.ts (1 errors) ====
var [...[a, b]] = [0, 1];
~~~~~~
!!! error TS2501: A rest element cannot contain a binding pattern.

View File

@ -1,10 +1,7 @@
tests/cases/conformance/es6/destructuring/restElementWithBindingPattern2.ts(1,9): error TS2501: A rest element cannot contain a binding pattern.
tests/cases/conformance/es6/destructuring/restElementWithBindingPattern2.ts(1,16): error TS2459: Type 'number[]' has no property 'b' and no string index signature.
==== tests/cases/conformance/es6/destructuring/restElementWithBindingPattern2.ts (2 errors) ====
==== tests/cases/conformance/es6/destructuring/restElementWithBindingPattern2.ts (1 errors) ====
var [...{0: a, b }] = [0, 1];
~~~~~~~~~~
!!! error TS2501: A rest element cannot contain a binding pattern.
~
!!! error TS2459: Type 'number[]' has no property 'b' and no string index signature.