Module: wine Branch: master Commit: 2ffd106b9b7feaeedde56e8859fe925b7f43f63a URL: https://source.winehq.org/git/wine.git/?a=commit;h=2ffd106b9b7feaeedde56e885...
Author: Jacek Caban jacek@codeweavers.com Date: Fri Nov 9 13:55:30 2018 +0100
widl: Make MIDL_DEFINE_GUID more compatible with midl.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
tools/widl/widl.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tools/widl/widl.c b/tools/widl/widl.c index 96fb240..3baebd0 100644 --- a/tools/widl/widl.c +++ b/tools/widl/widl.c @@ -523,10 +523,15 @@ void write_id_data(const statement_list_t *stmts) fprintf(idfile, "#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \\n"); fprintf(idfile, " DEFINE_GUID(name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8)\n\n");
+ fprintf(idfile, "#elif defined(__cplusplus)\n\n"); + + fprintf(idfile, "#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \\n"); + fprintf(idfile, " EXTERN_C const type DECLSPEC_SELECTANY name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}\n\n"); + fprintf(idfile, "#else\n\n");
fprintf(idfile, "#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \\n"); - fprintf(idfile, " const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}\n\n"); + fprintf(idfile, " const type DECLSPEC_SELECTANY name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}\n\n");
fprintf(idfile, "#endif\n\n"); start_cplusplus_guard(idfile);