Rémi Bernon (@rbernon) commented about dlls/windows.devices.geolocation.geolocator/tests/geolocator.c:
+#include "winerror.h" +#include "winstring.h" + +#include "initguid.h" +#include "roapi.h" + +#define WIDL_using_Windows_Foundation +#define WIDL_using_Windows_Foundation_Collections +#include "windows.foundation.h" +#define WIDL_using_Windows_Devices_Geolocation +#include "windows.devices.geolocation.h" + +#include "wine/test.h" + +#define check_interface(obj, iid, broken_win8) check_interface_(__LINE__, obj, iid, broken_win8) +static void check_interface_(unsigned int line, void *obj, const IID *iid, BOOL broken_win8) It is confusing that the third bool parameter here is not whether the interface is supported or not, but a "broken" flag. You should keep the same API as the usual check_interface calls elsewhere.
For the broken case I'd suggest to either * not check that interface, possibly keeping it as commented with an explanation, or, * add a fourth optional parameter (only the function, and the macro would pass FALSE to it), and use the function call for that interface only. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/3189#note_37585