include: Use Mingw64's __uuidof when present.

otherwise Wine's and Mingw64's __uuidof() conflict (C++)

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Eric Pouech 2022-05-02 18:05:30 +02:00 committed by Alexandre Julliard
parent 61bc8abd1f
commit 4a1f1082e4
1 changed files with 5 additions and 2 deletions

View File

@ -44,7 +44,10 @@ typedef struct _GUID
/* Macros for __uuidof emulation */
#ifdef __cplusplus
# if defined(__MINGW32__)
# define __WINE_UUID_ATTR __attribute__((selectany))
# if !defined(__uuidof) /* Mingw64 can provide support for __uuidof and __CRT_UUID_DECL */
# define __WINE_UUID_ATTR __attribute__((selectany))
# undef __CRT_UUID_DECL
# endif
# elif defined(__GNUC__)
# define __WINE_UUID_ATTR __attribute__((visibility("hidden"),weak))
# endif
@ -76,7 +79,7 @@ extern "C++" {
#define __uuidof(type) __wine_uuidof_type<__typeof__(type)>::inst::uuid
#else /* __WINE_UUID_ATTR */
#elif !defined(__CRT_UUID_DECL)
#define __CRT_UUID_DECL(type,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8)