diff --git a/tools/widl/parser.y b/tools/widl/parser.y index e9071f8290e..05ca81737d5 100644 --- a/tools/widl/parser.y +++ b/tools/widl/parser.y @@ -1826,10 +1826,10 @@ static ifref_list_t *append_ifref(ifref_list_t *list, ifref_t *iface) return list; } -static ifref_t *make_ifref(type_t *iface) +static ifref_t *make_ifref(type_t *type) { ifref_t *l = xmalloc(sizeof(ifref_t)); - l->iface = iface; + l->type = type; l->attrs = NULL; return l; } diff --git a/tools/widl/typetree.c b/tools/widl/typetree.c index 203fffcdee6..2f49a92511a 100644 --- a/tools/widl/typetree.c +++ b/tools/widl/typetree.c @@ -565,19 +565,19 @@ type_t *type_runtimeclass_define(type_t *runtimeclass, attr_list_t *attrs, ifref /* FIXME: this should probably not be allowed, here or in coclass, */ /* but for now there's too many places in Wine IDL where it is to */ /* even print a warning. */ - if (!(ifref->iface->defined)) continue; - if (!(requires = type_iface_get_requires(ifref->iface))) continue; + if (!(ifref->type->defined)) continue; + if (!(requires = type_iface_get_requires(ifref->type))) continue; LIST_FOR_EACH_ENTRY(required, requires, ifref_t, entry) { int found = 0; LIST_FOR_EACH_ENTRY(tmp, ifaces, ifref_t, entry) - if ((found = type_is_equal(tmp->iface, required->iface))) break; + if ((found = type_is_equal(tmp->type, required->type))) break; if (!found) error_loc("interface '%s' also requires interface '%s', " "but runtimeclass '%s' does not implement it.\n", - ifref->iface->name, required->iface->name, runtimeclass->name); + ifref->type->name, required->type->name, runtimeclass->name); } } diff --git a/tools/widl/typetree.h b/tools/widl/typetree.h index 96b681e0379..186f42307f4 100644 --- a/tools/widl/typetree.h +++ b/tools/widl/typetree.h @@ -363,7 +363,7 @@ static inline type_t *type_runtimeclass_get_default_iface(const type_t *type) if (!ifaces) return NULL; LIST_FOR_EACH_ENTRY(entry, ifaces, ifref_t, entry) if (is_attr(entry->attrs, ATTR_DEFAULT)) - return entry->iface; + return entry->type; return NULL; } diff --git a/tools/widl/widltypes.h b/tools/widl/widltypes.h index 7596577493d..f31d40cad91 100644 --- a/tools/widl/widltypes.h +++ b/tools/widl/widltypes.h @@ -538,7 +538,7 @@ struct _declarator_t { }; struct _ifref_t { - type_t *iface; + type_t *type; attr_list_t *attrs; /* parser-internal */ diff --git a/tools/widl/write_msft.c b/tools/widl/write_msft.c index 5728f041f6f..63635cec011 100644 --- a/tools/widl/write_msft.c +++ b/tools/widl/write_msft.c @@ -2352,10 +2352,10 @@ static void add_coclass_typeinfo(msft_typelib_t *typelib, type_t *cls) i = 0; if (ifaces) LIST_FOR_EACH_ENTRY( iref, ifaces, ifref_t, entry ) { - if(iref->iface->typelib_idx == -1) - add_interface_typeinfo(typelib, iref->iface); + if(iref->type->typelib_idx == -1) + add_interface_typeinfo(typelib, iref->type); ref = (MSFT_RefRecord*) (typelib->typelib_segment_data[MSFT_SEG_REFERENCES] + offset + i * sizeof(*ref)); - ref->reftype = typelib->typelib_typeinfo_offsets[iref->iface->typelib_idx]; + ref->reftype = typelib->typelib_typeinfo_offsets[iref->type->typelib_idx]; ref->flags = 0; ref->oCustData = -1; ref->onext = -1;