You were indeed right, the compiler was probably optimizing out my code. The suggested crasher code works, and qtcreator gets invoked, although I did not manage to set up gdb yet.
I think I have an idea of what's going wrong here. hvr@ was right in pointing out that we need to be careful with the PATH. It seems that the bundled gcc is picking up the system-wide DLLs, and bad things happen because of version incompatibilities. That does not explain why "rm" is crashing, but maybe that's fallout from cross-process damage. I will do some more testing. If this is indeed the cause, then hopefully debugging will not be needed anyway.