Joe Howell writes:
>>> Joe Howell <[log in to unmask]> 02/01/99 07:41am >>>
My brain must not be working well this morning. I am working on a Y2K
remediation effort for a client, and we would need to get around the
infamous error quoted below. Yes, I know that older versions of CM
Cobol
did not enforce file sizes in FD's and now NM COBOL 85 does. My
question
is, isn't there a way (COBRUNTIME?) to tell Cobol to ignore this offending
condition? (for the time being, anyway) I looked up the COBRUNTIME
settings on LaserRom and they didn't seem to address this problem.
Any assistance will be most appreciated.
----------------------------------------------------------------------------
The correct $CONTROL option is STAT74. It will cause the run time
library to use 74 entry point errors. Check the example below. The first
program run does not have STAT74, while the second run does.
:BUILD ABC;REC=-80,,F,ASCII
:COB85XLG TESTS
PAGE 0001 COBOL II/iX HP31500A.04.19 [85] Copyright
Hewlett-Packard CO. 1987
00001 COBCNTL 000100* The following are defaults for Compatibility
mode compi
ler.
00002 COBCNTL 000200*CONTROL
LIST,SOURCE,NOCODE,NOCROSSREF,ERRORS=100,NOVERBS,
WARN
00003 COBCNTL 000300*CONTROL
LINES=60,NOMAP,MIXED,QUOTE=",NOSTDWARN,SYNC16,IND
EX16
00004 COBCNTL 000400*
00005 COBCNTL 000500* The following are defaults for Native
compiler.
00006 COBCNTL 000600*
00007 COBCNTL 000700*CONTROL
LIST,SOURCE,NOCODE,NOCROSSREF,ERRORS=100,NOVERBS,
WARN
00008 COBCNTL 000800*CONTROL
LINES=60,NOMAP,MIXED,QUOTE=",NOSTDWARN,SYNC32,IND
EX32
00009 COBCNTL 000900*CONTROL NOVALIDATE,OPTIMIZE=0
00010 COBCNTL 001000*
00011 COBCNTL 001100* For any other options, redirect
COBCNTL.PUB.SYS by usi
ng
00012 COBCNTL 001200* a file equation.
00013 COBCNTL 001300*
00014 001000 IDENTIFICATION DIVISION.
00015 001100 PROGRAM-ID. TEST.
00016 001200 ENVIRONMENT DIVISION.
00017 001300 INPUT-OUTPUT SECTION.
00018 001400 FILE-CONTROL.
00019 001500 SELECT ABC ASSIGN "ABC".
00020 001600 DATA DIVISION.
00021 001700 FILE SECTION.
00022 001800 FD ABC.
00023 001900 01 ABC-REC PIC X(72).
00024 002000 PROCEDURE DIVISION.
00025 002100 M.
00026 002200 OPEN INPUT ABC.
00027 002300 STOP RUN.
0 ERROR(s), 0 QUESTIONABLE, 0 WARNING(s)
DATA AREA IS 130 BYTES.
CPU TIME = 0:00:00. WALL TIME = 0:00:01.
END OF PROGRAM
END OF COMPILE
HP Link Editor/iX (HP30315A.06.03) Copyright Hewlett-Packard Co 1986
LinkEd> link
END OF LINK
Filename: ABC
File status is 39
File's fixed attributes differ from program [39] RECORD SIZE (COBERR
648
)
Program file: $OLDPASS.MB.DEV
END OF FILE (FSERR 0)
+-F-I-L-E---I-N-F-O-R-M-A-T-I-O-N---D-I-S-P-L-A-Y+
! FILE NAME IS ABC.MB.DEV !
! FOPTIONS: SYS,ASCII,FORMAL,F,NOCCTL,FEQ !
! NOLABEL !
! AOPTIONS: INPUT,NOMR,NOLOCK,DEF,BUF,NOMULTI !
! WAIT,NOCOPY !
! DEVICE TYPE: 3 DEVICE SUBTYPE: 8 !
! LDEV: 2 DRT: 8 UNIT: 0 !
! RECORD SIZE: 80 BLOCK SIZE: 240 (BYTES) !
! EXTENT SIZE: 40 MAX EXTENTS: 8 !
! RECPTR: 0 RECLIMIT: 1023 !
! LOGCOUNT: 0 PHYSCOUNT: 0 !
! EOF AT: 0 LABEL ADDR: %00000000000 !
! FILE CODE: 0 ULABELS: 0 !
! FILE OWNER: MB.DEV !
! PHYSICAL STATUS: 0000000000000000 !
! ERROR NUMBER: 0 RESIDUE: 0 !
! BLOCK NUMBER: 0 NUMREC: 3 !
+------------------------------------------------+
**** COB_QUIT 648 ****
ABORT: $OLDPASS.MB.DEV
NM SYS a.00a90288 dbg_abort_trace+$24
NM USER 1b8.00478394 COB_QUIT+$b8
NM PROG 23c8.00005170 test+$58
run $oldpass
Program terminated in an error state. (CIERR 976)
:COB85XLG TESTS
PAGE 0001 COBOL II/iX HP31500A.04.19 [85] Copyright
Hewlett-Packard CO. 1987
00001 COBCNTL 000100* The following are defaults for Compatibility
mode compi
ler.
00002 COBCNTL 000200*CONTROL
LIST,SOURCE,NOCODE,NOCROSSREF,ERRORS=100,NOVERBS,
WARN
00003 COBCNTL 000300*CONTROL
LINES=60,NOMAP,MIXED,QUOTE=",NOSTDWARN,SYNC16,IND
EX16
00004 COBCNTL 000400*
00005 COBCNTL 000500* The following are defaults for Native
compiler.
00006 COBCNTL 000600*
00007 COBCNTL 000700*CONTROL
LIST,SOURCE,NOCODE,NOCROSSREF,ERRORS=100,NOVERBS,
WARN
00008 COBCNTL 000800*CONTROL
LINES=60,NOMAP,MIXED,QUOTE=",NOSTDWARN,SYNC32,IND
EX32
00009 COBCNTL 000900*CONTROL NOVALIDATE,OPTIMIZE=0
00010 COBCNTL 001000*
00011 COBCNTL 001100* For any other options, redirect
COBCNTL.PUB.SYS by usi
ng
00012 COBCNTL 001200* a file equation.
00013 COBCNTL 001300*
00014 000100$CONTROL STAT74
00015 001000 IDENTIFICATION DIVISION.
00016 001100 PROGRAM-ID. TEST.
00017 001200 ENVIRONMENT DIVISION.
00018 001300 INPUT-OUTPUT SECTION.
00019 001400 FILE-CONTROL.
00020 001500 SELECT ABC ASSIGN "ABC".
00021 001600 DATA DIVISION.
00022 001700 FILE SECTION.
00023 001800 FD ABC.
00024 001900 01 ABC-REC PIC X(72).
00025 002000 PROCEDURE DIVISION.
00026 002100 M.
00027 002200 OPEN INPUT ABC.
00028 002300 STOP RUN.
0 ERROR(s), 0 QUESTIONABLE, 0 WARNING(s)
DATA AREA IS 130 BYTES.
CPU TIME = 0:00:00. WALL TIME = 0:00:00.
END OF PROGRAM
END OF COMPILE
HP Link Editor/iX (HP30315A.06.03) Copyright Hewlett-Packard Co 1986
LinkEd> link
END OF LINK
Filename: ABC
RECORDS LARGER THAN FD DESCRIPTION, TRUNCATED [44]
(COBWARN 671)
Program file: $OLDPASS.MB.DEV
Actual file record size is : 80 bytes
FD record size is : 72 bytes
END OF PROGRAM
:
Mike Berkowitz
Guess? Inc.
|