summary refs log tree commit diff stats
path: root/qga/commands-win32.c
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2024-03-04 11:44:06 +0100
committerMichael Tokarev <mjt@tls.msk.ru>2024-03-09 18:56:37 +0300
commit00691b1f6a01e29bb7f18b06c17df2de81e832c8 (patch)
tree8e59b3443f8ace68b901ce3f0aefafe32fd3911a /qga/commands-win32.c
parentc68f81fec8cb15a5c88c3e0ae152c719e633318c (diff)
downloadfocaccia-qemu-00691b1f6a01e29bb7f18b06c17df2de81e832c8.tar.gz
focaccia-qemu-00691b1f6a01e29bb7f18b06c17df2de81e832c8.zip
hw/mem/cxl_type3: Fix problem with g_steal_pointer()
When setting GLIB_VERSION_MAX_ALLOWED to GLIB_VERSION_2_58 or higher,
glib adds type safety checks to the g_steal_pointer() macro. This
triggers errors in the ct3_build_cdat_entries_for_mr() function which
uses the g_steal_pointer() for type-casting from one pointer type to
the other (which also looks quite weird since the local pointers have
all been declared with g_autofree though they are never freed here).
Fix it by using a proper typecast instead. For making this possible, we
have to remove the QEMU_PACKED attribute from some structs since GCC
otherwise complains that the source and destination pointer might
have different alignment restrictions. Removing the QEMU_PACKED should
be fine here since the structs are already naturally aligned. Anyway,
add some QEMU_BUILD_BUG_ON() statements to make sure that we've got
the right sizes (without padding in the structs).

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Diffstat (limited to 'qga/commands-win32.c')
0 files changed, 0 insertions, 0 deletions