Right. Like most systems, it's backwards compatible but not forwards.
Forwards compatibility is in general impossible since APIs are added
from time to time.
But is works just fine on Windows. You compile specifying the os level
you're targetting and all later APIs are #ifdeffed out so you can't use
them. The resulting executable then works quite happily on the older
version of the OS. All of the OS entry points have fixed IDs in the run
time library, so there's no API compatibility, or ABI compatibility
issues, only semantic ones, and generally they're pretty careful about that.
The issue we're having on linux seems to be to do with the dynamic
loading hash table incompatbility, and the level of libstdc++ shared object.
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________