% Bugs (sigh) in Computers \& Typesetting

\input manmac
\font\sltt=cmsltt10
\font\niness=cmss9
\font\ninessi=cmssi9
\proofmodefalse
\raggedbottom
\output{\hsize=29pc \onepageout{\unvbox255\kern-\dimen@ \vfil}}

\def\today{\number\day\
  \ifcase\month\or
  Jan\or Feb\or Mar\or Apr\or May\or Jun\or
  Jul\or Aug\or Sep\or Oct\or Nov\or Dec\fi
  \ \number\year}

\def\cutpar{{\parfillskip=0pt\par}}

\def\rhead{Bugs in {\tensl Computers \& Typesetting, 1992}}
\def\bugonpage#1(#2) \par{\bigbreak\tenpoint
  \hrule width\hsize
  \line{\lower3.5pt\vbox to13pt{}Page #1\hfil(#2)}\hrule width\hsize
  \nobreak\medskip}
\def\buginvol#1(#2) \par{\bigbreak\penalty-1000\tenpoint
  \hrule width\hsize
  \line{\lower3.5pt\vbox to13pt{}Volume #1\hfil(#2)}\hrule width\hsize
  \nobreak\medskip}
\def\slMF{{\manual 89:;}\-{\manual <=>:}} % slant the logo
\def\0{\raise.7ex\hbox{$\scriptstyle\#$}}
\newcount\nn
\newdimen\nsize \newdimen\msize \newdimen\ninept \ninept=9pt
\newbox\eqbox \setbox\eqbox=\hbox{\kern2pt\eightrm=\kern2pt}

\tenpoint
\noindent This is a list of all corrections made to {\sl Computers \&
Typesetting\/} between 15 March 1992 and the publication of the final
printed versions of those books.
Corrections made to the softcover version of {\sl The \TeX book\/} are
the same as corrections to Volume~A\null. Corrections to the softcover
version of {\sl The \slMF\kern1ptbook\/} are the same as corrections
to Volume~C\null. Changes to Volume~B refer to the fourth printing
(1991), which differs markedly from earlier printings because it includes
all the revisions for \TeX3.0. Changes to Volume~D refer to the third
printing (1991), which differs markedly from earlier printings because
it includes all the revisions for \MF\kern1pt2.0. Changes to the mini-indexes
and master indexes of Volumes B and~D are not shown here unless they are
not obviously derivable from what has been shown.
\looseness=-1

% volume A

\bugonpage A23, line 14 (9/1/92)

\tenpoint\noindent
a command and you type `|tex|' or `|run| |tex|' or something like that.)

\bugonpage A53, line 23 (7/7/92)

\tenpoint\noindent
{\sl scientiarum imperialis petropolitan\ae\/}
became {\sl Akademi\t\i a Nauk SSSR, Doklady}.

\bugonpage A146, line 2 from the bottom (2/25/93)

|$\bigl|\|| |\||x|\||-|\||y|\|| \bigr|\||$|\hskip1.25in
  $\bigl\vert\vert x\vert-\vert y\vert\bigr\vert$

\bugonpage A149, lines 3--5 (2/25/93)

\noindent
example, we used |\bigl| and |\bigr| to produce $\bigl\vert\vert x\vert-
\vert y\vert\bigr\vert$ in one of the previous illustrations; |\left| and
|\right| don't make things any bigger than necessary, so
`|$\left|\||\left|\||x\right|\||-\left|\||y\right|\||\right|\||$|'
yields only `$\left\vert
 \left\vert x\right\vert -\left\vert y\right\vert \right\vert$'.\cutpar

\bugonpage A158, line 18 from the bottom (2/25/93)

\ninepoint
are four possibilities for each of these fields.
A field can be

\bugonpage A282, line 9 from the bottom (7/8/92)

\ninepoint\noindent
category~4) are intercepted by the alignment
process, en route to \TeX's stomach, so\cutpar

\bugonpage A293, new paragraph after line 15 (4/9/92)

\ninepoint
\textindent{$\bull$}|\unhbox|\<8-bit number>, |\unhcopy|\<8-bit number>.\enskip
The specified box register must be void. Nothing happens.

\bugonpage A309, line 23 (7/7/92)

\ninepoint\noindent
|petropolitan\ae\/} became {\sl Akademi\t\i a Nauk SSSR, Doklady}.|

\bugonpage A320, line 11 (1/26/93)

