On 06/05/2012 04:00 AM, Michael Roth wrote: > Add our annotations according to QIDL documentation. > > +qc_declaration typedef struct RTCState { > + ISADevice _immutable dev; > + MemoryRegion _immutable io; > uint8_t cmos_data[128]; > uint8_t cmos_index; > struct tm current_tm; > int32_t base_year; > - qemu_irq irq; > - qemu_irq sqw_irq; > - int it_shift; > + qemu_irq _immutable irq; > + qemu_irq _immutable sqw_irq;
How is qemu_irq immutable? We're raising and lowering it many times a second. It's _derived, perhaps, but not immutable. > + int32_t _immutable it_shift; > /* periodic timer */ > QEMUTimer *periodic_timer; > int64_t next_periodic_time; > /* second update */ > int64_t next_second_time; > - uint16_t irq_reinject_on_ack_count; > + uint16_t _derived irq_reinject_on_ack_count; It's not derived from anything. It's _host, maybe. > uint32_t irq_coalesced; > uint32_t period; > - QEMUTimer *coalesced_timer; > + QEMUTimer _broken *coalesced_timer; > QEMUTimer *second_timer; > QEMUTimer *second_timer2; > - Notifier clock_reset_notifier; > - LostTickPolicy lost_tick_policy; > - Notifier suspend_notifier; > + Notifier _broken clock_reset_notifier; Why broken? > + LostTickPolicy _immutable lost_tick_policy; _host; nothign prevents us from changing it dynamically in theory. > + Notifier _broken suspend_notifier; Why broken? > } RTCState; > > #endif /* !MC146818RTC_STATE_H */ -- error compiling committee.c: too many arguments to function