diff --git a/urcu/system.h b/urcu/system.h
index 2a45f22..fe0ee30 100644
--- a/urcu/system.h
+++ b/urcu/system.h
@@ -50,8 +50,9 @@
 #define CMM_STORE_SHARED(x, v)		\
 	({				\
 		__typeof__(x) _v = _CMM_STORE_SHARED(x, v);	\
+		__typeof__(x) _w;	\
 		cmm_smp_wmc();		\
-		_v;			\
+		({_w = _v;});		\
 	})
 
 #endif /* _URCU_SYSTEM_H */
