This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC 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: strict aliasing: how to swap pointers


Matthew Woehlke wrote:
> Andrew Haley wrote:
>> Consider an arch which has pointers to char (and void *) that are two
>> words
>> in size, and pointers to int that are one word in size.  On such an arch
>> your exchange() function won't work, which is one reason why you need
>> a macro
>> to do it in Standard C.
> 
> What platforms are there where sizeof(T*) != sizeof(void*) for some T?

I'm not sure: certainly nothing gcc supports, because gcc internally uses
Pmode for all pointers.  DEC-10 possibly, maybe others.  And of course, some
segmented architectures have pointers of different sizes.

Andrew.



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