------- Comment #3 from burnus at gcc dot gnu dot org 2009-06-25 15:06 ------- Another example. The following two subroutines are essentially identical, except that one has an explicit interface and one an implicit interface. The only extra information the explicit interface provides is that the function takes no arguments.
If one looks at the dumps, one finds: D.1548 = func (); and func (&parm.1); which is surely incompatible. subroutine test1() integer :: array(2) external :: func integer :: func array = func() end subroutine test1 subroutine test2 integer :: array2(2) interface function func() integer :: func(2) end function func end interface array2 = func() end subroutine test2 -- burnus at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2009-06-25 15:06:14 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40551