Skip to content
  • Bernhard Beschow's avatar
    ad9f958d
    hw/virtio/vhost-shadow-virtqueue: Silence GCC error "maybe-uninitialized" · ad9f958d
    Bernhard Beschow authored
    
    
    GCC issues a false positive warning, resulting in build failure with -Werror:
    
      In file included from /usr/include/glib-2.0/glib.h:114,
                       from src/include/glib-compat.h:32,
                       from src/include/qemu/osdep.h:144,
                       from ../src/hw/virtio/vhost-shadow-virtqueue.c:10:
      In function ‘g_autoptr_cleanup_generic_gfree’,
          inlined from ‘vhost_handle_guest_kick’ at ../src/hw/virtio/vhost-shadow-virtqueue.c:292:42:
      /usr/include/glib-2.0/glib/glib-autocleanups.h:28:3: error: ‘elem’ may be used uninitialized [-Werror=maybe-uninitialized]
         28 |   g_free (*pp);
            |   ^~~~~~~~~~~~
      ../src/hw/virtio/vhost-shadow-virtqueue.c: In function ‘vhost_handle_guest_kick’:
      ../src/hw/virtio/vhost-shadow-virtqueue.c:292:42: note: ‘elem’ was declared here
        292 |             g_autofree VirtQueueElement *elem;
            |                                          ^~~~
      cc1: all warnings being treated as errors
    
    There is actually no problem since "elem" is initialized in both branches.
    Silence the warning by initializig it with "NULL".
    
    $ gcc --version
    gcc (GCC) 12.2.0
    
    Fixes: 9c2ab2f1 ("vhost: stop transfer elem ownership in vhost_handle_guest_kick")
    Signed-off-by: default avatarBernhard Beschow <shentey@gmail.com>
    Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Reviewed-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
    Message-Id: <20220910151117.6665-1-shentey@gmail.com>
    Signed-off-by: default avatarLaurent Vivier <laurent@vivier.eu>
    ad9f958d
    hw/virtio/vhost-shadow-virtqueue: Silence GCC error "maybe-uninitialized"
    Bernhard Beschow authored
    
    
    GCC issues a false positive warning, resulting in build failure with -Werror:
    
      In file included from /usr/include/glib-2.0/glib.h:114,
                       from src/include/glib-compat.h:32,
                       from src/include/qemu/osdep.h:144,
                       from ../src/hw/virtio/vhost-shadow-virtqueue.c:10:
      In function ‘g_autoptr_cleanup_generic_gfree’,
          inlined from ‘vhost_handle_guest_kick’ at ../src/hw/virtio/vhost-shadow-virtqueue.c:292:42:
      /usr/include/glib-2.0/glib/glib-autocleanups.h:28:3: error: ‘elem’ may be used uninitialized [-Werror=maybe-uninitialized]
         28 |   g_free (*pp);
            |   ^~~~~~~~~~~~
      ../src/hw/virtio/vhost-shadow-virtqueue.c: In function ‘vhost_handle_guest_kick’:
      ../src/hw/virtio/vhost-shadow-virtqueue.c:292:42: note: ‘elem’ was declared here
        292 |             g_autofree VirtQueueElement *elem;
            |                                          ^~~~
      cc1: all warnings being treated as errors
    
    There is actually no problem since "elem" is initialized in both branches.
    Silence the warning by initializig it with "NULL".
    
    $ gcc --version
    gcc (GCC) 12.2.0
    
    Fixes: 9c2ab2f1 ("vhost: stop transfer elem ownership in vhost_handle_guest_kick")
    Signed-off-by: default avatarBernhard Beschow <shentey@gmail.com>
    Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
    Reviewed-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
    Message-Id: <20220910151117.6665-1-shentey@gmail.com>
    Signed-off-by: default avatarLaurent Vivier <laurent@vivier.eu>
Loading