I'm with Linus on this one.
I had the pleasure (?) of working on a C/C++ codebase that compiled on Windows and ten different flavors of Unix. It was all "portable", but all over the place there was stuff like
#if defined AIX || defined OSF1
short var;
#else
int var;
#endif
And to get it right, you had to compile it on all the platforms and fix all the errors (and preferably all the warnings).Yeah, cross platform is never as simple as same platform.