private void Visit(TernaryOperatorExpression expr) { var labelFalse = IL.DefineLabel("tern_false"); var labelEnd = IL.DefineLabel("tern_end"); Visit(expr.Condition); LoadNumber(); IL.Brfalse(labelFalse); Visit(expr.IfTrue); IL.Br(labelEnd); IL.MarkLabel(labelFalse); IL.Nop(); Visit(expr.IfFalse); IL.MarkLabel(labelEnd); IL.Nop(); }