Forgot to add: in many environments (at least SGI/MIPS, AIX Power/PPC, HP-UX/HPPA) things are even more interesting -- one can in compile time decide between different 32-bit modes and different 64-bit modes. (E.g. in IRIX there are two of each.) I believe the new x86-ish processors and Linux/gcc offer similar options.
Whether one can mix and match such executables/libraries depends on how the processors/operating system have been configured. So one can't really assume much about the integer sizes. I heartily recommend people interested in portability matters getting machines and/or accounts in different machines. It Will Make Your Code Better. -- Jarkko Hietaniemi <[EMAIL PROTECTED]> http://www.iki.fi/jhi/ "There is this special biologist word we use for 'stable'. It is 'dead'." -- Jack Cohen