2/3
adding the `do {...} while (0)` option could be solution, thou the changes are kinda minimal on wine side without any drawback (if we don't count extra line at the end :wink: ). If you prefer to keep it without braces, I'm ok to drop the commit adjust it on our side.
The diff might be small, but it's not an uncommon construction, and it would be easily broken. And it doesn't seem like it should be that difficult to fix in the GTest integration code.
1/3
Sadly GTest requires the code have at least C++14 and it's very convenient way to integrate it into existing solutions we use (as [deqp-runner](https://gitlab.freedesktop.org/mesa/deqp-runner)).
That's rather unfortunate.
If it would be inconvenient for wine to carry changes to be compatible with > C++14 in future, we would just patch it by ourselves.
I suppose it depends. Is this the only code incompatible with C++? I'd be mildly surprised if so; are there really no problems with e.g. casting?