42 lines
505 B
C#
42 lines
505 B
C#
|
//
|
||
|
// Check whether we're correctly handling `this'.
|
||
|
//
|
||
|
//
|
||
|
|
||
|
public class Foo<T,U>
|
||
|
{
|
||
|
public void Hello (Foo<T,U> foo)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void Test ()
|
||
|
{
|
||
|
//
|
||
|
// Again, this must be encoded as a TypeSpec (Foo<!0,!1>)
|
||
|
// instead of a TypeDef.
|
||
|
Hello (this);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public class Bar<T> : Foo<T,long>
|
||
|
{
|
||
|
public void Test (Foo<T,long> foo)
|
||
|
{
|
||
|
Hello (foo);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public class Baz<T> : Foo<T,string>
|
||
|
{
|
||
|
public override void Test ()
|
||
|
{
|
||
|
Hello (this);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class X
|
||
|
{
|
||
|
public static void Main ()
|
||
|
{ }
|
||
|
}
|