2010-01-14 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Thu, 14 Jan 2010 02:47:57 +0000 (02:47 -0000)
committerZoltan Varga <vargaz@gmail.com>
Thu, 14 Jan 2010 02:47:57 +0000 (02:47 -0000)
* object.c (build_imt_slots): Avoid asserting when static methods are
encountered in an interface.

svn path=/trunk/mono/; revision=149528

mono/metadata/ChangeLog
mono/metadata/object.c

index 8290b11554ff00f38646bdbd7a0377f4a5800610..97be671935971fc22bca88ef1d0ad070388af5cf 100644 (file)
@@ -1,3 +1,8 @@
+2010-01-14  Zoltan Varga  <vargaz@gmail.com>
+
+       * object.c (build_imt_slots): Avoid asserting when static methods are
+       encountered in an interface.
+
 2010-01-13  Mark Probst  <mark.probst@gmail.com>
 
        * sgen-gc.c (to_space_expand): Fix assertion.
index 4460a1e6bdc76a41d4d68e330b96c9ca4dd4d338..46e626be8450deea547854e209734464f5a8599b 100644 (file)
@@ -1288,7 +1288,8 @@ build_imt_slots (MonoClass *klass, MonoVTable *vt, MonoDomain *domain, gpointer*
                        }
 
                        /*FIXME (interface_offset + method_slot_in_interface) is wrong for interfaces with static methods.*/
-                       g_assert ((method->flags & METHOD_ATTRIBUTE_STATIC) == 0);
+                       if (method->flags & METHOD_ATTRIBUTE_STATIC)
+                               continue;
 
                        add_imt_builder_entry (imt_builder, method, &imt_collisions_bitmap, interface_offset + method_slot_in_interface, slot_num);
                }