On Thu, 20 Jun 2024 at 17:24, Roman Kiryanov <r...@google.com> wrote: > > Hi Daniel and Alex, > > On Thu, Jun 20, 2024 at 8:10 AM Alex Bennée <alex.ben...@linaro.org> wrote: > > > > Daniel P. Berrangé <berra...@redhat.com> writes: > > > NB, QEMU is explicitly *NOT* targetting the C standard, we are > > > targetting the C dialect supported by GCC and CLang only. IOW, > > > if they have well defined behaviour for arithmetic on void *, > > > then we are free to use it. > > > > It looks like GNU C does support it: > > GCC does support void* pointer arithmetic as an extension. But if you > decide to use other compilers, you might not have the same luck. We > (and maybe other developers) would like to use the QEMU headers with a > C++ compiler where this extension is not available.
I think this is the point where I would say "you're making the code worse for upstream and the only benefit is to your out-of-tree downstream code". If you want to build QEMU, use one of the compilers that QEMU supports. There are lots and lots of places where we assume the GCC-or-clang feature set over and above plain C. thanks -- PMM