// // Check whether we're correctly handling `this'. // // public class Foo { public void Hello (Foo foo) { } public virtual void Test () { // // Again, this must be encoded as a TypeSpec (Foo) // instead of a TypeDef. Hello (this); } } public class Bar : Foo { public void Test (Foo foo) { Hello (foo); } } public class Baz : Foo { public override void Test () { Hello (this); } } class X { public static void Main () { } }