On 25 August 2015 at 12:50, Stefan Dösinger stefandoesinger@gmail.com wrote:
I noticed that Microsoft's headers don't define these C interface macros at all. Technically we should remove them from our headers (and write obj->lpVtbl->Method(obj, param1, param2) in the code). However, given that it's quite unlikely that anyone wants to compile a d3drm application against our headers I don't think this needs to be a priorit y.
This also means our tests (and implementation) won't compile against Microsoft's headers, but this is also something that is nice to have but not generally supported (e.g. Microsoft's d3d9ex C interfaces are broken, so our d3d9ex tests only compile with our header).
Some people do compile against the SDK headers, but then recent versions of the SDK don't have d3drm headers at all. In principle we have __WINESRC__ for cases where we don't quite match the SDK headers for some reason.