• wingo@igalia.com's avatar
    Implement yield* (delegating yield) · 8f602260
    wingo@igalia.com authored
    Ideally this would have been implemented via desugaring at parse-time,
    but yield* is an expression, and its desugaring includes statements like
    while and try/catch.  We'd have to have BlockExpression in the AST to
    support that, and it's not worth it for this feature.
    
    So instead we implement all of the logic in
    FullCodeGenerator::VisitYield.  Delegating yield AST nodes now have a
    try handler index, for the try/catch.  Otherwise the implementation is
    straightforward.
    
    R=rossberg@chromium.org
    BUG=v8:2355
    TEST=mjsunit/harmony/generators-iteration
    
    Review URL: https://codereview.chromium.org/14582007
    
    git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14669 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    8f602260
Name
Last commit
Last update
..
block-conflicts.js Loading commit data...
block-const-assign.js Loading commit data...
block-early-errors.js Loading commit data...
block-for.js Loading commit data...
block-lazy-compile.js Loading commit data...
block-leave.js Loading commit data...
block-let-crankshaft.js Loading commit data...
block-let-declaration.js Loading commit data...
block-let-semantics.js Loading commit data...
block-scoping.js Loading commit data...
collections.js Loading commit data...
debug-blockscopes.js Loading commit data...
debug-evaluate-blockscopes.js Loading commit data...
debug-function-scopes.js Loading commit data...
generators-iteration.js Loading commit data...
generators-objects.js Loading commit data...
generators-parsing.js Loading commit data...
generators-runtime.js Loading commit data...
module-linking.js Loading commit data...
module-parsing.js Loading commit data...
module-recompile.js Loading commit data...
module-resolution.js Loading commit data...
object-observe.js Loading commit data...
proxies-example-membrane.js Loading commit data...
proxies-for.js Loading commit data...
proxies-function.js Loading commit data...
proxies-hash.js Loading commit data...
proxies-json.js Loading commit data...
proxies-symbols.js Loading commit data...
proxies.js Loading commit data...
symbols.js Loading commit data...
typedarrays.js Loading commit data...
typeof.js Loading commit data...