Strange, on Linux I didn't get a build failure but the MSVC compiler struggles. So for now I have restored the old definition of the doCommand macro but left copyVisual unchanged.
Actually the old definitions of these macros are not strict ISO C++11 and when building with the -Wpedantic option (which is actually recommended) I get thousands of warnings. The example given in https://en.wikipedia.org/wiki/Variadic_macro#Example is supposed to be ISO compliant but in combination with FCMD_VOBJ_CMD2 the MSVC compiler has problems.
wmayer wrote: ↑Thu Nov 14, 2019 6:51 pm
Strange, on Linux I didn't get a build failure but the MSVC compiler struggles. So for now I have restored the old definition of the doCommand macro but left copyVisual unchanged.
Thanks. Now it compiles again.
I think the design of C leads to situations like this. Ideally a programming language should be designed that way that there is only one way to compile code. But well, at least C++ is ISO-normed
But in this case a compiler extension is used and thus the code is not strict ISO C++ and that's why I used the -Wpedantic option to discover all this non-compliant code locations.