I happen to test the lower_limit<=variable<=upperlimit form of selection statement in IF block, and it seems that the statement is always true even if the upperlimit is little than the lower_limit, why is that ? For example:
integer :: var = 10 if(9 <= var <= 11) write(*,*) "Yes" ! When execute, "Yes" is printed out. if(11 <= var <= 9) write(*,*) "Yes Again" ! When execute, "Yes Again" is printed out.