* tree-loop-distribution.c (struct partition): New field recording
[official-gcc.git] / gcc / testsuite / gfortran.dg / coarray_subobject_1.f90
blob52c65e149b537cb4f913c1f02a71c51424445afd
1 ! { dg-do compile }
2 ! { dg-options "-fcoarray=single" }
4 ! PR fortran/50420
5 ! Coarray subobjects were not accepted as valid coarrays
6 ! They should still be rejected if one of the component reference is allocatable
7 ! or pointer
9 type t
10 integer :: i
11 end type t
12 type t2
13 type(t), allocatable :: a
14 type(t), pointer :: c
15 end type t2
16 type(t2) :: b[5:*]
17 allocate(b%a)
18 allocate(b%c)
19 b%a%i = 7
20 b%c%i = 13
21 if (b%a%i /= 7) call abort
22 if (any (lcobound(b%a) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
23 if (ucobound(b%a, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
24 if (any (lcobound(b%a%i) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
25 if (ucobound(b%a%i, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
26 if (b%c%i /= 13) call abort
27 if (any (lcobound(b%c) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
28 if (ucobound(b%c, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
29 if (any (lcobound(b%c%i) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
30 if (ucobound(b%c%i, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
31 end