When I hit Ctrl+Break while compiling, it generates zero-sized .obj file that is at that moment compiled.
Then when I hit F7 (to compile again), ICC doesn't notice that .obj file has zero size, and assumes that this file was successfully compiled. I would expect detection of zero size, and recompile this unit.
Since it deosn't recognize zero-sized .obj file, linker generates (only a) warning(!) something like "file format not recognised" and at the very end of link phase, it produces errors like "unresolved externals", which is obvious.
This is annoying, so I must do search for a zero-sized .obj files, delete them, and then hit F7 to recompile (deleted) .obj files again.