// Compiler options: -r:gtest-552-lib.dll class A : G<A>.GPD { } class B : H<int> { public class MM : M<MM> { } } public class Test { public static int Main () { var a = new A (); a.GT = new A (); a.GT.Foo (); new B.N<B, B.MM> (); return 0; } }