"Troy Rollo" <wine(a)troy.rollo.name> wrote:
--- include/guiddef.h (revision 26053) +++ include/guiddef.h (local) @@ -35,12 +35,18 @@ #undef DEFINE_GUID
#ifdef INITGUID +#ifdef __cplusplus #define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ + EXTERN_C const GUID name = \ + { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } } +#else +#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ const GUID name = \ { l, w1, w2, { b1, b2, b3, b4, b5, b6, b7, b8 } } +#endif #else #define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ - extern const GUID name + EXTERN_C const GUID name #endif
#define DEFINE_OLEGUID(name, l, w1, w2) \
There are 2 problems with this patch: you forgot to provide a definition for EXTERN_C, and it needlessly duplicates code for the __cplusplus case. -- Dmitry.