 <p>Well, having just tried it myself with the C# 4 compiler, I got an internal <em>class</em> called <code>&lt;PrivateImplementationDetails&gt;{D1E23401-19BC-4B4E-8CC5-2C6DDEE7B97C}</code> containing a private nested <em>struct</em> called <code>__StaticArrayInitTypeSize=12</code>.</p> <p>The class contained an internal static field of the struct type called <code>$$method0x6000001-1</code>. The field itself was decorated with <code>CompilerGeneratedAttribute</code>.</p> <p>The problem is that <em>all</em> of this is implementation-specific. It could change in future releases, or it could be different from earlier releases too.</p> <p>Any member name containing <code>&lt;</code>, <code>&gt;</code> or <code>=</code> is an "unspeakable" name which <em>will</em> have been generated by the compiler, so you can view that as a sort of implicit <code>CompilerGenerated</code>, if that's any use. (There are any number of <em>other</em> uses for such generated types though.)</p>