145
|
1 ! { dg-do run }
|
|
2 !
|
|
3 ! PR fortran/89266 - ICE with TRANSFER of len=0 character array constructor
|
|
4
|
|
5 program test
|
|
6 implicit none
|
|
7 character(*), parameter :: n = ''
|
|
8 character(*), parameter :: o = transfer ([''], n)
|
|
9 character(*), parameter :: p = transfer ( n , n)
|
|
10 character(*), parameter :: q = transfer ([n], n)
|
|
11 character(6), save :: r = transfer ([''], n)
|
|
12 character(6), save :: s = transfer ( n , n)
|
|
13 character(6), save :: t = transfer ([n], n)
|
|
14 integer, parameter :: a(0) = 0
|
|
15 integer, parameter :: b(0) = transfer (a, a)
|
|
16 integer, save :: c(0) = transfer (a, a)
|
|
17 if (len (o) /= 0) stop 1
|
|
18 if (len (p) /= 0) stop 2
|
|
19 if (len (q) /= 0) stop 3
|
|
20 if (r /= "") stop 4
|
|
21 if (s /= "") stop 5
|
|
22 if (t /= "") stop 6
|
|
23 if (size (b) /= 0 .or. any (b /= 0)) stop 7
|
|
24 if (size (c) /= 0 .or. any (c /= 0)) stop 8
|
|
25 end program test
|