64 bit coding

Alex Kiernan alexk at demon.net
Mon Apr 23 12:33:20 UTC 2001

Dan Foster <dsf at gblx.net> writes:

> I put the 16 Feb code base through a 64 bit build for the first time. That
> was very educational... 616 compiler warnings related to 64 bit handling. :-)

I've successfully built/run on 64 bit Solaris (an LP64 model), the
only problems I had were with Berkeley DB (which used to die every
night during expire with an internal LSN error).

Certainly linting it w/ 64 bit options is kinda noisy and whilst there
were some trivial ones, there were a lot of warnings which would need
pervasive changes to fix properly.

> Then there are assumptions that char will always be an int, such as:
>     char *result, *p;
>     p = result;
> results in this complaint from the compiler:
> "conffile.c", line 60.19: 1506-743 (I) 64-bit portability: possible change of
> result through conversion of int type into long type.
> "conffile.c", line 60.26: 1506-742 (I) 64-bit portability: possible loss of
> digits through conversion of long type into int type.

What source are you building from? I can't find a "char *result"
anywhere in the -current or -stable trees (and I don't see the
assumption in the fragment you've posted either).

Alex Kiernan, Principal Engineer, Development, Thus PLC

More information about the inn-workers mailing list