CS0523 de erro do compilador

Mensagem de erro

Membro struct 'campo struct2' do tipo 'struct1' gera um ciclo no layout de struct

As definições de duas estruturas incluem referências recursivas.Alterar o struct definições de modo que cada não define propriamente dito no Outros.Essa limitação se aplica somente às structs, como estruturas são tipos de valor.Se usar referências recursivas, declare seus tipos sistema autônomo classes.

O exemplo a seguir gera CS0523:

// CS0523.cs
// compile with: /target:library
struct RecursiveLayoutStruct1
{
   public RecursiveLayoutStruct2 field;
}

struct RecursiveLayoutStruct2
{
   public RecursiveLayoutStruct1 field;   // CS0523
}