I have a expression like this:
I = 5
DO WHILE (I <= 4 .AND. "ThrowError")
I = I + 1
In Intel Fortran, as the variable I is greather than 4, the second part of the .AND. operator shouldnt even be evaluated, correct? (since the first operand is .FALSE.) But thats not the case, the second part is evaluated and throws an error.
In compaq fortran that expression works as expect: the execution verifies that the first operand is .FALSE. and dont continue evaluating the expression.
Does anyone know anything about it?