https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84922
Bug ID: 84922 Summary: fortran reports inconsistency in rank of arguments in interface and contained procedures Product: gcc Version: 7.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: w.clodius at icloud dot com Target Milestone: --- When compiling modules it is sometimes useful to provide an interface for the contained procedure. For some of my procedures gfortran 7.1 is reporting an inconsistency in the ranks for some of the arguments. This has occurred for using a simple interface, a generic interface, or for using an interface for a procedure defined in a submodule. The following file causes the problem for fortran 7.1 module copy use, intrinsic :: iso_fortran_env, only : int8 interface module subroutine copy_byte_data( data, copy ) ! Chase's copier integer(int8), intent(in) :: data(:) integer(int8), allocatable, intent(out) :: copy(:) end subroutine copy_byte_data end interface contains subroutine copy_byte_data( data, copy ) ! Chase's copier integer(int8), intent(in) :: data(:) integer(int8), allocatable, intent(out) :: copy(:) if ( allocated( copy ) ) then deallocate( copy ) end if allocate( copy( size(data) ) ) copy = data return end subroutine copy_byte_data end module copy program test_copy use copy integer(int8) :: data(8) = 0_int8 integer(int8), allocatable :: acopy(:) write(*,*) 'DATA = ', data call copy_byte_data( data, acopy) write(*, *) 'ACOPY = ', acopy stop end program test_copy When compiled from the Terminal command line on Mac OS X 10.13.3, using the command gfortran test_copy.f90 I get the following response test_copy.f90:21:35: subroutine copy_byte_data( data, copy ) ! Chase's copier 1 Error: Shape mismatch in argument 'data' at (1) test_copy.f90:39:8: use copy 1 Fatal Error: Can't open module file ‘copy.mod’ for reading at (1): No such file or directory compilation terminated.