1! RUN: %python %S/test_errors.py %s %flang_fc1 2 character(20), parameter :: kp_ok = "(4P,E20.5,E15.5)" 3 character(20), parameter :: kp_xx = "(4P,E20.5,E15.2)" 4 5 write(*,*) 6 write(*,'()') 7 write(*,'(A)') 8 write(*,'(2X:2X)') 9 write(*,'(2X/2X)') 10 write(*,'(3/2X)') 11 write(*,'(3PF5.2)') 12 write(*,'(+3PF5.2)') 13 write(*,'(-3PF5.2)') 14 write(*,'(000p,10p,0p)') 15 write(*,'(3P7D5.2)') 16 write(*,'(3P,7F5.2)') 17 write(*,'(2X,(i3))') 18 write(*,'(5X,*(2X,I2))') 19 write(*,'(5X,*(2X,DT))') 20 write(*,'(*(DT))') 21 write(*,'(*(DT"value"))') 22 write(*,'(*(DT(+1,0,-1)))') 23 write(*,'(*(DT"value"(+1,000,-1)))') 24 write(*,'(*(DT(0)))') 25 write(*,'(S,(RZ),2E10.3)') 26 write(*,'(7I2)') 27 write(*,'(07I02)') 28 write(*,'(07I02.01)') 29 write(*,'(07I02.02)') 30 write(*,'(I0)') 31 write(*,'(G4.2)') 32 write(*,'(G0.8)') 33 write(*,'(T3)') 34 write(*,'("abc")') 35 write(*,'("""abc""")') 36 write(*,'("a""""bc", 2x)') 37 write(*,'(3Habc)') 38 write(*,'(3Habc, 2X, 3X)') 39 write(*,'(987654321098765432X)') 40 write(*,'($)') 41 write(*,'(\)') 42 write(*,'(RZ,RU,RP,RN,RD,RC,SS,SP,S,3G15.3e2)') 43 write(*, '(' // achar( 9) // ')') ! horizontal tab 44 write(*, '(' // achar(11) // ')') ! vertical tab 45 write(*, '(' // achar(32) // ')') ! space 46 write(*, kp_ok) 47 write(*, '(-4P,E20.5,E15.5)') 48 write(*, '(D20.0)') 49 50 ! C1302 warnings; no errors 51 write(*,'(3P7I2)') 52 write(*,'(5X i3)') 53 write(*,'(XEN)') 54 55 !ERROR: Empty format expression 56 write(*,"") 57 58 !ERROR: Empty format expression 59 write(*,"" // '' // "") 60 61 !ERROR: Format expression must have an initial '(' 62 write(*,'I3') 63 64 !ERROR: Unexpected '+' in format expression 65 write(*,'(+7I2)') 66 67 !ERROR: Unexpected '-' in format expression 68 write(*,'(-7I2)') 69 70 !ERROR: 'P' edit descriptor must have a scale factor 71 write(*,'(P7F5.2)') 72 73 !ERROR: 'P' edit descriptor must have a scale factor 74 write(*,'(P7F' // '5.2)') 75 76 !ERROR: Unexpected integer constant 77 write(*,'(X,3,3L4)') 78 79 !ERROR: Unexpected ',' before ')' in format expression 80 write(*,'(X,i3,)') 81 82 !ERROR: Unexpected ',' in format expression 83 write(*,'(X,i3,,)') 84 85 !ERROR: Unexpected ',' in format expression 86 !ERROR: Unexpected ',' before ')' in format expression 87 write(*,'(X,i3,,,)') 88 89 !ERROR: Unexpected ',' before ')' in format expression 90 write(*,'(X,(i3,))') 91 92 !ERROR: Unexpected '*' in format expression 93 write(*,'(*)') 94 95 !ERROR: Expected integer constant in 'DT' edit descriptor v-list 96 write(*,'(*(DT(+1,0,=1)))') 97 98 !ERROR: Expected integer constant in 'DT' edit descriptor v-list 99 write(*,'(DT(1,0,+))') 100 101 !ERROR: Expected integer constant in 'DT' edit descriptor v-list 102 write(*,'(DT(1,0,*))') 103 104 !ERROR: Expected ',' or ')' in 'DT' edit descriptor v-list 105 write(*,'(DT(1,0,2*))') 106 107 !ERROR: Expected ',' or ')' in 'DT' edit descriptor v-list 108 write(*,'(DT(1,0,2*,+,?))') 109 110 !ERROR: Expected integer constant in 'DT' edit descriptor v-list 111 !ERROR: Unterminated format expression 112 write(*,'(DT(1,0,*)') 113 114 !ERROR: Expected ',' or ')' in 'DT' edit descriptor v-list 115 !ERROR: Unterminated format expression 116 write(*,'(DT(1,0,2*,+,?)') 117 118 !ERROR: Unexpected '?' in format expression 119 !ERROR: Unexpected ',' in format expression 120 write(*,'(?,*(DT(+1,,1)))') 121 122 !ERROR: Repeat specifier before unlimited format item list 123 !ERROR: Unlimited format item list must contain a data edit descriptor 124 write(*,'(5X,3*(2(X)))') 125 126 !ERROR: Nested unlimited format item list 127 write(*,'(D12.2,(*(F10.2)))') 128 129 !ERROR: Unlimited format item list must contain a data edit descriptor 130 write(*,'(5X,*(2(X)))') 131 132 !ERROR: Character in format after unlimited format item list 133 write(*,'(*(Z5),*(2F20.3))') 134 135 !ERROR: Character in format after unlimited format item list 136 write(*,'(*(B5),*(2(I5)))') 137 138 !ERROR: Character in format after unlimited format item list 139 write(*,'(*(I5), D12.7)') 140 141 !ERROR: 'I' edit descriptor 'm' value is greater than 'w' value 142 write(*,'(07I02.0 3)') 143 144 !ERROR: 'Z' edit descriptor 'm' value is greater than 'w' value 145 write(*,'(07Z02.4)') 146 147 !ERROR: 'I' edit descriptor repeat specifier must be positive 148 write(*,'(0I2)') 149 150 !ERROR: List repeat specifier must be positive 151 write(*,'(0(I2))') 152 153 !ERROR: List repeat specifier must be positive 154 write(*,'(000(I2))') 155 156 !ERROR: List repeat specifier must be positive 157 !ERROR: 'I' edit descriptor repeat specifier must be positive 158 write(*,'(0(0I2))') 159 160 !ERROR: Kind parameter '_' character in format expression 161 write(*,'(5_4X)') 162 163 !ERROR: Unexpected '+' in format expression 164 write(*,'(I+3)') 165 166 !ERROR: Unexpected '-' in format expression 167 write(*,'(I-3)') 168 169 !ERROR: Unexpected '-' in format expression 170 write(*,'(I-3, X)') 171 172 !ERROR: 'X' edit descriptor must have a positive position value 173 write(*,'(0X)') 174 175 !ERROR: Unexpected 'Y' in format expression 176 write(*,'(XY)') 177 178 !ERROR: Unexpected 'Y' in format expression 179 write(*,'(XYM)') 180 181 !ERROR: Unexpected 'M' in format expression 182 write(*,'(MXY)') 183 184 !ERROR: Unexpected 'R' in format expression 185 !ERROR: Unexpected 'R' in format expression 186 write(*,"(RR, RV)") 187 188 !ERROR: Unexpected '-' in format expression 189 !ERROR: Unexpected 'Y' in format expression 190 write(*,'(I-3, XY)') 191 192 !ERROR: 'A' edit descriptor 'w' value must be positive 193 write(*,'(A0)') 194 195 write(*,'(L0)') ! warning, not error 196 197 !ERROR: Expected 'G' edit descriptor '.d' value 198 write(*,'(G4)') 199 200 !ERROR: A 'G0' edit descriptor must not have an 'e' value 201 write(*,'(G0.8e)') 202 203 !ERROR: A 'G0' edit descriptor must not have an 'e' value 204 write(*,'(G0.8e2)') 205 206 !ERROR: Kind parameter '_' character in format expression 207 write(*,'(I5_4)') 208 209 !ERROR: Kind parameter '_' character in format expression 210 write(*,'(5_4P)') 211 212 !ERROR: 'T' edit descriptor must have a positive position value 213 write(*,'(T0)') 214 215 !ERROR: 'T' edit descriptor must have a positive position value 216 !ERROR: Unterminated format expression 217 write(*,'(T0') 218 219 !ERROR: 'TL' edit descriptor must have a positive position value 220 !ERROR: 'T' edit descriptor must have a positive position value 221 !ERROR: Expected 'EN' edit descriptor 'd' value after '.' 222 write(*,'(TL0,T0,EN12.)') 223 224 !ERROR: Expected 'EX' edit descriptor 'e' value after 'E' 225 write(*,'(EX12.3e2, EX12.3e)') 226 227 !ERROR: 'TL' edit descriptor must have a positive position value 228 !ERROR: 'T' edit descriptor must have a positive position value 229 !ERROR: Unterminated format expression 230 write(*,'(TL00,T000') 231 232 !ERROR: Unterminated format expression 233 write(*,'(') 234 235 !ERROR: Unterminated format expression 236 write(*,'(-') 237 238 !ERROR: Unterminated format expression 239 write(*,'(I3+') 240 241 !ERROR: Unterminated format expression 242 write(*,'(I3,-') 243 244 !ERROR: Unexpected integer constant 245 write(*,'(3)') 246 247 !ERROR: Unexpected ',' before ')' in format expression 248 write(*,'(3,)') 249 250 !ERROR: Unexpected ',' in format expression 251 write(*,'(,3)') 252 253 !ERROR: Unexpected ',' before ')' in format expression 254 write(*,'(,)') 255 256 !ERROR: Unterminated format expression 257 write(*,'(X') 258 259 !ERROR: Unterminated format expression 260 write(*,'(XX') ! C1302 warning is not an error 261 262 !ERROR: Unexpected '@' in format expression 263 !ERROR: Unexpected '#' in format expression 264 !ERROR: Unexpected '&' in format expression 265 write(*,'(@@, # ,&&& &&, ignore error 4)') 266 267 !ERROR: Repeat specifier before 'TR' edit descriptor 268 write(*,'(3TR0)') 269 270 !ERROR: 'TR' edit descriptor must have a positive position value 271 write(*,'(TR0)') 272 273 !ERROR: Kind parameter '_' character in format expression 274 write(*,'(3_4X)') 275 276 !ERROR: Kind parameter '_' character in format expression 277 write(*,'(1_"abc")') 278 279 !ERROR: Unterminated string 280 !ERROR: Unterminated format expression 281 write(*,'("abc)') 282 283 !ERROR: Unexpected '_' in format expression 284 write(*,'("abc"_1)') 285 286 !ERROR: Unexpected '@' in format expression 287 write(*,'(3Habc, 3@, X)') 288 289 !ERROR: Unterminated format expression 290 write(*,'(4Habc)') 291 292 !ERROR: Unterminated 'H' edit descriptor 293 !ERROR: Unterminated format expression 294 write(*,'(5Habc)') 295 296 !ERROR: Unterminated 'H' edit descriptor 297 !ERROR: Unterminated format expression 298 write(*,'(50Habc)') 299 300 !ERROR: Integer overflow in format expression 301 write(*,'(9876543210987654321X)') 302 303 !ERROR: Integer overflow in format expression 304 write(*,'(98765432109876543210X)') 305 306 !ERROR: Integer overflow in format expression 307 write(*,'(I98765432109876543210)') 308 309 !ERROR: Integer overflow in format expression 310 write(*,'(45I20.98765432109876543210, 45I20)') 311 312 !ERROR: Integer overflow in format expression 313 write(*,'(45' // ' I20.9876543' // '2109876543210, 45I20)') 314 315 !ERROR: Repeat specifier before '$' edit descriptor 316 write(*,'(7$)') 317 318 !ERROR: Positive scale factor k (from kP) and width d in a 'E' edit descriptor must satisfy 'k < d+2' 319 write(*, kp_xx) 320 321 !ERROR: Negative scale factor k (from kP) and width d in a 'E' edit descriptor must satisfy '-d < k' 322 write(*, '(-4P,E20.5,E15.2)') 323end 324