widl: Define the C type name as an alias for the C++ qualified name.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Steve Lhomme 2021-02-19 12:03:59 +01:00 committed by Alexandre Julliard
parent fc533ddf32
commit 18f04f569b
1 changed files with 2 additions and 0 deletions

View File

@ -1482,6 +1482,8 @@ static void write_forward(FILE *header, type_t *iface)
fprintf(header, "#define __%s_FWD_DEFINED__\n", iface->c_name);
fprintf(header, "typedef interface %s %s;\n", iface->c_name, iface->c_name);
fprintf(header, "#ifdef __cplusplus\n");
if (iface->namespace && !is_global_namespace(iface->namespace))
fprintf(header, "#define %s %s\n", iface->c_name, iface->qualified_name);
write_namespace_start(header, iface->namespace);
if (strchr(iface->name, '<')) write_line(header, 0, "template<> struct %s;", iface->name);
else write_line(header, 0, "interface %s;", iface->name);