Google
 

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