Enable GCC pedantic warnings with strict flags,
authorCampbell Barton <ideasman42@gmail.com>
Sun, 30 Mar 2014 04:02:24 +0000 (15:02 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Sun, 30 Mar 2014 04:04:20 +0000 (15:04 +1100)
also modify MIN/MAX macros to prevent shadowing.

intern/guardedalloc/intern/mallocn_guarded_impl.c
source/blender/blenlib/BLI_strict_flags.h
source/blender/blenlib/BLI_utildefines.h
source/blender/blenlib/intern/rand.c

index 7a8545de524551fe49ee6a0432aebdf9fd370180..724e7f95845f3930f51a7e682920e88956393fa8 100644 (file)
@@ -735,7 +735,7 @@ static void MEM_guarded_printmemlist_internal(int pydict)
                                    membl->_count);
 #else
                        print_error("%s len: " SIZET_FORMAT " %p\n",
-                                   membl->name, SIZET_ARG(membl->len), membl + 1);
+                                   membl->name, SIZET_ARG(membl->len), (void *)(membl + 1));
 #endif
 #ifdef DEBUG_BACKTRACE
                        print_memhead_backtrace(membl);
index cb92f7837ec224cc89ddc87ea085b73fe9987d62..ce39078ea73fd49b14f611cbc8a74ca4735692c5 100644 (file)
@@ -28,6 +28,7 @@
  */
 
 #ifdef __GNUC__
+#  pragma GCC diagnostic error "-Wpedantic"
 #  pragma GCC diagnostic error "-Wsign-conversion"
 #  if (__GNUC__ * 100 + __GNUC_MINOR__) >= 406  /* gcc4.6+ only */
 #    pragma GCC diagnostic error "-Wsign-compare"
index bb1b3a368f0fc46e3c1bff5a77f6f5cecc3648b2..46553ccc0fc85940ce5f062bc78493bad5055853 100644 (file)
 /* min/max */
 #if defined(__GNUC__) || defined(__clang__)
 
-#define MIN2(x, y)  ({  \
-       typeof(x) x_ = (x); \
-       typeof(y) y_ = (y); \
-       ((x_) < (y_) ? (x_) : (y_)); })
+#define MIN2(a, b) __extension__ ({  \
+       typeof(a) a_ = (a); typeof(b) b_ = (b); \
+       ((a_) < (b_) ? (a_) : (b_)); })
 
-#define MAX2(x, y)  ({  \
-       typeof(x) x_ = (x); \
-       typeof(y) y_ = (y); \
-       ((x_) > (y_) ? (x_) : (y_)); })
+#define MAX2(a, b) __extension__ ({  \
+       typeof(a) a_ = (a); typeof(b) b_ = (b); \
+       ((a_) > (b_) ? (a_) : (b_)); })
+
+#define MIN3(a, b, c) __extension__ ({  \
+       typeof(a) a_ = (a); typeof(b) b_ = (b); typeof(c) c_ = (c); \
+       ((a_ < b_) ? ((a_ < c_) ? a_ : c_) : ((b_ < c_) ? b_ : c_)); })
+
+#define MAX3(a, b, c) __extension__ ({  \
+       typeof(a) a_ = (a); typeof(b) b_ = (b);  typeof(c) c_ = (c); \
+       ((a_ > b_) ? ((a_ > c_) ? a_ : c_) : ((b_ > c_) ? b_ : c_)); })
+
+#define MIN4(a, b, c, d) __extension__ ({  \
+       typeof(a) a_ = (a); typeof(b) b_ = (b); typeof(c) c_ = (c); typeof(d) d_ = (d); \
+       ((a_ < b_) ? ((a_ < c_) ? ((a_ < d_) ? a_ : d_) : ((c_ < d_) ? c_ : d_)) : \
+                    ((b_ < c_) ? ((b_ < d_) ? b_ : d_) : ((c_ < d_) ? c_ : d_))); })
+
+#define MAX4(a, b, c, d) __extension__ ({  \
+       typeof(a) a_ = (a); typeof(b) b_ = (b); typeof(c) c_ = (c); typeof(d) d_ = (d); \
+       ((a_ > b_) ? ((a_ > c_) ? ((a_ > d_) ? a_ : d_) : ((c_ > d_) ? c_ : d_)) : \
+                    ((b_ > c_) ? ((b_ > d_) ? b_ : d_) : ((c_ > d_) ? c_ : d_))); })
 
 #else
-#define MIN2(x, y)          ((x) < (y) ? (x) : (y))
-#define MAX2(x, y)          ((x) > (y) ? (x) : (y))
-#endif
+#define MIN2(a, b)  ((a) < (b) ? (a) : (b))
+#define MAX2(a, b)  ((a) > (b) ? (a) : (b))
 
-#define MIN3(x, y, z)       (MIN2(MIN2((x), (y)), (z)))
-#define MIN4(x, y, z, a)    (MIN2(MIN2((x), (y)), MIN2((z), (a))))
+#define MIN3(a, b, c)       (MIN2(MIN2((a), (b)), (c)))
+#define MIN4(a, b, c, d)    (MIN2(MIN2((a), (b)), MIN2((c), (d))))
 
-#define MAX3(x, y, z)       (MAX2(MAX2((x), (y)), (z)))
-#define MAX4(x, y, z, a)    (MAX2(MAX2((x), (y)), MAX2((z), (a))))
+#define MAX3(a, b, c)       (MAX2(MAX2((a), (b)), (c)))
+#define MAX4(a, b, c, d)    (MAX2(MAX2((a), (b)), MAX2((c), (d))))
+#endif
 
 /* min/max that return a value of our choice */
 #define MAX3_PAIR(cmp_a, cmp_b, cmp_c, ret_a, ret_b, ret_c) \
index 25a1a528db4fc41b31817a3e431365c25930ebbc..0afa4f81dbac9410a75f056a1ded4b948d435ed5 100644 (file)
@@ -200,7 +200,7 @@ float BLI_frand(void)
 
 void BLI_frand_unit_v3(float v[3])
 {
-       return BLI_rng_get_float_unit_v3(&theBLI_rng, v);
+       BLI_rng_get_float_unit_v3(&theBLI_rng, v);
 }
 
 float BLI_hash_frand(unsigned int seed)