Subject: build failure of next-20220715 due to "comparison will always evaluate as 'true'"

From: "Sudip Mukherjee (Codethink)" <[email-masked]>
Date: Sat, 16 Jul 2022 00:13:02 +0100

Hi All,

Not sure if it has been reported, gcc-12 builds of csky, s390 and x86_64
have failed to build next-20220715 with the error:

drivers/nvme/common/auth.c: In function 'nvme_auth_dhgroup_name':
drivers/nvme/common/auth.c:59:13: error: the comparison will always evaluate as 'true' for the address of 'name' will never be NULL [-Werror=address]
   59 |             !dhgroup_map[dhgroup_id].name ||
      |             ^
drivers/nvme/common/auth.c:39:20: note: 'name' declared here
   39 |         const char name[16];
      |                    ^~~~
drivers/nvme/common/auth.c: In function 'nvme_auth_dhgroup_kpp':
drivers/nvme/common/auth.c:69:13: error: the comparison will always evaluate as 'true' for the address of 'kpp' will never be NULL [-Werror=address]
   69 |             !dhgroup_map[dhgroup_id].kpp ||
      |             ^
drivers/nvme/common/auth.c:40:20: note: 'kpp' declared here
   40 |         const char kpp[16];
      |                    ^~~
drivers/nvme/common/auth.c: In function 'nvme_auth_dhgroup_id':
drivers/nvme/common/auth.c:81:21: error: the comparison will always evaluate as 'true' for the address of 'name' will never be NULL [-Werror=address]
   81 |                 if (!dhgroup_map[i].name ||
      |                     ^
drivers/nvme/common/auth.c:39:20: note: 'name' declared here
   39 |         const char name[16];
      |                    ^~~~
drivers/nvme/common/auth.c: In function 'nvme_auth_hmac_name':
drivers/nvme/common/auth.c:117:13: error: the comparison will always evaluate as 'true' for the address of 'hmac' will never be NULL [-Werror=address]
  117 |             !hash_map[hmac_id].hmac ||
      |             ^
drivers/nvme/common/auth.c:94:20: note: 'hmac' declared here
   94 |         const char hmac[15];
      |                    ^~~~
drivers/nvme/common/auth.c: In function 'nvme_auth_digest_name':
drivers/nvme/common/auth.c:127:13: error: the comparison will always evaluate as 'true' for the address of 'digest' will never be NULL [-Werror=address]
  127 |             !hash_map[hmac_id].digest ||
      |             ^
drivers/nvme/common/auth.c:95:20: note: 'digest' declared here
   95 |         const char digest[8];
      |                    ^~~~~~
drivers/nvme/common/auth.c: In function 'nvme_auth_hmac_id':
drivers/nvme/common/auth.c:139:21: error: the comparison will always evaluate as 'true' for the address of 'hmac' will never be NULL [-Werror=address]
  139 |                 if (!hash_map[i].hmac || !strlen(hash_map[i].hmac))
      |                     ^
drivers/nvme/common/auth.c:94:20: note: 'hmac' declared here
   94 |         const char hmac[15];
      |                    ^~~~
drivers/nvme/common/auth.c: In function 'nvme_auth_hmac_hash_len':
drivers/nvme/common/auth.c:152:13: error: the comparison will always evaluate as 'true' for the address of 'hmac' will never be NULL [-Werror=address]
  152 |             !hash_map[hmac_id].hmac ||
      |             ^
drivers/nvme/common/auth.c:94:20: note: 'hmac' declared here
   94 |         const char hmac[15];
      |                    ^~~~

--
Regards
Sudip