perm filename BUGS[S,AIL]62 blob sn#232498 filedate 1976-08-22 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00016 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	IV-IZ AND J SERIES BUGS
C00010 00003	K-SERIES 
C00016 00004	L-SERIES BUGS
C00022 00005	M-SERIES BUGS
C00028 00006	N-SERIES BUGS
C00033 00007	O-SERIES BUGS
C00039 00008	P-SERIES BUGS
C00045 00009	Q-SERIES BUGS
C00052 00010	R SERIES BUGS
C00058 00011	S-SERIES BUGS
C00063 00012	T-SERIES BUGS
C00069 00013	U-SERIES BUGS
C00075 00014	V-SERIES BUGS
C00082 00015	W-SERIES BUGS
C00091 00016	X-series bugs
C00096 ENDMK
C⊗;
IV-IZ AND J SERIES BUGS

#<NUMBER> <TAB> DESCR (INITIALS OF PERSON ENTERING BUG)
	[FILES]  INITIALS (DATE FIXED) {OK WHEN CHECKED}

#IV	DRYROTS AT NOSY -- NON-EXTERNAL PROCEDURE
	UNDECLARED FORWARD MESSAGE PROCEDURES SHOULD BE IGNORED
	[GEN/29] RHT (9-22-72) OK JRL

#IW 	IF STATEMENT INSIDE OF DO LOOP- PARSE ERROR
	[HEL]  KVL (9-22-72) OK JRL

#IX	CAUSE LOSSAGE -- BUG FIXED BUT SUSPECT FILE IS OLDER
	THAN IT SHOULD BE.  I.E. FEAR THAT SOME PREVIOUS DEBUGGING
	WAS LOST.
	[NWORLD] RHT (9-22-72) OK RHT

#IY	SPURIOUS CALL TO BEXIT IF EXTERNAL PROC DECL IN SIM PROC
	THE PROBLEM WAS KILL SET GOING OUT FOR BLOCK
	[PROCSS] RHT (9-25-72)

#IZ	GLOBAL ARRAYS IN OUTER SEGMENTS GETTING BAD LVI ENTRIES
	FIXED BY NOT PUTTING OUT LVI FOR GLOBALS
	[GEN] RHT (9-25-72)

#JA	BEGIN INTEGER I; BEGIN DEFINE I=....  -- COMPLAINS ABOUT
	DUPLICATE IDENTIFIER DECLARATION WHEN DEFINING I.  THIS
	IS DUE, POSSIBLY, TO DEFINES NOW BEING PLACED GLOBALLY EVEN
	WHEN DEFINED LOCALLY -- SHOULD BE AT LEAST DOCUMENTED, SINCE
	IT IS A DISTINCT INCOMPATIBILITY.  (DCS)

#JB	PROCEDURES INSIDE SIMPLE PROCEDURES CAUSE TROUBLE. (RHT)

#JC	REQUIRE "FOO    [PRJ,PRG]" SOURCE_FILE SEEMS TO CAUSE 
	A SAIL COMMAND ERROR (RHT)

#JD	DATUM(A←COP(B⊗C)) DOESN'T  PARSE CORRECTLY.(JRL,KVL)
	[LEAP,HEL,GEN] JRL (9-27-72) OK JRL

#JE     LNOT OF A CONSTANT NOT PREFORMED.
	[EXPRS/6] JRL (9-26-72) OK JRL

#JF	MESSAGE PROCEDURE LINK BLOCK GETTING PDA INSTEAD OF ENTRY ADDR
	[GEN/29] RHT (9-27-72)

#JG	IDPB GOING OUT AS IBP, PROBLEM WAS B GETTING CLOBBERED BY TOTAL
	[EXPRS/10] RHT (9-27-72) OK RHT

#JH	USER INITIALIZATION REQUEST LOSSAGE (HRLZI WAS IN AS HLRZI)
	[GEN/35] RHT (9-29-72) OK RHT

#JI	IFGLOBAL NOT WORKING(HAND-EYE SYSTEM)
	[LEPRUN] JRL (10-2-72)

#JJ	DRYROT ERASE1 FP2 FREE LIST WAS BEING GARBAGED
	[LEPRUN] JRL (10-2-72)

#JK	WHEN RECLAIMING  VALUE SET PARAMETER LIST SPACE, AC 1 WITH FUNCTION
	RESULT IS DESTROYED.
	[STATS] RHT (10-3-72)

#JL     THE BNDFOR BIT WAS BEING TURNED OFF FOR SETS EVEN THOUGH VALID ONLY FOR ITEMS
	(LEPRUN] JRL (10-4-72) OK JRL

#JM	SYMBOL FOR BLOCK GOING OUT WITH WRONG DDT LEVEL FIXED BY MOVING
	THE KILL SET SEMBLK PTR IN THE BLOCK SEMBLK
	[PROCSS] RHT (10-4-72) OK RHT

#JN	LENGTH(ITEM⊗ITEM) PRODUCED "ITEM TYPE MISMATCH", DUMMY SEMBLK FOR DERIVED
	SET NOT PLACED IN PROPER LOCATION.
	[LEAP] JRL (10-8-72)

#JO	COMPILER DOESN'T ACCEPT {ITMVR←ITMEXPR} BECAUSE AE NEVER BECOMES IP OR SP
	[HEL,LEAP] JRL (10-8-72)

#JP	EVALUATION OF MACRO CALL IN MACRO DEFN WASNT ALWAYS HAPPENING. RHT
	[SYM,HEL,GEN] HJS (10-12-72)

#JQ	ERROR RECOVERY PROD FOR MEMORY CALLED AT BAD TIME RHT
	[HEL/11] RHT (10-15-72) OK RHT

#JR	CODE FOR DISPLAY STRING ITEMVARS INCORRECTLY USING STRING STACK
	[TOTAL/24,9] JRL (10-17-72)

#JS	EVLLST NOT ADJUSTING ADEPTH. RHT
	[LEAP/23] RHT (10-17-72) RHT OK RHT

#JT     LIST PROCEDURES SOMETIMES RETURN FREE_STORAGE LIST AS RESULT
	[STATS] JRL 

#JU	QUICK CODE FORGETS AC1 IN A VERY BAD WAY
	[GEN/49] RHT (10-22-72) OK RHT

#JV	MEMORY[X] TRIES TO INDEX WITH AC 0
	[GEN/41] RHT (10-20-72) OK RHT

#JW	PUT ITM IN DATUM(LITMVR) AFTER ∞ DOESN'T COMPUTE ∞ CORRECTLY
	CAUSED BY HEL CALLING STSET BEFORE REFINF
	[HEL] JRL (11-2-72)

#JX	EXTERNAL PROCEDURE α, FOLLOWED IN SAME PROG. BY INTERNAL PROCEDURE α,
	IS LEGAL -- THE INTERNAL ONE PREVAILS OF COURSE -- ALLOWS INCLUSION
	OF GLOBAL EXTERNAL DECL. SOURCE FILE BY EVERYBODY, DEF'N OF PROCEDURES
	WHEREVER.
	[SYM] DCS (11-2-72) OK DCS

#JY	MEMORY[ID←XXXXX] FOULING UP ACKTAB?? RHT
	SHORT INTEGERS CAUSED THE MESS
	[GEN/42] RHT (11-2-72) 

#JZ	FROM THIS DAY FORWARD, A MACRO WILL BE ENTERED ONLY WHEN IT IS FIRST
	ENCOUNTERED.  THEREAFTER, IT WILL ONLY BE REDEFINED, AT THE SAME BLOCK
        LEVEL!! IN OTHER WORDS, SCOPE RULES ARE IGNORED AFTER FIRST APPEARANCE
	OF A MACRO, UNTIL THE BLOCK IN WHICH IT WAS FIRST DECLARED GOES AWAY.
	HOPEFULLY, LATER, A SEPARATE MACRO BLOCK STRUCTURE WILL BE INVENTED.
	[SYM] HJS (11-4-72)
K-SERIES 

#KA	REMEMBER I IN CONTEXT CAUSES PUSH P,0 TO BE EMITED
	BECAUSE SBITS ENTRY IS COPIED INTO SBITS OF ADCON
	SOLUTION DO A GENMOV(INCOR) OF PARAM.
	[LEAP] BY JRL (11-8-72)

#KAB	IT IS CLAIMED THAT IMMEDIATE INSTRUCTIONS AREN'T GENERATED
	FOR LOGICAL OPERATIONS
	OPBTS WAS A WORD SHORT AND WORD OPBTS+3 WAS INCORRECT
	[TOTAL/26] BY JRL (6-27-73)

#KB	SYNTUP CODE IN PRUP CLOBBERS LPSA BY CALL TO ZOTDIS
	& THEN TRIES TO USE IT.  THE TROUBLE ONLY SEEMS
	TO SHOW UP WHEN CREFFING.  I DON'T QUITE UNDERSTAND
	WHY, SINCE LPSA IS USED AS A CHAIN LINK THAT IS
	ALWAYS SEARCHED.  RHT
	[STATS/25] RHT (11-11-72) OK RHT

#KC	FOR HISEG, THE INITIAL PDA,,0 FIXUP WAS GOING TO
	THE LOW SEG.  DCS
	[SAIL/27] RHT (11-13-72) OK RHT

#KD	CORTMPS IN RECURSIVE PROCEDURES NOT WORKING CORRECTLY
	FOR ADRINS. RHT
	[STATS/35] RHT (11-13-72)

#KE	IBP WITH FIXARR ARG COMPLAINS  JRL 
	[EXPRS/10] JRL (11-17-72)

#KF	THE SYNTAX ERROR  FOR J←1 UNTIL N ... CAUSES
	A DRYROT AT GETAD.  THE TROUBLE IS THAT WAIT
	GETS ENTERED WITH THE STEP NOT SET UP 
	[STATS]

#KG	SPROUT'S ALLSTO FAILS TO CLEAR DISPLAY ON PAGE 9 OF
	TOOLS.SAI[H,AJT].  IN FACT THERE WAS NO ALLSTO IN THE CODE.
	[PROCSS] RHT (11-21-72) OK RHT

#KH	REMNENTS OF OLD FORMFX STUFF CAUSED LOSSAGE WHEN
	RELEASING VALUE SET TO SIMPLE PROC.  FIX WAS TO FLUSH IT.
	[TOTAL/27] RHT (11-21-72)

#KI	DPB USING WRONG AC IN DEPOSIT, PROBLEM WAS BAD FIX TO BUG KE
	[EXPRS/10] JRL (11-21-72)

#KJ	ECHK WITH ITEMVAR WAS RETURNING BAD TBITS IN TEMP SEMBLK
	A HRRI SHOULD HAVE BEEN A MOVEI
	[LEAP] JRL (11-21-72)

#KK	ISTRIPLE CAUSES DRYROT AT BPOP MSG. CAUSED BY GLBSTK NOT HAVING
	BEEN CALLED

#KL	STACSV SAVES 16 REGISTERS IN 14 WORDS( A REMARKABLE ACHIEVEMENT)
	[GOGOL/9] JRL(11-22-72)

#KM	POLISH FIXUP FOR EXT PD MESSED UP
	[GEN/30] RHT (11-24-72)

