Skip to content

missing split of elseif to else if #179

@nbehrnd

Description

@nbehrnd

It seems to me fprettify does not provide an automated edit of keyword elseif to yield else if.

Inspired by a discussion in the fortitude project (link) I observe fprettify (version 0.3.7, fetched from PyPI) apparently doesn't edit elseif while e.g., endif and enddo routinely yield end if and end do, respectively.

My test file:

! test.f90
program test
   implicit none
   integer :: i
   do i = 1, 8
      if (i == 3) then
         print *, "first branch"
      elseif (i == 4) then
         print *, "second branch"
      endif
   enddo
end program test

Tests run:

  • fprettify test.f90, i.e. default parameters: endif and enddo are split, elseif remains elseif
  • fprettify --whitespace-intrinsics False test.f90: as expected, endif and enddo are equally retained as such
  • fprettify --whitespace-intrinsics True test.f90: endif and enddo are edited, but elseif is not
  • fprettify --whitespace-logical True test.f90: endif and enddo are edited, but elseif is not

Is there a different flag or level more suitable for the task I should use instead?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions