! { dg-do compile } ! { dg-options "-O3" } ! ! Tests the fix for PR85954 in which the gimplifier could not determine ! the space required for the dummy argument data types, when inlining the ! subroutines. ! ! Contributed by G.Steinmetz ! program p character(kind=1,len=:), allocatable :: z(:) allocate (z, source = ["xyz"]) print *, allocated(z), size(z), len(z), z call s(z) call t(z) contains subroutine s(x) character(kind=1,len=:), allocatable :: x(:) x = ['abcd'] print *, allocated(x), size(x), len(x), x end subroutine t(x) character(kind=1,len=:), allocatable :: x(:) associate (y => x) y = ['abc'] end associate print *, allocated(x), size(x), len(x), x end end