Fix banshee breakage with trunk.
commita8ab40d5d7313e8f3cab210f724aded303e04c94
authorRodrigo Kumpera <kumpera@gmail.com>
Tue, 9 Nov 2010 20:00:53 +0000 (9 18:00 -0200)
committerRodrigo Kumpera <kumpera@gmail.com>
Tue, 9 Nov 2010 20:05:05 +0000 (9 18:05 -0200)
tree1ae38a2d944fddd7566d96ee94a55591cd849d36
parent150aa825d5cfd64decef98b0328f6630b08a53ee
Fix banshee breakage with trunk.

* verify.c (mono_generic_param_is_constraint_compatible):
Handle transitive constraints where one type can only satisfy
the constraints required by means of the other types it's
constainted to. For example:

Bar<K> where K : IFace
Foo<T, U> where T : U where U : IFace
Bar<T>

On the above example, T can only satisfy K constraint by means
of the constraints that U has.
mono/metadata/verify.c