rt_gccstream/gcc/testsuite/gfortran.dg/array_constructor_type_14.f03

25 lines
438 B
Fortran

! { dg-do run }
! PR fortran/27997
!
! Array constructor with typespec
! for derived types.
PROGRAM test
IMPLICIT NONE
TYPE foo
INTEGER :: i
REAL :: x
END TYPE foo
TYPE(foo), PARAMETER :: x = foo(42, 42.)
TYPE(foo), DIMENSION(2) :: arr
arr = (/ TYPE(foo) :: x, foo(0, 1.) /)
IF (arr(1)%i /= 42 .OR. arr(1)%x /= 42. .OR. &
arr(2)%i /= 0 .OR. arr(2)%x /= 1.) THEN
CALL abort()
END IF
END PROGRAM test