#KN	LPTYPCK RETURNS WRONG TOKEN TYPE. TLNN SHOULD HAVE BEEN TLNE
	[LEAP] JRL(11-26-72)

#KO	CVLIST DOES NOT CORRECTLY MARK RESULT AS LIST
	[LEAP] JRL(11-27-72)

#KP	FDONS SOMETIMES DESTROYS AC 1. BAD THING IF A RETURN()
	[LEPRUN] JRL (11-28-72)

#KQ	STORA GETS CONFUSED BY FIXARRS INAC
	[TOTAL] JRL (11-30-72)

#KR	DATUM(ITVARR[EXPR],REAL ARRAY)[1] IN A KKP PROGRAM CAUSED A
	BAD STRING TO BE ENTERED FOR THE ARRAY NAME IN THE ARERR UUO
	FOR THE BOUNDS CHECK ON [1].  THE REASON IS THAT THE SEMBLK
	REPRESENTING THE RESULTANT REAL ARRAY DIDN'T HAVE A LEGITIMATE
	ITEMVAR SEMBLK POINTER IN $VAL, SINCE IT'S SO COMPLICATED.  
	MAYBE IT SHOULD HAVE, BUT FOR THE PRESENT, I'VE INSERTED A
	PATCH TO USE A DUMMY NAME FOR THESE GUYS
	[ARRAY] DCS (12-6-72)

#KS	ADD LOADVR SWITCH TO TAKE CARE OF DIFFERENT CODES FOR .REL,LIB
	REQUESTS FROM SAIL PROGS FOR LOADER 54.
	[SAIL,TOTAL] JRL (12-13-72)

#KT	BEXIT NOT GETTING CALLED IF ONLY HAVE KILL SET.  TYPO THE CAUSE
	[GEN/14] RHT (1-9-72)

#KU	ARRAY ITEMS SHOULD NOT NORMALLY BE OWN OTHERWISE TWO
	PROGRAMS WITH THE SAME ARRAY ITEM WILL HAVE TWO ARRAYS ALLOCATED
	[ARRAY] JRL(1-8-73)

#KV	TEST FOR INILNK = 0 FOR LIBRARY IN USER INITIALIZATION .UINIT
	[GOGOL] JRL(1-8-73)

#KW	DON'T ALLOW INTERNAL OR EXTERNAL ITEM DECLARATIONS
	[GEN] JRL (1-8-73)

#KX	AN ALLSTO SHOULD BE DONE EITHER AT BEGINNING OF BLOCK OR
	BEFORE EVERY CALL TO BEXIT
	[GEN/14] RHT (1-9-72)

#KY	IT IS CLAIMED THAT DONE OFTEN CAUSES A JUMP TO A JUMP AND THAT
	IN A SERIES OF SEVERAL DONES EACH MAY JUMP TO THE NEXT.

#KZ	DATUM OF OWN ARRAY ELEMENT DOESN'T WORK CORRECTLY, OWN BIT
	SHOULD BE REMOVED BY PREVIOUS OPERATION
	[LEAP] JRL (1-9-73)

L-SERIES BUGS

#LA	CVSIX IS DISHONEST FOR [ ] , .  
	REWROTE THE ROUTINE.
	[STRSER] RHT 11-25-73

#LB	"TYPO" IN RESUME REWRITE.  THE TARGET OF THE RESUME IS RESTARTED,
	(IN SOME "NOTNOW" CASES); NOT ONLY IS THIS NOT DESIRED, BUT ALSO
	THE STACKS AREN'T SWITCHED -- CONFUSION RESULTS.
	DCS [NWORLD] OK 1-15-73

#LC     A FORMAL PARAMETER TO A MACRO DEFINITION, WHICH HAS PREVIOUSLY
	BEEN DEFINED TO BE A MACRO NAME ITSELF DOESN'T WORK.
	E. G. DEFINE FOO(P) = ⊂...⊃; WHERE P WAS PREVIOUSLY DEFINED AS MACRO.
	[SYM] HJS 1-17-73

#LD	WHILE ITEM⊗ITEMVAR ≠ PHI CAUSES RETRIEVAL CONSTRUCTION FAILURE.
	SEE FILE BUG.SAI
	[HEL] JRL 1-22-73

#LE	SEARCHES WITH SAME ? ITEMVAR TWICE DON'T WORK
	E.G  ∀ ? X | X⊗X≡A DO
	[LEAP] JRL

#LF	ITEMVAR COMPARISONS DON'T WORK WHEN 1 THING ON STACK.
	A HRL WAS A HRLI BY MISTAKE
	[LEAP] JRL 2-4-73

#LG	RESULT OF MATCHING PROCEDURE NOT RETURNED CORRECTLY.

#LH	ASSIGN IS NASTILY FAILING TO ADJUST ADEPTH
	[LEAP] RHT 2-6-73

#LI	<INTEGER>←<REAL CON>*<INTEGER PARAM> CAUSES FAILURE TO
	TO TYPE CONVERSIONS. CAUSED BY MACRO LOSSAGE
	SUBSEQUENTLY FIXED??

#LJ	MAKE A⊗B≡FOO(ITEM) FAILS BECAUSE RDYCAL DOES NOT DO OKSTACK.
	[STATS] JRL 2-9-73

#LK	END OF MATCHING PROCEDURE CAUSES DRYROT BPOP
	[STATS] JRL 2-12-73

#LL	MATCHING PROCEDURE DOES NOT UNPROTECT AC CONTAINING UNBOUND
	[STATS] JRL 2-14-73

#LM 	PITBND NOT BINDING THE ENVIRON WHEN IT SHOULD
	[IOSER/39] RHT 2-17-73

#LN	ABORT EXECUTION AFTER FINDING A SYNTAX ERROR. ALSO MAKE SEMANTIC
	ERRORS AFTER SYNTAX ERRORS VISIBLE.
	[GOGOL/24] [GEN/26?] [SAIL/26]  KVL 2-22-72

#LO	GLOBAL ARRAY ITEMVAR ARRAYS DON'T WORK
	[ARRAY] JRL 2-23-73

#LP	GO TO OUT OF A PROCESS WAS LOOPING. PUT IN ERROR TRAP
	[IOSER/37] RHT 2-25-73

#LQ	SPROUT OU A FORWARD PROCEDURE LOSES BECAUSE PDA GETS PUT OUT
	AS 0.  EVIDENTLY, THE PD FIXUPS ARE LOST WHEN THE PROCEDURE
	IS FINALLY DECLARED. -- RHT
	[STATS] RHT 3-13-72 OK RHT

#LR	SPROUT OF AN EXTERNAL PROCEDURE LOSES BECAUSE OF SOME TROUBLE
	WITH FINDING THE PROPER KILL SET. SEE FILPRO[S,RHT]
	[PROCSS/5] RHT 3-13-72

#LS	"SAIL IN LEVEL TROUBLE" WHEN REDECLARING A VARIABLE WHICH
	HAS BEEN DECLARED IN A GLOBAL PROCEDURE -- SE TEST1.SAI[1,RKN]
	ALSO GET SIMILAR LOSSAGE IN A MACRO DECLARATION. THE TROUBLE
	WAS THAT THE LEVEL FIELDS WERE SET WRONG FOR OWN ARRAYS
	[SYM/29] RHT 3-12-73

#LT	SOURCE FILE NOT FOUND- ERRMSG PICKED UP FILENAME FROM WRONG LOC
	[SAIL/  ] JRL 3-15-73

#LU	GLOBAL NOT WORKING CAUSED BY BUG IN ALLGLO
	[LEAP] JRL 3-16-73

#LV	Lynn Quam complains that certain routines (e.g. REALIN) cause
	phoney overflows which wreak havoc with interrupt processing.

