Our virObject code relies heavily on the fact that the first
member of the class struct is type of virObject (or some
derivation of if). Let's check for that.
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
# endif
# define VIR_CLASS_NEW(name, prnt) \
- (name##Class = virClassNew(prnt, #name, sizeof(name), name##Dispose))
+ verify_expr(offsetof(name, parent) == 0, \
+ (name##Class = virClassNew(prnt, #name, sizeof(name), name##Dispose)))
virClassPtr
virClassNew(virClassPtr parent,