The current way virObject instances are allocated using
VIR_ALLOC_N causes alignment warnings
util/virobject.c: In function 'virObjectNew':
util/virobject.c:195:11: error: cast increases required alignment of target type [-Werror=cast-align]
Changing to use VIR_ALLOC_VAR will avoid the need todo
the casts entirely.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
void *virObjectNew(virClassPtr klass)
{
virObjectPtr obj = NULL;
- char *somebytes;
- if (VIR_ALLOC_N(somebytes, klass->objectSize) < 0) {
+ if (VIR_ALLOC_VAR(obj,
+ char,
+ klass->objectSize - sizeof(virObject)) < 0) {
virReportOOMError();
return NULL;
}
- obj = (virObjectPtr)somebytes;
obj->magic = klass->magic;
obj->klass = klass;