Following is a list of deleted and obsolete features, along with suggestions for replacing them:
Branching to an ENDIF statement from outside the IF block. This makes for a confusing program and interrupts the logic flow.
PAUSE statement. This is very little used, if at all. However, it should be noted that there is no asynchronous input/output in the standard. It is in the requirements planning for Fortran 2000, however.
ASSIGN, ASSIGNED GOTO, and assigned FORMAT. The standard no longer allows the assignment of a label to an integer. Use a character variable.
H edit descriptor. The H edit descriptor is inconsistent with the other character features that have been developed in Fortran. Use a character constant in the print statement or the A edit descriptor in a format specification.
Arithmetic IF remains on the list from Fortran 90. Many users still depend on this feature. Use an IF statement or construct that does not depend on an arithmetic subtraction.
Shared DO termination remains in the list from Fortran 90. Use END DO or a CONTINUE statement to separate terminal statements in a nested DO loop.
Alternate RETURN remains from Fortran 90. Use a CASE construct instead.
Computed GO TO is a little too specific. Use the CASE construct, which is more general, easier to use, as well as more efficient.
Statement functions are redundant with internal procedures, which you should use instead.
DATA statements among executables are little used and can easily be moved to the nonexecutable part of the program. It is likely this will be required in Fortran 95.
Assumed character length functions are a language irregularity. Use an automatic character length function.
Fixed source form is an old set of form rules based on unit record equipment and punched cards. With today's terminal environment, free form source is more efficient.
CHARACTER * form of the character declaration. This form is an unnecessary redundancy. Use the other form, for example:
CHARACTER (LEN=80) X