Merge pull request #1861 from saper/home-override
[mono-project.git] / mcs / tests / gtest-374.cs
blobc03931b95958c58bd38f839e39ded4041feb6203
2 public class Z : IGenericInterface<Z>
4 public void Stop ()
8 Z IGenericInterface<Z>.Start ()
10 return this;
14 public interface IGenericInterface<T>
16 T Start ();
19 public class A<Y, Y2, W>
20 where Y : Z, IGenericInterface<Y>
21 where Y2 : class
22 where W : Y, Y2
24 public void SomeOperation (W w)
26 w.Start ();
27 w.Stop ();
30 public void SomeOtherOperation (Y y)
32 y.Start ();
33 y.Stop ();
37 public class Foo
39 public static int Main ()
41 var a = new A<Z, object, Z> ();
42 a.SomeOperation (new Z ());
43 a.SomeOtherOperation (new Z ());
44 return 0;