| ! { dg-additional-options "-fdump-tree-original" } |
| character(256), allocatable :: label |
| type(t1), allocatable :: appv(:) |
| subroutine construct(res) |
| type(t2), allocatable, intent(inout) :: res |
| if (.not. allocated(res)) allocate(res) |
| subroutine construct_appv(appv) |
| type(t1), allocatable, intent(inout) :: appv(:) |
| if (.not. allocated(appv)) allocate(appv(20)) |
| end subroutine construct_appv |
| type(t1) function foo () result (res) |
| type(t2), allocatable :: res |
| ! original test from pr59252 |
| call construct_appv(res%appv) |
| ! related test from pr118747 comment 2: |
| ! { dg-final { scan-tree-dump-not "__builtin_memmove" "original" } } |