public override void OnGotoStatement(GotoStatement node)
{
EmitDebugInfo(node);
InternalLabel label = (InternalLabel)GetEntity(node.Label);
int gotoDepth = AstAnnotations.GetTryBlockDepth(node);
int targetDepth = AstAnnotations.GetTryBlockDepth(label.LabelStatement);
if (targetDepth == gotoDepth)
{
_il.Emit(OpCodes.Br, label.Label);
}
else
{
_il.Emit(OpCodes.Leave, label.Label);
}
}