[Spice-devel] [spice-protocol PATCH v1 11/12] macros: fix alignment issue reported by clang
Victor Toso
victortoso at redhat.com
Wed Aug 5 05:23:25 PDT 2015
char_device.c:131:52: warning: cast from 'uint8_t *'
(aka 'unsigned char *') to 'SpiceCharDeviceMsgToClientItem *'
(aka 'struct SpiceCharDeviceMsgToClientItem *')
increases required alignment from 1 to 8 [-Wcast-align]
SpiceCharDeviceMsgToClientItem *msg_item = SPICE_CONTAINEROF(item,
^~~~~~~~~~~~~~~~~~~~~~~
../spice-common/spice-protocol/spice/macros.h:142:6: note: expanded
from macro 'SPICE_CONTAINEROF'
((struct_type *)((uint8_t *)(ptr) - SPICE_OFFSETOF(struct_type, member)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
---
spice/macros.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/spice/macros.h b/spice/macros.h
index dad029c..bc9b648 100644
--- a/spice/macros.h
+++ b/spice/macros.h
@@ -140,7 +140,7 @@
#endif
#define SPICE_CONTAINEROF(ptr, struct_type, member) \
- ((struct_type *)((uint8_t *)(ptr) - SPICE_OFFSETOF(struct_type, member)))
+ ((struct_type *)(void *)((uint8_t *)(ptr) - SPICE_OFFSETOF(struct_type, member)))
#define SPICE_MEMBER_P(struct_p, struct_offset) \
((gpointer) ((guint8*) (struct_p) + (glong) (struct_offset)))
--
2.4.3
More information about the Spice-devel
mailing list