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.