public override MSAst.Expression Reduce() {
// (yield z) becomes:
// .comma (1) {
// .void ( .yield_statement (_expression) ),
// $gen.CheckThrowable() // <-- has return result from send
// }
return Ast.Block(
AstUtils.YieldReturn(
GeneratorLabel,
AstUtils.Convert(_expression, typeof(object))
),
CreateCheckThrowExpression(Span) // emits ($gen.CheckThrowable())
);
}