\ninepoint
\ansno17.12:
|$\bigl(x+f(x)\bigr) \big/ \bigl(x-f(x)\bigr)$|. \ Notice especially the\cutpar

\bugonpage A349, second line from the bottom (7/8/92)

\ninepoint\noindent
expand to a ^\<number> en route to \TeX's
``stomach''; |\multiply| wouldn't work, because\cutpar

\bugonpage A358, bottom line (2/3/93)

\ninepoint\noindent
it is easy to define ^|\ldots| and ^|\cdots| macros that
give the proper spacing in most\cutpar

\bugonpage A370, lines 28 and 29 (9/1/92)

\def\Russiantt#1{{\tt\hbox to.5em{\hss\eighttt\char#1\hss}}}
\ninepoint\noindent
example, if \TeX\ is implemented for
a purely ^{Cyrillic} ^^{Russian} keyboard, the letter `\Russiantt5' should be
assigned to code \oct{160} and `\Russiantt{`T}' to code \oct{164}, so that
`\Russiantt5\Russiantt{`T}' still means `|pt|'; or else control\cutpar

\bugonpage A377, lines 17--24 (5/4/92)

\ninepoint
\begintt
\def\sanswitch{\let\n@xt\endsanity \ifx\next\endsanity
  \else\ifcat\noexpand\next\stoken\aftergroup\space\let\n@xt=\eat
   \else\ifcat\noexpand\next\bgroup\aftergroup{\let\n@xt=\eat
    \else\ifcat\noexpand\next\egroup\aftergroup}\let\n@xt=\eat
     \else\let\n@xt=\copytok\fi\fi\fi\fi \n@xt}
\def\eat{\afterassignment\sanitize \let\next= }
\long\def\copytok#1{\ifcat\noexpand#1\relax\aftergroup\noexpand\fi
  \ifcat\noexpand#1\noexpand~\aftergroup\noexpand\fi
\endtt

\bugonpage A455, line 25 (2/26/93)

\ninepoint\noindent
rent language'' is set equal to |\language|. Whenever a
character is added to the cur-\cutpar

\bugonpage A459, second line of entry for ampersand (3/22/92)

\eightpoint\indent\qquad
{\it231--248}, $\underline{282}$, {\it339}, 344, 385--386, 428.

\bugonpage A461, right column (2/19/93)

\eightpoint
\newbox\astbox \setbox\astbox=\hbox to0pt{\hss\lower1pt\hbox{*}}
\def\prim#1{\par\indent\copy\astbox{\tt\char`\\#1}}
\prim{chardef}, 44, 121, 155, 210, 214, 215, 271,\par
\indent\qquad $\underline{277}$, 336, {\it343}, {\it345}, {\it356}, 452.\par
\indent\<chardef token>, $\underline{271}$, 283, 286, 289.

\bugonpage A467, left column (2/25/93)

\eightpoint
Greek, 127--128, 137, 156, 164, 319,\par
\indent\qquad 358, 430, 434.

\bugonpage A470, left column (2/25/93)

\eightpoint
margins, {\sl see\/} |\hoffset|, |\hsize|, |\narrower|.

\bugonpage A471, left column (2/19/93)

\eightpoint
\prim{mathchardef}, 155, 199, 214, 215, 271,\par
\indent\qquad 277, 289, 336, {\it358}, {\it394}.\par
\indent\<mathchardef token>, $\underline{271}$, 289.

\bugonpage A474, right column (3/22/92)

\eightpoint
pound sterling, 54, {\it339}, 428.

\bugonpage A477, right column (3/22/92)

\eightpoint
sterling, 54, {\it339}, 428.

\bugonpage A480, left column (4/9/92)

\eightpoint
\prim{unhbox}, 120, 283, $\underline{285}$, 293, {\it354}, {\it356},
  {\it399}.\par
\prim{unhcopy}, 120, 283, $\underline{285}$, 293, {\it353}.

\bugonpage A481, left column (2/25/93)

\eightpoint
whatsits, 95, 110, 157, 226--229, 455.

\bugonpage A483, lines 15--21 (2/25/93)

{\tt P.O. Box 869\par
Santa Barbara, CA 93102-0869 USA.\par
|}|}
\smallskip\noindent
Don't delay, write today! That number again is

\smallskip
{\obeylines
\TeX\ Users Group
P.O. Box 869
Santa Barbara, CA 93102-0869 USA.
}

% volume B
\hsize=35pc
\def\\#1{\hbox{\it#1\/\kern.05em}} % italic type for identifiers
\def\to{\mathrel{.\,.}} % double dot, used only in math mode

\bugonpage B2, line 10 from the bottom (2/27/93)

\ninepoint\noindent\hskip10pt
{\bf define} $\\{banner}\equiv\hbox{\tt\char'23}$%
{\tt This\]is\]TeX,\]Version\]3.1415\char'23}\quad
$\{\,$printed when \TeX\ starts$\,\}$

