28 lines
1.1 KiB
Fortran
28 lines
1.1 KiB
Fortran
! { dg-do compile }
|
|
! Tests the fix for PR28771 in which an assumed character length variable with an initializer could
|
|
! survive in the main program without causing an error.
|
|
!
|
|
! Contributed by Martin Reinecke <martin@mpa-garching.mpg.de>
|
|
! Modified to test fix of regression reported by P.Schaffnit@access.rwth-aachen.de
|
|
|
|
subroutine poobar ()
|
|
! The regression caused an ICE here
|
|
CHARACTER ( LEN = * ), PARAMETER :: Markers(5) = (/ "Error ", &
|
|
& "Fehler", &
|
|
& "Erreur", &
|
|
& "Stop ", &
|
|
& "Arret " /)
|
|
character(6) :: recepteur (5)
|
|
recepteur = Markers
|
|
end subroutine poobar
|
|
|
|
! If the regression persisted, the compilation would stop before getting here
|
|
program test
|
|
character(len=*), parameter :: foo = 'test' ! Parameters must work.
|
|
character(len=4) :: bar = foo
|
|
character(len=*) :: foobar = 'This should fail' ! { dg-error "must be a dummy" }
|
|
print *, bar
|
|
call poobar ()
|
|
end
|
|
|