Re: [PULL 00/10] Bitmaps patches

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/17/20 9:00 AM, Peter Maydell wrote:
On Tue, 17 Mar 2020 at 04:38, John Snow <jsnow@xxxxxxxxxx> wrote:


   block/qcow2-bitmap: use bdrv_dirty_bitmap_next_dirty (2020-03-12 16:36:46 -0400)

----------------------------------------------------------------
Pull request

---------------------------------------------------------------

Hi; this fails to compile with clang:

/home/petmay01/linaro/qemu-for-merges/nbd/server.c:1937:1: error:
unused function 'glib_listautoptr_cleanup_NBDExtentArray'
[-Werror,-Wunused-function]
G_DEFINE_AUTOPTR_CLEANUP_FUNC(NBDExtentArray, nbd_extent_array_free);
^
/usr/include/glib-2.0/glib/gmacros.h:462:22: note: expanded from macro
'G_DEFINE_AUTOPTR_CLEANUP_FUNC'
   static inline void _GLIB_AUTOPTR_LIST_FUNC_NAME(TypeName) (GList
**_l) { g_list_free_full (*_l, (GDestroyNotify) func); } \
                      ^
/usr/include/glib-2.0/glib/gmacros.h:443:48: note: expanded from macro
'_GLIB_AUTOPTR_LIST_FUNC_NAME'
#define _GLIB_AUTOPTR_LIST_FUNC_NAME(TypeName)
glib_listautoptr_cleanup_##TypeName
                                                ^
<scratch space>:49:1: note: expanded from here
glib_listautoptr_cleanup_NBDExtentArray
^

Should we add -Wno-unused-function to CFLAGS when dealing with a version of clang that complains about that version of glib's headers? Is it fixed in a newer version of glib, where we could just backport a newer definition of G_DEFINE_AUTOPTR_CLEANUP_FUNC() that adds whatever annotations are needed to shut the compiler up?

On IRC, danpb pointed me to libvirt's solution:
https://libvirt.org/git/?p=libvirt.git;a=commit;h=44e7f029

Maybe we just write our own macro wrapper around G_DEFINE_AUTOPTR_CLEANUP_FUNC which takes care of adding necessary annotations and use that instead (and our macro name might be shorter...)

--
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux