Skip to content

Conversation

@cphyc
Copy link
Owner

@cphyc cphyc commented Nov 4, 2024

Closes #111.

Replaces

module m
  implicit none
contains
  real function twice(x)
      real, intent(in) :: x
      twice = 2 * x
  end

  subroutine sub(x, y)
      implicit none
      real, intent(in) :: x
      real, intent(out) :: y
      y = 2 * x + 4.5
  end
end

program main
use m
implicit none
real :: x, y
x = 10.0
call sub(x, y)
print *, y
print *, twice(y)
end

with

module m
    implicit none
contains
    real function twice(x)
        real, intent(in) :: x
        twice = 2 * x
    end function twice

    subroutine sub(x, y)
        implicit none
        real, intent(in) :: x
        real, intent(out) :: y
        y = 2 * x + 4.5
    end subroutine sub
end module m

program main
    use m
    implicit none
    real :: x, y
    x = 10.0
    call sub(x, y)
    print *, y
    print *, twice(y)
end program main

Replaces
program foo
end program

with program foo
end program foo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace end with end subroutine foo, end function foo, end program foo, end module foo as appropriate

2 participants