A compiler is a thing that takes some input, processes it in some way, and drops out some output. It normally also outputs information to the terminal for the developer. It’s not that difficult to understand and there are hundreds of compilers out there that work this way. Well known, mainly in relation to programming and compiling is Emacs, a kind of meta operating system which can be used to, among other things, edit files.
Now the developers of Mono have decided to make the Mono compiler (g)mcs “Emacs Aware” (M. d. Icaza). This means that the compiler adapts its textual output to the environment it is running in; better: it adapts solely to Emacs by suppressing information. IMHO this is bad style. It is the editor’s, console’s, whatever’s responsibility to correctly display the output of programs executed by and in it. By adapting the programs’ behavior instead of letting the displaying process handle output rendering, things will get even worse.
Finally saying “is not a bug, it’s a feature” (M. d. Icaza) really makes me believe that the Mono framework will never improve. It might thus keep its indeterministic and somewhat unreliable behavior.