iflag: Don't use c99 array initialization
authorCyrill Gorcunov <gorcunov@gmail.com>
Tue, 10 Dec 2013 07:09:49 +0000 (11:09 +0400)
committerCyrill Gorcunov <gorcunov@gmail.com>
Tue, 10 Dec 2013 07:10:19 +0000 (11:10 +0400)
It's sad but not all compilers support c99 features, so drop
off IFLAG_INIT helper.

Reported-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
iflag.h

diff --git a/iflag.h b/iflag.h
index 583e68a..a3d9736 100644 (file)
--- a/iflag.h
+++ b/iflag.h
@@ -13,8 +13,6 @@ int ilog2_32(uint32_t v);
 
 #define IF_GENBIT(bit)          (UINT32_C(1) << (bit))
 
-#define IFLAG_INIT              (iflag_t){ .field = { 0 }, }
-
 static inline unsigned int iflag_test(const iflag_t *f, unsigned int bit)
 {
     unsigned int index = bit / 32;
@@ -145,7 +143,9 @@ static inline int iflag_cmp_cpu_level(const iflag_t *a, const iflag_t *b)
 
 static inline iflag_t _iflag_pfmask(const iflag_t *a)
 {
-    iflag_t r = IFLAG_INIT;
+    iflag_t r;
+
+    iflag_clear_all(&r);
 
     if (iflag_test(a, IF_CYRIX))
         iflag_set(&r, IF_CYRIX);