Reply to Denis,
That's *exactly* the same as silently generating bad executable. You run it and get "Executable is corrupted" message (or something like this).
An executable that never works and fails with a resonable error message at startup is *loads* better than one that either silently runs incorrectly (generates bad results) or erratically fails. I see a *major* difference.