On 02/07/2011 05:20 PM, Jan Kiszka wrote:
On 2011-02-07 16:13, Avi Kivity wrote: >> >> PeriodicTimer *periodic_timer_new(PeriodicTimerFunc *cb, void *opaque); >> > > void periodic_timer_init(PeriodicTimer *timer, PeriodicTimerFunc *cb); > > It is better to embed than to reference. And embedding means making the layout (at least the size) of PeriodicTimer public. I guess that's why QEMUTimer works via new.
Why do we care? We don't have an stable module interface. (the way to provide a size-stable interface is struct PeriodicTimer { struct PeriodicTimerImpl *impl }; though of course it negates some of the advantages of embedding). -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html