+++ /dev/null
-// Compare this to gcs0695-*.cs: these are the allowed cases.
-
-namespace A
-{
- interface I<X>
- { }
-
- interface J<X,Y> : I<X>
- { }
-
- class A<X> : I<X>, I<A<X>>
- { }
-
- class B<X> : I<B<X>>, I<X>, I<A<X>>
- { }
-
- class C<X> : I<int>, I<A<X>>
- { }
-
- class D<X> : I<A<float>>, I<B<X>>
- { }
-
- class E<X,Y> : J<X,Y>, J<I<X>,I<Y>>
- { }
-
- class F<X> : J<X,I<X>>, J<X,X>
- { }
-}
-
-// bug #69057
-namespace B
-{
- struct KeyValuePair<K,V>
- { }
-
- interface ITest<T>
- { }
-
- interface ITest2<K,V> : ITest<KeyValuePair<K,V>>
- { }
-
- class MyTest<K,V> : ITest2<K,V>, ITest<KeyValuePair<K,V>>
- { }
-}
-
-// bug #58303
-namespace C
-{
- class S <K> { }
-
- interface Z<T> { }
-
- interface I<K> : Z<S<K>> { }
-
- class C <K> : I<K>, Z<S<K>> { }
-}
-
-class Test
-{
- static void Main ()
- { }
-}