| ! { dg-do run } |
| ! |
| ! PR fortran/89266 - ICE with TRANSFER of len=0 character array constructor |
| |
| program test |
| implicit none |
| character(*), parameter :: n = '' |
| character(*), parameter :: o = transfer ([''], n) |
| character(*), parameter :: p = transfer ( n , n) |
| character(*), parameter :: q = transfer ([n], n) |
| character(6), save :: r = transfer ([''], n) |
| character(6), save :: s = transfer ( n , n) |
| character(6), save :: t = transfer ([n], n) |
| integer, parameter :: a(0) = 0 |
| integer, parameter :: b(0) = transfer (a, a) |
| integer, save :: c(0) = transfer (a, a) |
| if (len (o) /= 0) stop 1 |
| if (len (p) /= 0) stop 2 |
| if (len (q) /= 0) stop 3 |
| if (r /= "") stop 4 |
| if (s /= "") stop 5 |
| if (t /= "") stop 6 |
| if (size (b) /= 0 .or. any (b /= 0)) stop 7 |
| if (size (c) /= 0 .or. any (c /= 0)) stop 8 |
| end program test |