public override BoundNode VisitThrowStatement(BoundThrowStatement node) { BoundExpression expressionOpt = (BoundExpression)this.Visit(node.ExpressionOpt); if (expressionOpt == null || expressionOpt.Kind != BoundKind.SpillSequence) { return(node.Update(expressionOpt)); } var spill = (BoundSpillSequence)expressionOpt; return(RewriteSpillSequenceAsBlock(spill, node.Update(spill.Value))); }
public override BoundNode VisitThrowStatement(BoundThrowStatement node) { BoundSpillSequenceBuilder builder = null; BoundExpression expression = VisitExpression(ref builder, node.ExpressionOpt); return(UpdateStatement(builder, node.Update(expression))); }
public override BoundNode VisitThrowStatement(BoundThrowStatement node) { EnterStatement(node); BoundSpillSequenceBuilder builder = null; BoundExpression expression = VisitExpression(ref builder, node.ExpressionOpt); return(UpdateStatement(builder, node.Update(expression), substituteTemps: true)); }
public override BoundNode VisitThrowStatement(BoundThrowStatement node) { BoundSpillSequence2 ss = null; BoundExpression expression = VisitExpression(ref ss, node.ExpressionOpt); return UpdateStatement(ss, node.Update(expression)); }
public override BoundNode VisitThrowStatement(BoundThrowStatement node) { BoundExpression expressionOpt = (BoundExpression)this.Visit(node.ExpressionOpt); if (expressionOpt == null || expressionOpt.Kind != BoundKind.SpillSequence) { return node.Update(expressionOpt); } var spill = (BoundSpillSequence)expressionOpt; return RewriteSpillSequenceAsBlock(spill, node.Update(spill.Value)); }