[Bug fortran/43169] [OOP] gfortran rejects pure procedure with select type construct

janus at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Thu Feb 25 09:14:00 GMT 2010



------- Comment #3 from janus at gcc dot gnu dot org  2010-02-25 09:13 -------
Regarding BLOCK, it seems there is an additional problem: Assignments inside a
BLOCK are not checked at all, as the following case shows ...

  implicit none
  real :: glob

contains

  pure subroutine swap
    implicit none
    real :: r1
    r1 = 42.
    block
      real :: r2
      r2 = 43.
      glob = 0.
    end block
  end subroutine

end

The assignment to 'glob' is clearly invalid, but is not being caught.
'gfc_impure_variable' is only called for 'r1', the other two are left
unchecked. Seems like statements inside a BLOCK are not being resolved at
all?!?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43169



More information about the Gcc-bugs mailing list