[PATCH 3/5] widl: Define the C type name as an alias for the C++ qualified name.

Rémi Bernon rbernon at codeweavers.com
Fri Feb 19 05:03:59 CST 2021


From: Steve Lhomme <robux4 at ycbcr.xyz>

Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
---
 tools/widl/header.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/widl/header.c b/tools/widl/header.c
index 5ab8a3cc26f..e1dcab9b75b 100644
--- a/tools/widl/header.c
+++ b/tools/widl/header.c
@@ -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);
-- 
2.30.0




More information about the wine-devel mailing list