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

Bug#1055968: libefivar-dev: GNUisms in header yield warnings if using pkgconf file (-I vs -isystem probably)



Package: libefivar-dev
Version: 37-6
Severity: normal

Dear Maintainer,

With -pedantic,
-- >8 --
In file included from src/config.cpp:16:
/usr/include/efivar/efivar.h:223:65: warning: named variadic macros are a GNU extension [-Wvariadic-macros]
  223 | #define efi_error_real__(errval, file, function, line, fmt, args...) \
      |                                                                 ^
/usr/include/efivar/efivar.h:226:28: warning: named variadic macros are a GNU extension [-Wvariadic-macros]
  226 | #define efi_error(fmt, args...) \
      |                            ^
/usr/include/efivar/efivar.h:228:40: warning: named variadic macros are a GNU extension [-Wvariadic-macros]
  228 | #define efi_error_val(errval, msg, args...) \
      |                                        ^
/usr/include/efivar/efivar.h:227:61: warning: token pasting of ',' and __VA_ARGS__ is a GNU extension [-Wgnu-zero-variadic-macro-arguments]
  227 |         efi_error_real__(errno, __FILE__, __func__, __LINE__, (fmt), ## args)
      |                                                                    ^
/usr/include/efivar/efivar.h:224:51: warning: token pasting of ',' and __VA_ARGS__ is a GNU extension [-Wgnu-zero-variadic-macro-arguments]
  224 |         efi_error_set(file, function, line, errval, (fmt), ## args)
      |                                                          ^
/usr/include/efivar/efivar.h:227:61: warning: token pasting of ',' and __VA_ARGS__ is a GNU extension [-Wgnu-zero-variadic-macro-arguments]
  227 |         efi_error_real__(errno, __FILE__, __func__, __LINE__, (fmt), ## args)
      |                                                                    ^
/usr/include/efivar/efivar.h:224:51: warning: token pasting of ',' and __VA_ARGS__ is a GNU extension [-Wgnu-zero-variadic-macro-arguments]
  224 |         efi_error_set(file, function, line, errval, (fmt), ## args)
      |                                                          ^
-- >8 --
&c. &c.

The second warning is clang-only for some reason.

These warnings only appear if using
  $ pkgconf --cflags efivar
  -I/usr/include/efivar
and including with #include <efivar.h>.

They are not present when doing #include <efivar/efivar.h>.

Replacing -I with -isystem in efivar.pc fixes the issue.

-- System Information:
Debian Release: 12.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable-debug'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-9-amd64 (SMP w/24 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_FIRMWARE_WORKAROUND, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libefivar-dev depends on:
ii  libefivar1  37-6

libefivar-dev recommends no packages.

libefivar-dev suggests no packages.

-- no debconf information

Attachment: signature.asc
Description: PGP signature


Reply to: