aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gfortran.dg/select_type_13.f03
blob: 8546ccbe825c9b62c3cfb3ca4e66e64d8d1afa66 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
! { dg-do run }

! PR fortran/45384
! Double free happened, check that it works now.

! Contributed by Salvatore Filippone  <salvatore.filippone@uniroma2.it>

program bug20

  type :: d_base_sparse_mat
    integer :: v(10) = 0.
  end type d_base_sparse_mat

  class(d_base_sparse_mat),allocatable :: a

  allocate (d_base_sparse_mat :: a)

  select type(aa => a)
  type is (d_base_sparse_mat)
    write(0,*) 'NV = ',size(aa%v)
    if (size(aa%v) /= 10) call abort ()
  class default 
    write(0,*) 'Not implemented yet '
  end select

end program bug20