Just sounds like it's going to be just a lot of drudge work. For example,
use uintptr_t() to cast pointers for doing arithmetic - it works in 32 and
64-bit:

/*
 * intptr_t and uintptr_t are signed and unsigned integer types large enough
 * to hold any data pointer; that is, data pointers can be assigned into or
 * from these integer types without losing precision.
 */

On 11/5/08 12:41 PM, "Paul Meier" <[EMAIL PROTECTED]> wrote:

> Neale,
> Thanks so much for your help.
>
> The problem I am facing is that some of the development code relies on
> return values that should be used as a size_t being declared as an
> unsigned int.
>
> In other cases it is a reliance on a pointer value being 32 bits and
> casted to an unsigned or signed int to do pointer arithmetic.  While
> that works fine in a 32-bit environment it causes problems in a 64-bit
> environment.
>
> The immediate solution is to use the correct unit types where called
> for.  I am attempting to identify those places where this occurs and
> use the correct typedef for the values used.
>
> If this is too burdensome a last resort will be to recompile all the
> 3rd party libraries as -m31 along with the application
>
> Any other ideas?

----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: INFO LINUX-390 or visit
http://www.marist.edu/htbin/wlvindex?LINUX-390

Reply via email to