Files
RedBear-OS/local/recipes/dev/libclc/source/flang/test/Semantics/io08.f90
T
vasilito cb424d7448 build: static patch-sanity linter (shift-left the malformed-patch class)
verify-patch-sanity.py validates every active recipe .patch has internally-
consistent hunk line counts — catching the 'malformed patch at line N' failure
at commit/CI/preflight time instead of hours into a cook. This cycle hit that
class three times (qtwaylandscanner, sddm, xwayland), each only discovered when
cookbook tried to apply the patch.

Running it across the repo found 29 latent malformed patches (validated against
GNU patch: e.g. relibc/P3-sysv-ipc reproduces 'malformed patch at line 22').
They were harmless only because they sit in vendored recipes (baked, not re-
applied) — but would fail on any version-bump re-derivation. --fix recounts the
hunk headers (body untouched) and repaired all 29.

Wired into build-preflight.sh (Phase 1.0D) and redbear-ci.yml, with a unit test
(test-patch-sanity.sh). Skips archived/legacy trees and unvalidatable formats
(empty placeholders, bare-@@ git hunks).
2026-08-01 05:13:02 +03:00

324 lines
8.7 KiB
Fortran

! RUN: %python %S/test_errors.py %s %flang_fc1
character(20), parameter :: kp_ok = "(4P,E20.5,E15.5)"
character(20), parameter :: kp_xx = "(4P,E20.5,E15.2)"
write(*,*)
write(*,'()')
write(*,'(A)')
write(*,'(2X:2X)')
write(*,'(2X/2X)')
write(*,'(3/2X)')
write(*,'(3PF5.2)')
write(*,'(+3PF5.2)')
write(*,'(-3PF5.2)')
write(*,'(000p,10p,0p)')
write(*,'(3P7D5.2)')
write(*,'(3P,7F5.2)')
write(*,'(2X,(i3))')
write(*,'(5X,*(2X,I2))')
write(*,'(5X,*(2X,DT))')
write(*,'(*(DT))')
write(*,'(*(DT"value"))')
write(*,'(*(DT(+1,0,-1)))')
write(*,'(*(DT"value"(+1,000,-1)))')
write(*,'(*(DT(0)))')
write(*,'(S,(RZ),2E10.3)')
write(*,'(7I2)')
write(*,'(07I02)')
write(*,'(07I02.01)')
write(*,'(07I02.02)')
write(*,'(I0)')
write(*,'(G4.2)')
write(*,'(G0.8)')
write(*,'(T3)')
write(*,'("abc")')
write(*,'("""abc""")')
write(*,'("a""""bc", 2x)')
write(*,'(3Habc)')
write(*,'(3Habc, 2X, 3X)')
write(*,'(987654321098765432X)')
write(*,'($)')
write(*,'(\)')
write(*,'(RZ,RU,RP,RN,RD,RC,SS,SP,S,3G15.3e2)')
write(*, '(' // achar( 9) // ')') ! horizontal tab
write(*, '(' // achar(11) // ')') ! vertical tab
write(*, '(' // achar(32) // ')') ! space
write(*, kp_ok)
write(*, '(-4P,E20.5,E15.5)')
write(*, '(D20.0)')
! C1302 warnings; no errors
write(*,'(3P7I2)')
write(*,'(5X i3)')
write(*,'(XEN)')
!ERROR: Empty format expression
write(*,"")
!ERROR: Empty format expression
write(*,"" // '' // "")
!ERROR: Format expression must have an initial '('
write(*,'I3')
!ERROR: Unexpected '+' in format expression
write(*,'(+7I2)')
!ERROR: Unexpected '-' in format expression
write(*,'(-7I2)')
!ERROR: 'P' edit descriptor must have a scale factor
write(*,'(P7F5.2)')
!ERROR: 'P' edit descriptor must have a scale factor
write(*,'(P7F' // '5.2)')
!ERROR: Unexpected integer constant
write(*,'(X,3,3L4)')
!ERROR: Unexpected ',' before ')' in format expression
write(*,'(X,i3,)')
!ERROR: Unexpected ',' in format expression
write(*,'(X,i3,,)')
!ERROR: Unexpected ',' in format expression
!ERROR: Unexpected ',' before ')' in format expression
write(*,'(X,i3,,,)')
!ERROR: Unexpected ',' before ')' in format expression
write(*,'(X,(i3,))')
!ERROR: Unexpected '*' in format expression
write(*,'(*)')
!ERROR: Expected integer constant in 'DT' edit descriptor v-list
write(*,'(*(DT(+1,0,=1)))')
!ERROR: Expected integer constant in 'DT' edit descriptor v-list
write(*,'(DT(1,0,+))')
!ERROR: Expected integer constant in 'DT' edit descriptor v-list
write(*,'(DT(1,0,*))')
!ERROR: Expected ',' or ')' in 'DT' edit descriptor v-list
write(*,'(DT(1,0,2*))')
!ERROR: Expected ',' or ')' in 'DT' edit descriptor v-list
write(*,'(DT(1,0,2*,+,?))')
!ERROR: Expected integer constant in 'DT' edit descriptor v-list
!ERROR: Unterminated format expression
write(*,'(DT(1,0,*)')
!ERROR: Expected ',' or ')' in 'DT' edit descriptor v-list
!ERROR: Unterminated format expression
write(*,'(DT(1,0,2*,+,?)')
!ERROR: Unexpected '?' in format expression
!ERROR: Unexpected ',' in format expression
write(*,'(?,*(DT(+1,,1)))')
!ERROR: Repeat specifier before unlimited format item list
!ERROR: Unlimited format item list must contain a data edit descriptor
write(*,'(5X,3*(2(X)))')
!ERROR: Nested unlimited format item list
write(*,'(D12.2,(*(F10.2)))')
!ERROR: Unlimited format item list must contain a data edit descriptor
write(*,'(5X,*(2(X)))')
!ERROR: Character in format after unlimited format item list
write(*,'(*(Z5),*(2F20.3))')
!ERROR: Character in format after unlimited format item list
write(*,'(*(B5),*(2(I5)))')
!ERROR: Character in format after unlimited format item list
write(*,'(*(I5), D12.7)')
!ERROR: 'I' edit descriptor 'm' value is greater than 'w' value
write(*,'(07I02.0 3)')
!ERROR: 'Z' edit descriptor 'm' value is greater than 'w' value
write(*,'(07Z02.4)')
!ERROR: 'I' edit descriptor repeat specifier must be positive
write(*,'(0I2)')
!ERROR: List repeat specifier must be positive
write(*,'(0(I2))')
!ERROR: List repeat specifier must be positive
write(*,'(000(I2))')
!ERROR: List repeat specifier must be positive
!ERROR: 'I' edit descriptor repeat specifier must be positive
write(*,'(0(0I2))')
!ERROR: Kind parameter '_' character in format expression
write(*,'(5_4X)')
!ERROR: Unexpected '+' in format expression
write(*,'(I+3)')
!ERROR: Unexpected '-' in format expression
write(*,'(I-3)')
!ERROR: Unexpected '-' in format expression
write(*,'(I-3, X)')
!ERROR: 'X' edit descriptor must have a positive position value
write(*,'(0X)')
!ERROR: Unexpected 'Y' in format expression
write(*,'(XY)')
!ERROR: Unexpected 'Y' in format expression
write(*,'(XYM)')
!ERROR: Unexpected 'M' in format expression
write(*,'(MXY)')
!ERROR: Unexpected 'R' in format expression
!ERROR: Unexpected 'R' in format expression
write(*,"(RR, RV)")
!ERROR: Unexpected '-' in format expression
!ERROR: Unexpected 'Y' in format expression
write(*,'(I-3, XY)')
!ERROR: 'A' edit descriptor 'w' value must be positive
write(*,'(A0)')
write(*,'(L0)') ! warning, not error
!ERROR: Expected 'G' edit descriptor '.d' value
write(*,'(G4)')
!ERROR: A 'G0' edit descriptor must not have an 'e' value
write(*,'(G0.8e)')
!ERROR: A 'G0' edit descriptor must not have an 'e' value
write(*,'(G0.8e2)')
!ERROR: Kind parameter '_' character in format expression
write(*,'(I5_4)')
!ERROR: Kind parameter '_' character in format expression
write(*,'(5_4P)')
!ERROR: 'T' edit descriptor must have a positive position value
write(*,'(T0)')
!ERROR: 'T' edit descriptor must have a positive position value
!ERROR: Unterminated format expression
write(*,'(T0')
!ERROR: 'TL' edit descriptor must have a positive position value
!ERROR: 'T' edit descriptor must have a positive position value
!ERROR: Expected 'EN' edit descriptor 'd' value after '.'
write(*,'(TL0,T0,EN12.)')
!ERROR: Expected 'EX' edit descriptor 'e' value after 'E'
write(*,'(EX12.3e2, EX12.3e)')
!ERROR: 'TL' edit descriptor must have a positive position value
!ERROR: 'T' edit descriptor must have a positive position value
!ERROR: Unterminated format expression
write(*,'(TL00,T000')
!ERROR: Unterminated format expression
write(*,'(')
!ERROR: Unterminated format expression
write(*,'(-')
!ERROR: Unterminated format expression
write(*,'(I3+')
!ERROR: Unterminated format expression
write(*,'(I3,-')
!ERROR: Unexpected integer constant
write(*,'(3)')
!ERROR: Unexpected ',' before ')' in format expression
write(*,'(3,)')
!ERROR: Unexpected ',' in format expression
write(*,'(,3)')
!ERROR: Unexpected ',' before ')' in format expression
write(*,'(,)')
!ERROR: Unterminated format expression
write(*,'(X')
!ERROR: Unterminated format expression
write(*,'(XX') ! C1302 warning is not an error
!ERROR: Unexpected '@' in format expression
!ERROR: Unexpected '#' in format expression
!ERROR: Unexpected '&' in format expression
write(*,'(@@, # ,&&& &&, ignore error 4)')
!ERROR: Repeat specifier before 'TR' edit descriptor
write(*,'(3TR0)')
!ERROR: 'TR' edit descriptor must have a positive position value
write(*,'(TR0)')
!ERROR: Kind parameter '_' character in format expression
write(*,'(3_4X)')
!ERROR: Kind parameter '_' character in format expression
write(*,'(1_"abc")')
!ERROR: Unterminated string
!ERROR: Unterminated format expression
write(*,'("abc)')
!ERROR: Unexpected '_' in format expression
write(*,'("abc"_1)')
!ERROR: Unexpected '@' in format expression
write(*,'(3Habc, 3@, X)')
!ERROR: Unterminated format expression
write(*,'(4Habc)')
!ERROR: Unterminated 'H' edit descriptor
!ERROR: Unterminated format expression
write(*,'(5Habc)')
!ERROR: Unterminated 'H' edit descriptor
!ERROR: Unterminated format expression
write(*,'(50Habc)')
!ERROR: Integer overflow in format expression
write(*,'(9876543210987654321X)')
!ERROR: Integer overflow in format expression
write(*,'(98765432109876543210X)')
!ERROR: Integer overflow in format expression
write(*,'(I98765432109876543210)')
!ERROR: Integer overflow in format expression
write(*,'(45I20.98765432109876543210, 45I20)')
!ERROR: Integer overflow in format expression
write(*,'(45' // ' I20.9876543' // '2109876543210, 45I20)')
!ERROR: Repeat specifier before '$' edit descriptor
write(*,'(7$)')
!ERROR: Positive scale factor k (from kP) and width d in a 'E' edit descriptor must satisfy 'k < d+2'
write(*, kp_xx)
!ERROR: Negative scale factor k (from kP) and width d in a 'E' edit descriptor must satisfy '-d < k'
write(*, '(-4P,E20.5,E15.2)')
end