#LW	LOOP BUG.  EVIDENTLY A FORSTO (OR WHATEVER) ISN'T HAPPENING
	JUST BEFORE THE STEP UNTIL PART OF A LOOP HEADER.  THIS CAUSES
	THE COMPILER TO THING THAT DISPLAYS ARE STILL VALID AT THE
	JUMPBACK POINT.  -- SEE LOOPBG.SAI[S,AIL] FOR EXAMPLE
	FIXED BY MAKING FORSTO STRONGER.
	[#MU#]

#LX	GET A DRYROT AT GETAD FROM DRYROT.SAI[S,AIL].(COPIED FROM FAKE.SAI
	[H,TOB].  THE TROUBLE HAS TO DO WITH RANDOM DECLARED AS EXTERN PROC
	& NOT EXTERN REAL PROC.

#LY	GLOBAL PROPS DESTROYED ON PROGRAM INITIALIZATION OF ITEM TYPE.
	FIX IS TO CHECK IF THIS PROGRAM IS INITIALIZING GLOBAL MODEL.
	[LEPRUN] JRL 4-5-73

#LZ	JEG IS COMPLAINING ABOUT A DRYROT AT EFORM FROM AESTH.SAI[A,JEG]
M-SERIES BUGS

#MA	EQU("CONST",I) →→ PUSH SP,SCT1↔PUSH SP,STC2↔PUSH P,I↔
	PUSHJ	P,EQU↔  I.E. IT LEAVES OUT A CALL TO PUTCH

#MB	MACRO TYPE STRING SEMBLKS WERE BEING FREBLK'ED WITHOUT
	REMOVING THEM FROM HASH TABLE,STRING RINGS

	ALSO STRING CONSTANTS WILL NOW BE REMOPPED IF NOT IN USE
	($ADDR NON ZERO, OR KPSTR BIT ON IN $SBITS IF IN USE).
	THIS SHOULD REMEDY THE OLD STRING CONSTANT COMMENT PROBLEM
	WITH PNAMES, BLOCKNAMES AND PRELOADED STRING ARRAYS

#MC     FREBLK ING A SEMBLK (PROC ARG) WITHOUT URGSTR
	[GEN] RHT 4-20-73

#MD	PTRAC'S SHOULD BE STORA'D BY STORING ONLY RIGHT HALF, TO BE
	CONSISTENT [TOTAL] JRL 4-22-73

#ME	FORWARD MATCHING PROCEDURES CAUSE DRYROT. WAS PUTTING OUT
	CODE FOR THEM ERRONEOUSLY
	[STATS] 4-25-73

#MF	I BLEW IT IN CREFSYM, WHEN I MADE USE OF AN ALREADY EXISTENT
	ROUTINE, FRNP1, TO PRINT OCTAL SYMBOL SYNONYMS.  ANYHOW, I
	MANAGED THEREBY TO CLOBBER AC B, WHICH CAUSED THE LISTING
	FILE TO BE GARBAGED UTTERLY.  THE FUNNY THING IS THAT NOBODY'S
	COMPLAINED MUCH.
	[SYM] 5-1-73 DCS

#MG	I BLEW IT IN USING LDYFLG TO PREVENT ZEROING OF OWN ARRAYS.
	I FIXED THIS BY MAKING THE USE OF LDYFLG MORE CLEVER.
	[ARRAY] 5-10-73 RHT OK RHT

#MH	LOOP CODE GETTING DRYROT AT EPNT BECAUSE NOT BEING SURE TO
	GET ACCESS TO LOOP INCR BEFORE ADDING
	[STATS]/9 5-11-73 RHT OK RHT

#MI	LDYFLG NOT GETTING CLEARED FOR NON PRELOADED ARRAYS
	[ARRAY]/10 5-14-73 RHT

#MJ	UNTIL EXPR IN FOR STATEMENT BEING REMOPED INCORRECTLY
	[STATS]    5-15-73 JRL

#MK	EXIF2 NOT SETTING UP PROPERLY FOR CALL OF MARK WITH STRING ARGUMENT
	[EXPRS]	   5-15-73 JRL

#ML	DRYROT TMPALL CAUSED BY STACK ERRONEOUSLY RESTORING SBITS(INUSE ETC)
	[TOTAL]    5-21-73 JRL

#MM	USER NOT BEING LOADED IN EXPO VERSION OF OUTSTR
	[IOSER]	   5-26-73 JRL

#MN	GET DOES ACCESS FOLLOWED USUALLY FOLLOWED BY A GETAC WHICH CAN DESTROY
	THE DISTMP ACCESS FOUND. PATCHED THE SYSTEM COMPILER BY FOLLOWING
	THE GETAC BY ANOTHER ACCESS. HAVE NO REAL CONFIDENCE IN THIS FIX
	SO HAVE NOT CHANGED THE SOURCE
	[TOTAL] 7-13-73 RHT

#MO	ANOTHER LDYFLG PROBLEM WITH OWN ARRAYS. A SKIPN SHOULD HAVE BEEN A SKIPL
	[ARRAY]/8 5-31-73 JRL

#MP	ANOTHER STRING GARBAGE COLLECTOR BUG.  AT ENDSTR IN SYM, A CHECK IS MADE
	FOR FALSE PART OF CONDITIONAL, AND SOME CODE IS SKIPPED (ENTERS CODE)
	IF THAT IS SO.  ALSO SKIPPED IS A CALL TO UPDCNT WHICH KEEPS REMCHR
	HONEST!!!!  FIXED IT, HERE AND AT CMU, WHERE IT WAS CAUSING A PROBLEM.
	[SYM]@ENDSTR  6-1-73 DCS

#MQ	LISTING BUG IN SCANNER WHEN LPNT BACKED UP OVER MACRO NAME. SOMETIMES
	TEMPORARY IN WHICH LPNT WAS SAVED(SBITS2) WAS NOT BEING SET UP.
	[SYM] 6-9-73

#MR	NEWART IN COMPILER GOT CONFUSED WITH STRING ARRAYS, THOUGHT THEY WERE
	STRINGS.
	[LEAP] JRL 6-15-73

#MS	LET WHEN RIGHT SIDE A PARSER TRIGGERER, NOT COPYING TRIGGER BIT

#MT	IF CTVAR1 ∧ CTVAR2 THEN ... DOESNT CHECK SECOND CTVAR   RHT
	COMPILE TIME EVALUATION OF CONSTANT EXPRESSION

#MU	FORSTO WASN'T STORING ENOUGH (WE THINK) RHT
	[TOTAL] RHT 6-25-73

#MV	NEEDED AN ACCESS BEFORE A PUT IN LOOP CODE
	[STATS] RHT 6-27-73

#MW	PPMAX NOT EXTERNALED IN SAILUP (EXPORT ONLY)
	[GOGOL] JRL 6-28-73

#MX	SIMPLE PROC GIVES WARNING IF NON-SIMPLE PROCEDURE INSIDE
	[STATS/20] RHT 6-28-73

#MY	GO TO OUT OF SIMPLE PROC INTO ANOTHER SIMPLE PROOC LOSES
	[SYM/30,STATS/14] RHT 6-28-73

#MZ	ERRONEOUS ERROR MESSAGE FOR REAL CONST TO NEG INTEGER POWER
	[EXPRS/7] JRL 6-29-73
N-SERIES BUGS

#NA	IF GET AN INTERRUPT IN SCHEDULER LOOP AFTER INTENS
	CHECK BUT BEFORE DO IWAIT, YOU WILL LOSE !
	HAVE A QUASI-FIX THAT SHOULD WORK EXCEPT IF YOU
	ARE USING THE INTERRUPT MASK UUOS.  REALLY NEEDS A
	CLEAR MASK & TELL ME WHAT IT WAS TYPE THING
	[NWORLD/11] RHT 7-14-73

#NB	USER SPECIFIED CAUSE PROCEDURES WERE LOSING GROSSLY
	SETIP & SETCP WERE NOT LIKE DOCUMENTATION.
	INTERROGATE TRIED TO FIND CONTEXT WHEN NONE WAS SPECIF.
	[NWORLD,HEL,PROCSS] RHT 4-15-73

#NC	ASKNTC DID A PUSHJ WHERE A JSP WAS CALLED FOR
	[NWORLD] RHT 7-15-73

#ND     ARRAY TEMP CONFUSION WHEN DELETING LIST ARRAY ITEM
	[LEPRUN/26] JRL 7-22-73

#NE	DEFINE BIT=1 LSH 35; I←BIT; ... SETS I TO ZERO
	SIMILARLY FOR BIT='400000000000.  SEE FOO.SAI[S,RHT]
	I ← 1 LSH 35 WORKS. SEE BUG PG

#NF	FOUND A USE OF TBITS IN STKUWD
	[ARYSER] RHT 7-24-73

#NG	STKUWD LOSES WHEN GO TO OUT OF SIMPLE INTO ITS (NON-SIMPLE)
	PARENT.  FIX WAS TO ADJUST STACKS BEFORE DO LVI STUFF.
	[ARYSER] RHT 7-24-73

#NH	DEFAULT PARAMS WEREN'T DOING RIGHT BY ADEPTH
	[STATS] RHT 7-25-73

#NI	FIXUP FOR CONTINUE WITHING DO UNTIL LOOP NOT CORRECT
	[STATS] RHT 7-29-73

#NJ     TEMP FOR EXPRESSION ARGUMENT TO FORTRAN CALL BEING REMOPPED
        TOO EARLY BY FTRARG (WHEN CALLED FROM RECURSIVE PROCEDURE)
        SIMILAR PROBLEM WHEN SAIL USES A TEMP FOR RESULT OF EXPRESSION
	BEING PASSED TO A REFERENCE PARAMETER OF PROCEDURE WHEN
	TEMP IS RECURSIVE.

#NK     TEMPS SHOULD NOT HAVE DISPLAY LEVEL.
	[TOTAL/16,/20] JRL 8-2-73

#NL	BOOLEAN A⊗ANY≡ANY ALWAYS FAILS.
	[LEPRUN] JRL 8-4-73

#NM	RELATIONS INVOLVING BINDING ITEMVARS CAN'T BE DONE WITH MEMORY;
	[LEAP] JRL 8-5-73

#NN	0.0↑.5 CAUSES EXPONENTIATION UNDERFLOW ERROR MESSAGE
	[GOGOL] JRL 8-6-73

#NO	GIVE ERROR MESSAGE FOR EXTRA ENDC,ELSEC'S
	[SAIL] HJS 8-6-73

#NP	COMPILER COMPLAINS WHEN MATCHING PROCEDURE CONTAINS NO 
	? PARAMTERS (DRYROT:BPOP)
	[STATS] JRL 8-12-73

#NQ	FIX UP TO STRING ITEMVAR ADCON NOT GOING OUT CORRECTLY
	SAME OLD PROBLEM (STRING ITEMVAR WAS TREATED AS STRING).
	[GEN/29] JRL 8-12-73

#NR	NEW("STRING CONSTANT") CAUSES A DRYROT.  
	SAME OLD PROBLEM, REMOP BEING CALLED TWICE.
	[LEAP/21] JRL 8-13-73

#NS	LPINI SOMETIMES GETS A DRYROT-EXPAND CODE. 
	CAUSED BY HLRZ WHICH SHOULD HAVE BEEN HLRE
	[LEPRUN/6] JRL 8-16-73

#NT	ALLSTO IN BLOCK WITH PROCEDURE DECLARATION CAN CAUSE TEMP
	TO GO WITH PROCEDURE'S TEMP RING. 
	[STATS/20] RHT 8-19-73

#NU	TRAGO FOR CONTINUE IS LOSING FOR WANT OF A TEST FOR KILL SETS
	[STATS/15] RHT 8-19-73

#NV	EXPONENTIATION CNST↑CNST WAS NOT MARKED AS CNST
	[EXPRS/7] RHT 8-19-73

#NW	DRYROT WHEN DELETING STRING ARRAY ITEM
	[LEPRUN/31] JRL 8-26-73

#NX	DATUM(BINDINGIV,TYPE) DOESN'T WORK BECAUSE MPBIND BIT IS OVERWRITTEN;
	[LEAP/14] JRL 8-30-73

#NY	PROFILE DID NOT KNOW ABOUT MATCHING PROCEDURES.
	[PROFILE.SAI/12] JRL 8-30-73

#NZ	DELETE OF BINDIT & FRIENDS SHOULD CAUSE AN ERROR MESSAGE
	[LEPRUN/27] RHT 8-30-73
O-SERIES BUGS

#OA	REMOVE ALL ITEM SCREWS UP FREE STORAGE WHEN IT REMOVES ONLY ITEM
	FROM LIST
	[LEPRUN] JRL 9-4-73

#OB	SPROUT_DEFAULTS CAUSES FUNYNESS WHEN IT IS THE FIRST DECLARATION
	IN A PROCEDURE. MORE ON THIS: SPROUT_OPTIONS IS ALL QUITE HAPPY
	IF YOU GIVE IT A LITERAL OCTAL NUMBER, SAY '1400, ALL IS FINE.
	IF INSTEAD YOU SAY PSTACK(3), THE NEXT DECLARATION SOMEHOW
	DOESN'T TAKE.  SEE BUG.SAI[THE,RHT].  THE PROBLEM ALSO OCCURS
	IF YOU USE A CONSTANT EXPRESSION LIKE (3 LSH 8).
	PROBLEM WAS THAT SDFFLTS WASNT CLEARING BITS. 
	[GEN/37] RHT 10-31-73

#OC	PROFIL DID NOT KNOW ABOUT CONTINUE STATEMENTS. IT DOES NOW.
	[PROFIL.SAI] JRL 9-9-73

#OD	TYPE BITS NOT BEING SENT TO  ARRAY ITEM ALLOCATOR
	[ARRAY/8] JRL 9-14-73

#OE	DRYROT AT CORREL WHEN DELETING DECLARED STRING ARRAY ITEM
	[LEPRUN/31] JRL 9-15-73

#OF	CREF BUG, CAUSED BY NOT RELOADING AC A WHEN SCANNING FALSE PART
	OF IFCR EXPRESSION
	[SYM/9] HJS 9-17-73

#OG	STRING GARBAGE COLLECT BUG, COUNT OF PNAME WASN'T BEING SAVED
	[SYM/23] HJS 9-19-73

#OH	CREF BUG: GARBAGE FOR MACRO FORMALS
	SOLUTION: IGNORE THE LITTLE CRITTERS
	[SYM/30] HJS 9-24-73

#OI	INTERESTING BUG ENCOUNTERED WHEN TESTING AUTO DECLARATION OF
	UNDECLARED VARS: GET A "STORA A THING NOT IN AC" IN FILE
	ACBUG.SAI -- RHT,KVL

#OJ	FAILED TO TO A GETBLK FOR A SPROUT APPLY.  FIX WAS IN SAPPL1.
	[LEAP/28] RHT 10-14-73

#OK	REF_ITEM(ITEMX) WAS LOSING
	[LEAP/21] RHT 10-14-73

#OL	TYPO IN APPLY
	[ARYSER/7] RHT 10-14-73

#OM	TYPO IN LEAP
	[LEAP/28] RHT 10-14-73

#ON	BUG IN STKCHK FOR LEAP FOR ? LOCALS
	E.G. ∀ ? X | X ε {{A,B}} DO ... LOSES
	[LEAP/9] JRL 10-14-73

#OO	SPROUT APPLY NOT SETTING UP SPRPDA IN STATL
	[NWORLD/7] RHT 10-14-73

#OP	A WASNT GETTING SAVED BY APPLY
	[ARYSER/8] RHT 10-14-73

#OQ	MAKE ITM⊗LOP(A)≡LOP(B) GIVES RETRIEVAL-CONSTRUCTION FAILURE
	[LEAP/18] JRL 10-19-73

#OR	ANOTHER STRING ITEMVAR IS NOT A STRING BUG.
	[TOTAL/13] JRL 10-26-73

#OS	GETTING AN ILL MEM REF IN THE COMPILERCAUSED BY STCAT BEING 
	CALLED WITH GENLEF=0, AS HAPPENS WHEN DO A CVMS(UNDEC). RHT
	SEE STCBUG.SAI[S,AIL] HJS 10-31-73 

#OT	SPROUT APPLY WAS TRYING TO LOOK UP STACK FOR STATIC LINK EVEN 
	WHEN ONE WAS SUPPLIED IN THE PROCEDURE ITEM.  THIS IS A
	CLEAR LOSS, SINCE YOU MAY HAVE TO LOOK FOREVER.
	[NWORLD/7] RHT 10-30-73

#OU	SPROUT APPLY DEFAULTS CODE HAD A TYPO (THERE SEEM TO BE A LOT OF EM)
	[NWORLD/7] RHT 10-30-73

#OV	SEEMINGLY, THERE IS A BUG WITH THE ALLCON STUFF IN EXPRS.
	AS NEARLY AS I CAN TELL, IF A CONSTANT SEMBLK IS MARKED
	INAC, THEN ARITH WILL NOT TRY TO EVALUATE BOTH PARTS.
	SEVERAL QUESTIONS ARISE AS TO WHY A CONSTANT SEMBLK MARKED
	INAC OR OTHERWISE WAS SITTING AROUND AT ALL, BEYOND WHEN
	IT MAY BE USEFUL, BUT ... 
	SEE EXPRS AT THE BOTTOM OF P. 4-1  RHT

#OW	BUG IN CALCULATION OF FOREACH ITEMVAR LOCAL ADDRESS WHEN LOCAL REQUIRES
	UP LEVEL ADDRESSING. A MOVE SHOULD HAVE BEEN A HRRZ
	[LEPRUN/15] JRL 11-4-73

#OX	ITV ↔ ITV2 DOESN'T WORK IF EITHER IS A ? PARAMETER.
	[EXPRS,TOTAL] JRL 11-4-73

#OY	MAKE NOT TESTING TO MAKE SURE ALL THREE ARGUMENTS ARE ITEMS
	[LEAP/16] JRL 11-4-73

#OZ	GET INSIST OF ITEMVAR DOESN'T WORK IF TYPE BITS ARE ON
	[TOTAL/11] JRL 11-13-73
P-SERIES BUGS

#PA	GENMOV(GET,ADDR) OF MPPARM (? ITEMVAR) WAS DESTROYING AC 3
	[TOTAL/14] JRL 11-13-73


#PB	APPLY SEEMS TO BE FORGETTING TO DO AN ALLSTO.
	[LEAP/28] RHT 11-15-73


#PC	FIRST LINE OF CREF OVERWRITTEN.  
	[SYM/8,SYM/22] HJS 11-16-73 

#PD	STACK GETS OUT OF HAND WHEN HAVE CONDITIONAL LEAP EXPRESSION
	PROBABLY ALSO IF CASE EXPRESSION
	[HEL/8,LEAP/22] JRL 11-24-73

#PE	PRELOADING TWO STRING ARRAYS IS A LOSER.  THE REASON WAS THAT
	THE PRELOAD CODE WAS RATHER CARELESS WITH ITS COUNT VARIABLE
	LDYTOT.
	[ARRAY/11] RHT 11-25-73

#PF	FILE ENDING IN FF BLOWS UP COMPILER.
	[SYM/22] RLS 11-27-73

#PG	CVS BARFS ON LARGEST NEGATIVE NUMBER (YIELDS - 0)
	[STRSER/15] RLS 11-28-73

#PH	BOOLEAN CODE IN FOREACH DOESN'T WORK WITH REENTRANT COMPILATIONS(/H)
	FIXUP WAS BEING ERRONEOUSLY SUPPRESSED.
	[LEAP/12] JRL 11-29-73

*PI	TURN OFF MACRO EXPANSION WHILE SCANNING FORC OR FORLC LOOP VARIABLE.  
	[HEL/16] HJS 11-30-73 

#PJ	NOMAC WAS LOSING ITS ARGUMENT SINCE IT WAS BEING POPPED FROM THE STACK.  
	[HEL/17] HJS 11-30-73  

#PK	ACCESS CONSTRUCT IN START CODE MEANS THAT OUGHT TO DO A REMOP
	AFTER EMIT INSTRUCTION.
	[GEN/57]  RHT 12-2-73

#PL 	ARRBLT WAS BLTTING IF LENGTH LEQ 0.  IF LENGTH NEGATIVE, THIS
	CAUSED A WRAP AROUND.
	[ARYSER/5]  RLS 12-1-73

#PM	INPUT LOST A CHAR WHEN AN SOS FILE ENDED WITH A LINENO WITH
	THE TAB IN THE NEXT BUFFER.  COMMON WHEN FILE IS ON 10-STYLE 
	DECTAPE (SINCE '177 WORDS PER BUFFER).
	[IOSER/14]  RLS 12-1-73

#PN	ADD A RESET AT VERY START OF SAIL.
	[SAIL/28] RHT & JRL 12-5-73

#PO	PTY CODE WAS MANGLING 12 (DID PTYUUO 5,CDB)
	FIXED BY USING ACS C & D.  ALSO, LOOKED TO SEE THAT THEY
	WERE OK. THEY SEEMED TO BE (ONLY USE OF C GOT REPLACED BY T)
	[IOSER/34] RHT 12-5-73

#PP	REFERING TO BUILT-IN ARRAYS WHICH HAVE "NEGATIVE"
	VIRTUAL ORIGINS, WAS A LOSER WITHIN HISEG COMPILATIONS. THIS 
	CAUSED BY WAY LOADER DECIDES
	WHICH OF THE TWO RELOCATION FACTORS TO USE.
	FIX FOR NOW IS TO SIMPLY GIVE ERROR MESSAGE IF THIS HAPPENS.
	[ARRAY/15] JRL 12-5-73

#PQ	SPRPD WANST SETTING UP FOR CALL TO LODPDA
	[PROCSS/3] RHT 12-6-73

#PR	COMSER ERR HANDLER SNARFING A CR & LEAVING THE LF HANGING
	AROUND.  THIS IS NOT GOOD.
	[COMSER]  RHT 12-6-73

#PS	CALLING ERROR HANDLER DURING COMMAND SCANNER (COMPILER), BARFS
	IF REPLIED TO BY "S"
	[SAIL]	JRL 12-7-73

#PT	RELATIONS BETWEEN ITEMEXPRS AND ARITH EXPRESSIONS NOT ALWAYS 
	FLAGGED AS ERRORS.
	[EXPRS/ ] JRL 12-9-73

#PU	ERROR MESSAGES AT RUNTIME WERE ACTING AS IF AN ERRONEOUS
	RESPONSE CHAR HAD BEEN TYPED.
	[GOGOL /26] RFS 12/10/73

#PV	ATAN REMOVED TOO MANY THINGS FROM STACK WHEN GIVEN A SMALL ANGLE
	[TRIGS/7/8 ] JRL 12/11/73

#PW	TRIG FLOT OV HANDLER ALSO NEEDED TO ENABLE FOR REGULAR OVERFLOW,
	SINCE DEC SETS SEVERAL BITS.
	[TRIGS/3] RHT 12/12/73

#PX	ADD MORE ERROR CHECKING (FOR POTENTIAL DRYROTS) IN LEAP STACK MANIPULATIONS
	[HEL,LEAP] JRL 12-12-73

#PY	NOMAC WAS LOSING BECAUSE WHEN IT CAME BACK IT DID AN EXTRA SCAN
	FIX WAS TO BACK UP SCANNER (SCNBAK) ONE BEFORE RETURNING
	[HEL] JRL 12-12-73

#PZ	DCS DISCOVERED LOSSAGE IN DEFCHK. ESSENTIALLY, STRINGC HAPPENING
	AT A TIME IT DIDN'T USED TO.  THE FIX ACTUALLY DOCUMENTS THE BUG.
	[SYM/14] RHT 12-14-73

Q-SERIES BUGS

#QA	PARAMS NOT RIGHT TO GC TRAPS IN GOGOL
	[GOGOL/44] RHT 12-14-73

#QB	CVG WASN'T DOING LARGEST NEG RIGHT
	[STRSER] RFS 12-14-73

#QC	END OF FILE NOT DETECTED CORRECTLY FOR TTY INPUT TO REALIN.
	THE EFFECT WAS THAT YOU WOULD READ INFINITE NUMBER OF ZEROES
	FROM THE FILE, NEVER SETTING EOF.
	[IOSER] RFS 12-15-73

#QD	BUG IN NUMIN SNARFS A + OR - SIGN FOLLOWING A LEGAL NUMBER.
	THIS IS A BUG (I.E. NUMIN DOES NOT FOLLOW THE SYNTAX DOCUMENTED
	FOR IT IN IOSER).
	[IOSER] RFS 12-15-73
#QE	LDE reported CAT bug when used with new STRNGC:  if CAT decides
   that first arg. need not be copied, but then has to to STRNGC
   to get room for second arg, and STRNGC adds new space, it is no logner
   true that the first arg needn't be moved.  My fix is, whenever
   a garbage collect must be done in this instance,both strings are
   moved, need it or not.
   [STRSER] p. 4 12-30-73 DCS

#QF	Same bug as QE, only this time in SYM in the compiler. The same
   old formals to macro body problem -- if GC forms new block, the
   correspondences between topbyte and string will not be maintained. Same
   thing, in fact, if ID-scanning is interrupted by such a GC.  I don't
   have a fix yet.
   [SYM] DCS (eventually)


#QG	FOREACH  BARFS (DURING COMPILATION) AT MATCHING PROCEDURE WITH
	NO PARAMETERS (PLACING MPRO TOKEN IN WRONG PARRIG LOCATION)
	[STATS,HEL] JRL 1-7-74

#QH	FOREACH NEEDNEXT PROBLEM. THE FIX IS A TERRIBLE HACK.
	[STATS/8] RHT 1-8-74

#QI	CVO DOESN'T WORK RIGHT WHEN ARITHMETIC INTERRUPTS ENABLED.
	JOV WAS IN WRONG PLACE
	[STRSER/14] JRL 1-13-73

#QJ	LOCAL VARIABLE INFO IN PD GOING OUT WRONG FOR SG ITEMVAR ARRAY
	WHERE SG IS SOME ALLOCATED THING
	[GEN/39] RHT 1-16-74

#QK 	REQUIRE MAINPR INITIALIZATION DOESN'T COMPILE.  PROBLEM ALSO
	OCCURRED FOR ALL OTHER RUNTIMES.  
	[GEN/43] RHT 1-16-74

#QL	IN GLOBAL SEGMENT, ROUTINES IHEDLS & ITAILS WERE GETTING
	CALLED WITH A BAD VALUE IN TABL.  MADE A TEMPORARY FIX
	THAT ALWAYS LOADS GOGTAB INTO TABL.  REALLY NEED A BETTER FIX
	LATER.
	[NWORLD/10] RHT 1-18-74

#QM	CHECK_TYPE(SG ARRAY) DOESN'T WORK
	[HEL/9] RHT 1-19-74

#QN	WHEN #PX# WAS PUT IN, THE ERR CALLS DIDN'T CORRECT THE 
	CONDITIONS THEY BARFED AT.  THE DRYROTS NOW MODIFIED
	TO TRY HARDER IF THE LOSER CONTINUES.
	[LEAP/8] RHT 1-22-74

#QO	compiler loses when try to expand string space, since
	pname may wind up in old block & topbyt in next block.
	included code to do pname←.sontp(pname,0) after call
	to garb coll in sgcol. 
	[SYM/25] RHT 1-25-74

#QP	CANON CALLED WRONG IN .SONTP -- THIS WILL CAUSE BAD RESULTS
	[GOGOL/43] RHT 1-25-74 OK RHT

#QQ	.SONTP HAD A MISSING HRRZ D,-1(SP)
	[GOGOL/43] RHT 1-25-74 OK RHT

#QR	CHNCDB ADDED TO FOO2
	[FOO2]	RHT 1-27-74

#QS	A NEGAT BUG, BOMB WHEN STORE NON NEGAT AC INTO VAR WHICH WAS NEGAT INAC
	(CMU BUG =A3=)
	[EXPRS/12] JRL 1-27-74

#QT	GIVE BETTER RECOVERY WHEN HAVE EXTRA "ELSE"
	(CMU BUG =A4=) Q3: IN HEL, ERR125 IN GEN
	[GEN,HEL] JRL 1-27-74

#QU	APPLY TESTING WRONG TO SE IF STRING RESULT TO THROW AWAY 
	CAUSES SP ENCLOBBERMENT.  
	[ARYSER/8] RHT 1-28-74

#QV	ASSIGNC BLOWS, NO '177 0 AT END, ASGFLG NOT CLEARED SOON ENOUGH
	[HEL,GEN]

#QW	APPLY TOO STRINGENT IN TYPE CHECKING WHEN PASS UNTYPED ITEMVAR
	TO A TYPED FORMAL.  FIX THIS SO ALLOWS YOU TO DO THIS WHENEVER
	(1) FORMAL IS REFERENCE OR BIND.  (2) TYPE OF ITEM IN ACTUAL
	CORRESP WITH FORMAL.
	[ARYSER/7] RHT 1-29-74

#QX	A REAL WINNER: THE STATS CODE FOR TYPED PROCEDURES ISN'T ALWAYS
	HONEST ABOUT ADEPTH (SEEMINGLY) WHEN IT PUSHES AC1 PRIOR TO
	RELEASING VALUE SET PARAMS.  CAUSES VERY BAD RESULTS.
	[STATS/24] RHT 1-31-74

#QY	IN THE EXPORT WORLD, A VITAL FIX: THE TABLE USBTST NEEDED
	A DUMMY ENTRY BETWEEN INPUT & OUTPUT INDICES (CMU BUG =A5=)
	[IOSER/4] RHT 2-1-74

#QZ	APPLY TESTED WRONG BIT FIELD TO DETECT STRING VALUE PARAMS.
	[ARYSER/7] RHT 2-3-74
R SERIES BUGS

#RA	ALLOW PROGRAM TEXT BEYOND THE FINAL END OF THE PROGRAM (I.E. CONDITIONAL 
	COMPILATION). [GEN,SYM] HJS 2-5-74 .


#RB	LEAP FORGETTING TO DO ACCESSES IN LENGTH OF SET LENGTH OF LIST CODE
	[LEAP] JRL 2-6-74

#RC	GET DRYROT FBOUT WITH FOREACH'S WITHOUT BINDING LISTS (FEAT %BD%)
	[LEAP] JRL 2-6-74

#RD	ARRCLR USED TO ALLOW BINDIT AS A DEFAULT VALUE.  UNFORTUNATELY, 
	THIS FEATURE CAUSED BINDIT ALWAYS TO BE USED.  FIX IS TO ALLOW
	ONLY 0 AS A DEFAULT, THUS WILL CLEAR ITEMVAR ARRAYS TO ANY.
	[FOO2] RHT 2-10-74

#RE	CMU BUG =A8= STRING ARRAY ITEMVAR ARRAY INDEXING SCREWED UP
	ANOTHER STRING ITEMVAR IS NOT A STRING BUG.
	[ARRAY/ 15,TOTAL/13] JRL 2-13-74

#RF	LEAP BUG: LSTMAK WAS TREATING THE LIST LIKE A BAG.
	[LEPRUN/39] RHT 2-14-74

#RG	SEEMINGLY, ALL THE PROCESS ROUTINES WERE MARKED BY FOO2 AS
	BILTIN.  ESSENTIALLY NONE OF THEM ARE.  I DO NOT UNDERSTAND
	HOW ANY OF THESE ROUTINES EVER WORKED.
	[FOO2] RHT 2-16-74

#RH	CVPS DOES NOT WORK.  PROBLEM WAS THAT CVP1 WANTS TO BE CALLED
	(IN HEL) BY ↑CVP1 & WAS CALLED BY ¬CVP1. ALSO NEEDED A SCAN AT CVP3.
	[HEL] RHT 2-20-74

#RI	(CMU =A9=) .SONTP ASSUMED THAT WHEN NEEDED TO COPY, TOPBYT IS WHERE
	TO COPY TO.  FOR THE COMPILER THIS IS NOT THE CASE, SO DO AN INSET NOW.
	[GOGOL/43] RHT 2-20-74

#RJ	SETS IN NON-RECURSIVE PROCEDURES NOT GETTING INTO THE LVI.
	[GEN/39] JRL 2-21-74

#RK	(CMU =B1=) ARRAY DECLARATION CODE TREATING STRING ITEMVAR ARRAYS AND 
	STRING ARRAY ITEMVAR ARRAYS AS STRING ARRAYS
	[ARRAY/7,8,9,13] JRL 2-24-74

#RL	(CMU =B2=) STRING GC ACCESSING A CORGET BLOCK AFTER RELEASING IT.
	THIS CAN CAUSE ILL MEM REFS.
	[GOGOL] RHT 3-5-74

#RM	(CMU =B3=) FP1 FREE LIST GARBAGED (MOVEM SHOULD HAVE BEEN HRRM)
	[LEPRUN/36] LDE 3-6-74

#RN	UP IS NOT "UNPROTECTING" THE RIGHT ACS FROM PROTECT_ACS.  
	FOR SOME STRANGE REASON, IT TRIES TO PRETEND THAT AC0 CANNOT
	BE PROTECTED.  FIX REQUIRES (1): TURN LSH -1(D) INTO LSH (D)
	IN PACDO; (2) TURN MOVEI B,1000 INTO MOVEI B,2000 JUST
	BEFORE UPACHK.
	[GEN/12,14] RHT 3-16-74

#RO	(REF #QO#) DCS CLAIMS TO HAVE FOUND THE "FINAL" FIX TO THE 
	COMPILER'S STRING SPACE EXPANSION DIFFICULTIES.  ESSENTIALLY,
	IT WAS ASSUMING THAT A NUMBER OF STRINGS WOULD STAY ADJACENT.
	FIX WAS TO MAKE THEM ALL SUBSTRINGS OF ONE LARGER STRING.
	[SYM/13,14,25] DCS 3-17-74

#RP	RFITEM STUFF CALCULATING TYPE WORD FOR STRING TEMPS INCORRECTLY
	[LEAP/21] JRL 3-21-74

#RQ	REFITEM NOT HANDLING STRING CONSTANTS CORRECTLY
	[LEAP/21] JFR 3-22-74

#RR	REQUIRE CVS(10) MESSAGE; DIDN'T WORK WAS CONFUSED WITH
	REQUIRE INITIALIZATION. 
	[HEL/5] JRL 4-3-74

#RS	COP(LISTITEMVAR) DOESN'T GENERATE A SYNTAX ERROR.
	[LEAP] JRL 4-7-74

#RT	¬(A∧B)∨C GENERATES CODE AS IF IT WERE ¬A∨(¬B∧C). PLACE WHERE
	ITERATION USED INSTEAD OF RECURSION IN DEMORGANIZER
	NOT INITIALIZED CORRECTLY
	[EXPRS/20] JRL 4-10-74

#RU	RECQQ GETS CALLED FROM PLACES (LIKE APPLY) WHICH HAVEN'T SET UP USER
	FIX WAS TO SET UP USER.
	[LEPRUN/45] LDE 4-14-74


#RV	LENGTH(LISTITEMVAR) DOESN'T GENERATE A SYNTAX ERROR.
	[LEAP/18] JRL 5-5-74

#RW	BUG FIX #RN HAD A BUG.  A MOVEI D,1000 WAS CHANGED TO MOVEI D,2000
	BUT SHOULD HAVE BEEN LEFT ALONE. (RIGHT AT UPACHK)
	[GEN/14] RHT 5-5-74

#RX	SOSNUM AND FRIENDS WEREN'T BEGIN INITIALIZED IN OPEN
	(CMU BUG =B7=)
	[IOSER/8] LDE 5/5/74

#RY	RCFADJ WAS DOING RECUUO 0,(AC) INSTEAD OF RECUUO 0,AC FOR HANGING
	RECORD REFERENCE.  THIS ISN'T SO GOOD.
	[TOTAL/18] RHT 5/14/74

#RZ	RFDPSH HAD A TEST BACKWARD (ON NOSKIT)
	[LEAP/21] RHT 5/20/74
S-SERIES BUGS

#SA	WAS BUMPING REF CNT WHEN DID GET ADDR(RECORD).  NOT GOOD.
	[TOTAL/11] RHT 5-20-74

#SB	REF_ITEM DOESN'T SEEM TO DO GOOD THINGS FOR STRINGS

#SC	ERROR IN INTMAP DOCUMENTATION FIXED BY CHANGE IN INTPRO
	(WORD COUNT WORD WAS OFF)
	[NWORLD/20] RHT 5-23-74

#SD	TROUBLE WHEN YOU REFERENCE THE PDA OF AN EXTERNAL PROCEDURE
	THAT IS LATER MADE INTERNAL.  FIXED IN A KLUGY WAY BY
	PUTTING OUT A CELL CONTAINING THE PDA, FIXING UP
	TO THAT, & THEN RESTARTING THE FIXUP CHAIN
	[STATS20,SYM/29,SAIL/16] RHT 5-28-74

#SE	ARG_LIST(ITEM_CONSTANT) LOSES THE TMPB
	[LEAP/21] RHT 5-28-74

#SF	WASN'T ALLOCATING ENOUGH ROOM FOR RECORDS
	[RECSER] RHT 5-29-74

#SG	ADCON FIXUPS WERE BEING MODIFIED BY A TOO-CLEVER EMITER
	[GEN/30] RHT 2-30-74

#SH	THE EMIT <JSFIX> USED TO PUT OUT A PDA WORD FOR INTERNAL
	PROCEDURES ALSO NEEDS NOUSAC
	[STATS/20,/24] RHT 2-30-74

#SI	TENEX:  LISTING FORMAT IMPROVED WITH ANOTHER CRLF.
	[SYM/27] RLS 5-30-74

#SJ	TENEX:  K.OUT NOT FILLING OUT END OF DUMP MODE BUFFER.
	[GOGOL]

#SK	TENEX:  DEVICE SYS: NOT WORKING FOR LOAD_MODULE REQUIREMENT.
	[TOTAL/48]  RLS 5-30-74

#SL	INITIAL 10 WORDS OF -1 IN THE SEGMENT REPORTED BY RFS
	TO BE INCORRECT FOR V 6 OF TOPS10 SYSTEM.
	[UP/5, UP.TNX/5]  RLS 5-30-74

#SM	HERE TABLE NEEDED TO CHECK FOR OVERFLOW.
	[HEAD/9, GOGOL/17] RLS 5-25-74

#SN	RECURSIVE CALLS TO EXPR!TYPE NOT ALLOWED.  EXPCNT ADDED.
	[GEN/23]  RLS 5-30-74

#SO	STKUWD SEEMS TO CLOBBER B JUST BEFORE STKUWD, WHICH IS VERY BAD
	THING TO DO.  ALSO, IT SEEMS THAT FAIL ISN'T SETTING UP SPRPDA
	CORRECTLY (PD.DSW IS GETTING SET TO 0) IN TENEX SAIL.
	[ARYSER/4] RHT 6-6-74

#SP	CMU BUG =C1= ASSIGNC'S AT BEGINNING OF BLOCK DON'T WORK.
	(NOT TRIGGERING SO INSERT SPECIAL CHECK IN STATEMENT STUFF)
	[HEL/6] JRL 6/13/74

#SQ	X IN LIST BEING COMPILED AS X IN SET. TYPE TESTING IN
	STIN WAS WRONG
	[LEAP/17] JRL 6/28/74

#SR	PUT X IN LIST,  MUST HAVE AFTER(BEFORE) TERM. GIVE
	ERROR MESSAGE OTHERWISE
	[LEAP/18] JRL 6-28-74

#SS	AC FOR SUBFIELD INDXED TEMP WASN'T BEING REMEMBERED IN ACKTAB
	[GEN/52] RHT 7-5-74

#ST	ALLSTO NEEDED BEFORE THEN PART OF STATEMENT
	PITY, SINCE DON'T USUALLY REALLY NEED IT.  PERHAPS SOME AMBITIOUS
	SOUL WILL MAKE BOOLEANS BETTER, BUT ...
	[EXPRS/21] RHT 7-17-74

#SU	CONV(ARITH) OUGHT NOT TO BARF AT PNTVARS
	[TOTAL/6] RHT 7-21-74

#SV	RETURN(REC) NOT LOADING AC 1 IF REC WAS INAC
	[TOTAL/11] RHT 7-24-74

#SW	NEW, IMPROVED SCAN HAD A BUG
	[STRSER/16] RHT 7-24-74

#SX	INSET WAS NEVER HERE'D, DO A HEREFK
	[SPARES,GOGOL/33] JRL 7-31-74

#SY	RFIMAK WASN'T CALLING RFDPSH IN THE NEW WAY.
	[LEAP/21] RHT 8-2-74

#SZ	CMU BUG =C7= FORC PROBLEM WHEN BODY NEVER EXPANDED, AS IN:
		FORC I ← 1 STEPC 1 UNTILC 0 DOC < MUMBLE > ENDC
	THE SYMBOL TABLE SYMBLK WAS GETTING ZAPPED.
	[GEN/27] JRL 8-5-74
T-SERIES BUGS

#TA	CMU BUG =D1=. ASSIGNC BARFED WHEN GOT CONSTANT EXPRESSION.
	MISSING EOM AT END OF BODY.
	[GEN/22,24] JRL 8-8-74

#TB	CMU BUG =C9=. TYPO IN INPUT GLUBBED UP SETPL FEATURE.
	[IOSER/14] LDE (VIA JRL) 8-8-74

#TC	CMU BUG =A7= SGSORT IS BARFING AT NULL STRINGS OUT OF
	BOUNDS. 
	[GOGOL/49] RHT 8-31-74

#TD	DO ... UNTIL ... WAS LEAVING STUFF INAC.  A DONE CAUSED
	THIS TO LOSE
	[STATS/11] RHT 8-31-74

#TE	GET WAS LEAVING SOME THINGS MARKED INAC AFTER A GET ADDR
	[TOTAL/11]

#TF	SCAN WAS DOING THE WRONG THING IF NO BREAK CHAR SEEN
	[STRSER/16] LDE 9-7-74

#TG	CMU BUG =D5= FORLC BARFED AT MORE THAN 14 PARMATERS.  THE 
	PROBLEM COULD ALSO OCCUR WITH MACROS WITH A LARGER NUMBER 
	OF PARAMETERS.  
	[SYM/10] HJS 9-15-74 

#TH	ADDING A CONSTANT TO A BYTE POINTER IN ORDER TO DECREMENT IT
	CAUSES EMBARRASING OVERFLOWS IN NEW SCAN. 
	[STRSER/16] RHT 9-16-74

#TI	REF!ITEM WAS TURNING TMPB ON.
	[LEAP/21] RHT 9-18-74

#TJ	? ITEMVAR WAS ALWAYS GETTING BOUND IN MP CALLS INSIDE
	FOREACHES.  PROBLEM WAS A TYPOGRAPHICAL ERROR.
	[STATS/34] RHT 9-21-74

#TK	STK4LC CONTAINED ANOTHER TYPO, I THINK.  I DON'T UNDERSTAND HOW
	THIS CODE EVER EVEN LOOKED LIKE IT WORKED.
	[LEPRUN/22] RHT 9-21-74

#TL	SUBSCR NOT DOING ACCESS ON ARRAY DESCRIPTOR
	[ARRAY/15] JFR 9-29-74

#TL	ARRCLR NOT CLEARING STRING ARRAYS.
	[FOO2/3] RLS 10-19-74

#TM	TYPO IN TTYINL (BKTCHK THING)
	[IOSER] RHT 10-19-74

#TN	TBITS ENTRY FOR OUTER BLOCK SEMBLK IS A LIE.  (SAYS
	EXTERNAL).  CHANGE IT TO BE JUST PROCED.  DONE BY HACK
	IN SAIL/33 FOR NOW.  RIGHT THING IS TO BUILD SYMBOL
	CORRECTLY IN THE FIRST PLACE.
	[SAIL/33] RHT 10-21-74

