From: Rémi Bernon <rbernon(a)codeweavers.com> --- include/combaseapi.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/combaseapi.h b/include/combaseapi.h index 41461f22e98..7343a72fbbb 100644 --- a/include/combaseapi.h +++ b/include/combaseapi.h @@ -53,6 +53,15 @@ enum AgileReferenceOptions HRESULT WINAPI CoDecodeProxy(DWORD client_pid, UINT64 proxy_addr, ServerInformation *server_info); HRESULT WINAPI RoGetAgileReference(enum AgileReferenceOptions options, REFIID riid, IUnknown *obj, IAgileReference **agile_reference); +#ifdef __cplusplus +extern "C++" template<typename T> void **IID_PPV_ARGS_Helper(T **obj) +{ + (void)static_cast<IUnknown *>(*obj); + return reinterpret_cast<void **>(obj); +} +#define IID_PPV_ARGS(obj) __uuidof(**(obj)), IID_PPV_ARGS_Helper(obj) +#endif /* __cplusplus */ + #ifdef __cplusplus } #endif -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/7503