Update return value of "set" operations
[urcu.git] / urcu / static / urcu-pointer.h
index acd7cee1f0677554794f238e945715e1e4bd3b10..906caa009c708c13cc2f9a6b0c1e989416e3aed7 100644 (file)
@@ -102,13 +102,13 @@ extern "C" {
 
 
 #define _rcu_set_pointer(p, v)                         \
-       ({                                              \
+       do {                                            \
                typeof(*p) _________pv = (v);           \
                if (!__builtin_constant_p(v) ||         \
                    ((v) != NULL))                      \
                        cmm_wmb();                              \
                uatomic_set(p, _________pv);            \
-       })
+       } while (0)
 
 /**
  * _rcu_assign_pointer - assign (publicize) a pointer to a new data structure
This page took 0.023338 seconds and 4 git commands to generate.