printf/inttypes.h warning
Joseph Myers
joseph@codesourcery.com
Tue Dec 16 15:44:00 GMT 2014
On Tue, 16 Dec 2014, Corinna Vinschen wrote:
> > It is GCC. gcc/config/newlib-stdint.h where GCC defines the types.
>
> Ok, I didn't know there's newlib-specific stuff in GCC. I'm just
> not sure in how far this is newlib's fault. The usage of __INTPTR_TYPE__
> looks right to me. The gcc/config/newlib-stdint.h file seems to be
> outdated???
newlib-stdint.h is meant to replicate the logic used by all versions of
newlib to select these types, including versions predating the addition of
macros such as __INTPTR_TYPE__.
* The choices of these types are meant to be constant over time.
* GCC needs to know them (without reference to the newlib headers when GCC
is built) for such purposes as Fortran C bindings.
* newlib stdint.h as of 2008/9 was used as the source of truth about these
types when writing newlib-stdint.h.
* When newlib uses macros such as __INTPTR_TYPE__ it's indirectly using
GCC's newlib-stdint.h as a source of truth - but this should never change
the choice of types relative to what would be used with older GCC or
non-GCC compilers.
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Newlib
mailing list