Known bugs and limitations 1. emxomf emits many warnings when compiling C++ code with the -g (debug) switch. Initially it used to trap (before pgcc 1.0.2 AFAIR), but I added a command-line preprocessing stage to GCC that replaces "-g#" with "-gstabs#" (by default "-g" means "-gstabs+", stabs+ is a new debugging format that emxomf doesn't fully understand). There is no solution for this but it doesn't do any harm anyway. Just ignore these warnings; I've debugged very big projects that compiled in "-Zomf -g" mode with lots of warnings; the basic debugging information is correct. 2. f77 compiler does not incorporate the changes made for the `main' ported version for OS/2. I do not know whenever there are other changes other than those needed `just to make it work'. 3. pgcc/c++ complains on superfluous "__asm__ __volatile__ (...)" operators. For example (taken from /emx/include/386/builtin.h): static __inline__ void __enable (void) { __asm__ __volatile__ ("sti"); } Solution: remove __volatile__'s from enable() and disable() functions in include/386/builtin.h; they're not needed since no registers are changed inside __asm__ so there is no need to declare it __volatile__: a better solution for EM imho would be to declare in __asm__ instead of volatile the list of registers that gets changed). ------------------------------------------------------------------------