Package: open-cobol
Version: 0.32-3

Attempting to compile a simple test program produces an internal
compiler error.  I've run this through one or two other compilers
without problems.  Best I can tell, the syntax is all legal.
I've commented out a few non-essential bits, but it doesn't seem to
make any difference.  I also tried making the records fixed instead
of varying length, to no avail.

===============================================================================
sample run:
===============================================================================

yagi 7410 $ cobc -C -Wall -std=mvs test.cob
test.cob: In paragraph '210-COPY':
test.cob:77: warning: READ statement not terminated by END-READ
test.cob:80: warning: IF statement not terminated by END-IF
Unexpected tree tag 1413632580
Aborting compile of test.cob at line 84
codegen.c:802: internal compiler error
Abort (core dumped)

===============================================================================
test.cob:
===============================================================================

       IDENTIFICATION DIVISION.

           PROGRAM-ID.      DRBTEST.
      *    AUTHOR.          Dennis Boone.
      *    DATE-WRITTEN.    15Sep2006.

       ENVIRONMENT DIVISION.

      *    CONFIGURATION SECTION.

      *        SOURCE-COMPUTER. VAX.
      *        OBJECT-COMPUTER. VAX.

           INPUT-OUTPUT SECTION.

               FILE-CONTROL.

                   SELECT TESTFILEI
                       ASSIGN TO INFILE
                       ORGANIZATION IS SEQUENTIAL.

                   SELECT TESTFILEO
                       ASSIGN TO OUTFILE
                       ORGANIZATION IS SEQUENTIAL.

       DATA DIVISION.

           FILE SECTION.

               FD TESTFILEI
                   RECORD IS VARYING IN SIZE
                       FROM 0 TO 256 CHARACTERS
                       DEPENDING ON REC-LEN.
      *            LABEL RECORDS ARE OMITTED
      *            DATA RECORD IS TFIREC.
               01 TFIREC.
                  03 ISTR                   PIC X(256).

               FD TESTFILEO
                   RECORD IS VARYING IN SIZE
                       FROM 0 TO 256 CHARACTERS
                       DEPENDING ON REC-LEN.
      *            LABEL RECORDS ARE OMITTED
      *            DATA RECORD IS TFOREC.
               01 TFOREC.
                  03 OSTR                   PIC X(256). 

           WORKING-STORAGE SECTION.

               77 TFI-STATUS                PIC 9.
               77 REC-CNT                   PIC 9(9).
               77 REC-LEN                   PIC 9(9).

       PROCEDURE DIVISION.

       100-MAIN.

           PERFORM 200-FILE-SETUP.
           MOVE 0 TO TFI-STATUS.
           PERFORM 210-COPY
               VARYING REC-CNT FROM 0 BY 1
               UNTIL TFI-STATUS IS GREATER THAN 0.
           CLOSE TESTFILEI.
           CLOSE TESTFILEO.
           DISPLAY REC-CNT, ' RECORDS COPIED.'.
           EXIT PROGRAM.

       200-FILE-SETUP.

           OPEN INPUT TESTFILEI.
           OPEN OUTPUT TESTFILEO.

       210-COPY.

           MOVE SPACES TO ISTR.
           MOVE SPACES TO OSTR.
           READ TESTFILEI RECORD
               AT END MOVE 1 TO TFI-STATUS.
           MOVE ISTR TO OSTR.
           IF TFI-STATUS = 0
               WRITE TFOREC.

       END PROGRAM DRBTEST.

===============================================================================
test.c:
===============================================================================

/* Generated from test.cob by cobc 0.32 */

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <libcob.h>

#include "test.c.h"

static int DRBTEST_ (int);

int
DRBTEST ()
{
  return DRBTEST_ (0);
}

static int
DRBTEST_ (int entry)
{
  static int initialized = 0;
  static cob_module module = { NULL, NULL, 0, '.', '$', ',', 1, 0, 0};


  /* Files */

  static cob_file h_TESTFILEI = {0, 1, 0, 0, 0, &c_20, 


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to