#TO	CALLS TO BILTIN PROCEDURES WITH NON-(INTEGER+REAL) TYPES
	CAUSES GREAT LOSSAGE BECAUSE AC1 ISN'T SAVED.  FIX WAS TO
	CHECK FOR ALL TYPES
	[STATS/39] RHT 10-27-74

#TP	MISCELLANEOUS FIXES TO GETBREAK/RELBREAK: TYPOS, IMPROVE RE-ENTERABILITY.
	[STRSER/16,21] JFR 10-26-74

#TQ	FOO2 WAS NOT INFORMED THAT CLOSIN & CLOSO TAKE A DEFAULT SECOND ARG NOW.
	[FOO2] RHT 10-26-74

#TR	THE EXPANDED SPACE ALLOCATION BLOCK CODE IS FULL OF BUGS
	[GEN,TOTAL] RHT 11-3-74

#TS	ARRCLR LOSES BIG ON 1 WORD ARRAYS
	[ARYSER] RHT 11-29-74

#TT 	THE "IMPROVED" BUFFER GETTING CODE IN OPEN SHOULD BE REWRITTEN!
	(E.G., THE GETIOB ROUTINE CAN BE FLUSHED & REPLACED BY A SINGLE
	INSTRUCTION. )
	THE PROBLEM NOW IS THAT OCOWNT ISN'T ZEROED IF NO BUFFERS ARE
	REQUESTED.  THIS CAN CAUSE ILL MEM REFS IN THE I/O ROUTINES.
	FIX IS TO SETZM THIS WORD BEFORE DOING ANYTHING ELSE.  ALSO,
	IT CAN NEVER WORK TO RELY ON THE SYSTEM TO DO AN IMPLICIT  INBUF
	OR OUTBUF, SINCE JOBFF IS PUT WAY THE HELL UP AT 76K OR SO.
	I WILL FIX ALL THIS (PERHAPS BY REWRITING OPEN ) WHEN I RETURN.
	[IOSER] RHT 12-20-74

