This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Warning in makedoc.c


On Oct 29 11:43, Joel Sherrill wrote:
> 
> On 10/29/2014 5:48 AM, Corinna Vinschen wrote:
> > On Oct 28 17:25, Joel Sherrill wrote:
> >> Hi
> >>
> >> On a 64-bit Fedora 20 machine, I see this building newlib:
> >>
> >> ../../../../gcc/newlib/doc/makedoc.c: In function âpush_numberâ:
> >> ../../../../gcc/newlib/doc/makedoc.c:273:12: warning: cast from pointer
> >> to integer of different size [-Wpointer-to-int-cast]
> >> *isp = (int)(*pc);
> >> ^
> >> ../../../../gcc/newlib/doc/makedoc.c: In function âbangâ:
> >> ../../../../gcc/newlib/doc/makedoc.c:1341:2: warning: cast to pointer
> >> from integer of different size [-Wint-to-pointer-cast]
> >> *(int *)((isp[0])) = isp[-1];
> >> ^
> >> ../../../../gcc/newlib/doc/makedoc.c: In function âatsignâ:
> >> ../../../../gcc/newlib/doc/makedoc.c:1349:15: warning: cast to pointer
> >> from integer of different size [-Wint-to-pointer-cast]
> >> isp[0] = *(int *)(isp[0]);
> >>
> >> Can makedoc.c use int32_t?
> > How does that help on 64 bit systems?  I don't claim to understand
> > what makedoc is doing there, but shouldn't pointers be casted to
> > intptr_t or uintptr_t ideally?
> >
> I have no idea about makedoc either. :)
> 
> Looking a bit at the code, I assume that chaning it to a Xintptr_t
> would have to propagate back to the declarations of istack and isp
> around line 220. And that may result in changing more variables
> from int to Xintptr_t. I can take a swing at it it you think that is an
> OK way to fix the warning.

Sure.  Please go ahead.


Thanks,
Corinna

-- 
Corinna Vinschen
Cygwin Maintainer
Red Hat

Attachment: pgpA4uqoFrVaL.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]