Andrew Haley <[EMAIL PROTECTED]> wrote on 30.05.2008 12:07:49:

> Richard Guenther wrote:
> > On Fri, May 30, 2008 at 10:57 AM, Kai Tietz <[EMAIL PROTECTED]> 
wrote:
> >> Hi,
> >>
> >> as I noticed, most hash value calculations are trying to use pointer
> >> values for building the value and assume that a long/unsigned long 
scalar
> >> is wide enough for a pointer. This is at least for w64 target not 
true. So
> >> I want to know, if it would be good to introduce an gcc specific type 
for
> >> those kind of casts, or to use ssize_t/size_t.?
> > 
> > it's uintptr_t which should be used, if only as an intermediate cast -
> > (unsigned long)(uintptr_t)ptr.
> 
> That's not possible because, IIRC, gcc must compile on C90 systems.

Right, so the only type remaining is size_t. IIRC there is problem for 
this type on some targets, too. AFAIC there are 24-bit pointers ...
This is the reason, why I was querying to introduce a new general type for 
such stuff in gcc.

Kai

|  (\_/)  This is Bunny. Copy and paste Bunny
| (='.'=) into your signature to help him gain
| (")_(") world domination.

Reply via email to