Dan Hipschman wrote:
if (!parse_only && do_header) write_interface($$); if (!parse_only && do_idfile) write_iid($$); pointer_default = $1.old_pointer_default;
if (!parse_only && !in_typelib && is_attr($$->attrs, ATTR_OBJECT))
have_object = TRUE; }
/* MIDL is able to import the definition of a base class from inside the
- definition of a derived class, I'll try to support it with this rule */
@@ -828,6 +830,8 @@ interfacedef: interfacehdr inherit if (!parse_only && do_header) write_interface($$); if (!parse_only && do_idfile) write_iid($$); pointer_default = $1.old_pointer_default;
if (!parse_only && !in_typelib && is_attr($$->attrs, ATTR_OBJECT))
| dispinterfacedef { $$ = $1; } ;have_object = TRUE; }
This seems like a bit of a hack because you can find out whether the parsed IDL contains any definitions for objects by traversing the interface tree.