bug-gnucobol
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-GnuCOBOL] Incorrect parsing of numeric-edited values


From: Edward Hart
Subject: Re: [Bug-GnuCOBOL] Incorrect parsing of numeric-edited values
Date: Sat, 13 May 2017 16:52:17 +0100

Shouldn't it be 01 N PIC V999 VALUE 0.

PIC .999 defines a numeric-edited item, which is of alphanumeric category. As it's alphanumeric, the standard requires the VALUE clause only have alphanumeric literals, not numeric literals. However, you're allowed to write MOVE 0 TO N in the procedure division and GnuCOBOL generates a hidden MOVE for each VALUE clause. So it seems strange that you can't have 0 in the VALUE clause.

Edward

On 13 May 2017 at 12:14, Michael D. Setzer II <address@hidden> wrote:
Am I missing something.  Shouldn't it be 01 N PIC V999 VALUE 0.
Changing the code to that makes it compile and run without an issue that I
can see.


On 13 May 2017 at 11:55, Edward Hart wrote:

From:   Edward Hart <address@hidden>
Date sent:      Sat, 13 May 2017 11:55:48 +0100
To:     David Newall <address@hidden>
Subject:        Re: [Bug-GnuCOBOL] Incorrect parsing of numeric-edited values
Copies to:      address@hidden

>
> Hi David,
>
> Thanks for the bug report and patch. This is technically extension, but it's a very innocuous one
> and it's supported by Micro Focus (see VALUE Clause, General Rule 1.b). I'll commit this
> immediately.
>
> Edward
>
> On 13 May 2017 at 10:56, David Newall <address@hidden> wrote:
>     Hi all,
>
>     I believe it's bug:
>
>    address@hidden cat test-pic.cbl
>         IDENTIFICATION DIVISION.
>         PROGRAM-ID. TEST-PIC.
>
>         DATA DIVISION.
>         WORKING-STORAGE SECTION.
>         01 N  PIC .999 VALUE 0.
>
>         PROCEDURE DIVISION.
>            START-PROCEDURE SECTION.
>         000-TOP.
>           DISPLAY 'N:', N.
>
>         END PROGRAM TEST-PIC.
>
>    address@hidden cobc -x test-pic.cbl
>     test-pic.cbl: 6: warning: alphanumeric value is expected
>
>     If I'm right (about it being a bug), the problem is in typck.c; and because of
>     the "TODO" comment, I think it's something that slipped through the cracks.
>     I think NUMERIC-EDITED could be parsed the same as NUMERIC is.
>
>     I'm using r1560. I've attached my suggested patch.
>
>     Cheers,
>
>     David
>
>


+----------------------------------------------------------+
  Michael D. Setzer II -  Computer Science Instructor
  Guam Community College  Computer Center
  mailto:address@hidden
  mailto:address@hidden
  Guam - Where America's Day Begins
  G4L Disk Imaging Project maintainer
  http://sourceforge.net/projects/g4l/
+----------------------------------------------------------+

http://setiathome.berkeley.edu (Original)
Number of Seti Units Returned:  19,471
Processing time:  32 years, 290 days, 12 hours, 58 minutes
(Total Hours: 287,489)

address@hidden CREDITS
ABC         16611686.340441 | EINSTEIN   135271960.288695
ROSETTA     61251302.766601 | SETI       105677196.318525




reply via email to

[Prev in Thread] Current Thread [Next in Thread]