https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125632

            Bug ID: 125632
           Summary: Pure procedure defining a host-associated variable
           Product: gcc
           Version: 17.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: tkoenig at gcc dot gnu.org
  Target Milestone: ---

Copied verbatim from

https://gcc.gnu.org/pipermail/fortran/2026-June/064052.html

by John Harper.

This program is illegal by F95 12.6 7th constraint(1) and F2023 15.7 C15104(1)
but gfortran 15.2.0 ran it, printing 10

module funcsub
contains
  pure integer function Pure_func() result(res)
    call Assign_res
  contains
    pure subroutine Assign_res
      res = 10
    end subroutine Assign_res
  end function Pure_func
end module funcsub

program purepure
  use funcsub
  print "(I0)",Pure_func()
end program purepure

Reply via email to