view gcc/testsuite/gfortran.dg/derived_comp_array_ref_4.f90 @ 128:fe568345ddd5

fix CbC-example
author mir3636
date Wed, 11 Apr 2018 19:32:28 +0900
parents 04ced10e8804
children 84e7813d76e9
line wrap: on
line source

! { dg-do run }
! Tests the fix for PR33376, which was a regression caused by the
! fix for PR31564.
!
! Contributed by Harald Anlauf <anlauf@gmx.de>
!
module foo
  implicit none
  public chk

  type mytype
    character(len=4) :: str
  end type mytype
  type (mytype) ,parameter :: chk (2) &
                      = (/ mytype ("abcd") , mytype ("efgh") /)
end module foo

module gfcbug70
  use foo, only: chk_ => chk
  implicit none
contains

  subroutine chk (i)
    integer, intent(in) :: i
    if (i .eq. 1) then
      if (chk_(i)% str .ne. "abcd") call abort ()
    else
      if (chk_(i)% str .ne. "efgh") call abort ()
    end if

  end subroutine chk
end module gfcbug70

  use gfcbug70
  call chk (2)
  call chk (1)
end