On 2020-02-06 13:45, Pawel Biernacki wrote:
+#ifdef notyet
+#define        SYSCTL_ENFORCE_FLAGS(x)                                         
\
+    _Static_assert(((CTLFLAG_MPSAFE ^ CTLFLAG_NEEDGIANT) & (x)),   \
+        "Has to be either CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT")
+#else
+#define        SYSCTL_ENFORCE_FLAGS(x)
+#endif

Like cem@ pointed out, either you expand the XOR via OR or you can also do it like this:

(((x) & CTLFLAG_MPSAFE) != 0) ^ (((x) & CTLFLAG_NEEDGIANT) != 0)

which avoids having to define another macro.

--HPS
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to