Free Source Form

In free source form, statements are not limited to specific positions on a source line. In Standard Fortran, a free form source line can contain from 0 to 10,000 characters.

Blank characters are significant in free source form. The following are rules for blank characters:

For information on statement separators (;) in all forms, see Source Forms.

Comment Indicator

In free source form, the exclamation point character (!) indicates a comment if it is within a source line, or a comment line if it is the first character in a source line.

Continuation Indicator

In free source form, the ampersand character (&) indicates a continuation line (unless it appears in a Hollerith or character constant, or within a comment). The continuation line is the first noncomment line following the ampersand. A comment line cannot be continued, but a comment can appear in a continuation line.

A line cannot contain a single "&" as the only non-blank character or as the only non-blank character before an "!" that begins a comment. The Fortran Standard limits a statement to a total of 1,000,000 characters, but it does not limit the number of continuation lines.

The following shows a continued statement:

  TCOSH(Y) = EXP(Y) + &    ! The initial statement line
    EXP(-Y)                ! A continuation line

If the first nonblank character on the next noncomment line is an ampersand, the statement continues at the character following the ampersand. For example, the preceding example can be written as follows:

  TCOSH(Y) = EXP(Y) + &
   & EXP(-Y)

If a lexical token must be continued, the first nonblank character on the next noncomment line must be an ampersand followed immediately by the rest of the token. For example:

    TCOSH(Y) = EXP(Y) + EX&
 &P(-Y)

If you continue a character constant, an ampersand must be the first non-blank character of the continued line; the statement continues with the next character following the ampersand. For example:

  ADVERTISER = "Davis, O'Brien, Chalmers & Peter&
          &son"
  ARCHITECT  = "O'Connor, Emerson, and Dickinson&
        &  Associates"

If the ampersand is omitted on the continued line, the statement continues with the first non-blank character in the continued line. So, in the preceding example, the whitespace before "Associates" would be ignored.

The ampersand cannot be the only nonblank character in a line, or the only nonblank character before a comment; an ampersand in a comment is ignored.

See Also