1! { dg-do run }
2! PR fortran/70409
3! Contriubted by Harald Anlauf  <anlauf at gmx dot de>
4program foo
5  integer, parameter :: huge_1 = huge(0_1)
6  character(    huge_1      ), parameter :: x = 'abc'
7  character(    huge(0_1)   ), parameter :: y = 'abc'
8  character(    huge(0_1)+0 ), parameter :: z = 'abcdef'
9  character(    huge(0_1)   )            :: a = 'abc'
10  integer, parameter :: huge_2 = huge(0_2)
11  character(    huge_2      ), parameter :: u = 'abc'
12  character(    huge(0_2)   ), parameter :: v = 'abc'
13  character(int(huge(0_2),4)), parameter :: w = 'abcdef'
14  character(    huge(0_2)   )            :: b = 'abc'
15  if (len(x) /= huge_1) stop 1
16  if (len(y) /= huge_1) stop 2
17  if (len(z) /= huge_1) stop 3
18  if (len(a) /= huge_1) stop 4
19  if (len(u) /= huge_2) stop 5
20  if (len(v) /= huge_2) stop 6
21  if (len(w) /= huge_2) stop 7
22  if (len(b) /= huge_2) stop 8
23end program foo
24