aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gfortran.dg/alloc_comp_constructor_3.f90
blob: 53fa79c00f04adea17b2ae8a46485ba3ab1665ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
! { dg-do run }
! Tests the fix for PR32665 in which the structure initializer at line
! 13 was getting the array length wrong by one and in which the automatic
! deallocation of a in 14 was occurring before the evaluation of the rhs.
!
! Contributed by Daniel Franke <dfranke@gcc.gnu.org>
!
  TYPE :: x
    INTEGER, ALLOCATABLE :: a(:)
  END TYPE
  TYPE(x) :: a

  a = x ((/ 1, 2, 3 /))                             ! This is also pr31320.
  a = x ((/ a%a, 4 /))
  if (any (a%a .ne. (/1,2,3,4/))) call abort ()
end