[fdo-internals] 64bit porting of FDO Core

Frank Warmerdam warmerdam at pobox.com
Wed Feb 14 03:48:52 EST 2007


Folks,

I built FDO core without much problem on my 64bit ubuntu linux box, but
discovered that 12 unit tests were failing.  I have tracked down the issues
and applied 3 changesets to get things working again:

Applied changesets:

[2511] - fix unit tests to use INT_MAX, INT_MIN for 32bit min/max

   http://trac.osgeo.org/trac/fdo/changeset/2511

[2512] - fix lexer to use INT_MIN/INT_MAX for 32bit values.

   http://trac.osgeo.org/trac/fdo/changeset/2512

[2513] - fix UTF handling to use "unsigned int" for UTF32, not "unsigned long".

   http://trac.osgeo.org/trac/fdo/changeset/2513

Now all fdo core unit tests pass under valgrind, though I am suffering an 
unexplained crash due to heap corruption when not running under valgrind.
This may be unrelated.

I would appreciate folks trying this out on 32bit systems and letting
me know if my changes are dangerous in some way.

The important lesson seems to be - long is not always 32bit!  Use "int"
for 32bit types in the modern age.

The trac ticket for this issue is at:

   http://trac.osgeo.org/trac/fdo/ticket/6

Needless to say, the changes are only in trunk, but as they are
quite limited, after validation it might make sense to move them back
into 3.2.x.  I'll leave that to Greg or other interested parties to
decide and act on.

Now I can work on the GDAL provider on my new workstation!

Best regards,
-- 
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | President OSGeo, http://osgeo.org



More information about the fdo-internals mailing list