• neis's avatar
    Implement iterator finalization in array destructuring. · 3062af70
    neis authored
    We must close the iterator whenever the destructuring didn't exhaust it, unless an iterator operation (eg. next) threw.  We do this by wrapping the iterator use in a try-catch-finally similar to the desugaring of for-of.
    
    This is behind --harmony-iterator-close.
    
    R=adamk@chromium.org
    BUG=v8:3566
    LOG=Y
    
    Review URL: https://codereview.chromium.org/1772793002
    
    Cr-Commit-Position: refs/heads/master@{#34654}
    3062af70
Name
Last commit
Last update
..
ArrayLiterals.golden Loading commit data...
ArrayLiteralsWide.golden Loading commit data...
AssignmentsInBinaryExpression.golden Loading commit data...
BasicBlockToBoolean.golden Loading commit data...
BasicLoops.golden Loading commit data...
BreakableBlocks.golden Loading commit data...
CallGlobal.golden Loading commit data...
CallLookupSlot.golden Loading commit data...
CallNew.golden Loading commit data...
CallRuntime.golden Loading commit data...
ClassDeclarations.golden Loading commit data...
CompoundExpressions.golden Loading commit data...
Conditional.golden Loading commit data...
ConstVariable.golden Loading commit data...
ConstVariableContextSlot.golden Loading commit data...
ContextParameters.golden Loading commit data...
ContextVariables.golden Loading commit data...
CountOperators.golden Loading commit data...
CreateArguments.golden Loading commit data...
CreateRestParameter.golden Loading commit data...
DeadCodeRemoval.golden Loading commit data...
DeclareGlobals.golden Loading commit data...
Delete.golden Loading commit data...
DeleteLookupSlotInEval.golden Loading commit data...
DoDebugger.golden Loading commit data...
DoExpression.golden Loading commit data...
Eval.golden Loading commit data...
ForIn.golden Loading commit data...
ForOf.golden Loading commit data...
FunctionLiterals.golden Loading commit data...
GlobalCompoundExpressions.golden Loading commit data...
GlobalCountOperators.golden Loading commit data...
GlobalDelete.golden Loading commit data...
HeapNumberConstants.golden Loading commit data...
IfConditions.golden Loading commit data...
IllegalRedeclaration.golden Loading commit data...
IntegerConstants.golden Loading commit data...
JumpsRequiringConstantWideOperands.golden Loading commit data...
LegacyConstVariable.golden Loading commit data...
LetVariable.golden Loading commit data...
LetVariableContextSlot.golden Loading commit data...
LoadGlobal.golden Loading commit data...
LogicalExpressions.golden Loading commit data...
LookupSlot.golden Loading commit data...
LookupSlotInEval.golden Loading commit data...
LookupSlotWideInEval.golden Loading commit data...
NewTarget.golden Loading commit data...
ObjectLiterals.golden Loading commit data...
ObjectLiteralsWide.golden Loading commit data...
OuterContextVariables.golden Loading commit data...
Parameters.golden Loading commit data...
PrimitiveExpressions.golden Loading commit data...
PrimitiveReturnStatements.golden Loading commit data...
PropertyCall.golden Loading commit data...
PropertyLoads.golden Loading commit data...
PropertyStores.golden Loading commit data...
RegExpLiterals.golden Loading commit data...
RegExpLiteralsWide.golden Loading commit data...
RemoveRedundantLdar.golden Loading commit data...
StoreGlobal.golden Loading commit data...
StringConstants.golden Loading commit data...
Switch.golden Loading commit data...
ThisFunction.golden Loading commit data...
Throw.golden Loading commit data...
TopLevelObjectLiterals.golden Loading commit data...
TryCatch.golden Loading commit data...
TryFinally.golden Loading commit data...
Typeof.golden Loading commit data...
UnaryOperators.golden Loading commit data...
WideRegisters.golden Loading commit data...
WithStatement.golden Loading commit data...