From 79a47698484a9289c56dbfbc4a5e0e4aef4fc582 Mon Sep 17 00:00:00 2001
From: Andreas Scherer <andreas_tex@freenet.de>
Date: Sun, 6 Jun 2021 10:49:47 +0000
Subject: [CWEB] New release 4.4.

This is yet another service release for CWEB 4.0.

* Upstream CWEB 4.4 has been reset to the original buffer sizes
  of CWEB 3.64c.  These are now also used in stand-alone CWEBbin.
  CWEB for TeX Live uses extended/maxed-out buffer settings.

* A few minor typographical bugs were fixed.

* Tons of minutiae were addressed in the 'fullmanual' documents.

git-svn-id: svn://tug.org/texlive/trunk@59486 c570f23f-e606-0410-a88d-b1316a301751
---
 Build/source/texk/web2c/cwebdir/cwebman.tex | 31 ++++++++++++-----------------
 1 file changed, 13 insertions(+), 18 deletions(-)

(limited to 'Build/source/texk/web2c/cwebdir/cwebman.tex')

diff --git a/Build/source/texk/web2c/cwebdir/cwebman.tex b/Build/source/texk/web2c/cwebdir/cwebman.tex
index 4d4206ee64d..e7706db1648 100644
--- a/Build/source/texk/web2c/cwebdir/cwebman.tex
+++ b/Build/source/texk/web2c/cwebdir/cwebman.tex
@@ -35,7 +35,7 @@
 
 \def\lheader{\mainfont\the\pageno\hfill\sc\runninghead\hfill}
 \def\rheader{\hfill\sc\runninghead\hfill\mainfont\the\pageno}
-\def\runninghead{{\tentt CWEB} USER MANUAL (VERSION 4.3)}
+\def\runninghead{{\tentt CWEB} USER MANUAL (VERSION 4.4)}
 
 % This verbatim mode assumes that ! marks are !! in the text being copied.
 \def\verbatim{\begingroup
@@ -49,7 +49,7 @@
 \null\vfill
 \centerline{\titlefont The {\ttitlefont CWEB} System of
     Structured Documentation}
-\vskip 18pt\centerline{(Version 4.3 --- May 2021)}
+\vskip 18pt\centerline{(Version 4.4 --- June 2021)}
 \vskip 24pt
 \centerline{\authorfont Donald E. Knuth and Silvio Levy}
 \vfill
@@ -139,7 +139,7 @@ for \CEE/ if you so desire.
 The philosophy behind \.{CWEB} is
 that programmers who want to provide the best
 possible documentation for their programs need two things
-simultaneously:  a language like \TEX/ for formatting, and a language like
+simultaneously: a language like \TEX/ for formatting, and a language like
 \CEE/ for programming. Neither type of language can provide the
 best documentation by itself. But when both are appropriately combined, we
 obtain a system that is much more useful than either language separately.
@@ -432,7 +432,7 @@ examples:
 $$
 \displaylines{
 \hbox{\.{if} \.{(x==0)} \.{@<Empty} \.{the} \.{|buffer|} \.{array@>}} \cr
-\hbox{\.{...} \.{using}  \.{the} \.{algorithm}
+\hbox{\.{...} \.{using} \.{the} \.{algorithm}
 \.{in} \.{|@<Empty} \.{the} \.{|buffer|} \.{array@>|.}} }
 $$
 The first of these excerpts
@@ -480,7 +480,7 @@ the compiler's benefit) and which \.{CWEAVE} prints as $\T{\~40/}$.
 Similarly, \.{CWEAVE} prints the hexadecimal \CEE/ constant `\.{0x20}'
 as \T{\^20/}. The use of italic font for octal digits and typewriter font
 for hexadecimal digits makes the meaning of such constants clearer in
-a document. For consistency, then, you should type `\.{|040|}'  or
+a document. For consistency, then, you should type `\.{|040|}' or
 `\.{|0x20|}' in the \TEX/ part of the section.
 
 And if you type a binary constant like `\.{0b00101010}', \.{CWEAVE} prints
@@ -845,7 +845,8 @@ with a semicolon. Consider constructions like
 $$\lpile{\.{if (condition) macro @;}\cr
 \.{else break;}\cr}$$
 where \\{macro} is defined to be a compound statement (enclosed in braces).
-This is a well-known infelicity of \CEE/ syntax.
+This is a well-known infelicity of \CEE/ syntax. You can add a visible
+semicolon with \.{@t;@>} (before \.{@;}).
 
 \@{[} [MC] See \.{@]}.
 
@@ -1262,15 +1263,13 @@ do {
 } while (limit==buffer);
 
 @ @<Move |buffer| and |limit| to |change_buffer| and |change_limit|@>=
-{
-  change_limit=change_buffer+(ptrdiff_t)(limit-buffer);
-  strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
-}
+change_limit=change_buffer+(ptrdiff_t)(limit-buffer);
+strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
 !endgroup
 \endgroup
 \vfill\eject
 
-\def\runninghead{APPENDIX A  --- TRANSLATION BY {\tentt CTANGLE}}
+\def\runninghead{APPENDIX A --- TRANSLATION BY {\tentt CTANGLE}}
 
 Here's the portion of the \CEE/ code generated by \.{CTANGLE} that corresponds
 to the source on the preceding page.  Notice that sections~29, 30 and~31
@@ -1324,10 +1323,8 @@ return;
 /*31:*/
 #line 270 "common.w"
 
-{
 change_limit= change_buffer+(ptrdiff_t)(limit-buffer);
 strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
-}
 
 /*:31*/
 #line 234 "common.w"
@@ -1496,12 +1493,10 @@ ${}\{{}$\1\6
 
 \M{31}\B\X31:Move \PB{\\{buffer}} and \PB{\\{limit}} to \PB{\\{change\_buffer}}
 and \PB{\\{change\_limit}}\X${}\E{}$\6
-${}\{{}$\1\6
-${}\\{change\_limit}\K\\{change\_buffer}+(\&{ptrdiff\_t})(\\{limit}-%
+$\\{change\_limit}\K\\{change\_buffer}+(\&{ptrdiff\_t})(\\{limit}-%
 \\{buffer});{}$\6
 ${}\\{strncpy}(\\{change\_buffer},\39\\{buffer},\39(\&{size\_t})(\\{limit}-%
-\\{buffer}+\T{1}));{}$\6
-\4${}\}{}$\2\par
+\\{buffer}+\T{1})){}$;\par
 \Us27\ET32.\fi
 \vfil\eject\titletrue
 \rightskip=0pt % get out of C mode (cf. \B)
@@ -1597,7 +1592,7 @@ $$\lpile{\.{\\def\\topofcontents\{\\null\\vfill}\cr
   \.{ { }\\titlefalse \% include headline on the contents page}\cr
   \.{ { }\\def\\rheader\{\\mainfont The \{\\tt CWEAVE\}{ }processor\\hfil\}}\cr
   \.{ { }\\centerline\{\\titlefont The \{\\ttitlefont CWEAVE\}{ }processor\}}\cr
-  \.{ { }\\vskip 15pt \\centerline\{(Version 4.3)\}{ }\\vfill\}}\cr}$$
+  \.{ { }\\vskip 15pt \\centerline\{(Version 4.4)\}{ }\\vfill\}}\cr}$$
 Redefining \.{\\rheader}, which is the headline for right-hand pages,
 suffices in this case to put the desired information at the top of the
 contents page.
-- 
cgit v1.2.3