\bugonpage B89, line 12 (2/27/93)

\tenpoint
\noindent\hskip10pt
In horizontal mode, the \\{prev\_graf} field is used for initial language data.

\bugonpage B89, line 20 (2/27/93)

\ninepoint
\noindent\hskip20pt
\\{pg\_field}, \\{ml\_field}: \\{integer}; \  \\{aux\_field}: \\{memory\_word};
\par
\noindent [Also delete the definitions of \\{lhmin} and \\{rhmin}, lines
32 and 33.]

\bugonpage B90, line 13 (2/27/93)

\ninepoint
\noindent\hskip10pt
$\\{prev\_depth}\gets\\{ignore\_depth}$; \ $\\{mode\_line}\gets0$; \
$\\{prev\_graf}\gets0$;

\bugonpage B91, top three lines (2/27/93)

\ninepoint
\noindent\hskip20pt
{\bf if\/} $m=\\{hmode}$ {\bf then if\/} $\\{nest}[p].\\{pg\_field}\ne
 \oct{40600000}$ {\bf then}\par\noindent\hskip40pt
{\bf begin} \\{print}({\tt\char`\"\](language\char`\"}); \
 \\{print\_int}(\\{nest}[$p$].\\{pg\_field} {\bf mod} \oct{200000});\par
\noindent\hskip40pt
 \\{print}({\tt\char`\":hyphenmin\char`\"}); \
 \\{print\_int}(\\{nest}[$p$].\\{pg\_field} {\bf div} \oct{20000000}); \
 \\{print\_char}({\tt\char`\",\char`\"});\par\noindent\hskip40pt
\\{print\_int}((\\{nest}[$p$].\\{pg\_field} {\bf div} \oct{200000})
 {\bf mod} \oct{100}); \ \\{print\_char}({\tt\char`\")\char`\"});

\bugonpage B344, lines 21 and 22 (2/27/93)

\tenpoint\noindent\hskip10pt
This code assumes that a \\{glue\_node} and a \\{penalty\_node} occupy the
same number of \\{mem}~words.

\bugonpage B344, line 30 (2/27/93)

\ninepoint\noindent\hskip10pt
$\\{link}(\\{tail})\gets\\{new\_param\_glue}(\\{par\_fill\_skip\_code})$; \
 $\\{init\_cur\_lang}\gets\\{prev\_graf}$ {\bf mod} \oct{200000};\par
\noindent\hskip10pt
$\\{init\_l\_hyf}\gets\\{prev\_graf}$ {\bf div} \oct{20000000}; \
$\\{init\_r\_hyf}\gets(\\{prev\_graf}$ {\bf div} \oct{200000}) {\bf mod}
 \oct{100}; \
\\{pop\_nest};

\bugonpage B353, line 4 (2/27/93)

\tenpoint\noindent\hskip10pt
Kern nodes do not disappear at a line break unless they are \\{explicit}.

\bugonpage B353, lines 15 and 16 (2/27/93)

\ninepoint\noindent\hskip20pt
\\{math\_node}: $\\{break\_width}[1]\gets\\{break\_width}[1]-\\{width}(s)$;\par
\noindent\hskip20pt
\\{kern\_node}: {\bf if\/} $\\{subtype}(s)\ne\\{explicit}$
  {\bf then goto} \\{done}\par\noindent\hskip30pt
{\bf else} $\\{break\_width}[1]\gets\\{break\_width}[1]-\\{width}(s)$;

\bugonpage B354, lines 6 and 7 (2/27/93)

\tenpoint\noindent
will be the background
plus $l_1$, so the length from \\{cur\_p} to \\{cur\_p} should be
$\gamma+l_0+l_1-l$.
If the post-break text of the discretionary is empty, a break may also
discard~$q$; in that unusual case we subtract the length of~$q$ and any
other nodes that will be discarded after the discretionary break.

\bugonpage B354, line 18 (2/27/93)

\ninepoint\noindent\hskip20pt
{\bf begin} $\langle\,$Add the width of node $s$ to \\{break\_width}{\sevenrm
  \kern.5em842}$\,\rangle$;

\bugonpage B354, line 22 (2/27/93)

\ninepoint\noindent\hskip10pt
{\bf if\/} $\\{post\_break}(\\{cur\_p})=\\{null}$ {\bf then}
  $s\gets\\{link}(v)$;\quad$\{\,$nodes may be discardable after the break$\,\}$

\bugonpage B355, top line (2/27/93)

\ninepoint\noindent
{\tenbf842.\quad}$\langle\,$Add the width of node $s$ to
 \\{break\_width}{\sevenrm\kern.5em842}$\,\rangle\equiv$

\bugonpage B355, lines 9--14 (2/27/93)

\ninepoint\noindent\hskip20pt
$\\{hlist\_node},\\{vlist\_node},\\{rule\_node},\\{kern\_node}$:
    $\\{break\_width}[1]\gets\\{break\_width}[1]+\\{width}(s)$;\par
\noindent\hskip20pt
{\bf othercases} \\{confusion}({\tt\char`\"disc2\char`\"})\par
\noindent\hskip20pt
{\bf endcases}

\bugonpage B364, line 10 (2/27/93)

\tenpoint\noindent
a glue node, penalty node, explicit kern node, or math node.

\bugonpage B366, line 11 from the bottom (2/27/93)

\ninepoint\noindent
\\{kern\_node}: {\bf if\/} $\\{subtype}(\\{cur\_p})=\\{explicit}$
 {\bf then} \\{kern\_break}\par\noindent\hskip10pt
{\bf else} $\\{act\_width}\gets\\{act\_width}+\\{width}(\\{cur\_p})$;

\bugonpage B367, line 21 (2/27/93)

\ninepoint\noindent\hskip20pt
{\bf else if\/} \\{precedes\_break}(\\{prev\_p}) {\bf then}
 $\\{try\_break}(0,\\{unhyphenated})$\par\noindent\hskip20pt
{\bf else if\/} $(\\{type}(\\{prev\_p})=\\{kern\_node})\land
 (\\{subtype}(\\{prev\_p})\ne\\{explicit})$ {\bf then}
 $\\{try\_break}(0,\\{unhyphenated})$;

\bugonpage B372, lines 12 and 13 (2/27/93)

\ninepoint\noindent\hskip20pt
{\bf if\/} $\\{type}(q)=\\{kern\_node}$ {\bf then}\par\noindent\hskip30pt
{\bf if\/} $\\{subtype}(q)\ne\\{explicit}$ {\bf then goto} \\{done1};

\bugonpage B376, line 3 from the bottom (2/27/93)

\ninepoint\noindent\hskip10pt
$\\{cur\_lang}\gets\\{init\_cur\_lang}$; \
$\\{l\_hyf}\gets\\{init\_l\_hyf}$; \
$\\{r\_hyf}\gets\\{init\_r\_hyf}$;

\bugonpage B377, lines 11 and 12 (2/27/93)

\ninepoint\noindent
$\\{cur\_lang},\\{init\_cur\_lang}$: \\{ASCII\_code};\quad
 $\{\,$current hyphenation table of interest$\,\}$\par\noindent
$\\{l\_hyf},\\{r\_hyf},\\{init\_l\_hyf},\\{init\_r\_hyf}$: \\{integer};\quad
 $\{\,$limits on fragment sizes$\,\}$

\bugonpage B378, line 5 from the bottom, overriding earlier change (2/27/93)

\ninepoint\noindent\hskip30pt
{\bf else if} $(\\{type}(s)=\\{kern\_node})\land(\\{subtype}(s)=\\{normal})$
 {\bf then}\par\noindent\hskip50pt
{\bf begin} $\\{hb}\gets s$; \ $\\{hyf\_bchar}\gets\\{font\_bchar}[\\{hf}]$; \
 {\bf end}\par\noindent\hskip40pt
{\bf else goto} \\{done3};


\bugonpage B394, lines 12 and 13 (2/27/93)

\ninepoint\noindent\hskip10pt
{\bf var} $n$: $0\to64$;\quad$\{\,$length of current word; not always
  a \\{small\_number}$\,\}$\par\noindent\hskip20pt
$j$: $0\to64$;\quad$\{\,$an index into \\{hc}$\,\}$

\bugonpage B404, line 21 (2/27/93)

\ninepoint\noindent\hskip10pt
{\bf var} $k,l$: $0\to64$;\quad$\{\,$indices into \\{hc} and \\{hyf};
                  not always in \\{small\_number} range$\,\}$

\bugonpage B460, lines 21 and 22 (2/27/93)

\ninepoint\noindent\hskip10pt
\\{push\_nest}; \ $\\{mode}\gets\\{hmode}$; \ $\\{space\_factor}\gets1000$; \
 \\{set\_cur\_lang}; \ $\\{clang}\gets\\{cur\_lang}$;\par\noindent\hskip10pt
$\\{prev\_graf}\gets(\\{norm\_min}(\\{left\_hyphen\_min})\ast\oct{100}+
 \\{norm\_min}(\\{right\_hyphen\_min}))\ast\oct{200000}+\\{cur\_lang}$;

\bugonpage B492, line 6 from the bottom (2/27/93)

\ninepoint\noindent\hskip10pt
\\{unsave}; \ $\\{prev\_graf}\gets\\{prev\_graf}+3$;\par\noindent\hskip10pt
\\{push\_nest}; \ $\\{mode}\gets\\{hmode}$; \ $\\{space\_factor}\gets1000$; \
 \\{set\_cur\_lang}; \ $\\{clang}\gets\\{cur\_lang}$;\par\noindent\hskip10pt
$\\{prev\_graf}\gets(\\{norm\_min}(\\{left\_hyphen\_min})\ast\oct{100}+
 \\{norm\_min}(\\{right\_hyphen\_min}))\ast\oct{200000}+\\{cur\_lang}$;

% volume C
\hsize=29pc
\def\\#1{\hbox{\it#1\/\kern.05em}} % italic type for identifiers

\bugonpage C151, line 11 from the bottom (6/26/93)

\ninepoint\indent
\qquad   scaled $1.42(1+\max(-\\{pen\_lft},\\{pen\_rt},\\{pen\_top},
  -\\{pen\_bot}))$

\bugonpage C262, line 15 (6/26/93)

\ninepoint\noindent
|string base_name, base_version; base_name="plain"; base_version="2.71";|

\bugonpage C262, line 29 (6/26/93)

\ninepoint\noindent
|def |^|gobble|| primary g = enddef; def |^|killtext|| text t = enddef;|

\bugonpage C271, bottom line (6/26/93)

\ninepoint\noindent
| culldraw p enddef;|

\bugonpage C272, three new lines for top of page (6/26/93)

{\ninepoint\parindent=0pt
|def |^|culldraw|| expr p = addto pic_ doublepath p.t_ withpen currentpen;|\par
| cull pic_ dropping(-infinity,0) withweight default_wt_;|\par
| addto_currentpicture also pic_; pic_:=nullpicture; killtext enddef;|\par
}

\bugonpage C272, replacement for former line 5 (6/26/93)

\ninepoint\noindent
|  (cut_ scaled (1+max(-pen_lft,pen_rt,pen_top,-pen_bot))|

\bugonpage C296, line 24 (2/3/93)

\ninepoint\noindent
the definition of |rp| is changed to `|]..tension 4..|',
and if `|scaled|~|5pt|' is inserted\cutpar

\bugonpage C299, line 3 (5/15/92)

\ninepoint\noindent
a Bernshte{\u\i}n polynomial of order $n-1$.)

\bugonpage C347, left column (5/15/92)

\eightpoint
Bernshte{\u\i}n, Serge{\u\i} \thinspace Natanovich, 14.

\bugonpage C348, left column (6/26/93)

\eightpoint
|culldraw|, {\it271}, $\underline{272}$.

\bugonpage C350, left column (6/26/93)

\eightpoint
exponential, {\sl see\/} |mexp|.

\bugonpage C352, left column (6/26/93)

\eightpoint
|killtext|, $\underline{262}$, {\it 272}.

\bugonpage C352, right column (6/26/93)

\eightpoint
logarithm, {\sl see\/} |mlog|.

\bugonpage C361, lines 14 and 15 (2/25/93)

P.O. Box 869\par
Santa Barbara, CA 93102-0869 USA.


% Volume D
\hsize=29pc
\def\\#1{\hbox{\it#1\/\kern.05em}} % italic type for identifiers
\def\to{\mathrel{.\,.}} % double dot, used only in math mode

\bugonpage Dxiv, line 13 (4/19/96)

\noindent preprocessor converts these into numeric constants that are
256 or more. This\cutpar

\bugonpage Dxiv, line $-1$ (4/19/96)

\ninepoint\noindent This file contains one line per string, starting with
string number 256, then number 257,\cutpar

\bugonpage Dxv, lines 10 and 11 (4/19/96)

\ninepoint\noindent
In this case, occurrences of |""| in the |WEB| program will be replaced by
256; occurrences of |"This longer string"| will be replaced by 257.
The symbol |@$| stands for the numeric\cutpar

\hsize=35pc
\bugonpage D2, line $-17$ (8/7/98)

\def\RQ/{{\char'23}} % right quote in a string
\ninepoint\noindent
{\bf define} $\\{banner}\equiv\hbox{\tt\RQ/This\]is\]METAFONT,\]%
   Version\]2.7182\RQ/}$\quad$\{\,$printed when \MF\ starts$\,\}$

\bugonpage D50, line 26 (8/7/98)

\ninepoint\noindent
\quad{\bf if\/} $b>0$ {\bf then}

\bugonpage D138, line 14 from the bottom (3/6/95)

\tenpoint
\textindent{$2'$)} Let $Z_k^{(j+1)}={1\over2}(Z_k^{(j)}+Z_{k+1}^{(j)})$, for
$1\le k\le n-j$, for $1\le j<n$.

\bugonpage D190, D191, D194, D195 (6/26/93)

\noindent[Several changes to the code in sections 415, 416, 424, and 425
were made to \MF\ version 2.71 in July~1991, too numerous to mention here.
They are documented in file {\tt mf84.bug} as bug number 560. We also
delete lines 4 and~5 of page D194.]

\bugonpage D216, line 10 from the bottom (7/15/92)

\tenpoint\noindent
will be offset by $w_1$ or $w_2$, unless its slope drops to zero
en route to the eighth octant; in the latter\cutpar

\bugonpage D289, lines 9 and 10 (6/26/93)

\ninepoint\noindent\hskip20pt
$p\gets\\{dep\_list}(p)$; \ $r\gets\\{inf\_val}$;\par\noindent\hskip20pt
{\bf repeat if\/} $\\{value}(\\{info}(p))\ge\\{value}(r)$ {\bf then}

\bugonpage D296, lines 8 and 9 from the bottom (9/13/98)

\ninepoint\noindent[Delete these spurious lines.]

\bugonpage D297, mini-index (6/6/98)

\eightpoint the meaning of {\it loc\/} should be `macro'

\bugonpage D310, line 7 (8/7/98)

\ninepoint\noindent
\quad{\bf if\/} $(\\{loc}=k+1)\land(\\{length}(\\{buffer}[k])=1)$
 {\bf then} $\\{cur\_mod}:=\\{buffer}[k]$

\bugonpage D363, lines 10 and 11 (3/1/95)

\ninepoint\noindent
\quad {\bf begin if\/} $(\\{max\_c}[\\{dependent}]$ {\bf div}
 $\oct{10000}\ge\\{max\_c}[\\{proto\_dependent}])$ {\bf then}
 $t\gets\\{dependent}$

\bugonpage D512, line 13 (11/23/98)

\ninepoint\noindent
\quad \\{print\_int}(\\{round\_unscaled}(\\{internal}[\\{year}])); \
 \\{print\_char}(|"."|);

\bugonpage D518, insert new material between lines 7 and 8 (3/20/95)

\ninepoint\noindent
\quad {\bf while} $\\{input\_ptr}>0$ {\bf do}\par\noindent
\qquad {\bf if\/} \\{token\_state} {\bf then} \\{end\_token\_list}
  {\bf else} \\{end\_file\_reading};\par\noindent
\quad {\bf while} $\\{loop\_ptr}\ne\\{null}$ {\bf do} \\{stop\_iteration};

\bugonpage D518, line 18 (3/20/95)

\ninepoint\noindent
\qquad $\\{loop\_ptr}\gets\\{cond\_ptr}$; \
  $\\{cond\_ptr}\gets\\{link}(\\{cond\_ptr})$; \
  $\\{free\_node}(\\{loop\_ptr},\\{if\_node\_size})$;

\bugonpage D546, left column (4/11/96)

\eightpoint
Stern, Moritz Abraham: \ 526.

% volume E
\hsize=29pc
\def\dashto{\mathrel{\hbox{-\kern-.05em}\mkern3.9mu\hbox{-\kern-.05em}}}


\bye

