Trailing-Edge
-
PDP-10 Archives
-
bb-bt99g-bb
-
cbl12b.d12
There are no other files named cbl12b.d12 in the archive.
EDIT DESCRIPTIONS FOR COBOL-10-V12B
EDIT 1576 FOR COBOL
[SYMPTOM]
Extra line feeds will be inserted in a multi-line comment
copied from a library file if copy replacing is being used
and edit 1316 has been installed. If it hasn't been
installed, a paragraph name from a library file that is
being replaced and is preceded by a comment will lose the
line feed that precedes it. Extra line feeds may be added
after replacing tokens.
[DIAGNOSIS]
Edit 1316 shuts off the 'reading for replacement test only'
flag when finding the line feeds in the comment. The
pointers marking where in the library file the search for
text to be replaced started and ended include leading and
trailing punctuation and comments. If the tokens are
replaced, the leading and trailing data is lost. The
character count of the replacement text is one too high in
some situations.
[CURE]
If a read for replacement test is in effect, store the
library file buffer header at the start of the token and the
exact size of the token. Before writing the replacement
token out to cpyfil, see if the token is really where the
scan started, if not write out the leading characters.
After writing out the replacement text, see if the last
token replaced ends at the position in the library file
where the next token starts, if not, write out the data in
between.
********************************************************************************
EDIT 1577 FOR COBOL
[SYMPTOM]
With a non-BIS COBOL-74 v12B compiler, a Move from a source
field to a destination field which has an OCCURS DEPENDING
clause produces a data record which is prematurely truncated
and filled with spaces when the length of the source field
is approximately 470 characters or greater.
[DIAGNOSIS]
The truncation occurs because the length of the source field
is truncated on the left at run-time. The length is
retained in twelve bits (6 - 17) of the temporary output
pointer. However, only the rightmost eleven are picked up
at run-time. This can happen in either one of two places.
(1) In the generated code a DPB instruction moves the length
from an AC to the temporary output pointer word. This
instruction depends upon a byte pointer created at compile
time by the routine MOVGEN. This byte pointer has to be
changed to pick up 12 bits rather than 11.
(2) Under the LIBOL entry point SET2., a LDB instruction
moves the length to an AC using a byte pointer which exists
within the routine SETRET. This byte pointer has to be
changed for a non-BIS OTS to pick up 12 bits rather than 11.
[CURE]
Install edits 1577 and 1144 from KL2116::CBL:<MASLANKA> and
rebuild the COBOL-74 compiler and LIBOL.
********************************************************************************
EDIT 1603 FOR COBOL
[SYMPTOM]
A program that includes the sort RELEASE verb will sometimes
cause a catastrophe in phase E on a Bad table-link.
[DIAGNOSIS]
Edit 1516 assumes that the FILTAB entry for the sort file
will be in CURFIL. When this is not true the compiler
aborts with a catastrophe in phase E due to a bad table
link. LNKSET is called using the value of CURFIL. LNKSET
aborts when CURFIL does not contain the relative address in
FILTAB for the sort file.
[CURE]
Use the DATAB pointer for the record entry given in EOPTAB
to find the FILTAB entry for the sort file instead of using
CURFIL. The DA.POP entry of the record DATAB entry contains
a FILTAB relative pointer to the sort file. The COBOL-v13
compiler includeds edit 1516 in the code twice. The extra
four lines should be deleted when installing this edit in
COBOL-v13.
********************************************************************************
EDIT 1604 FOR COBOL
[SYMPTOM]
A COBOL program with a long INSPECT REPLACING statement will
generate a bad argument block in some cases. The bad
argument block may cause an assembly error in phase G. This
error is sensitive to the size of the compiler literal pool
at the time the argument list is generated. Changing the
size of the INSPECT statement or moving it in the program
may cause the problem to disappear.
[DIAGNOSIS]
The table LITAB runs out of core space in the process of
generating the argument list for the INSPECT. When the
table is expanded the absolute pointer CURIRG is not updated
with the new start of TEMTAB. After expanding CURIRG is
used to get data from TEMTAB. Since CURIRG was not updated
bad data is put into the argument list. Depending on this
data the compiler may get an assembly error.
[CURE]
Update the value of CURIRG with the new value of TEMLOC when
LITAB is expanded.
********************************************************************************
EDIT 1607 FOR COBOL
[SYMPTOM]
When the translator is built with edit 1604 the linker gets
an undefined globol CURIRG.
[DIAGNOSIS]
The translator is built with the ANS74 conditional equal to
zero. The INSPECT code is for ANS74 only and is inclosed in
conditionals. CURIRG is defined for ANS74 only.
[CURE]
Since edit 1604 is needed for ANS74 syntax only
inclose the new code in ANS74 conditionals. This edit is
needed for cobol-12b only.
********************************************************************************
EDIT 10 FOR CPYLIB
[SYMPTOM]
A file that contains form feeds that is extracted from a
COBOL library file will be missing the line feed character
that proceeded the form feed when the file was inserted into
the library. Lines of code may get overwritten if the
extracted file is edited. When LIST is used the line feeds
are included as expected.
[DIAGNOSIS]
When a file is inserted into the library, the extra carridge
control characters at the end of the line are replaced by
only a line feed or a form feed. These carridge control
characters should be replaced when the file is extracted.
The current code only replaces the missing carridge return
character. The code for the LIST command inserts the
missing line feed.
[CURE]
Check to see if the end of line character was a form feed.
If so, insert a line feed character in the ourput file
before the form feed.
********************************************************************************
EDIT 32 FOR LIBARY
[SYMPTOM]
A file that contains form feeds that is extracted from a
COBOL library file will be missing the line feed character
that proceeded the form feed when the file was inserted into
the library. Lines of code may get overwritten if the
extracted file is edited. When LIST is used the line feeds
are included as expected.
[DIAGNOSIS]
When a file is inserted into the library, the extra
cartridge control characters at the end of the line are
replaced by only a line feed or a form feed. These
cartridge control characters should be replaced when the
file is extracted. The current code only replaces the
missing cartridge return character. The code for the LIST
command inserts the missing line feed.
[CURE]
Check to see if the end of line character was a form feed.
If so, insert a line feed character in the output file
before the form feed.
********************************************************************************
EDIT 1142 FOR LIBOL
[SYMPTOM]
For a file, opened extended, if no PPN is given, and the
logical device name points to a file in different PPN than the user is
in, user will receive a lookup error.
[DIAGNOSIS]
Whenever no PPN is specified, COBOL uses current default PATH.
[CURE]
Make COBOL understand about pathological names, and fill in
appropriate PPN.
********************************************************************************
EDIT 1143 FOR LIBOL
[SYMPTON]
If an ISAM file is not present at the beginning of the
execution of a COBOL program, the program fails immediately
with a COMPT. UUO failure and does not pass through the
user program's USE Procedure.
[DIAGNOSIS]
COBOL-10 and COBOL-20 have been historically constructed to
cause a program failure at "Reset" time, prior to the
execution of any user-generated code, if Selected ISAM files
were not present at that time. This has not allowed
user-written COBOL USE Procedures to be executed on program
failures which are caused by "File Not Found" errors, and
this is contrary to the COBOL-74 ANSI Standard. In order to
conform to the Standard in this case, a design change is
desirable.
[CURE]
Install edit 1143 to CBLIO.MAC and rebuild COBLIB.REL and
COBOTS-V13.EXE. Please note: This edit implements a major
design change to the "Reset" code in CBLIO, and it may
affect the way in which COBOL-20 programs handle the
situation in which an ISAM file is not found. If you
install this edit, you should observe that programs with
missing ISAM files are failing on the OPEN statement instead
of at the beginning of the program execution.
********************************************************************************
EDIT 1144 FOR LIBOL
[SYMPTOM]
With a non-BIS COBOL-74 v12B compiler, a Move from a source
field to a destination field which has an OCCURS DEPENDING
clause produces a data record which is prematurely truncated
and filled with spaces when the length of the source field
is approximately 470 characters or greater.
[DIAGNOSIS]
The truncation occurs because the length of the source field
is truncated on the left at run-time. The length is
retained in twelve bits (6 - 17) of the temporary output
pointer. However, only the rightmost eleven are picked up
at run-time. This can happen in either one of two places.
(1) In the generated code a DPB instruction moves the length
from an AC to the temporary output pointer word. This
instruction depends upon a byte pointer created at compile
time by the routine MOVGEN. This byte pointer has to be
changed to pick up 12 bits rather than 11.
(2) Under the LIBOL entry point SET2., a LDB instruction
moves the length to an AC using a byte pointer which exists
within the routine SETRET. This byte pointer has to be
changed for a non-BIS OTS to pick up 12 bits rather than 11.
[CURE]
Install edits 1577 and 1144 from KL2116::CBL:<MASLANKA> and
rebuild the COBOL-74 compiler and LIBOL.
********************************************************************************
EDIT 1145 FOR LIBOL
[SYMPTOM]
The TOPS-10 COBOL OTS with edit 1127 (autopatch tape 9) can
not find the overlays for a COBOL program if it is run using
EXECUTE, LOAD/START or LINK and GO.
[DIAGNOSIS]
Edit 1127 removed obsolete symbols from the OTS. One of
these (.SGDEV) was used to determine if the program was run
via EXECUTE, LOAD/START or LINK and GO. If this was the
case then the OTS looked for the program's overlays on the
current PPN and device. When edit 1127 is installed the
test for this case is deleted. The OTS now looks for the
overlays on the device that LINK was run from and does not
find them.
[CURE]
Replace the code in the OTS that checked for the LINK and GO
case. If this is the case then the COBOL program name will
not match the run program name and the run program name will
be "LINK". If so then look for the overlays on the current
PPN and device.
********************************************************************************
END OF COBOL-10-V12B