Hi Frediano, On Thu, Dec 11, 2025 at 9:25 PM Frediano Ziglio <[email protected]> wrote:
> On Thu, 11 Dec 2025 at 18:49, Uri Lublin <[email protected]> wrote: > > > > > > > > On Thu, Dec 11, 2025 at 2:38 PM Nicholas Vinson <[email protected]> > wrote: > >> > >> On 12/11/25 06:55, Frediano Ziglio wrote: > >> > On Sun, 7 Dec 2025 at 12:20, Nicholas Vinson <[email protected]> > wrote: > >> >> > >> >> When building with g++-16, the build fails with the following error: > >> >> > >> >> server/tests/test-display-base.cpp:809:5: error: either all > initializer > >> >> clauses should be designated or none of them should be > >> >> > >> >> This is because g++-16 defaults to c++20 and when using designated > >> >> initializers with c++20, you don't wrap anonymous union fields with > braces. > >> >> > >> >> Nicholas Vinson (2): > >> >> m4/spice-compile-warnings.m4: disable -Wmissing-braces > >> >> test-display-base.cpp: adjust designated init. > >> >> > >> >> m4/spice-compile-warnings.m4 | 1 + > >> >> server/tests/test-display-base.cpp | 2 +- > >> >> 2 files changed, 2 insertions(+), 1 deletion(-) > >> >> > >> > > >> > The CI is not that happy. I added some commit to make it pass: > >> > - missing AUTHORS for "make syntax-check" > >> > > https://gitlab.freedesktop.org/fziglio/spice/-/commit/fb018b3fbb26f38b2ffb0ee569d4aafc287fc738 > >> > - too old Fedora (not related to these changes) > >> > > https://gitlab.freedesktop.org/fziglio/spice/-/commit/a4525e204ef8b7e3beb3709823029e27de633d7a > >> > - compatibility with pretty old GCC > >> > > https://gitlab.freedesktop.org/fziglio/spice/-/commit/6a2c24fd5c088cb3b016a40965882e98f010b583 > > > > > > Frediano, where did you take the 10 from ? > > Shouldn't it check if the gcc version is 16 (or even 20) ? > > > > Hi, > indeed not very scientific. > Given the initial reason of the change, why not > > #if __cplusplus >= 202002L > .attached_worker = attached_worker, > #else > { .attached_worker = attached_worker }, > #endif > Looks good to me. https://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html Thanks, Uri. > ? > > >> > >> > >> > >> I'm concerned about the old GCC compatibility commit. I think it would > >> be more robust if designated initializer feature checks were added to > >> configure.ac and meson.build instead. > >> > >> That way you don't have to worry about how old or new the compiler is or > >> if it implements the necessary GCC extensions, or implements them > correctly. > > > > I think the above proposal also addresses this comment. > > > > > Do you mean compiling a simple program with designated initializers in > meson/configure ? > > > > Regards, > > Uri. > > > > > >> > >> > >> Regards, > >> Nicholas Vinson > >> > > Frediano > > >> > > >> > Do they sound good? > >> > I suppose the compatibility one could be merged. > >> > > >
