When a character array without a terminating NUL character has a static
initializer, GCC 15's -Wunterminated-string-initialization will only
warn if the array lacks the "nonstring" attribute[1]. Mark the arrays
with __nonstring to and correctly identify the char array as "not a C
string" and thereby eliminate the warning.

Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117178 [1]
Signed-off-by: Kees Cook <k...@kernel.org>
---
 v1: https://lore.kernel.org/lkml/20250310222318.work.395-k...@kernel.org/
 v2: correctly split and fix subject
Cc: Johannes Berg <johan...@sipsolutions.net>
Cc: Miri Korenblit <miriam.rachel.korenb...@intel.com>
Cc: Alexander Wetzel <alexan...@wetzel-home.de>
Cc: Emmanuel Grumbach <emmanuel.grumb...@intel.com>
Cc: Shaul Triebitz <shaul.trieb...@intel.com>
Cc: linux-wirel...@vger.kernel.org
---
 drivers/net/wireless/zydas/zd1211rw/zd_mac.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/zydas/zd1211rw/zd_mac.c 
b/drivers/net/wireless/zydas/zd1211rw/zd_mac.c
index f90c33d19b39..9653dbaac3c0 100644
--- a/drivers/net/wireless/zydas/zd1211rw/zd_mac.c
+++ b/drivers/net/wireless/zydas/zd1211rw/zd_mac.c
@@ -21,7 +21,7 @@
 
 struct zd_reg_alpha2_map {
        u32 reg;
-       char alpha2[2];
+       char alpha2[2] __nonstring;
 };
 
 static struct zd_reg_alpha2_map reg_alpha2_map[] = {
-- 
2.34.1


Reply via email to