master hovercats/oakiss / pkg / libnl / patch / 0004-Avoid-statement-expression-in-ATTR_DIFF-macro.patch
 1From e56f5df0379c7dc70f6ce61a31167185daa51cae Mon Sep 17 00:00:00 2001
 2From: Michael Forney <mforney@mforney.org>
 3Date: Sun, 11 Aug 2019 21:57:03 +0000
 4Subject: [PATCH] Avoid statement expression in ATTR_DIFF macro
 5
 6---
 7 include/netlink-private/object-api.h | 5 +----
 8 1 file changed, 1 insertion(+), 4 deletions(-)
 9
10diff --git a/include/netlink-private/object-api.h b/include/netlink-private/object-api.h
11index 517e672..269cd4b 100644
12--- a/include/netlink-private/object-api.h
13+++ b/include/netlink-private/object-api.h
14@@ -260,10 +260,7 @@ struct nl_object
15  * @endcode
16  */
17 #define ATTR_DIFF(LIST, ATTR, A, B, EXPR) \
18-({	uint64_t diff = 0; \
19-	if (((LIST) & (ATTR)) && ATTR_MISMATCH(A, B, ATTR, EXPR)) \
20-		diff = ATTR; \
21-	diff; })
22+	((uint64_t)(((LIST) & (ATTR)) && ATTR_MISMATCH(A, B, ATTR, EXPR) ? (ATTR) : 0))
23 
24 /**
25  * Object Operations
26-- 
272.23.0
28