catch when adding an interface to an ancestor of a child that already
authorTim Janik <timj@gtk.org>
Wed, 7 Mar 2001 19:36:02 +0000 (19:36 +0000)
committerTim Janik <timj@src.gnome.org>
Wed, 7 Mar 2001 19:36:02 +0000 (19:36 +0000)
commit6c56b65f519c0d5d900363aa41cc2311263354e2
tree9d4019dea8f0760f403e1395ebc2ad86641bf3ae
parent7208b0f183408b4801d5b92f476caac45fec113f
catch when adding an interface to an ancestor of a child that already

Wed Mar  7 19:02:51 2001  Tim Janik  <timj@gtk.org>

        * gtype.c (type_node_add_iface_entry_W): catch when adding an interface
        to an ancestor of a child that already conforms to this interface.
        currently we spew a warning here, should we be silent?
        (g_type_interface_add_prerequisite): new function to add a prerequisite
        type to an interface, that must succeed an instance is_a prerequisite
        type check before the interface can be added to an instance. the
        prerequisite types are also suuported in is_a checks of the interface.
        (g_type_instance_is_a):
        (g_type_check_instance_cast):
        (g_type_check_instance): cleanups and optimizations.
        (g_type_class_is_a):
        (g_type_check_class_cast): same, also prevented these from accepting
        interface types, as class structures don't nest interfaces.
gobject/ChangeLog
gobject/gtype.c
gobject/gtype.h