💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# Compiler Error CS0731 程序集“assembly”中类型“type”的类型转发器导致循环 仅当导入的源数据格式错误时才会发生此错误。仅使用 C# 源代码不会出现此错误。 下面的示例生成 CS0731。此示例由三个文件组成: 1.Circular.IL 2.Circular2.IL 3.CS0731.cs 首先将 .IL 文件编译为库,然后编译引用这两个文件的 .cs 代码。 ``` // 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(); } } ```