Strange problem - need unused variable to make (Blink like) sketch run

The problem is, when I comment out the led variable (both declaration and incrementation) the sketch stops working and lights only led 7.

Hey guys, this is beginning to ring bells from quite a few years ago. We had something like this then. Trouble is I can't remember the details but I think it was something to do with the compiler.