#TU     WHEN POPPING LEAP EXPR INTO CORTMP, LEAP WASN'T SETTING TBITS PROPERLY
        ALSO MAKE SURE AC D SAVED OVER CALLS TO STACK FROM INSIDE LEAP
        [LEAP] JRL 1-18-75

#TV	ARRCLR DOESN'T WORK FOR PNTVAR.  ALSO, ARRTRAN WASN'T OK.
	ALSO, ACTUAL-FORMAL CHECK WAS WRONG IF BILTIN USED PNTVAR
	[FOO2,STATS/32] RHT 1-18-75

#TW	REFERENCE(LISTVAR) LOSES.  
	[HEL]/3P

#TX	POTENTIAL BUG IN MEMORY: IF COERCE TO AN INTEGER, THEN BETTER
	MAKE SURE THE GET HAS INDX ON. 
	[GEN/49] RHT 2-7-75

#TY#	(CMU =E5=) WASNT ZEROING OUT FIRST WORD OF DESCRIPTOR WHEN
	DELETING VALUE STRING REFITEM
	[LEPRUN/32] LDE 2-10-75

#TZ#	PUTTING OUT THE -CNT,,ADR WORDS IN RBLIST BLOCKS AS ADR,,-CNT
	PROBLEM WAS A TYPO.
	[GEN/41] RHT 2-12-75
