On Thu, 8 Mar 2007, Kai Tietz wrote:

> As I know, the types are declared in config/stdint.m4, which is part of 
> gcc, isn't it ?

There are many different things "part of GCC" can mean.

Different parts of GCC may wish to know these types for the build system, 
for the host system or for the target system, and all three may differ.  
Sometimes they may only care about the width of the types, other times 
about the exact type (that is, about whether it's "int" or "long" where 
they have the same size, which affects C++ name mangling).

For the build and host you can use that autoconf support from 
config/stdint.m4.  It's less safe to do so for the target because such 
support may get the wrong choice between types of the same size.  Of 
course, for many places for the target you may not care about which type 
of a given size is chosen; but if these types ever appear in C++ ABIs, 
then you need to care.  For purely internal use not appearing in ABIs, 
size_t and ptrdiff_t should work.

-- 
Joseph S. Myers
[EMAIL PROTECTED]

Reply via email to