altos/arm: Align data so that gcc 5.4 doesn't do byte-accesses. Add -Wcast-align
[fw/altos] / src / kernel / ao_list.h
index e2df6885d72fd98ae2c8599b38e132ae6f0ae7f1..45a3df5b0a9172d3870e78d8c5ef5363f88cc400 100644 (file)
@@ -138,7 +138,7 @@ ao_list_is_empty(struct ao_list *head)
  * @return A pointer to the data struct containing the list head.
  */
 #define ao_container_of(ptr, type, member) \
-       ((type *)((char *)(ptr) - offsetof(type, member)))
+       ((type *)((void *) ((char *)(ptr) - offsetof(type, member))))
 
 /**
  * Alias of ao_container_of