blob: 91fdea2fd3d63e36189a278af63eccb6e144816e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
using System;
class C<T> where T : C<T>
{
public static void Foo<U> (U arg) where U : C<U>, new ()
{
var i = new U ();
{
var ii = new U ();
Func<U> f = () => i;
{
Action a = () => C<U>.Run (ii);
a ();
}
f ();
}
}
static void Run (T a)
{
}
}
class D : C<D>
{
}
class E : C<E>
{
}
class A
{
public static int Main ()
{
D.Foo (new E ());
return 0;
}
}
|