U-SERIES BUGS
#UA	STRING GC BARFING WHEN BYTE POINTER IS VALID POINTER
	BUT ADDRESS FIELD POINTS JUST BEFORE STRING SPACE.  THIS
	HAPPENS IF SOME ROUTINE BACKS UP A BYTE-POINTER THAT
	WAS OF THE FORM 440700,,BSP, WAS THEN INCREMENTED, THEN
	DECREMENTED.  IN PARTICULAR SCAN DOES THIS.  THE BEST
	FIX IS TO THE GARBAGE COLLECTOR.  RLS 2-15-75
	FIXED IN GOGOL (49) RLS 2-15-75

#UB	" IF FOO THEN ... " WAS PUTTING OUT A JUMPN INSTEAD OF A JUMPE
	FOR THE CASE WHERE FOO WAS NEGAT+INAC.  I DON'T KNOW WHY THIS 
	WAS NEVER DETECTED BEFORE NOW
	[EXPRS/16] RHT 2-20-75

#UC	(CMU =E3=) THE CODE IN LEPRUN FOR DELETING VALUE REFITEMS WAS DEFECTIVE
	(1) PICKED UP TYPE CODE FROM DATA, RATHER THAN FROM DESCRIPTOR
	(2) DID NOT GET THE RIGHT INFO WHEN DEALLOCATED SET OR LIST
	[LEPRUN/32] RHT 2-26-75

