The following program should occur an error since the same named
entity from different modules cannot be referenced.
However, I compiled successfully, and got output "foo".

I think it is wrong behavior.

module m_foo
contains
  subroutine foo
    print *, "foo"
  end subroutine
end module

module m_bar
  interface foo
    module procedure bar
  end interface
contains
  subroutine bar
    print *, "bar"
  end subroutine
end module

use m_foo
use m_bar

call foo
end


-- 
           Summary: Interface name does not conflict with subroutine name
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: iguchi at coral dot t dot u-tokyo dot ac dot jp


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

  • [Bug fortran/25135] New: ... iguchi at coral dot t dot u-tokyo dot ac dot jp

Reply via email to