"Troy Rollo" wine@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.
On Friday 02 September 2005 19:53, Dmitry Timoshkov wrote:
There are 2 problems with this patch: you forgot to provide a definition for EXTERN_C,
I "forgot" nothing. It's defined in both basetyps.h and winnt.h, which is sufficient for it to have built the whole of WINE after a "make clean" and my own application. If you have something that requires a separate definition of it in guiddefh then you can always post your own patch, but there is no reason to be gratuitously rude about it. *plonk*.
and it needlessly duplicates code for the __cplusplus case.
It does not. GNU C (correctly) flags an initialised variable declared extern as an error.