gnucobol-users
[Top][All Lists]
Advanced

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

[open-cobol-list] runtime error with open cobol


From: David Korn
Subject: [open-cobol-list] runtime error with open cobol
Date: Tue Feb 17 15:49:15 2004

cc:  address@hidden
Subject: runtime error with open cobol
--------

I have enclosed a program below that produces different results
with openCobol and IBM MVS Cobol.  I was told that the IBM
version is correct.

The output with IBM is
================cut here=======================
 *** TEST RUN ***
AW-SYSUT1-WA1 =  01  QD2E-FILE-ACS-REQST-REC.

AW-SYSUT1-WA2 =  01  QD2E-FILE-ACS-REQST-REC.

1 AW-SYSUT1-WA1-A =  01  QD2E-FILE-ACS-REQST-REC.
1 AW-SYSUT1-WA1-B =
2 AW-SYSUT1-WA1-A =  01
2 AW-SYSUT1-WA1-B = QD2E-
================cut here=======================

and with OpenCobol

================cut here=======================
AW-SYSUT1-WA1 =  01  QD2E-FILE-ACS-REQST-REC.                                   
  
AW-SYSUT1-WA2 =  01  QD2E-FILE-ACS-REQST-REC.                                   
                                                                                
                  
1 AW-SYSUT1-WA1-A =  01  QD2E-FILE-ACS-REQST-REC.                               
      
1 AW-SYSUT1-WA1-B =                               
2 AW-SYSUT1-WA1-A =  01  
2 AW-SYSUT1-WA1-B =
================cut here=======================

Note that the last line differs.


=====================Here is the program prog9.cob=========================
       IDENTIFICATION DIVISION.
       PROGRAM-ID.     PROG9.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  SM-DISPLACEMENT-CELLS.
           05  SM-SYSUT1-WA1-A         PIC S9(5)  VALUE 66   COMP.
           05  SM-SYSUT1-WA1-B         PIC S9(5)  VALUE 30   COMP.
           05  SM-SYSUT1-WA1-C         PIC S9(5)  VALUE 30   COMP.
           05  SM-SYSUT1-WA1-X         PIC S9(5)  VALUE 66   COMP.
           05  SM-SYSUT2-WA1-A         PIC S9(5)  VALUE 66   COMP.
           05  SM-SYSUT2-WA1-B         PIC S9(5)  VALUE 30   COMP.
           05  SM-SYSUT2-WA1-C         PIC S9(5)  VALUE 30   COMP.
           05  SM-SYSUT2-WA1-X         PIC S9(5)  VALUE 66   COMP.

       01  AW-ARG-COMPARE-AREA.
           05  AW-CARD-DATA            PIC X(30)  VALUE SPACES.

       01  AW-ARG-AREA.
           05  AW-ARG-LENGTH           PIC S9(5)  VALUE ZERO COMP.

        01  AW-SYSUT1-WA1.
            05  AW-SYSUT1-WA1-A.
                10  AW-INWA1-A          PIC X      OCCURS 0 TO 66 TIMES
                                           DEPENDING ON SM-SYSUT1-WA1-A.
            05  AW-SYSUT1-WA1-B.
                10  AW-INWA1-B          PIC X      OCCURS 0 TO 30 TIMES
                                          DEPENDING ON SM-SYSUT1-WA1-B.
            05  AW-SYSUT1-WA1-C.
                10  AW-INWA1-C          PIC X      OCCURS 0 TO 66 TIMES
                                          DEPENDING ON SM-SYSUT1-WA1-C.

       01  AW-SYSUT1-WA1-TRAILER       PIC X(162) VALUE SPACES.

       01  AW-SYSUT1-WA2.
           05  AW-SYSUT1-WA2-BYTE      PIC X      OCCURS 162 TIMES
                                        INDEXED BY IX-AW-SYSUT1-BYTE.
       01  AW-SYSUT2-WA1.
            05  AW-SYSUT2-WA1-A.
                10  AW-OTWA1-A          PIC X      OCCURS 0 TO 66 TIMES
                                           DEPENDING ON SM-SYSUT2-WA1-A.
            05  AW-SYSUT2-WA1-B.
                10  AW-OTWA1-B          PIC X      OCCURS 0 TO 30 TIMES
                                          DEPENDING ON SM-SYSUT2-WA1-B.
            05  AW-SYSUT1-WA1-C.
                10  AW-OTWA1-C          PIC X      OCCURS 0 TO 66 TIMES
                                          DEPENDING ON SM-SYSUT2-WA1-C.

       01  AW-SYSUT1-WA2-TRAILER       PIC X(162) VALUE SPACES.


       PROCEDURE DIVISION.
           DISPLAY ' *** TEST RUN ***'
           MOVE ' 01  QD2E-FILE-ACS-REQST-REC.' TO AW-SYSUT1-WA1
                                                   AW-SYSUT1-WA2.
           DISPLAY 'AW-SYSUT1-WA1 = ' AW-SYSUT1-WA1
           DISPLAY 'AW-SYSUT1-WA2 = ' AW-SYSUT1-WA2

           MOVE 6  TO SM-SYSUT1-WA1-X.
           SET  IX-AW-SYSUT1-BYTE TO 6.
           DISPLAY '1 AW-SYSUT1-WA1-A = '  AW-SYSUT1-WA1-A
           DISPLAY '1 AW-SYSUT1-WA1-B = '  AW-SYSUT1-WA1-B
           COMPUTE SM-SYSUT1-WA1-A = SM-SYSUT1-WA1-X - 1
           MOVE 5               TO SM-SYSUT1-WA1-B
           DISPLAY '2 AW-SYSUT1-WA1-A = '  AW-SYSUT1-WA1-A
           DISPLAY '2 AW-SYSUT1-WA1-B = '  AW-SYSUT1-WA1-B
           MOVE AW-SYSUT1-WA1-B TO AW-CARD-DATA.
           GOBACK.
=====================cut here=========================

David Korn
address@hidden


reply via email to

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