#UD	(CMU =E4=) CVASTR MISSING FROM FOO2
	[FOO2] RHT 3-1-75 

#UE	FETCHING STRING ARRAY SUBFIELD DOING HRROI INSTEAD OF MOVE.  PROBLEM
	WAS THAT GET WAS TREATING INDXED STRING ARRAY LIKE INDXED STRING
	[TOTAL/13] RHT 3-7-75

#UF	SINH WAS CLOBBERING REGISTER 2.  A TYPO
	[TRIGS/15] RHT 4-3-75

#UG	NEW RECORDS WERE SOMETIMES PUTTING COUNT OUT RELOCATED
	[STATS/22] RHT 4-7-75

#UH	TRIGINI AT SU-AI WAS DOING AN APRENB WITH BIT 10 ON (INTOVFL)
	RATHER THAN 100 (INFOV).  I DON'T KNOW HOW THIS HAPPENED OR
	WHEN.  (SEEMS TO HAVE JUST STARTED BOTHERING HPM). HMMM ...
	[TRIGS/4] RHT 4-14-75

#UI	CHRMOR CALL IN INCHWL WAS CLOBBERING TEMP, WHICH HELD CHARACTER
	[IOSER/31] RHT 4-14-75

#UJ	(CMU =E8=) FOO2 THOUGHT LISTX WAS BILTIN, BUT ROUTINE CLOBBERS ACS
	A,B,C.
	[FOO2] RHT 4-21-75

#UK	EXTERNAL STRING PROCEDURES, CALLED PARAMETRICALLY, CAUSE THE
	LOADER TO ASK FOR THE WRONG FIXUP.  CODE IN TOTAL WAS ASKING
	FOR A FIXUP FOR THE SECOND SYMBOL (THE ONE ORDINARILY USED
	FOR EXTERNAL STRING LINKAGE).  SIMILAR TO THE CASE OF STRING
	ITEMVARS, WHICH ARE ALSO NOT STRINGS.

	[GEN/30] RLS 6-2-75

Rest of U-series bugs reserved for JFR's summer work at CMU.
These entries were transcribed 9-22-75 but bear the original dates.

#UO	=E7=  Explicitly clear the bits for each character in GETBREAK.
	7-28-75 JFR	STRSER/21

#UP	ALLOW MANUAL START AFTER RPG START.
	7-29-75 JFR	SAIL/30

#UQ	Inserted missing DATA and ENDDATA macros.
	8-1-75 JFR	GEN/36

#UR	Clear .ERBWD when user table reset.
	8-6-75 JFR 	GOGOL/40

#US	Add TYPEIT as an entry so that programs which only do a TYPEIT
	and nothing else will still work.
	8-12-75 JFR	LEPRUN/3

#UT	DPB and IDPB modify storage, need an ALLSTO.
	8-13-75 JFR	EXPRS/10

#UU	OWN EXTERNAL ARRAY caused bad access code; fix is to
	pretend OWN never appeared.
	8-14-75 JFR	ARRAY/5

	Put REGO in data area 'cause it's modified during execution.
	8-14-75 JFR	PARSE/19

#SZ	=C7=	Edit FR4, FR41 in attempt to make
	FORC N←1 STEPC 1 UNTILC 0 work properly.
	8-14-75 JFR	HEL/15

#UV	Dryrot at EVAR. Was due to ACCOP stealing a display register
	that ACCESS thought would continue to be there.  Really earned my
	pay finding this one.
	8-17-75 JFR	TOTAL/28

#UW	DRYROT AT EVAR (again). GETDR was not saving LSDRLV if the display
	needed to be fetched again.
	8-17-75 JFR	TOTAL/10

#UX	Fortran call with indexed argument produces self-modifying code;
	bad if /H, so at least tell loser at compiletime.
	8-18-75 JFR	STATS/38

#UY	ASSIGN(item, parametric procedure) is not allowed; give message.
	8-18-75 JFR		LEAP/27

#UZ	DATA MACROS MISSING IN INLINE EXECS.
	8-22-75 JFR	GEN/63

V-SERIES BUGS

#VA	ACCESS TO STRING SUBFIELD OF A RECORD WAS DOING
	A MOVE RATHER THAN A HRRO.  CHANGED IT TO TO HRRO.
	[GEN/52] RHT 9-13-75

#VB	MISPLACED INSTRUCTION IN ENDRC CAUSED BITS FOR FIRST
	RECORD SUBFIELD NOT TO BE REFLECTED IN CLASS SUMMARY.
	[STATS/22] RHT 9-17-75

#VC	BUG IN QUAMS RECORD STRING GC.  GC OF NON-EX ARRAY GIVES ILL
	MEM REF.
	[RECSER/6] RHT 9-19-72

#VD	STRINGVAR[1 STEP 1 UNTIL N] GAVE ILL MEM REF IN COMPILER.
	[STATS/6] JFR 9-20-75

#VE	A LONG-STANDING TIME BOMB HAS FINALLY BURST.  THE USER TABLE
	ENTRY BRKDUM TURNED OUT TO BE USED BY SAIL AS PART OF I/O BUFFER 
	CODE, BUT WAS MOVED OUT OF THE USER TABLE AS PART OF THE
	BREAK TABLE "IMPROVEMENT".  THERE IS A KLUGE IN THE BUFFER
	CODE THAT SETS JOBFF TO BRKDUM-1(USER) & DOES AN INBUF
	TO FIGURE OUT DEFAULT BUFFER SIZE.  THIS CLOBBERS BRKDUM(USER).
	UGH! BLECH!!  FIX WAS TO DELETE BRKDUM ALTOGETHER & TO
	REPEAT SAME KLUGE ON THE STACK. I KNOW THIS ISN'T GOOD, BUT
	THE WHOLE PILE OF CODE SHOULD BE REWRITTEN SOME TIME.
	[HEAD,IOSER] RHT 9-23-75

#VF	FOUND A TERRIBLE BUG IN HOW RECORD GC HANDLES RECORD ARRAY ITEMS.
	[RECSER/12P] RHT 9-26-75

#VG	LEPRUN WAS STILL TRYING TO DO RECUUO FOR RECORD ITEM DELETES
	[LEPRUN/34P] RHT 10-1-75

#VH	BAISYM NOT UPDATING REMCHR WHEN IT MUNCHES TOPBYTE.  THIS CAUSES
	MUCH LOSSAGE, ON OCCASION.
	[GEN/32] RHT 10-2-75

#VI	DISCOVERED BUG IN DECISION TO PUT "TOP LEVEL" RECORD POINTERS INTO
	RBLIST.  POINT HERE IS THAT ALL SUCH POINTERS ARE IMPLICITLY OWN.
	[GEN/41] RHT 10-6-75

#VJ	LOCATION OF AN EXTERNAL STRING PROCEDURE DID NOT WORK WHEN THE
	PROC WAS LATER DEFINED AS INTERNAL IN THE SAME COMPILATION.
	***** PATCH DID NOT WORK, REMOVED *****
	[GEN/49] RHT, JFR 10-11-75

	TRY TOTAL/13 THIS TIME. JFR 10-17-75

#VK	BOY, WHAT A GRAND TIME TRACKING THIS ONE DOWN!  GCTRY (IN RECSER)
	WAS CLOBBERING C, WHICH $RALLO USED TO KEEP THE COUNT IN.  THIS
	CAUSED ZEROS TO BE BLTED RANDOMLY OVER ALL CREATION.  
	[RECSER/19] RHT 10-19-75

#VL	MARKING (EMPTY) RECORD ARRAY SUBFIELD WAS LEAVING STACK WRONG.
	[RECSER/17] RHT 10-26-75

#VM	FORWARD STRING PROCEDURES LOST IN START!CODE.  ANOTHER CASE
	OF MISTAKEN STRING IDENTITY.
	[GEN/62,TOTAL/28] JFR 10-31-75

#VN	START!CODE WAS DPB'ING AC AND INDEX FIELDS INTO INSTRUCTION,
	SHOULD DO IORM LIKE MANUAL SAYS.
	[GEN/63] JFR 10-31-75

#VO	LOOK FOR TMPCOR COMMAND FILE ONLY WHEN IN RPG MODE.
	[SAIL/30] JFR 10-31-72

#VP	REFITEM WAS REMOPING TWICE. CAUSED LOSSAGE WITH RECORD CORTMPS.
	[LEAP/21] RHT 11-2-72

#VQ	DATUM(RECORD ARRAY ITEM) AS PROC ARG CAUSED LOSSAGE IN STACK
	(WHICH MADE A RECORD TEMP, THUS GIVING DRYROT AT RC REMOP)
	[TOTAL/18] RHT 11-5-75

#VR	LOSSAGE AT END OF MACRO IF LISTING FILE AND "40F" SWITCHES.
	[SYM/23] JFR 11-9-75

#VS	(CMU =F2=) OMIT EXTERNALS AS WELL AS OWNS FROM "OR" OF SYMBOLS
	DEFINED IN A BLOCK; ALSO DON'T BARF ON EXTERNAL anything IN
	SIMPLE PROCEDURE.
	[GEN/13] JFR 11-9-75

#VT	MISSING ZERODATA MACRO, CAUSED ILL MEM REF WHEN UNDECLARED
	IDENTIFIER WAS DECLARED AN ARRAY.
	[GEN/59] JFR 11-9-75

#VU	DISPLAY REG STUFF WAS REMEMBERED AFTER MARK STACK LOOP; THIS IS A 
	NO-NO FOR PROCEDURES THAT ARE APPLIED WITH A CONTEXT GIVEN, SINCE
	THE REGISTER WILL PROBABLY NOT HAVE THE RIGHT VALUE AFTER APPLY
	JUMPS INTO THE PROCEDURE.
	[STATS/30] JFR 11-21-75

#VV	A TIME BOMB HITS.   THE CODE IN TMPALO TO DO SPECIAL THINGS WITH
	RECORD TEMPS WAS JUST WRONG.  THE EFFECT WAS TO CAUSE RECORD TEMPS
	NOT TO BE PUT OUT IN THE PROC DESCR, WHICH LEADS TO LOSSAGE IN GC.
	OLD CODE LOOKS LIKE IT WAS ALWAYS WRONG, BUT I SUSPECT THAT PROBLEM
	IS EXACERBATED BY THE FIXES LAST MONTH TO RCTEMP.  
	[GEN/42] RHT 12-6-75

