gnucobol-users
[Top][All Lists]
Advanced

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

[open-cobol-list] Problem with nested Evaluates since OC 0.32


From: Franklin Ankum
Subject: [open-cobol-list] Problem with nested Evaluates since OC 0.32
Date: Thu Jun 9 00:50:02 2005

Hi Roger,

The following program runs with open-cobol-0.31 but not with open-cobol-0.32.
The new version seems to have problems with nested EVALUATES.
 
Regards Franklin
 
Test with open-cobol-0.31:
---------------------------
/home/fa0018>cobc hallo.cbl
/home/fa0018>./hallo
TEST 1
LNK-ABS-ISSUE
 

Compile with open-cobol-0.32:
---------------------------
/home/fa0018>cobc hallo.cbl
hallo.cbl: In section 'MAIN':
hallo.cbl:40: Error: 88 level invalid here


The program hallo.cbl:
---------------------------
       IDENTIFICATION DIVISION.
       PROGRAM-ID. HALLO.

       DATA DIVISION.

       WORKING-STORAGE SECTION.
       01 FUNKTION    PIC X(32) VALUE 'TEST 1'.
       01 ABS-STATUS  PIC X(5)  VALUE 'ISSUE'.
       01 TMP-PTR USAGE IS POINTER VALUE NULL.

       LINKAGE SECTION.

       01 LNK-FUNKTION             PIC X(32).
       01 LNK-ABS-STATUS                   PIC X(05).
          88 LNK-ABS-ISSUE                   VALUE 'ISSUE'.
          88 LNK-ABS-RECEIVE                 VALUE 'RECEI'.
          88 LNK-ABS-SEND                    VALUE 'SEND '.

       PROCEDURE DIVISION.
       MAIN SECTION.

           SET TMP-PTR TO ADDRESS OF FUNKTION
           SET ADDRESS OF LNK-FUNKTION TO TMP-PTR

           SET TMP-PTR TO ADDRESS OF ABS-STATUS
           SET ADDRESS OF LNK-ABS-STATUS TO TMP-PTR

           DISPLAY LNK-FUNKTION

           EVALUATE TRUE
           WHEN LNK-ABS-RECEIVE

             EVALUATE LNK-FUNKTION
             WHEN 'INIT-KIDDATA'
                  DISPLAY 'INIT-KIDDATA'
             WHEN OTHER
                  DISPLAY 'OTHER 1'
             END-EVALUATE

           WHEN  LNK-ABS-ISSUE
                DISPLAY 'LNK-ABS-ISSUE'

           WHEN  OTHER
                DISPLAY 'OTHER 2'
           END-EVALUATE

           GOBACK.

reply via email to

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