1! { dg-do run } 2! PR15966, PR18781 & PR16531 3implicit none 4complex(kind=8) x(2) 5complex a(2,2) 6character(4) z 7character z1(4) 8character(4) z2(2,2) 9character(80) line 10integer i 11integer j 12real r 13character(8) c 14 15data x /16Habcdefghijklmnop, 16Hqrstuvwxyz012345/ 16data a /8H(i3),abc, 0, 4H(i4), 8H (i9)/ 17data z/4h(i5)/ 18data z1/1h(,1hi,1h6,1h)/ 19data z2/4h(i7),'xxxx','xxxx','xxxx'/ 20 21z2 (1,2) = 4h(i8) 22i = 4hHell 23j = 4Ho wo 24r = 4Hrld! 25write (line, '(3A4)') i, j, r 26if (line .ne. 'Hello world!') call abort 27i = 2Hab 28j = 2Hab 29r = 2Hab 30c = 2Hab 31write (line, '(3A4, 8A)') i, j, r, c 32if (line .ne. 'ab ab ab ab ') call abort 33 34write(line, '(4A8, "!")' ) x 35if (line .ne. 'abcdefghijklmnopqrstuvwxyz012345!') call abort 36 37write (line, a) 3 38if (line .ne. ' 3') call abort 39write (line, a (1,2)) 4 40if (line .ne. ' 4') call abort 41write (line, z) 5 42if (line .ne. ' 5') call abort 43write (line, z1) 6 44if (line .ne. ' 6') call abort 45write (line, z2) 7 46if (line .ne. ' 7') call abort 47write (line, z2 (1,2)) 8 48if (line .ne. ' 8') call abort 49write (line, '(16A)') z2 50if (line .ne. '(i7)xxxx(i8)xxxx') call abort 51call test (8h hello) 52end 53 54subroutine test (h) 55integer(kind=8) h 56character(80) line 57 58write (line, '(8a)') h 59if (line .ne. ' hello') call abort 60end subroutine 61 62! { dg-warning "Hollerith constant" "const" { target *-*-* } 15 } 63! { dg-warning "Conversion" "conversion" { target *-*-* } 15 } 64 65! { dg-warning "Hollerith constant" "const" { target *-*-* } 16 } 66! { dg-warning "Conversion" "conversion" { target *-*-* } 16 } 67 68! { dg-warning "Hollerith constant" "const" { target *-*-* } 17 } 69 70! { dg-warning "Hollerith constant" "const" { target *-*-* } 18 } 71 72! { dg-warning "Hollerith constant" "const" { target *-*-* } 19 } 73 74! { dg-warning "Hollerith constant" "const" { target *-*-* } 21 } 75! { dg-warning "Conversion" "conversion" { target *-*-* } 21 } 76 77! { dg-warning "Hollerith constant" "const" { target *-*-* } 22 } 78! { dg-warning "Conversion" "conversion" { target *-*-* } 22 } 79 80! { dg-warning "Hollerith constant" "const" { target *-*-* } 23 } 81! { dg-warning "Conversion" "conversion" { target *-*-* } 23 } 82 83! { dg-warning "Hollerith constant" "const" { target *-*-* } 24 } 84! { dg-warning "Conversion" "conversion" { target *-*-* } 24 } 85 86! { dg-warning "Hollerith constant" "const" { target *-*-* } 27 } 87! { dg-warning "Conversion" "conversion" { target *-*-* } 27 } 88 89! { dg-warning "Hollerith constant" "const" { target *-*-* } 28 } 90! { dg-warning "Conversion" "conversion" { target *-*-* } 28 } 91 92! { dg-warning "Hollerith constant" "const" { target *-*-* } 29 } 93! { dg-warning "Conversion" "conversion" { target *-*-* } 29 } 94 95! { dg-warning "Hollerith constant" "const" { target *-*-* } 30 } 96! { dg-warning "Conversion" "conversion" { target *-*-* } 30 } 97 98! { dg-warning "Non-character in FORMAT tag" "" { target *-*-* } 37 } 99 100! { dg-warning "Non-character in FORMAT tag" "" { target *-*-* } 39 } 101 102! { dg-warning "Hollerith constant" "" { target *-*-* } 51 } 103