perm filename LOG[S,AIL]23 blob sn#252288
filedate 1976-12-11 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00017 PAGES
C REC PAGE DESCRIPTION
C00002 00002 Introduction
C00003 00003 February, 1975
C00008 00004 March, 1975
C00011 00005 April, 1975
C00012 00006 June 1975
C00015 00007 September 1975.
C00016 00008 October 1975
C00017 00009 November 1975
C00020 00010 December 1975
C00021 00011 January 1976
C00022 00012 February 1976
C00024 00013 April 1976
C00025 00014 June 1976
C00026 00015 August 1976
C00029 00016 November 1976
C00030 00017 December 1976
This is a record of changes to SAIL system. An entry to this file
should be made whenever any changes are made to the system SAIL files
(SAIL.DMP, SAISGx.SEG, LIBSAx.REL, etc.) or after any modifications
to the SAIL source files (e.g., at the end of an editing session)
Reference should be made to the files BUGS & FEATS, as appropriate.
#TX# fixed sources & patched sys:sail.dmp & saildd[s,ail].
%##% Recompiled @IT & put the result on system. Left SAIL.OLD
alone. 2-8-75 RHT
#TY# fixed bug in source (LEPRUN) reported by LDE. Made no
changes to system files. Bug may cause strngc lossages
in programs involving string refitems. If this happens,
look here. 2-10-75 RHT
#TZ# Typo in gen. patched source & .dmp files
%CA% Added new routine CVASTR to STRSER sources. Did not
test, assemble, or update incremental manual
%##% Changed "=-" to a "-=" in TRIGS. This was necessitated by
a change in FAIL. Reassembled runtimes & put up new saisg8 &
libsa8 on system.
#UA# Fixed a string gc bug in GOGOL. Made a TENEX-only change
to SAIL and CC[10x,ail] by putting a variable in the
switched area that had been left outside in error.
Why is there a file HEAD.FAI on [S,AIL] in addition to HEAD?
Do changes to HEAD have to be made to HEAD.FAI in addition?
I changed a TENEX switch setting in HEAD, and then had
to do the same to HEAD.FAI (which RPG favors over HEAD).
Above comment by RLS indicates a bug in SCISS, which is supposed
to delete the file HEAD.FAI on the second pass. JFR
%##% Edits to HEAD/7,17 SAIL/24 TOTAL/35 GEN/48 GEN/32,33
to clear up BAIL recursive procedure type bits problem
and define request protocol and residence of procedure
descriptors for SAIL runtime routines and first pass at
records and references. New SAILDD. JFR 2-16-75
Above changes also made to SYS:SAIL. JFR 2-17-75
%##% Edits to TRIGS to take out the code JAM inserted therein without
telling anyone. Sent network mail to RICART%NCCT telling
him what to do. RHT 2-19-75
#UB# An OLD and terrible bug (one of the "how did it ever work?"
variety in boolean code. Made the appropriate patches in
source & .dmp files RHT 2-21-75
%==% Recd word from CMU that they have snarfed a copy of SAIL files
& put up a system with no problems. Send LDE a note thanking
him for his nice compliments & warning him about #ub#.
#%%# One-word patch in BAIL code at BFORMS+24 [GEN/32], try to
help recursive procedures and lexical nesting code. JFR 2-23-75
%##% Snarfed copy of STATS from S,AIL to S,RHT & began making some
changes for the sake of new-style records. May be a bit bigger job
than I thought, especially if Recuuo is to be flushed & string
subfields are to be added. Will continue working on in in odd moments.
#UC# (CMU =E3=) two bugs in refitem deletion. Patched LEPRUN & made new
segment and SAILEP entry for LIBSA8. RHT 2-26-75
%##% TENEX-specific changes made to the following files:
(1) ioser.tnx: enter and lookup different error
handling for device tty.
gtjfn and openf: defaults
removed from code and documentation
ttyin and friends: patch
made for new breaktable stuff, not quite right after JFR's
(2) An old and bad bug: the compiler scanner
decides that the buffer is done when it encounters a zero word.
This has been fixed in the TENEX version. It probably should
be fixed in the DEC version too, but it slows it down slightly.
ADVBUF in SYM (TENEX only) now checks that there is really nothing
more in the buffer. Changes to SYM, SAIL (new switched variable added),
and CC[10x,ail] (variable cleared when files switched.)
(3) FOO2: CHFDB added, for TENEX only.
Total changes to: SAIL, SYM, CC, IOSER.TNX, FOO2.
#UD# Added CVASTR to FOO2. Did not recompile yet.
#%%# Modified GEN so that all toplev non-external record pointers are
#%%# Fixed SPARES for NRC stuff
%##% Made up files for NRC stuff. SAILDD.NEW, SAIL.DMP, SAILOW, SAISG8,
HLBSA8, and LIBSA8 all exist on [s,ail]. Also, STATS.OLD & RECSER.OLD.
Included HACK to detect old style record calls. Will put
up on system next weekend.
%##% PROFIL.SAI[X,AIL] replaced, old version PROFIL.OLD. Added TENXSW,
allowed ! to be equivalent to _ (so that START!CODE is START_CODE)
FOO2: TENEX-only functions SETCHAN and SETEDIT added.
Old version is TRIGS.OLD.
TRIGS: TENEX-only interrupt code for under/over flow finally
merged into sources. Old version is TRIGS.OLD.
DO DOLIB on [10x,ail] to make "library".
Total changes to master files: FOO2, TRIGS, PROFIL.SAI.
%##% Put up new record system
#UG# Fixed bug. patched source, sail.dmp[1,3], saildd.dmp[s,ail]
%##% Reassembled segment & sairec at behest of PDQ.
JFR claims string subfields now work in compiler. Will put
up new compiler when Quam gets string garbage collector working.
#UH# Bug in TRIGS. Reassembled HLBSA8 & LIBSA8 entries & put up.
#UI# Bug in INCHWL. Reassembled saisg8 & SAITTY entries & put up
#UJ# Bug in FOO2. Patched saildd & sys:sail. Fixed FOO2.
New compiler; supports full implementation of new record system,
including string subfields.
New CREF listing of compiler, SYSUDP:SAIL.LST[S,AIL] and
a version that has been ETV'ed, SYSUDP:SAIL.ETV[S,AIL].
Edited GEN/30 to fix bug UK: string procedure is not a string.
Transfered RTRAN.SAI, RTRAN.DMP, FOO2, BPDAHD.FAI, BSM1HD.FAI
from [1,JFR] to [S,AIL], first making RTRAN.OLD, FOO2.OLD.
These are the files necessary for making the predeclared runtimes
known to BAIL. A SRCCOM of RESTAB (after going through
the new RTRAN and the old RTRAN) showed no differences.
Added BPDAHD.FAI, BSM1HD.FAI to FILES[X,AIL].
New version of PROFIL, accepts lowercase switches. JFR 6-4-75
%CD% Tried putting up PDQ's new record stuff. First time was a bomb,
had to change 21 HERE's to HEREFK's. Second time also a bomb.
Rolled back to previous version, trying to figure out what's going on.
%CD% At least part of the problem was that LOWER.REL was still around
from the first try. Deleted everything and started over, third
time still got burned. Won't try again until PDQ and RHT
figure out what is going on.
Spooled compiler listing made 6-1-75. Updated SYS UDP with files
on [S,AIL] that had changed since last saved on UDP.
%CD% Found the problem. Only one of the HEREs needed to be made a HEREFK.
PDQ should have told me. Tried assembling SAISPC and SAIREC for
LIBSA8, got UNDEF SGINS in SAISPC. Just left SAILOW.REL, SAISG8.SEG
and other stuff on [S,AIL] because system was too loaded to
get anything done and there won't be anyone around for 4 or 5 days
after I leave for CMU, in case disaster should strike.
#VA Bug fix in GEN. Patched source file & both compilers.
#VB Bug fix in STATS. Made appropriate patches
New LIBSA8 and HLBSA8 on SYS:, .OLD copies exist.
New compiler and updated SAISG8 soon to follow.
New SAIL.DMP, SAIL.SEG (upper for compiler), SAISG8.SEG,
SAILOW.REL, LIBSA8.REL, HLBSA8.REL.
#VC-VF Misc bug fixes. Put up a new runtime segment.
New LIBSA8.REL and HLBSA8.REL, indexed.
#VG Found a bug in LEPRUN. Put up new segment. Will ask
JFR how libraries work now
#VH Bug fix. Patched SAILDD, GEN, & SYS:SAIL
11-1-75 JFR. New SYS:SAIL. Bug fixes VM,VN,VO.
COMPILER!BANNER predefined macro which expands to what would be
put at the top of the current page if a listing were being made.
Source-file search normalized:
TEST←TEST looks for TEST.SAI then TEST.
TEST←TEST. looks only for TEST.
TEST←TEST.ABC looks for TEST.ABC then TEST.
The compiler used to blow up on TEST←TEST. (explicit blank extension).
SAIL, PTRAN, and RTRAN now believe in TMPCOR when started in RPG mode.
The compiler switches which used to double stack sizes (D,P,Q,R)
now do so only if the switch value is zero or not present. If
a non-zero value is specified, the stack is set to that size.
Thus /35P/P first sets the P stack to 35 and then doubles it to 70.
11-9-75 JFR. Bug fixes #VR and #VS to SYS:SAIL. Bug #VT fixed in source only.
11-20-75 JFR + RS. Renamed files from [S,RS] for PRINT integration.
The old versions are .OLD[S,AIL].
Tested out in temporary versions, not compiled on [S,AIL].
#VU Edit to STATS, system compiler patched. 11-21-75 JFR
11-23-75 RLS. TENEX only changes to GOGOL, STRSER, SPARES.
11-24-75 RLS. TENEX only changes to HEAD.
11-24-75 RLS. TENEX only change to TRIGS to correct a TENEX problem
caused by an earlier fix of TRIGS by JAM.
12-5-75 Added CVIS to SAIDM1 so that people with PRINT but no items do not get
CVIS undefined and also do not socked with LEAP. JFR
12-6-75 Fixed terrible record bug (#VV#). Put up fix.
12-6-75 Another EXPR!TYPE problem: TTEMP needs to be save/restored, in
addition to other variables like ADEPTH. Remark: EXPR!TYPE is
still rather wizardly and not to be trusted. [GEN] RLS
12-6-75 A PRINT bug found and fixed. [STATS/48] RLS
12-8-75 Put up new LIBSA8, HLBSA8, moved GOGTAB.DEF over to SYS:
Fixed bug VZ & put up new compiler [FOO2] RHT
1-6-76 RTRAN now has conditional assembly. (Hurrah!). Uses "" for
brackets; left bracket must immediately follow flag word.
True conditionals are listed in a section of the file; anything
else before a "[" is a false conditional. .OLD files exist. JFR
1-17-76 Bug #WC detected in NOW!SAFE statement. Never worked. Traced to an
extra SCAN in the productions at MSA (the line following MS [HEL/6]),
but no energy or time to fix it. JFR
2-13-76 Discovered that BAIL predeclared runtimes didn't have correct
default parameters. Modified RTRAN do to this correctly,
remade BAICLC,BAIIO1,BAIIO2,BAIMSC,BAIPRC .SM1 and .REL files.
2-16-76 Added a UORSW to HEAD
2-18-76 #WI patched segment after making .OLD JFR
Also remade SAILUP for LIBSA8 and HLBSA8.
2-28-76 New compiler and libraries. New feature %DJ (SCANC -- compile-time
callable SCAN). Bug fixes #WJ, #WK (BAIL interface).
Process runtimes (RESUME, SPROUT, TERMINATE, JOIN, CALLER, PSTATUS,
SUSPEND) give better information if an error happens, and save
status in a way which enables BAIL to work more gracefully.
(Currently only in library versions.)
2-28-76 New service routine: LODREQ. It chases down load module and library
requests, printing both the requestor and the requestee.
Command string is similar to loader format:
<out file>←<in file>,<in file>, ... ,<in file><alt>
"Switches" are not allowed.
4-23-76 New system compiler and SAILDD. Several minor RECORD bug fixes and
improvements in generated code; also correction to grammar for
CASE expression used as a statement (no longer bombs compilation).
Also, BAIL now has a coordinate everywhere there would be a KOUNTer;
up to now one could not break at the THEN part of a conditional.
SOS line numbers are displayed in the proper place by BAIL SHOW.
6-17-76 #XC (CMU =F5=) horrible bug. Overflow handler had the bits reversed.
SAITGI reassembled and put in LIBSA8 and HLBSA8.
Also #XA, #XB minor linkage fixes for library (BACKUP, TMPCOR).
6-29-76 TMPIN, TMPOUT disappeared from libraries, remade them.
8-5-76 TYMSHARE merge. Files COMSER,FOO2,GOGOL,HEAD,HEL,IOSER,PTRAN,
DART dump of *.*[*,AIL] made before starting.
FAIL[CSP,SYS] also changed; REG approved.
New feature (not yet up for users): Explicitly numbered CASE
statements may have more than one number per statement--i.e.,
CASE I OF BEGIN  FOO;  BAR;  ZOT END;
They seem to have a good idea about putting site name in
COMPILER_BANNER. Must investigate further.
Lots of TYMSHARE unique stuff: UUOs, IO, new name for SOS, etc.
Also some fixes to DEC expo stuff regarding tmpcor, etc.
→→→→→ DID NOT INTEGRATE NWORLD: SMERGE PROGRAM GOT INFINITE LOOP.
Will have to try SRCCOM and hand merge in E. ←←←←←
SCISS.NEW is TYMSHARE's extensively modified version. Integration
postponed; seems that they keep all the little .FAI files around.
SMERGE.MAC[S,AIL] is a new program which takes a file and two
descendents, makes a "common descendent" out of all three. Sort
of like an automatic SOUP, or a combined SRCCOM and E merge.
Very nice if changes aren't too complicated; but witness infinite
loop in converting NWORLD.
Had two instances of the DSK screwing me: it lost a buffer
once, and duplicated a buffer another time (two different files).
Reported to REG, who says he has seen it before, but very rarely.
8-XX-76 Merged NWORLD from TYMSHARE. JFR
8-17-76 %DQ% BREAKSET mode "Z" says: believe the break table when INPUTting
zero characters (ASCII NUL). [Used to always ignore them, except CMU.]
8-21-76 %DS% fix RESERVED, add CONOK for CHECK!TYPE. JFR
11-24 Merged files HEAD,PARSE,HEL,SYM,GEN,ARRAY,STATS,LEAP,COMSER from
U. of Rochester.
Also GOGOL,LEPRUN after making $$LNOWARN under URLEAP.
11-25 New SAICVC (for CVSTR) in libraries, and new segment (also for CVSTR).
New compiler, main change is accepting := for ←, ** for ↑, >= for ≥,
<= for ≤.
12-4 Put up SYS:SAILDP for users to test. SNGL UUO (LONG REAL to REAL
conversion) in GOGOL. Misc. runtimes in LIBSA8 only.
12-5 PROFIL recognizes LONG. Also fixed missing trailing ")" in
RECORD_POINTER declaration on PROFIL output. JFR
12-8 New SAIARY and SAIPIT in libraries, handle dynamic LONG array allocation
and LONG REAL arguments to APPLY.
New SAIREC in libraries, handles LONG REAL fields in records.
Above changes also incorporated into SAISG8.
Make αP work when RAID is entered from error handler. JFR
12-11 Double precision in. Replaced files FOO2,HEL,SYM,GEN,ARRAY,EXPRS,