#VW	PRINT BUG, STACK NOT BEING ADJUSTED FOR SIMPLE PROCEDURES.
	[STATS/48] RLS 12-6-75

#VX	ANOTHER VARIABLE NEEDS TO BE SAVE/RESTORED IN EXPR!TYPE.
	[GEN/23]  RLS 12-6-75

#VY	IT SEEMS THAT SAIL DOESN'T ALWAYS GET THE LINE CORRECT WHEN
	SWITCHING BACK TO EDITOR WHEN USER SAYS "T".  I SUSPECT THAT
	ACCOUNTING MAY BE CONFUSED BY REQUIRED SOURCE FILES.
	RHT 12-7-75

#VZ	THE COMPILER DIDN'T KNOW THAT ARRINFO & ARRBLT CAN WORK ON RECORD ARRAYS.
	[FOO2] RHT 12-8-75
W-SERIES BUGS

#WA	IT SEEMS THAT CLASS:FIELD[∂(REC_ARRAY_ITEM)[IX]] LOSES
	THE CLASS INFO.  
	RHT

#WB	PROCEDURE A; BEGIN <no declarations> END; was not recording the
	address of the first word of code for the block.  Showed up as a
	BAIL problem.
	GEN/12 JFR 12-8-75

#WC	NOW!SAFE does not work (and never has).  In the productions, the
	SCAN on the line after MS should be deleted [HEL/6]. 
	[HEL/6] JFR,RHT 1-76

#WD	String subfield indexed temp has ac pointing at string pointer.
	But ac was being treated as still a record temp (for marking).
	Fixed by suitable kluge.
	[TOTAL/18,GEN/52]  RHT 1-25-76

#WE	String reference record subfields not tracked down by string gc.
	**** ignored for now on assumption that these are handled
	elsewhere ****
	[RECSER/6] RHT 2-7-76

#WF	Record gc was always marking ref subfields.  Should only do
	this if REFB is off.  Rely on thing referred to to be marked
	in some other way.  (problem is that you may have a dangling
	reference to something that used to be on the stack.)
	[RECSER/18] RHT 2-7-76

#WG	Number of dimensions in external arrays still getting stuffed away
	into NUMDIMS.  Fix was to refrain from storing thins info away.
	Since BNDBLK not stored away for externals, the effect is merely to
	suppress the number of subscripts check for external arrays.
	An alternative would be to set up BNDBLK.  However, that would 
	change the semantics of external arrays in that (1) bounds checking
	would become more efficient at runtime, and (2) bounds declared
	in the EXTERNAL declaration would be believed.
	[ARRAY/10] RHT 2-9-76

#WH	Search control blocks causing problems with lexical scope in BAIL.
	Bullet-proofed both compiler and runtime.
	[GEN/32] JFR 2-10-76

#WI	USER not set up when "B" response given to error handler
	(loaded from LIBSA8, message "ATTEMPT TO RESUME NON-SUSPENDED PROCESS")
	[GOGOL/31] JFR 2-18-76

#WJ	USER not set up in compiler when BAIL creates block names.
	[GEN/32] JFR 2-25-76

#WK	Hassle over what is FWA of code of a BLOCK.  Is initially set up
	by DWN [GEN/12] but sometimes is later updated by ENDDEC+5 [GEN/14]
	in case procedures are defined within the block.  Lexical scope
	determination in BAIL relies on always using the value of DWN.
	So another field will be taken, and BAIL will use it instead
	of trying to figure out whether we can get by without the update.
	[GEN/12,32] JFR 2-25-76

#WL	Reference count of string default parameter was going negative,
	causing DRYROT at REMOP.  Problem was that CALARG SOS'ed it
	but it was never AOS'ed.  Fix was to AOS the count for string
	default params.
	[STATS/41] JFR 3-16-76 installed 3-27-76

#WM	Ill mem ref during macro definition, while zeroing out the area
	between two byte pointers.  But if the end pointer was a 440700
	pointer, they would neve compare equal, even if they pointed
	to the save byte.  Fixed by trapping out 440700 first.
	[SYM/14] JFR 3-22-76 installed 3-27-76

#WN	TOPBYTE out of range at STRNGC during macro definition.  REMCHR
	said there were plenty of characters left over, but TOPBYTE
	had overflowed.  TOPBYTE had been AOS'ed but REMCHR had not
	been updated by 5.
	[SYM/14] JFR 3-24-76 installed 3-27-76

#WO	RECORD!POINTER conditional expressions (IF boolean THEN P1 ELSE P2)
	produced DRYROT at MARK.  Generated code was ok.  Kluged up compiler
	at EXIF2+13 to check for record pointers.
	[EXPRS/21] JFR 4-1-76

#WP	 "P SWAP Q;" where P and Q were RECORD!POINTERs was getting DRYROT
	but generated code was ok; compiler did not set up RCLASS on swap.
	[EXPRS/11] JFR 4-12-76

#WQ	Ugly code was generated for "STR←CLASS:STRFIELD[PTR];" because the
	AC holding PTR was not getting REMOPed.
	[EXPRS/12] JFR 4-12-76

#WR	IN!CONTEXT caused compiler to give ADEPTH, SDEPTH DRYROT.
	[LEAP/26] JRL (JFR) 4-17-76

#WS	CASE expression used as a statement caused compiler to quit as though
	compilation had terminated successfully.
	[HEL, GEN/56] JFR 4-18-76

#WT	Interesting RECORD GC problem: If you have a RECORD array RA[1:n]
	and have a statement like:
		RA[i]←allocate_record(...)
	Then SAIL creates an INDEXED temp for RA[i].  Unfortunately, this
	temp does not point at the right place, since the temp does not
	include compensation of for the constant offset.  Ie code compiled
	is something like this
		MOVE ac,RA
		ADD  ac,i
		HRRZM ac,temp
		PUSHJ P,allocate_record
		HRRZ  ac,temp
		MOVEM 1,-1(ac)
	RHT 5-16-76

#WU	In .SM1 file under /H, labels were getting marked as BSTAK,
	and thus were not getting relocated properly at BAIL time.
	[GEN/33] JFR 5-27-76

#WV	SPROUT PDA was made with a BLOCK, followed by PUTINLOCs.  This left
	random cruft.  Replaced it with repeat <0>.
	[NWORLD/6] RHT 5-31-76

#WW	Fix #WD introduced a typo which sometimes caused RECORD!POINTER
	temps to get onto the regular temp list, causing garbage collector
	problems at runtime.  (Original fix was not tested very well.)
	[TOTAL/24] JFR 6-1-76

#WX	More #WD problems.  TBITS was not fetched in time.
	[TOTAL/24] JFR 6-5-76
	#WW AND #WX supposedly fix #WT

#WY	BEGIN "foo" ... program ... END "foo <no close quote>
	gives io to unassigned channel on input.  

#WZ	The out(<input channel>,...) bug caused ill mem ref, etc.
	[IOSER/8,13] JFR 6-17-76  [should maybe think about same check for INPUT]
	not yet reassembled into segment or libraries JFR 6-17-76
X-series bugs

#XA	Entry linkage for BACKUP wrong in expo system
	[IOSER/30] JFR 6-17-76

#XB	TOPBYT and REMCHR linkage wrong in TMPCOR routines.
	[IOSER/32] JFR 6-17-76

#XC	Overflow processing for TRIGS was screwed up.  #DC had the
	JFCL bits reversed!
	[TRIGS/4,5] (CMU =F5=) JFR 6-17-76

#XD	Typo in DECPNT, OCTPNT routines; showed up with REEnter, ALLOC.
	[GOGOL/23] JFR 6-17-76

#XE	TENEX-only problem with TRIGINIT:  bits for over and floating
	overflow need to be set before DEBRK.  
	[TRIGS/5]  RLS 6-22-76

#XF	INTEGER I,J; STRING S;	J←"CHLR"[S[I FOR 1] FOR 1];
	Produces incorrect code.  When converting S[I FOR 1] to integer
	it has already stacked "CHLR" and thus compiles as if the
	statement were J←"CHLR"["CHLR" FOR 1].  Fix is to wait until
	the start character and length have been computed before stacking
	the string argument to SUBSR. [But this might be hard?]
	In any case, forcing the integer conversion explicitly by
	J←"CHLR"[0+S[I FOR 1] FOR 1]; wins.
	JFR 6-30-76	[NOT FIXED YET]

#XG	THE IDENTIFIERS USED BY CONTEXT VARIABLES CANNOT BE REUSED
	FOR OTHER VARIABLES AT ANOTHER BLOCK LEVEL. GET MESSAGE:
	   BOGUS IDENTIFIER...
	FIX IS TO ADD ICTXT TO CLASSES @I AND @IDQ IN FILE HEL.
	[JRL 5-10-76, installed 7-1-76 JFR]

#XH	CHECK!TYPE did not know about RECORD!POINTERs or RECORD!CLASSes.
	[JRL; JFR HEL/9, GEN/5]

#XI	DECLARATION(record!class name) DID NOT WORK. ADDED IRC TO
	CLASS @LDC
	[HEL/3] JFR 7-4-76

#XJ	CHECK!TYPE(BUILT_IN or LEAP_ARRAY) did not work.  Moved class
	@RSTDC to just before @RESERVED.
	[HEL/3] JRL, JFR 7-4-76

#XK	Library entry SBK (STDBRK) was in wrong place.  It requested
	OPEN, ARRYIN as externals but was after these routines in the
	library.  Moved entry SBK to just before BRK, which also was
	requested. [ORDER] JFR 7-7-76

#XJ	RPTR←DATUM(RPTRIV)←RPTRPROC(...) screws up.  It creates a temp
	to hold the address of the datum over the procedure call, but
	this temp winds up on the record temp list, giving
	ATTEMPT TO MARK INVALID RECORD POINTER if a garbage collection
	happens.  Problem does not occur in DATUM(RPTRIV)←RPTRPROC(...).
	Cause of problem: when fetching value to do RPTR←DATUM(RPTRIV),
	the INDXED bit in the temp gets turned off, making the temp look
	like a record pointer, so the temp gets put on the RCTEMP list.
	DATUM(RPTRIV) should not appear in the middle of a series of
	assignments within the same statement.  Make it the leftmost
	assignment or use separate statements.
	JFR 7-8-76

#XK	Incorrect code (gets PDLOV) for following:
	procedure foo(reference string a; record!pointer (any!class) q); begin "foo";
	a←$class:txtarr[q][0];
	end "foo";
	
	Traced to $CLASS:TXTARR not getting set up like other string arrays
	with -1,,addr of 000 word. [RECSER/8] JFR 7-28-76
	Also [STATS/24] 7-30-76
	[JFR] 7-26-76

#XL	RESUME destroyed AC1 of process which had been suspended from ready
	(by interrupt, for example).  Typo.
	[NWORLD/12] JFR(WFW) 8-17-76

#XM	TYPO in SYM, listing would bomb when putting out banner.
	[SYM/27] JFR 8-22-76