Commit b63274f3 authored by Dmitry Timoshkov's avatar Dmitry Timoshkov Committed by Alexandre Julliard

widl: Generate header macros even for aggregate return methods.

A generated macro has a clear suggestion what to do (#define WIDL_C_INLINE_WRAPPERS) instead of completely omitting the macro and leaving one wondering what is going on. Signed-off-by: 's avatarDmitry Timoshkov <dmitry@baikal.ru> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 585dfa14
......@@ -960,7 +960,7 @@ static void write_method_macro(FILE *header, const type_t *iface, const type_t *
if (is_override_method(iface, child, func))
continue;
if (!is_callas(func->attrs) && !is_aggregate_return(func)) {
if (!is_callas(func->attrs)) {
const var_t *arg;
fprintf(header, "#define %s_%s(This", name, get_name(func));
......@@ -969,6 +969,12 @@ static void write_method_macro(FILE *header, const type_t *iface, const type_t *
fprintf(header, ",%s", arg->name);
fprintf(header, ") ");
if (is_aggregate_return(func))
{
fprintf(header, "%s_%s_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support\n", name, get_name(func));
continue;
}
fprintf(header, "(This)->lpVtbl->%s(This", get_vtbl_entry_name(iface, func));
if (type_get_function_args(func->type))
LIST_FOR_EACH_ENTRY( arg, type_get_function_args(func->type), const var_t, entry )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment