On Thu, 30 Sep 2010, Stefan Weil wrote: > The patch fixes these gcc warnings: > > ./hw/es1370.c: In function ?es1370_update_voices?: > ./hw/es1370.c:411: error: format ?%d? expects type ?int?, but argument 3 has > type ?size_t? > ./hw/es1370.c: In function ?es1370_writel?: > ./hw/es1370.c:579: error: format ?%d? expects type ?int?, but argument 3 has > type ?long int? > ./hw/es1370.c:589: error: format ?%d? expects type ?int?, but argument 3 has > type ?long int? > ./hw/es1370.c:606: error: format ?%d? expects type ?int?, but argument 3 has > type ?long int? > ./hw/es1370.c: In function ?es1370_readl?: > ./hw/es1370.c:748: error: suggest braces around empty body in an ?if? > statement > > Cc: Blue Swirl <blauwir...@gmail.com> > Signed-off-by: Stefan Weil <w...@mail.berlios.de> > --- > hw/es1370.c | 11 ++++++----- > 1 files changed, 6 insertions(+), 5 deletions(-) > > diff --git a/hw/es1370.c b/hw/es1370.c > index 40cb48c..c87bbf2 100644 > --- a/hw/es1370.c > +++ b/hw/es1370.c > @@ -408,7 +408,7 @@ static void es1370_update_voices (ES1370State *s, > uint32_t ctl, uint32_t sctl) > > if ((old_fmt != new_fmt) || (old_freq != new_freq)) { > d->shift = (new_fmt & 1) + (new_fmt >> 1); > - ldebug ("channel %d, freq = %d, nchannels %d, fmt %d, shift > %d\n", > + ldebug ("channel %zu, freq = %d, nchannels %d, fmt %d, shift > %d\n", > i, > new_freq, > 1 << (new_fmt & 1), > @@ -576,7 +576,7 @@ IO_WRITE_PROTO (es1370_writel) > d++; > case ES1370_REG_DAC1_SCOUNT: > d->scount = (val & 0xffff) | (d->scount & ~0xffff); > - ldebug ("chan %d CURR_SAMP_CT %d, SAMP_CT %d\n", > + ldebug ("chan %ld CURR_SAMP_CT %d, SAMP_CT %d\n", > d - &s->chan[0], val >> 16, (val & 0xffff)); > break; > > @@ -586,7 +586,7 @@ IO_WRITE_PROTO (es1370_writel) > d++; > case ES1370_REG_DAC1_FRAMEADR: > d->frame_addr = val; > - ldebug ("chan %d frame address %#x\n", d - &s->chan[0], val); > + ldebug ("chan %ld frame address %#x\n", d - &s->chan[0], val); > break; > > case ES1370_REG_PHANTOM_FRAMECNT: > @@ -603,7 +603,7 @@ IO_WRITE_PROTO (es1370_writel) > case ES1370_REG_DAC1_FRAMECNT: > d->frame_cnt = val; > d->leftover = 0; > - ldebug ("chan %d frame count %d, buffer size %d\n", > + ldebug ("chan %ld frame count %d, buffer size %d\n", > d - &s->chan[0], val >> 16, val & 0xffff); > break; > > @@ -743,9 +743,10 @@ IO_READ_PROTO (es1370_readl) > { > uint32_t size = ((d->frame_cnt & 0xffff) + 1) << 2; > uint32_t curr = ((d->frame_cnt >> 16) + 1) << 2; > - if (curr > size) > + if (curr > size) { > dolog ("read framecnt curr %d, size %d %d\n", curr, size, > curr > size); > + } > } > #endif > break; >
typeof(ptr a - ptr b) = ptrdiff, not an %ld here on ppc32, so no, this "fix" is not correct. -- mailto:av1...@comtv.ru