This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/34763] New: bare END not allowed in an interface block in a module procedure
- From: "dick dot hendrickson at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 12 Jan 2008 21:03:48 -0000
- Subject: [Bug fortran/34763] New: bare END not allowed in an interface block in a module procedure
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
With gfortran 4.3.0 20080109 I get the error message
n_interface.f:7.12:
END
1
Error: END SUBROUTINE statement expected at (1)
with the following program
module n
contains
subroutine n_interface
INTERFACE
SUBROUTINE NGSXDY(TLS1,TLS2)
REAL :: TLS1,TLS2
END
END INTERFACE
end
end module
If the n_interface is an external procedure it works fine. A bare
END statement is allowed in interface blocks. I'd guess you
are misapplying the constraint after R1224 to things inside of
interface blocks. But NGSXDY isn't a module subroutine. You'll
probably need a similar fix for functions in interface blocks,
although I haven't tried that.
Dick Hendrickson
--
Summary: bare END not allowed in an interface block in a module
procedure
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dick dot hendrickson at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34763