컴파일러 오류 CS1625

업데이트: 2007년 11월

오류 메시지

finally 절의 본문에서는 yield를 사용할 수 없습니다.
Cannot yield in the body of a finally clause

finally 절의 본문에서는 yield 문을 사용할 수 없습니다. 이 오류가 발생하지 않도록 하려면 yield 문을 finally 절의 바깥쪽으로 이동합니다.

다음 샘플에서는 CS1625 오류가 발생하는 경우를 보여 줍니다.

// CS1625.cs
using System.Collections;

class C : IEnumerable
{
   public IEnumerator GetEnumerator()
   {
      try
      {
      }
      finally
      {
        yield return this;  // CS1625
      }
   }
}

public class CMain
{
   public static void Main() { }
}