[Bug fortran/84778] Issue with character arguments of specified length (does not compile)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84778 david.applegate at woodplc dot com changed: What|Removed |Added Status|WAITING |RESOLVED Resolution|--- |WONTFIX --- Comment #5 from david.applegate at woodplc dot com --- Actually forget I mentioned that second bug - fixing it would cause us much more pain than the first fix did! Thanks for your time.
[Bug fortran/84778] Issue with character arguments of specified length (does not compile)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84778 --- Comment #3 from david.applegate at woodplc dot com --- Thanks for the reply and the clarification. I have two comments to make regarding this if I may... 1) Previous gfortran compilers were happy with the code. I also tested g95 and Ifort (admittedly aged versions of both). Ifort also refused to compile the code while g95 did compile the code (you may not care I guess). It is slightly irritating that gfortran is essentially not backwards compatible with previous versions. Maybe gfortran should compile this code unless the users specify one of the -std=f95/f2003/f2008 switches? 2) What about array declaration? Gfortran 7.3 is happy to compile the following code, which presumably does not conform to the standard you mention, while Ifort refuses to compile this code: program test2 implicit none integer, parameter :: b = 5 integer :: a(b) a = 4 write(*,*)a call testsub(a,b) contains subroutine testsub(a,b) ! integer, intent(in) :: b ! if we put declaration of b here instead it compiles ok integer :: a(b) integer, intent(in) :: b write(*,*)a end subroutine testsub end program test2
[Bug fortran/84778] Issue with character arguments of specified length (does not compile)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84778 --- Comment #1 from david.applegate at woodplc dot com --- This bug does not occur in GCC 4.8.2
[Bug fortran/84778] New: Issue with character arguments of specified length (does not compile)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84778 Bug ID: 84778 Summary: Issue with character arguments of specified length (does not compile) Product: gcc Version: 7.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: david.applegate at woodplc dot com Target Milestone: --- Pass a character "a" into a subroutine with an additional argument integer "b" which specifies its length. This does not compile if integer "b" is declared after character "a" in the subroutine. See below program test implicit none integer, parameter :: b = 5 character(len=b) :: a a = "hello" write(*,*)a//" from main program" call testsub(a,b) contains subroutine testsub(a,b) ! integer, intent(in) :: b ! if we put declaration of b here instead it compiles ok character(len=b), intent(in) :: a integer, intent(in) :: b write(*,*)a//" from testsub" end subroutine testsub end program test