[libvirt PATCH 4/4] Revert "meson: avoid bogus warnings from clang and g_autoptr"

Ján Tomko jtomko at redhat.com
Sat Sep 4 19:25:49 UTC 2021


Commit 345996c6208b281233074362a8d81295e2e711d4 disabled the
-Wunused-but-set-variable warning on CLang, beacuse it warned
on variables that were unread, but we relied on the side effects
of their destructors.

Reinstate the warning now that all the occurrences have been fixed.

Signed-off-by: Ján Tomko <jtomko at redhat.com>
---
 build-aux/syntax-check.mk |  2 +-
 meson.build               | 21 ---------------------
 2 files changed, 1 insertion(+), 22 deletions(-)

diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk
index 5c5a2a8771..2058af0b77 100644
--- a/build-aux/syntax-check.mk
+++ b/build-aux/syntax-check.mk
@@ -1589,7 +1589,7 @@ exclude_file_name_regexp--sc_prohibit_canonicalize_file_name = \
   ^(build-aux/syntax-check\.mk|tests/virfilemock\.c)$$
 
 exclude_file_name_regexp--sc_prohibit_raw_allocation = \
-  ^(meson\.build|docs/advanced-tests\.rst|src/util/viralloc\.[ch]|examples/.*|tests/(securityselinuxhelper|(vircgroup|nss)mock|commandhelper)\.c|tools/wireshark/src/packet-libvirt\.c|tools/nss/libvirt_nss(_leases|_macs)?\.c)$$
+  ^(docs/advanced-tests\.rst|src/util/viralloc\.[ch]|examples/.*|tests/(securityselinuxhelper|(vircgroup|nss)mock|commandhelper)\.c|tools/wireshark/src/packet-libvirt\.c|tools/nss/libvirt_nss(_leases|_macs)?\.c)$$
 
 exclude_file_name_regexp--sc_prohibit_readlink = \
   ^src/(util/virutil|lxc/lxc_container)\.c$$
diff --git a/meson.build b/meson.build
index a8c99ac4b1..9d493ccd9e 100644
--- a/meson.build
+++ b/meson.build
@@ -470,27 +470,6 @@ if get_option('warning_level') == '2'
     supported_cc_flags += [ '-Wno-unused-function' ]
   endif
 
-  if supported_cc_flags.contains('-Wunused-but-set-variable')
-    # Clang complains about unused variables in many scenarios related
-    # to attribute((cleanup)) aka g_auto*
-    w_unused_but_set_var_args = [ '-Wunused-but-set-variable', '-Werror' ]
-    w_unused_but_set_var_code = '''
-      static inline void free_pointer (void *p) {
-        void **pp = (void**)p;
-        free (*pp);
-      }
-
-      int main(void) {
-        __attribute__((cleanup(free_pointer))) char *buffer = 0x0;
-        buffer = 0x1;
-      }
-    '''
-    # We previously turned on unused-but-set-variable, so we must turn
-    # it off again explicitly now.
-    if not cc.compiles(w_unused_but_set_var_code, args: w_unused_but_set_var_args)
-      supported_cc_flags += [ '-Wno-unused-but-set-variable' ]
-    endif
-  endif
 endif
 add_project_arguments(supported_cc_flags, language: 'c')
 
-- 
2.31.1




More information about the libvir-list mailing list