https://gcc.gnu.org/g:af60ef97ec110b03745e42b614c315563101a6e2
commit r17-4238-gaf60ef97ec110b03745e42b614c315563101a6e2 Author: Robert Dubner <[email protected]> Date: Sat Sep 12 14:03:48 2026 -0400 cobol: Correct and expand tests with CURRENCY symbols and ROUNDING. gcc/testsuite/ChangeLog: * cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob: Use @ not U. * cobol.dg/group2/floating-point_ADD_FORMAT_1.cob: Test NEAREST-AWAY-FROM-ZERO. * cobol.dg/group2/floating-point_ADD_FORMAT_1.out: Test DISPLAY. Diff: --- .../group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob | 8 +++--- .../group2/floating-point_ADD_FORMAT_1.cob | 29 ++++++++++++++++------ .../group2/floating-point_ADD_FORMAT_1.out | 14 +++++------ 3 files changed, 33 insertions(+), 18 deletions(-) diff --git a/gcc/testsuite/cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob b/gcc/testsuite/cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob index ebbcd3228020..6c742266f396 100644 --- a/gcc/testsuite/cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob +++ b/gcc/testsuite/cobol.dg/group2/CURRENCY_SIGN_WITH_PICTURE_SYMBOL.cob @@ -7,15 +7,15 @@ CONFIGURATION SECTION. SPECIAL-NAMES. *> note the space after EUR / before ct. - CURRENCY SIGN IS "EUR " WITH PICTURE SYMBOL "U", - CURRENCY SIGN IS " ct (EUR)" WITH PICTURE SYMBOL "c", + CURRENCY SIGN IS "EUR " WITH PICTURE SYMBOL "@", + CURRENCY SIGN IS " ct (EUR)" WITH PICTURE SYMBOL "&", Currency Sign is "$US" with Picture Symbol "$". DATA DIVISION. WORKING-STORAGE SECTION. 77 euro-val pic 99v99. - 77 EUROS PIC U99v99. - 77 cents PIC 9,999c. + 77 EUROS PIC @99v99. + 77 cents PIC 9,999&. 77 DOLLARS Pic $$,$$9.99. PROCEDURE DIVISION. diff --git a/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.cob b/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.cob index baf22560d95b..968efe768e72 100644 --- a/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.cob +++ b/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.cob @@ -20,6 +20,13 @@ 01 D5 FLOAT-SHORT . 01 D6 FLOAT-LONG . 01 D7 FLOAT-EXTENDED . + 01 D1D PIC 999999v99. + 01 D2D PIC 999999v99. + 01 D3D PIC 999999v99. + 01 D4D PIC 999999v99. + 01 D5D PIC 999999v99. + 01 D6D PIC 999999v99. + 01 D7D PIC 999999v99. PROCEDURE DIVISION. MOVE S1 TO D1 ADD S1 TO D1 MOVE S2 TO D2 ADD S2 TO D2 @@ -79,13 +86,21 @@ PERFORM DISPLAY-D. GOBACK. DISPLAY-D. - DISPLAY D1 SPACE - D2 SPACE - D3 SPACE - D4 SPACE - D5 SPACE - D6 SPACE - D7 . + ADD D1 TO D1D ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO + ADD D2 TO D2D ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO + ADD D3 TO D3D ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO + ADD D4 TO D4D ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO + ADD D5 TO D5D ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO + ADD D6 TO D6D ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO + ADD D7 TO D7D ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO + DISPLAY D1D SPACE + D2D SPACE + D3D SPACE + D4D SPACE + D5D SPACE + D6D SPACE + D7D . MOVE 0 TO D1 D2 D3 D4 D5 D6 D7. + MOVE 0 TO D1D D2D D3D D4D D5D D6D D7D. END PROGRAM float-arith1. diff --git a/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.out b/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.out index d48643c9c19f..e572b9d231f3 100644 --- a/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.out +++ b/gcc/testsuite/cobol.dg/group2/floating-point_ADD_FORMAT_1.out @@ -1,8 +1,8 @@ -246.90 246.90 246.90 246.90 246.8999939 246.900000000000006 246.9000000000000000000000000000000049 -246.90 246.90 246.90 246.89 246.8999939 246.900000000000006 246.9000000000000000000000000000000049 -246.90 246.90 246.89 246.90 246.8999939 246.900000000000006 246.9000000000000000000000000000000049 -246.90 246.89 246.90 246.90 246.8999939 246.900000000000006 246.9000000000000000000000000000000049 -246.89 246.90 246.90 246.90 246.8999939 246.900000000000006 246.9000000000000000000000000000000049 -246.90 246.90 246.90 246.90 246.8999939 246.900000000000006 246.8999969482421874999999999999999901 -246.90 246.90 246.90 246.90 246.8999939 246.899996948242176 246.9000000000000028421709430404007336 +000246.90 000246.90 000246.90 000246.90 000246.90 000246.90 000246.90 +000246.90 000246.90 000246.90 000246.89 000246.90 000246.90 000246.90 +000246.90 000246.90 000246.89 000246.90 000246.90 000246.90 000246.90 +000246.90 000246.89 000246.90 000246.90 000246.90 000246.90 000246.90 +000246.89 000246.90 000246.90 000246.90 000246.90 000246.90 000246.90 +000246.90 000246.90 000246.90 000246.90 000246.90 000246.90 000246.90 +000246.90 000246.90 000246.90 000246.90 000246.90 000246.90 000246.90
