Search code examples
fortran

Star * symbol found on second line of Fortran function declaration


When examining some legacy Fortran code, I've found a subroutine declaration that is the following:

       SUBROUTINE CLIP2G (fcut,TIME,NUMS,NUMG,CLIPG,CLIPGL,CLIPGR,
     * MODE,PHZ)

What does the * signify in this context? Does the star * mean that the subroutine declaration spans two lines rather than one line?


Solution

  • This is a line continuation mark in fixed form Fortran. It marks that this line is a continuation of the previous one. It may be any Fortran recognized character that is not a blank (space ) or zero (0), but it must be placed in column 6. If character position 6 contains a blank or zero, the line is the initial line of a new statement, which begins in character position 7. (F2018 6.3.3.3)

    A more thorough discussion of line continuations in fixed and free Fortran form, including the "intersection form" that can be included in files of either form, is at Fortran Wiki: Continuation lines.