Error del compilador CS1629

Actualización: noviembre 2007

Mensaje de error

No puede aparecer código no seguro en iteradores
Unsafe code may not appear in iterators

La especificación del lenguaje C# no permite código no seguro en los iteradores.

En el siguiente código se genera el error CS1629:

// CS1629.cs
// compile with: /unsafe  
using System.Collections.Generic;
class C 
{
   IEnumerator<int> IteratorMeth() {
      int i;
      unsafe  // CS1629
      {
         int *p = &i;
         yield return *p;
      }
   }
}