Some newer versions of GCC 15 complain:

 lib/uuid.c:308:40: error:
   initializer-string for array of 'char' truncates NUL terminator but
   destination lacks 'nonstring' attribute (37 chars into 36 available)
   [-Werror=unterminated-string-initialization]

 static const char tmpl[UUID_LEN] = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

We could add 1 to the size or use the attribute, but it seems simpler
to just convert the template into a const string pointer.  There
shouldn't be any practical difference as the string will be static
either way.

It's not really a bug, the code is fine as it is, but adding a 'Fixes'
tag just as a reference for backports.

Fixes: c80eac1f85df ("ovn-controller: Tie OpenFlow and logical flows using 
OpenFlow cookie.")
Signed-off-by: Ilya Maximets <i.maxim...@ovn.org>
---
 lib/uuid.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/uuid.c b/lib/uuid.c
index 8a16606da..e4caa0ec6 100644
--- a/lib/uuid.c
+++ b/lib/uuid.c
@@ -305,7 +305,7 @@ error:
 int
 uuid_is_partial_string(const char *s)
 {
-    static const char tmpl[UUID_LEN] = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
+    const char *tmpl = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
     size_t i;
     for (i = 0; i < UUID_LEN; i++) {
         if (s[i] == '\0') {
-- 
2.49.0

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to