linux-packaging-mono/mcs/tests/gtest-iter-32.cs
Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

36 lines
557 B
C#

using System.Collections.Generic;
class TestGoto
{
static int x = 2;
public static void Main(string[] args)
{
foreach (bool b in test())
;
if (x != 0)
throw new System.Exception ();
}
static IEnumerable<bool> setX()
{
x = 1;
try {
yield return true;
} finally {
x = 0;
}
}
static IEnumerable<bool> test()
{
foreach (bool b in setX()) {
yield return true;
// Change "goto label" to "break" to show the correct result.
goto label;
}
label:
yield break;
}
}