FORTRAN compiler warning: obsolete arithmetic IF statement
问题 I have a gfortran error: Warning: Obsolete: arithmetic IF statement at (1) What does this mean? In the source (old source): 66 s12 = max(epsilon, s1 + s2) c Then execution will go to label 13. Will this stop any further problems? if (s12 - 1.0) 13, 13, 12 13 z = s1 / s12 回答1: Arithmetic if is a peculiar feature of FORTRAN it works as follows. IF (expr) label1, label2, label3 If the value of the expression is less than 0, jump to label1 equal to 0, jump to label2 greater than 0, jump to label3