------- Comment #1 from pinskia at gcc dot gnu dot org  2006-01-31 02:04 -------
This does not look like valid code.
As the types of the dummy z are different.
The error message is bogus but that is a different bug. PR 20067.

Arrays have nothing to do with it by the way, you can reproduce the error with:
module foo
   public    bar_
   interface bar_
      module procedure bar
   end interface
   public    xxx_
   interface xxx_
      module procedure xxx
   end interface
contains
   subroutine xxx(self,z)
      interface
         function self(z) result(res)
            integer :: z
            real :: res
         end function
      end interface
      call bar_(self)
   end subroutine
   subroutine bar(self)
      interface
         function self(z) result(res)
            real :: z
            real :: res
         end function
      end interface
   end subroutine
end


And it is obvious from there that bar_ cannot be called from xxx.  (Intel's
fortran compiler accepts this too which I find weird as this is obvious broken
code).


-- 


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

Reply via email to