Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Typvidare för typen "typ" i sammansättningen "sammansättning" orsakar en cykel
Det här felet kan bara inträffa med felaktigt formade importerade metadata. Det kan inte inträffa med endast C#-källa.
Exempel
Följande exempel genererar CS0731. Exemplet består av tre filer:
Circular.IL
Circular2.IL
CS0731.cs
Kompilera först . IL-filer som bibliotek och kompilera sedan .cs kod som refererar till de två filerna.
// Circular.il
// compile with: /DLL /out=Circular.dll
.assembly extern circular2
{
.ver 0:0:0:0
}
.assembly extern circular3
{
.ver 0:0:0:0
}
.assembly extern mscorlib
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 2:0:0:0
}
.assembly Circular
{
.custom instance void [mscorlib]System.Runtime.CompilerServices.CompilationRelaxationsAttribute::.ctor(int32) = ( 01 00 08 00 00 00 00 00 )
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.class extern forwarder Circular.Referenced.TypeForwarder
{
.assembly extern circular2
}
.module Circular.dll
// MVID: {880C2329-C915-42A0-83E9-9D10C3E6DBD0}
.imagebase 0x00400000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000001 // ILONLY
// Image base: 0x04E40000
// ======== CLASS MEMBERS DECLARATION =========
.class public abstract auto ansi sealed beforefieldinit User
extends [mscorlib]System.Object
{
.method public hidebysig static class [circular2]Circular.Referenced.TypeForwarder
F() cil managed
{
.maxstack 1
newobj instance void [circular2]Circular.Referenced.TypeForwarder::.ctor()
ret
}
}
// Circular2.il
// compile with: /DLL /out=Circular2.dll
.assembly extern mscorlib
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 2:0:0:0
}
.assembly extern Circular
{
.ver 0:0:0:0
}
.assembly circular2
{
.custom instance void [mscorlib]System.Runtime.CompilerServices.CompilationRelaxationsAttribute::.ctor(int32) = ( 01 00 08 00 00 00 00 00 )
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.class extern forwarder Circular.Referenced.TypeForwarder
{
.assembly extern Circular
}
.module circular2.dll
// MVID: {8B3BE5C8-DBE1-49C4-BC72-DF35F0387C21}
.imagebase 0x00400000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000001 // ILONLY
// Image base: 0x04E40000
// CS0731.cs
// compile with: /reference:circular.dll /reference:circular2.dll
// CS0731 expected
class A {
public static void Main() {
User.F();
}
}