Allow comprehension syntax in loop header of for loop

Unaware of this thread I have started another one, and have reached this conclusion:

OK, reading through these threads I realise that the damage has already been done by allowing if expressions to have different syntax in comprehensions from the basic loops. So we can’t implement this idea without breaking backward compatibility, even taking into account that if..else is extremely rarely used in for loops.