rhboot/efivar

Build failure: util.h:52:23: error: comparison between signed and unsigned integer expressions

Closed this issue · 0 comments

efivar 27 with GCC 4.9.3

$ make
make[1]: Entering directory '/var/tmp/efivar-27/src'
gcc -O2 -g3 -I/var/tmp/efivar-27/src/include/efivar/  -specs=/var/tmp/efivar-27/gcc.specs  -L.      -DEFIVAR_BUILD_ENVIRONMENT -o makeguids makeguids.c guid.c -ldl 
./makeguids guids.txt guids.bin names.bin \
    guid-symbols.c include/efivar/efivar-guids.h
33 lines
make -f /var/tmp/efivar-27/src/Make.deps deps SOURCES="crc32.c creator.c disk.c gpt.c linux.c loadopt.c dp.c dp-acpi.c dp-hw.c dp-media.c dp-message.c efivarfs.c error.c export.c guid.c guids.S guid-symbols.c lib.c vars.c makeguids.c guid.c include/efivar/efivar.h include/efivar/efiboot.h include/efivar/efiboot-loadopt.h include/efivar/efivar-dp.h include/efivar/efiboot-creator.h include/efivar/efivar-guids.h guid-symbols.c efivar.c"
...
make[2]: Leaving directory '/var/tmp/efivar-27/src'
gcc -O2 -g3 -I/var/tmp/efivar-27/src/include/efivar/  -specs=/var/tmp/efivar-27/gcc.specs  -fPIC  -c -o dp.o dp.c
In file included from dp.c:27:0:
dp.c: In function ‘efidp_duplicate_extra’:
util.h:52:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:106:17: note: in expansion of macro ‘int_add’
          int *: int_add(a,b,c),   \
                 ^
dp.c:78:6: note: in expansion of macro ‘add’
  if (add(sz, extra, &plus)) {
      ^
util.h:62:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:107:18: note: in expansion of macro ‘long_add’
          long *: long_add(a,b,c),   \
                  ^
dp.c:78:6: note: in expansion of macro ‘add’
  if (add(sz, extra, &plus)) {
      ^
dp.c: In function ‘efidp_append_path’:
util.h:85:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:108:27: note: in expansion of macro ‘ulong_add’
          unsigned long *: ulong_add(a,b,c))
                           ^
dp.c:164:6: note: in expansion of macro ‘add’
  if (add(lsz, rsz, &newsz)) {
      ^
dp.c: In function ‘efidp_append_node’:
util.h:52:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:106:17: note: in expansion of macro ‘int_add’
          int *: int_add(a,b,c),   \
                 ^
dp.c:221:7: note: in expansion of macro ‘add’
   if (add(rsz, sizeof(end_entire), &newsz)) {
       ^
util.h:62:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:107:18: note: in expansion of macro ‘long_add’
          long *: long_add(a,b,c),   \
                  ^
dp.c:221:7: note: in expansion of macro ‘add’
   if (add(rsz, sizeof(end_entire), &newsz)) {
       ^
util.h:85:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:108:27: note: in expansion of macro ‘ulong_add’
          unsigned long *: ulong_add(a,b,c))
                           ^
dp.c:257:6: note: in expansion of macro ‘add’
  if (add(lsz, rsz, &newsz) || add(newsz, sizeof(end_entire), &newsz)) {
      ^
util.h:52:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:106:17: note: in expansion of macro ‘int_add’
          int *: int_add(a,b,c),   \
                 ^
dp.c:257:31: note: in expansion of macro ‘add’
  if (add(lsz, rsz, &newsz) || add(newsz, sizeof(end_entire), &newsz)) {
                               ^
util.h:62:23: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
   _ret = _limit - (a) > (b);   \
                       ^
util.h:107:18: note: in expansion of macro ‘long_add’
          long *: long_add(a,b,c),   \
                  ^
dp.c:257:31: note: in expansion of macro ‘add’
  if (add(lsz, rsz, &newsz) || add(newsz, sizeof(end_entire), &newsz)) {
                               ^
cc1: all warnings being treated as errors