On Fri, 1 Oct 2004, Dmitry Timoshkov wrote: [...]
Why would it break compilation with the SDK and Mingw headers?
I wrongly formulated the problem: it will Wine internal COM interfaces not follow the standard practice, be contradict and confuse the Wine code.
That's the thing, the standard seems to be that: * headers generated from idl files use COBJMACROS * manually written files tend to use !__cplusplus || CINTERFACE * but there are also some manually written headers that use COBJMACROS though there's only one such file in Wine currently control.h, a DirectX header. (mediaobj.h is another but only because we are missing the corresponding idl file)
Since the headers defining our internal interfaces are written by hand it would be more consistent (if anything) if they did not use COBJMACROS.