Error del compilador CS0523
Actualización: noviembre 2007
Mensaje de error
El miembro de estructura 'campo de estructura2' del tipo 'estructura1' crea un ciclo en el diseño de la estructura
Struct member 'struct2 field' of type 'struct1' causes a cycle in the struct layout
Las definiciones de dos estructuras incluyen referencias recursivas. Cambie las definiciones de estructura (struct) para que ninguna de ellas se defina a sí misma en la otra. Esta limitación sólo se aplica a las estructuras, puesto que las estructuras son tipos de valor. Cuando emplee referencias recursivas, declare sus tipos como clases.
El código siguiente genera el error CS0523:
// CS0523.cs
// compile with: /target:library
struct RecursiveLayoutStruct1
{
public RecursiveLayoutStruct2 field;
}
struct RecursiveLayoutStruct2
{
public RecursiveLayoutStruct1 field; // CS0523
}