Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mcs / tests / gtest-273.cs
1 using System;
2
3 public class ThisBaseClass<A, B, C> 
4         where A: ThisBaseClass<A, B, C>
5         where B: ThatBaseClass<B, A, C>, new()
6         where C: class
7 { }
8
9 public class ThatBaseClass<B, A, C>
10         where B: ThatBaseClass<B, A, C>, new()
11         where A: ThisBaseClass<A, B, C>
12         where C: class
13 { }
14
15 public class ThisClass<A, B, C>: ThisBaseClass<A, B, C>
16         where A: ThisClass<A, B, C>
17         where B: ThatClass<B, A, C>, new()
18         where C: class
19 { }
20
21 public class ThatClass<B, A, C>: ThatBaseClass<B, A, C>
22         where B: ThatClass<B, A, C>, new()
23         where A: ThisClass<A, B, C>
24         where C: class
25 { }
26
27 public class ThisClass: ThisClass<ThisClass, ThatClass, object>
28 { }
29
30 public class ThatClass: ThatClass<ThatClass, ThisClass, object>
31 { }
32
33 public class Test
34 {
35         public static void Main ()
36         { }
37 }