1! { dg-do compile } 2! Tests the fix for PR28771 in which an assumed character length variable with an initializer could 3! survive in the main program without causing an error. 4! 5! Contributed by Martin Reinecke <martin@mpa-garching.mpg.de> 6! Modified to test fix of regression reported by P.Schaffnit@access.rwth-aachen.de 7 8subroutine poobar () 9 ! The regression caused an ICE here 10 CHARACTER ( LEN = * ), PARAMETER :: Markers(5) = (/ "Error ", & 11 & "Fehler", & 12 & "Erreur", & 13 & "Stop ", & 14 & "Arret " /) 15 character(6) :: recepteur (5) 16 recepteur = Markers 17end subroutine poobar 18 19! If the regression persisted, the compilation would stop before getting here 20program test 21 character(len=*), parameter :: foo = 'test' ! Parameters must work. 22 character(len=4) :: bar = foo 23 character(len=*) :: foobar = 'This should fail' ! { dg-error "must be a dummy" } 24 print *, bar 25 call poobar () 26end 27 28