summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Scherer <andreas_tex@freenet.de>2024-08-02 14:57:51 +0000
committerAndreas Scherer <andreas_tex@freenet.de>2024-08-02 14:57:51 +0000
commitbcd24067914cd3d34dec0b155a02d0c9e9c0d66e (patch)
treebb4c0f545d4ebbebf6120bc28f2cf12c0b2bc847
parent74d8f65ff372edf52b77a61597b92476ac4fa61b (diff)
[CWEB] Remove unused 'kludge'.
This might rather be documented in 'cwebman.tex' together with '\def\9'. git-svn-id: svn://tug.org/texlive/trunk@71951 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/web2c/cwebdir/ChangeLog6
-rw-r--r--Build/source/texk/web2c/cwebdir/ctwill-w2c.ch270
-rw-r--r--Build/source/texk/web2c/cwebdir/cweav-w2c.ch144
-rw-r--r--Build/source/texk/web2c/cwebdir/cweave.w1
4 files changed, 213 insertions, 208 deletions
diff --git a/Build/source/texk/web2c/cwebdir/ChangeLog b/Build/source/texk/web2c/cwebdir/ChangeLog
index cb927407354..d6342ba2017 100644
--- a/Build/source/texk/web2c/cwebdir/ChangeLog
+++ b/Build/source/texk/web2c/cwebdir/ChangeLog
@@ -1,3 +1,9 @@
+2024-08-02 Andreas Scherer <https://ascherer.github.io>
+
+ * ctwill-w2c.ch,
+ * cweav-w2c.ch,
+ * cweave.w: Remove unused 'kludge'.
+
2024-07-26 Andreas Scherer <https://ascherer.github.io>
* cwebmac.tex: Reshuffle '\note' macro.
diff --git a/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch b/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch
index 70616695efb..ef54841f61a 100644
--- a/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch
+++ b/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch
@@ -34,38 +34,38 @@
\datethis % Put timestamp before section 1
@z
-@x [0.0] l.35
+@x [0.0] l.34
\def\title{CWEAVE (Version 4.11)}
@y
\def\Kpathsea/{{\mc KPATHSEA\spacefactor1000}} \ifacro\sanitizecommand\Kpathsea{KPATHSEA}\fi
\def\title{CTWILL (Version 4.11 [\TeX~Live])}
@z
-@x [0.0] l.37
+@x [0.0] l.36
\centerline{\titlefont The {\ttitlefont CWEAVE} processor}
@y
\centerline{\titlefont The {\ttitlefont CTWILL} processor}
@z
-@x [0.0] l.39
+@x [0.0] l.38
\centerline{(Version 4.11)}
@y
\centerline{(Version 4.11 [\TeX~Live])}
@z
-@x [0.0] l.41
+@x [0.0] l.40
\def\botofcontents{\vfill
@y
\def\covernote{\vbox{%
@z
-@x [0.0] l.54
+@x [0.0] l.53
}
@y
}}
@z
-@x [1.1] l.59
+@x [1.1] l.58
This is the \.{CWEAVE} program by Silvio Levy and Donald E. Knuth,
based on \.{WEAVE} by Knuth.
We are thankful to Steve Avery,
@@ -105,25 +105,25 @@ modified. The version number parallels the corresponding version of \.{CWEAVE}.
/* will be extended by the \TeX~Live |versionstring| */
@z
-@x [1.2] l.94
+@x [1.2] l.93
program=cweave;
@y
program=ctwill;
@z
-@x [1.2] l.98
+@x [1.2] l.97
if (show_banner) puts(banner); /* print a ``banner line'' */
@y
if (show_banner) cb_show_banner(); /* print a ``banner line'' */
@z
-@x [1.3] l.112
+@x [1.3] l.111
@i common.h
@y
@i comm-w2c.h
@z
-@x [2.21] l.183
+@x [2.21] l.182
turned on during the first phase.
@<Private...@>=
@@ -132,19 +132,19 @@ static boolean change_exists; /* has any section changed? */
turned on during the first phase---NOT!
@z
-@x [2.23] l.217
+@x [2.23] l.216
@ @d max_refs 30000 /* number of cross-references; must be less than 65536 */
@y
@ @d max_refs 65535 /* number of cross-references; must be less than 65536 */
@z
-@x [2.25] l.246
+@x [2.25] l.245
@d append_xref(c) if (xref_ptr==xmem_end) overflow("cross-reference");
@y
@d append_xref(c) if (xref_ptr==xmem_end) overflow(_("cross-reference"));
@z
-@x [2.30] l.337
+@x [2.30] l.336
@d max_toks 30000 /* number of symbols in \CEE/ texts being parsed;
must be less than 65536 */
@d max_texts 8000 /* number of phrases in \CEE/ texts being parsed;
@@ -156,14 +156,14 @@ turned on during the first phase---NOT!
must be less than 10240 */
@z
-@x [2.32] l.357
+@x [2.32] l.356
@ Here are the two procedures needed to complete |id_lookup|:
@y
@ Here are the two procedures needed to complete |id_lookup|:
@s perm_meaning int
@z
-@x [2.32] l.374
+@x [2.32] l.373
p->xref=(void *)xmem;
@y
p->xref=(void *)xmem;
@@ -177,7 +177,7 @@ turned on during the first phase---NOT!
}
@z
-@x [2.33] l.377
+@x [2.33] l.376
@ And here's a small helper function to simplify the code.
@d update_node(p) (p)->xref=(void *)xref_ptr
@@ -188,7 +188,7 @@ turned on during the first phase---NOT!
@d get_meaning(p) (p)-name_dir+cur_meaning
@z
-@x [2.34] l.436
+@x [2.34] l.435
id_lookup("extern",NULL,int_like);
@y
@#
@@ -196,7 +196,7 @@ ext_loc=id_lookup("extern",NULL,int_like)-name_dir;
@#
@z
-@x [2.34] l.449
+@x [2.34] l.448
id_lookup("int",NULL,raw_int);
@y
@#
@@ -204,7 +204,7 @@ int_loc=id_lookup("int",NULL,raw_int)-name_dir;
@#
@z
-@x [3.36] l.544
+@x [3.36] l.543
@d ord 0207 /* control code for `\.{@@'}' */
@d join 0210 /* control code for `\.{@@\&}' */
@d thin_space 0211 /* control code for `\.{@@,}' */
@@ -248,7 +248,7 @@ int_loc=id_lookup("int",NULL,raw_int)-name_dir;
@d new_section 0235 /* control code for `\.{@@\ }' and `\.{@@*}' */
@z
-@x [3.38] l.587
+@x [3.38] l.586
ccode['\'']=ord;
@y
ccode['\'']=ord;
@@ -256,7 +256,7 @@ ccode['$']=meaning; ccode['%']=temp_meaning; ccode['-']=suppress;
ccode['r']=ccode['R']=right_start;
@z
-@x [3.40] l.608
+@x [3.40] l.607
static eight_bits skip_TeX(void);
@ @c
@@ -269,7 +269,7 @@ part of all meanings.
@c
@z
-@x [3.41] l.614
+@x [3.41] l.613
if (loc>limit && get_line()==false) return;
@y
if (loc>limit && get_line()==false) return;
@@ -279,44 +279,44 @@ part of all meanings.
}
@z
-@x [4.43] l.670
+@x [4.43] l.669
\yskip\hang |xref_roman|, |xref_wildcard|, |xref_typewriter|, |TeX_string|,
@y
\yskip\hang |xref_roman|, |xref_wildcard|, |xref_typewriter|, |TeX_string|,
|meaning|, |suppress|,
@z
-@x [4.46] l.731
+@x [4.46] l.730
@d right_preproc 0217 /* ends a preprocessor command */
@y
@d right_preproc 0223 /* ends a preprocessor command */
@z
-@x [4.57] l.888
+@x [4.57] l.887
err_print("! String didn't end"); loc=limit; break;
@y
err_print(_("! String didn't end")); loc=limit; break;
@z
-@x [4.57] l.892
+@x [4.57] l.891
err_print("! Input ended in middle of string"); loc=buffer; break;
@y
err_print(_("! Input ended in middle of string")); loc=buffer; break;
@z
-@x [4.57] l.911
+@x [4.57] l.910
printf("%s","\n! String too long: ");
@y
printf("%s",_("\n! String too long: "));
@z
-@x [4.59] l.930
+@x [4.59] l.929
case translit_code: err_print("! Use @@l in limbo only"); continue;
@y
case translit_code: err_print(_("! Use @@l in limbo only")); continue;
@z
-@x [4.59] l.932
+@x [4.59] l.931
case underline: xref_switch=def_flag; continue;
@y
case underline: xref_switch=def_flag; continue;
@@ -324,38 +324,38 @@ part of all meanings.
case right_start: right_start_switch=true; continue;
@z
-@x [4.59] l.938
+@x [4.59] l.937
case xref_roman: case xref_wildcard: case xref_typewriter: case noop:
@y
case xref_roman: case xref_wildcard: case xref_typewriter: case noop:
case meaning: case suppress:
@z
-@x [4.62] l.968
+@x [4.62] l.967
err_print("! Input ended in section name");
@y
err_print(_("! Input ended in section name"));
@z
-@x [4.62] l.981
+@x [4.62] l.980
printf("%s","\n! Section name too long: ");
@y
printf("%s",_("\n! Section name too long: "));
@z
-@x [4.63] l.995
+@x [4.63] l.994
err_print("! Section name didn't end"); break;
@y
err_print(_("! Section name didn't end")); break;
@z
-@x [4.63] l.999
+@x [4.63] l.998
err_print("! Control codes are forbidden in section name"); break;
@y
err_print(_("! Control codes are forbidden in section name")); break;
@z
-@x [4.64] l.1009
+@x [4.64] l.1008
skip_restricted(void)
{
@y
@@ -363,19 +363,19 @@ skip_restricted(void)
{ int c=ccode[(eight_bits)*(loc-1)];
@z
-@x [4.64] l.1016
+@x [4.64] l.1015
err_print("! Control text didn't end"); loc=limit;
@y
err_print(_("! Control text didn't end")); loc=limit;
@z
-@x [4.64] l.1021
+@x [4.64] l.1020
err_print("! Control codes are forbidden in control text");
@y
err_print(_("! Control codes are forbidden in control text"));
@z
-@x [4.64] l.1022
+@x [4.64] l.1021
@.Control codes are forbidden...@>
@y
@.Control codes are forbidden...@>
@@ -383,68 +383,68 @@ skip_restricted(void)
else if (c==suppress && phase==2) @<Suppress mini-index entry@>@;
@z
-@x [4.66] l.1036
+@x [4.66] l.1035
if (loc>=limit) err_print("! Verbatim string didn't end");
@y
if (loc>=limit) err_print(_("! Verbatim string didn't end"));
@z
-@x [5.68] l.1061
+@x [5.68] l.1060
skip_limbo(); change_exists=false;
@y
skip_limbo();
@<Give a default title to the program, if necessary@>@;
@z
-@x [5.68] l.1064
+@x [5.68] l.1063
changed_section[section_count]=change_exists;
/* the index changes if anything does */
@y
@z
-@x [5.70] l.1073
+@x [5.70] l.1072
if (++section_count==max_sections) overflow("section number");
@y
if (++section_count==max_sections) overflow(_("section number"));
@z
-@x [5.70] l.1074
+@x [5.70] l.1073
changed_section[section_count]=changing;
/* it will become |true| if any line changes */
@y
@z
-@x [5.70] l.1083
+@x [5.70] l.1082
if (changed_section[section_count]) change_exists=true;
@y
@z
-@x [5.74] l.1162
+@x [5.74] l.1161
case translit_code: err_print("! Use @@l in limbo only"); continue;
@y
case translit_code: err_print(_("! Use @@l in limbo only")); continue;
@z
-@x [5.74] l.1167
+@x [5.74] l.1166
case xref_roman: case xref_wildcard: case xref_typewriter:
@y
case xref_roman: case xref_wildcard: case xref_typewriter:
case meaning: case suppress:
@z
-@x [5.79] l.1249
+@x [5.79] l.1248
err_print("! Missing left identifier of @@s");
@y
err_print(_("! Missing left identifier of @@s"));
@z
-@x [5.79] l.1254
+@x [5.79] l.1253
err_print("! Missing right identifier of @@s");
@y
err_print(_("! Missing right identifier of @@s"));
@z
-@x [5.82] l.1302
+@x [5.82] l.1301
printf("%s","\n! Never defined: <");
print_section_name(p); putchar('>'); mark_harmless();
@y
@@ -452,7 +452,7 @@ if (loc>=limit) err_print(_("! Verbatim string didn't end"));
print_section_name(p); putchar('>'); mark_harmless();
@z
-@x [5.82] l.1308
+@x [5.82] l.1307
printf("%s","\n! Never used: <");
print_section_name(p); putchar('>'); mark_harmless();
@y
@@ -460,7 +460,7 @@ if (loc>=limit) err_print(_("! Verbatim string didn't end"));
print_section_name(p); putchar('>'); mark_harmless();
@z
-@x [6.89] l.1397
+@x [6.89] l.1396
@ In particular, the |finish_line| procedure is called near the very
beginning of phase two. We initialize the output variables in a slightly
tricky way so that the first line of the output file will be
@@ -494,7 +494,7 @@ tex_puts(proofing?"ctproofma":"ctwima");
*out_ptr='c';
@z
-@x [6.90] l.1414
+@x [6.90] l.1413
@d out(c) {if (out_ptr>=out_buf_end) break_out(); *(++out_ptr)=c;}
@y
@d out(c)
@@ -508,102 +508,102 @@ tex_puts(proofing?"ctproofma":"ctwima");
}
@z
-@x [6.94] l.1462
+@x [6.94] l.1461
printf("\n! Line had to be broken (output l. %d):\n",out_line);
@y
printf(_("\n! Line had to be broken (output l. %d):\n"),out_line);
@z
-@x [6.95] l.1471
+@x [6.95] l.1470
|def_flag|, so it cannot have more than five decimal digits. If
the section is changed, we output `\.{\\*}' just after the number.
@y
|def_flag|, so it cannot have more than five decimal digits.
@z
-@x [6.96] l.1485
+@x [6.96] l.1484
if (changed_section[n]) out_str("\\*");
@.\\*@>
@y
@z
-@x [7.99] l.1543
+@x [7.99] l.1542
default: err_print("! Double @@ should be used in limbo");
@y
case right_start: right_start_switch=true; break;
default: err_print(_("! Double @@ should be used in limbo"));
@z
-@x [7.101] l.1585
+@x [7.101] l.1584
@d app_tok(c) {if (tok_ptr+2>tok_mem_end) overflow("token"); *(tok_ptr++)=c;}
@y
@d app_tok(c) {if (tok_ptr+2>tok_mem_end) overflow(_("token")); *(tok_ptr++)=c;}
@z
-@x [7.101] l.1597
+@x [7.101] l.1596
err_print("! Input ended in mid-comment");
@y
err_print(_("! Input ended in mid-comment"));
@z
-@x [7.101] l.1602
+@x [7.101] l.1601
if (bal>1) err_print("! Missing } in comment");
@y
if (bal>1) err_print(_("! Missing } in comment"));
@z
-@x [7.101] l.1618
+@x [7.101] l.1617
else {err_print("! Extra } in comment");
@y
else {err_print(_("! Extra } in comment"));
@z
-@x [7.102] l.1630
+@x [7.102] l.1629
if (bal>1) err_print("! Missing } in comment");
@y
if (bal>1) err_print(_("! Missing } in comment"));
@z
-@x [7.103] l.1638
+@x [7.103] l.1637
err_print("! Illegal use of @@ in comment");
@y
err_print(_("! Illegal use of @@ in comment"));
@z
-@x [8.106] l.1755
+@x [8.106] l.1754
@d attr_head 69 /* denotes beginning of attribute */
@y
@d attr_head 69 /* denotes beginning of attribute */
@d title 70 /* program name or header name in a ``meaning'' */
@z
-@x [8.110] l.2129
+@x [8.110] l.2128
@i prod.w
@y
@i prod-twill.w
@z
-@x [9.113] l.2179
+@x [9.113] l.2178
static scrap scrap_info[max_scraps]; /* memory array for scraps */
@y
static scrap scrap_info[max_scraps]; /* memory array for scraps */
static scrap null_scrap; /* a scrap with empty translation */
@z
-@x [9.114] l.2188
+@x [9.114] l.2187
@ @<Set init...@>=
@y
@ @<Set init...@>=
null_scrap.trans=&tok_start[0];
@z
-@x [9.116] l.2249
+@x [9.116] l.2248
update_terminal();
@y
puts("|"); update_terminal();
@z
-@x [9.124] l.2560
+@x [9.124] l.2559
the |for| loop below.
@c
@@ -618,7 +618,7 @@ static token_pointer tok_loc; /* where the first identifier appears */
@#
@z
-@x [9.124] l.2568
+@x [9.124] l.2567
token_pointer tok_loc; /* pointer to |tok_value| */
if ((tok_loc=find_first_ident(p->trans))<=operator_found)
return; /* this should not happen */
@@ -626,12 +626,12 @@ static token_pointer tok_loc; /* where the first identifier appears */
if (tok_loc<=operator_found) return; /* this should not happen */
@z
-@x [9.125] l.2597
+@x [9.125] l.2596
token_pointer tok_loc; /* where the first identifier appears */
@y
@z
-@x [9.128] l.2651
+@x [9.128] l.2650
@<Cases for |exp|@>=
if (cat1==lbrace || cat1==int_like || cat1==decl) {
make_underlined(pp); big_app(dindent); big_app1(pp);
@@ -646,7 +646,7 @@ if(cat1==lbrace || cat1==int_like || cat1==decl) {
}
@z
-@x [9.128] l.2666
+@x [9.128] l.2665
make_underlined (pp); squash(pp,2,tag,-1,7);
@y
make_underlined (pp);
@@ -657,7 +657,7 @@ if(cat1==lbrace || cat1==int_like || cat1==decl) {
squash(pp,2,tag,-1,7);
@z
-@x [9.138] l.2755
+@x [9.138] l.2754
@ @<Cases for |decl_head|@>=
if (cat1==comma) {
big_app2(pp); app(opt); app('9'); reduce(pp,2,decl_head,-1,33);
@@ -700,7 +700,7 @@ else if (cat1==int_like || cat1==lbrace || cat1==decl) {
else if (cat1==semi) squash(pp,2,decl,-1,39);
@z
-@x [9.139] l.2777
+@x [9.139] l.2776
@ @<Cases for |decl|@>=
if (cat1==decl) {
big_app1_insert(pp,force); reduce(pp,2,decl,-1,40);
@@ -719,13 +719,13 @@ else if (cat1==stmt || cat1==function) {
}
@z
-@x [9.141] l.2803
+@x [9.141] l.2802
make_underlined(pp+1); make_reserved(pp+1);
@y
make_underlined(pp+1); make_reserved(pp+1); make_ministring(pp+1);
@z
-@x [9.143] l.2834
+@x [9.143] l.2833
@ @<Cases for |fn_decl|@>=
if (cat1==decl) {
big_app1_insert(pp,force); reduce(pp,2,fn_decl,0,51);
@@ -748,14 +748,14 @@ else if (cat1==stmt) {
}
@z
-@x [9.153] l.2938
+@x [9.153] l.2937
big_app1_insert(pp,dindent); reduce(pp,2,fn_decl,0,73);
@y
big_app1(pp); if (indent_param_decl) big_app(dindent);
big_app1(pp+1); reduce(pp,2,fn_decl,0,73);
@z
-@x [9.156] l.2964
+@x [9.156] l.2963
big_app1_insert(pp, (cat1==decl || cat1==function) ? big_force :
force_lines ? force : break_space); reduce(pp,2,cat1,-1,76);
@y
@@ -764,7 +764,7 @@ else if (cat1==stmt) {
( force_lines ? force : break_space ) ); reduce(pp,2,cat1,-1,76);
@z
-@x [9.158] l.2972
+@x [9.158] l.2971
if (cat1==define_like) make_underlined(pp+2);
@y
if (cat1==define_like) { /* \#\&{define} is analogous to \&{extern} */
@@ -776,7 +776,7 @@ if (cat1==define_like) { /* \#\&{define} is analogous to \&{extern} */
}
@z
-@x [9.167] l.3069
+@x [9.167] l.3068
if (cat1==prelangle) reduce(pp+1,0,langle,1,100);
else reduce(pp,0,exp,-2,101);
@y
@@ -784,13 +784,13 @@ if (cat1==prelangle) reduce(pp+1,0,langle,1,121);
else reduce(pp,0,exp,-2,122);
@z
-@x [9.168] l.3074
+@x [9.168] l.3073
big_app1_insert(pp,' '); reduce(pp,2,else_like,-2,102);
@y
big_app1_insert(pp,' '); reduce(pp,2,else_like,-2,123);
@z
-@x [9.173] l.3106
+@x [9.173] l.3105
@ @<Cases for |typedef_like|@>=
if ((cat1==int_like || cat1==cast) && (cat2==comma || cat2==semi))
reduce(pp+1,0,exp,-1,115);
@@ -826,56 +826,56 @@ if (cat1==decl_head) {
(cat3==semi || cat3==comma)) reduce(pp+2,0,exp,1,202);
@z
-@x [9.186] l.3293
+@x [9.186] l.3292
overflow("token");
@y
overflow(_("token"));
@z
-@x [9.186] l.3297
+@x [9.186] l.3296
overflow("text");
@y
overflow(_("text"));
@z
-@x [9.190] l.3352
+@x [9.190] l.3351
if (tok_ptr+6>tok_mem_end) overflow("token");
@y
if (tok_ptr+6>tok_mem_end) overflow(_("token"));
@z
-@x [9.191] l.3358
+@x [9.191] l.3357
printf("\nIrreducible scrap sequence in section %d:",(int)section_count);
@y
printf(_("\nIrreducible scrap sequence in section %d:"),(int)section_count);
@z
-@x [9.192] l.3368
+@x [9.192] l.3367
printf("\nTracing after l. %d:\n",cur_line); mark_harmless();
@y
printf(_("\nTracing after l. %d:\n"),cur_line); mark_harmless();
@z
-@x [10.196] l.3454
+@x [10.196] l.3453
case ignore: case xref_roman: case xref_wildcard:
@y
case ignore: case xref_roman: case xref_wildcard:
case meaning: case suppress:
@z
-@x [10.197] l.3500
+@x [10.197] l.3499
overflow("scrap/token/text");
@y
overflow(_("scrap/token/text"));
@z
-@x [10.199] l.3585
+@x [10.199] l.3584
else err_print("! Double @@ should be used in strings");
@y
else err_print(_("! Double @@ should be used in strings"));
@z
-@x [10.202] l.3650
+@x [10.202] l.3649
else app_scrap(p->ilk,maybe_math);
}
}
@@ -886,62 +886,62 @@ if (cat1==decl_head) {
@<Flag the usage of this identifier, for the mini-index@>@;
@z
-@x [10.203] l.3668
+@x [10.203] l.3667
if (next_control!='|') err_print("! Missing '|' after C text");
@y
if (next_control!='|') err_print(_("! Missing '|' after C text"));
@z
-@x [10.204] l.3683
+@x [10.204] l.3682
to \.{\\PB}. Although \.{cwebmac} ignores \.{\\PB}, other macro packages
@y
to \.{\\PB}. Although \.{ctwimac} ignores \.{\\PB}, other macro packages
@z
-@x [10.205] l.3713
+@x [10.205] l.3712
app(tok_flag+(int)(p-tok_start));
@y
app(tok_flag+(int)(p-tok_start));
app(inserted);
@z
-@x [11.211] l.3809
+@x [11.211] l.3808
if (stack_ptr==stack_end) overflow("stack");
@y
if (stack_ptr==stack_end) overflow(_("stack"));
@z
-@x [11.224] l.4132
+@x [11.224] l.4131
printf("%s","\n! Illegal control code in section name: <");
@y
printf("%s",_("\n! Illegal control code in section name: <"));
@z
-@x [11.225] l.4147
+@x [11.225] l.4146
printf("%s","\n! C text in section name didn't end: <");
@y
printf("%s",_("\n! C text in section name didn't end: <"));
@z
-@x [11.225] l.4159
+@x [11.225] l.4158
if (j>buffer+long_buf_size-3) overflow("buffer");
@y
if (j>buffer+long_buf_size-3) overflow(_("buffer"));
@z
-@x [11.226] l.4167
+@x [11.226] l.4166
if (j>buffer+long_buf_size-4) overflow("buffer");
@y
if (j>buffer+long_buf_size-4) overflow(_("buffer"));
@z
-@x [12.227] l.4182
+@x [12.227] l.4181
if (show_progress) printf("%s","\nWriting the output file...");
@y
if (show_progress) printf("%s",_("\nWriting the output file..."));
@z
-@x [12.227] l.4184
+@x [12.227] l.4183
section_count=0; format_visible=true; copy_limbo();
@y
temp_switch=false; temp_meaning_ptr=temp_meaning_stack;
@@ -949,7 +949,7 @@ temp_switch=false; temp_meaning_ptr=temp_meaning_stack;
section_count=0; format_visible=true; right_start_switch=false; copy_limbo();
@z
-@x [12.229] l.4213
+@x [12.229] l.4212
static boolean group_found=false; /* has a starred section occurred? */
@ @<Translate the current section@>= {
@@ -966,12 +966,12 @@ static boolean temp_switch; /* has `\.{@@\%}' occurred recently? */
top_usage=usage_sentinel;
@z
-@x [12.231] l.4231
+@x [12.231] l.4230
If the section has changed, we put \.{\\*} just after the section number.
@y
@z
-@x [12.231] l.4234
+@x [12.231] l.4233
if (*(loc-1)!='*') out_str("\\M");
@y
if (*(loc-1)!='*') {
@@ -983,7 +983,7 @@ if (*(loc-1)!='*') {
}
@z
-@x [12.231] l.4249
+@x [12.231] l.4248
@.\\N@>
@y
@.\\N@>
@@ -993,14 +993,14 @@ if (*(loc-1)!='*') {
}
@z
-@x [12.231] l.4256
+@x [12.231] l.4255
out('{'); out_section(section_count); out('}');
@y
out('{'); out_section(section_count); out('}');
flush_buffer(out_ptr,false,false);
@z
-@x [12.232] l.4264
+@x [12.232] l.4263
case '@@': out('@@'); break;
@y
case '@@': out('@@'); break;
@@ -1008,26 +1008,26 @@ flush_buffer(out_ptr,false,false);
case right_start: right_start_switch=true; break;
@z
-@x [12.232] l.4267
+@x [12.232] l.4266
case section_name: loc-=2; next_control=get_next(); /* skip to \.{@@>} */
@y
case meaning: case suppress:
case section_name: loc-=2; next_control=get_next(); /* reprocess */
@z
-@x [12.232] l.4269
+@x [12.232] l.4268
err_print("! TeX string should be in C text only"); break;
@y
err_print(_("! TeX string should be in C text only")); break;
@z
-@x [12.232] l.4275
+@x [12.232] l.4274
err_print("! You can't do that in TeX text"); break;
@y
err_print(_("! You can't do that in TeX text")); break;
@z
-@x [12.233] l.4289
+@x [12.233] l.4288
outer_parse(); finish_C(format_visible); format_visible=true;
doing_format=false;
}
@@ -1039,20 +1039,20 @@ flush_buffer(out_ptr,false,false);
}
@z
-@x [12.236] l.4341
+@x [12.236] l.4340
@<Start a macro...@>= {
@y
@<Start a macro...@>= {
is_macro=true;
@z
-@x [12.236] l.4347
+@x [12.236] l.4346
err_print("! Improper macro definition");
@y
err_print(_("! Improper macro definition"));
@z
-@x [12.236] l.4348
+@x [12.236] l.4347
@.Improper macro definition@>
else {
app('$'); app_cur_id(false);
@@ -1064,7 +1064,7 @@ flush_buffer(out_ptr,false,false);
def_diff=(*loc!='(');
@z
-@x [12.236] l.4360
+@x [12.236] l.4359
} @=/* otherwise fall through */@>@;
default: err_print("! Improper macro definition"); break;
@y
@@ -1072,7 +1072,7 @@ flush_buffer(out_ptr,false,false);
default: err_print(_("! Improper macro definition")); break;
@z
-@x [12.237] l.4370
+@x [12.237] l.4369
@ @<Start a format...@>= {
doing_format=true;
@y
@@ -1081,25 +1081,25 @@ flush_buffer(out_ptr,false,false);
is_macro=false;
@z
-@x [12.237] l.4387
+@x [12.237] l.4386
if (scrap_ptr!=scrap_info+2) err_print("! Improper format definition");
@y
if (scrap_ptr!=scrap_info+2) err_print(_("! Improper format definition"));
@z
-@x [12.240] l.4422
+@x [12.240] l.4421
err_print("! You need an = sign after the section name");
@y
err_print(_("! You need an = sign after the section name"));
@z
-@x [12.241] l.4444
+@x [12.241] l.4443
err_print("! You can't do that in C text");
@y
err_print(_("! You can't do that in C text"));
@z
-@x [12.246] l.4514
+@x [12.246] l.4513
out_str("\\fi"); finish_line();
@.\\fi@>
@y
@@ -1110,13 +1110,13 @@ out_str("}\\FI"); finish_line();
@.\\FI@>
@z
-@x [13.247] l.4535
+@x [13.247] l.4534
if (show_progress) printf("%s","\nWriting the index...");
@y
if (show_progress) printf("%s",_("\nWriting the index..."));
@z
-@x [13.247] l.4537
+@x [13.247] l.4536
if (change_exists) {
@<Tell about changed sections@>@;
finish_line(); flush_buffer(out_buf,false,false);
@@ -1125,32 +1125,32 @@ out_str("}\\FI"); finish_line();
@y
@z
-@x [13.247] l.4546
+@x [13.247] l.4545
fatal("! Cannot open index file ",idx_file_name);
@y
fatal(_("! Cannot open index file "),idx_file_name);
@z
-@x [13.247] l.4558
+@x [13.247] l.4557
fatal("! Cannot open section file ",scn_file_name);
@y
fatal(_("! Cannot open section file "),scn_file_name);
@z
-@x [13.247] l.4570
+@x [13.247] l.4569
fclose(active_file);
@y
fclose(active_file); active_file=tex_file=NULL;
if (check_for_change) @<Update the result when it has changed@>@;
@z
-@x [13.247] l.4573
+@x [13.247] l.4572
printf("%s","Done.");
@y
printf("%s",_("Done."));
@z
-@x [13.249] l.4581
+@x [13.249] l.4580
the index section itself.
@<Tell about changed sections@>=
@@ -1169,13 +1169,13 @@ out('.');
the index section itself---NOT!
@z
-@x [13.257] l.4725
+@x [13.257] l.4724
if (sort_ptr>=scrap_info_end) overflow("sorting");
@y
if (sort_ptr>=scrap_info_end) overflow(_("sorting"));
@z
-@x [13.262] l.4770
+@x [13.262] l.4769
@ @<Output the name...@>=
switch (cur_name->ilk) {@+char *p; /* index into |byte_mem| */@+@t}\6{\4@>
@y
@@ -1186,20 +1186,20 @@ rest of the job. Compare this code with section |@<Mini-output...@>|.
switch (cur_name->ilk) {
@z
-@x [13.262] l.4772
+@x [13.262] l.4771
case normal: case func_template:
@y
case normal:
@z
-@x [13.262] l.4774
+@x [13.262] l.4773
else {@+boolean all_caps=true;@+@t}\6{@>
@y
else {@+boolean all_caps=true;@+char *p;
/* index into |byte_mem| */ @+@t}\6{@>
@z
-@x [13.262] l.4789
+@x [13.262] l.4788
case roman: not_an_identifier: out_name(cur_name,false); goto name_done;
case custom:
out_str("$\\");
@@ -1214,13 +1214,13 @@ not_an_identifier: out_name(cur_name,false); goto name_done;
@.\\\$@>
@z
-@x [13.262] l.4799
+@x [13.262] l.4798
out_name(cur_name,true);
@y
out_name(cur_name,proofing);
@z
-@x [13.269] l.4862
+@x [13.269] l.4861
puts("\nMemory usage statistics:");
@.Memory usage statistics:@>
printf("%td names (out of %ld)\n",@^system dependencies@>
@@ -1269,7 +1269,7 @@ out_name(cur_name,proofing);
(ptrdiff_t)(max_sort_ptr-scrap_info),(long)max_scraps);
@z
-@x [14.270] l.4884
+@x [14.270] l.4883
@** Index.
@y
@q Section 270. @>
diff --git a/Build/source/texk/web2c/cwebdir/cweav-w2c.ch b/Build/source/texk/web2c/cwebdir/cweav-w2c.ch
index 73b9ab4b2c9..87be3b91402 100644
--- a/Build/source/texk/web2c/cwebdir/cweav-w2c.ch
+++ b/Build/source/texk/web2c/cwebdir/cweav-w2c.ch
@@ -16,62 +16,62 @@
@q Please send comments, suggestions, etc. to tex-k@@tug.org. @>
-@x [0.0] l.35
+@x [0.0] l.34
\def\title{CWEAVE (Version 4.11)}
@y
\def\title{CWEAVE (Version 4.11 [\TeX~Live])}
@z
-@x [0.0] l.39
+@x [0.0] l.38
\centerline{(Version 4.11)}
@y
\centerline{(Version 4.11 [\TeX~Live])}
@z
-@x [0.0] l.41
+@x [0.0] l.40
\def\botofcontents{\vfill
@y
\def\covernote{\vbox{%
@z
-@x [0.0] l.54
+@x [0.0] l.53
}
@y
}}\datecontentspage
@z
-@x [1.1] l.70
+@x [1.1] l.69
@d banner "This is CWEAVE (Version 4.11)"
@y
@d banner "This is CWEAVE, Version 4.11"
/* will be extended by the \TeX~Live |versionstring| */
@z
-@x [1.2] l.98
+@x [1.2] l.97
if (show_banner) puts(banner); /* print a ``banner line'' */
@y
if (show_banner) cb_show_banner(); /* print a ``banner line'' */
@z
-@x [1.3] l.112
+@x [1.3] l.111
@i common.h
@y
@i comm-w2c.h
@z
-@x [2.23] l.217
+@x [2.23] l.216
@ @d max_refs 30000 /* number of cross-references; must be less than 65536 */
@y
@ @d max_refs 65535 /* number of cross-references; must be less than 65536 */
@z
-@x [2.25] l.246
+@x [2.25] l.245
@d append_xref(c) if (xref_ptr==xmem_end) overflow("cross-reference");
@y
@d append_xref(c) if (xref_ptr==xmem_end) overflow(_("cross-reference"));
@z
-@x [2.30] l.337
+@x [2.30] l.336
@d max_toks 30000 /* number of symbols in \CEE/ texts being parsed;
must be less than 65536 */
@d max_texts 8000 /* number of phrases in \CEE/ texts being parsed;
@@ -83,97 +83,97 @@
must be less than 10240 */
@z
-@x [4.57] l.888
+@x [4.57] l.887
err_print("! String didn't end"); loc=limit; break;
@y
err_print(_("! String didn't end")); loc=limit; break;
@z
-@x [4.57] l.892
+@x [4.57] l.891
err_print("! Input ended in middle of string"); loc=buffer; break;
@y
err_print(_("! Input ended in middle of string")); loc=buffer; break;
@z
-@x [4.57] l.911
+@x [4.57] l.910
printf("%s","\n! String too long: ");
@y
printf("%s",_("\n! String too long: "));
@z
-@x [4.59] l.930
+@x [4.59] l.929
case translit_code: err_print("! Use @@l in limbo only"); continue;
@y
case translit_code: err_print(_("! Use @@l in limbo only")); continue;
@z
-@x [4.62] l.968
+@x [4.62] l.967
err_print("! Input ended in section name");
@y
err_print(_("! Input ended in section name"));
@z
-@x [4.62] l.981
+@x [4.62] l.980
printf("%s","\n! Section name too long: ");
@y
printf("%s",_("\n! Section name too long: "));
@z
-@x [4.63] l.995
+@x [4.63] l.994
err_print("! Section name didn't end"); break;
@y
err_print(_("! Section name didn't end")); break;
@z
-@x [4.63] l.999
+@x [4.63] l.998
err_print("! Control codes are forbidden in section name"); break;
@y
err_print(_("! Control codes are forbidden in section name")); break;
@z
-@x [4.64] l.1016
+@x [4.64] l.1015
err_print("! Control text didn't end"); loc=limit;
@y
err_print(_("! Control text didn't end")); loc=limit;
@z
-@x [4.64] l.1021
+@x [4.64] l.1020
err_print("! Control codes are forbidden in control text");
@y
err_print(_("! Control codes are forbidden in control text"));
@z
-@x [4.66] l.1036
+@x [4.66] l.1035
if (loc>=limit) err_print("! Verbatim string didn't end");
@y
if (loc>=limit) err_print(_("! Verbatim string didn't end"));
@z
-@x [5.70] l.1073
+@x [5.70] l.1072
if (++section_count==max_sections) overflow("section number");
@y
if (++section_count==max_sections) overflow(_("section number"));
@z
-@x [5.74] l.1162
+@x [5.74] l.1161
case translit_code: err_print("! Use @@l in limbo only"); continue;
@y
case translit_code: err_print(_("! Use @@l in limbo only")); continue;
@z
-@x [5.79] l.1249
+@x [5.79] l.1248
err_print("! Missing left identifier of @@s");
@y
err_print(_("! Missing left identifier of @@s"));
@z
-@x [5.79] l.1254
+@x [5.79] l.1253
err_print("! Missing right identifier of @@s");
@y
err_print(_("! Missing right identifier of @@s"));
@z
-@x [5.82] l.1302
+@x [5.82] l.1301
printf("%s","\n! Never defined: <");
print_section_name(p); putchar('>'); mark_harmless();
@y
@@ -181,7 +181,7 @@ if (loc>=limit) err_print(_("! Verbatim string didn't end"));
print_section_name(p); putchar('>'); mark_harmless();
@z
-@x [5.82] l.1308
+@x [5.82] l.1307
printf("%s","\n! Never used: <");
print_section_name(p); putchar('>'); mark_harmless();
@y
@@ -189,7 +189,7 @@ if (loc>=limit) err_print(_("! Verbatim string didn't end"));
print_section_name(p); putchar('>'); mark_harmless();
@z
-@x [6.89] l.1397
+@x [6.89] l.1396
@ In particular, the |finish_line| procedure is called near the very
beginning of phase two. We initialize the output variables in a slightly
tricky way so that the first line of the output file will be
@@ -218,61 +218,61 @@ tex_puts("cwebma");
*out_ptr='c';
@z
-@x [6.94] l.1462
+@x [6.94] l.1461
printf("\n! Line had to be broken (output l. %d):\n",out_line);
@y
printf(_("\n! Line had to be broken (output l. %d):\n"),out_line);
@z
-@x [7.99] l.1543
+@x [7.99] l.1542
default: err_print("! Double @@ should be used in limbo");
@y
default: err_print(_("! Double @@ should be used in limbo"));
@z
-@x [7.101] l.1585
+@x [7.101] l.1584
@d app_tok(c) {if (tok_ptr+2>tok_mem_end) overflow("token"); *(tok_ptr++)=c;}
@y
@d app_tok(c) {if (tok_ptr+2>tok_mem_end) overflow(_("token")); *(tok_ptr++)=c;}
@z
-@x [7.101] l.1597
+@x [7.101] l.1596
err_print("! Input ended in mid-comment");
@y
err_print(_("! Input ended in mid-comment"));
@z
-@x [7.101] l.1602
+@x [7.101] l.1601
if (bal>1) err_print("! Missing } in comment");
@y
if (bal>1) err_print(_("! Missing } in comment"));
@z
-@x [7.101] l.1618
+@x [7.101] l.1617
else {err_print("! Extra } in comment");
@y
else {err_print(_("! Extra } in comment"));
@z
-@x [7.102] l.1630
+@x [7.102] l.1629
if (bal>1) err_print("! Missing } in comment");
@y
if (bal>1) err_print(_("! Missing } in comment"));
@z
-@x [7.103] l.1638
+@x [7.103] l.1637
err_print("! Illegal use of @@ in comment");
@y
err_print(_("! Illegal use of @@ in comment"));
@z
-@x [8.110] l.2129
+@x [8.110] l.2128
@i prod.w
@y
@i prod-cweave.w
@z
-@x [9.128] l.2651
+@x [9.128] l.2650
@<Cases for |exp|@>=
if (cat1==lbrace || cat1==int_like || cat1==decl) {
make_underlined(pp); big_app(dindent); big_app1(pp);
@@ -286,7 +286,7 @@ if(cat1==lbrace || cat1==int_like || cat1==decl) {
}
@z
-@x [9.138] l.2755
+@x [9.138] l.2754
@ @<Cases for |decl_head|@>=
if (cat1==comma) {
big_app2(pp); app(opt); app('9'); reduce(pp,2,decl_head,-1,33);
@@ -328,7 +328,7 @@ else if (cat1==int_like || cat1==lbrace || cat1==decl) {
else if (cat1==semi) squash(pp,2,decl,-1,39);
@z
-@x [9.139] l.2777
+@x [9.139] l.2776
@ @<Cases for |decl|@>=
if (cat1==decl) {
big_app1_insert(pp,force); reduce(pp,2,decl,-1,40);
@@ -347,7 +347,7 @@ else if (cat1==stmt || cat1==function) {
}
@z
-@x [9.143] l.2834
+@x [9.143] l.2833
@ @<Cases for |fn_decl|@>=
if (cat1==decl) {
big_app1_insert(pp,force); reduce(pp,2,fn_decl,0,51);
@@ -370,14 +370,14 @@ else if (cat1==stmt) {
}
@z
-@x [9.153] l.2938
+@x [9.153] l.2937
big_app1_insert(pp,dindent); reduce(pp,2,fn_decl,0,73);
@y
big_app1(pp); if (indent_param_decl) big_app(dindent);
big_app1(pp+1); reduce(pp,2,fn_decl,0,73);
@z
-@x [9.156] l.2964
+@x [9.156] l.2963
big_app1_insert(pp, (cat1==decl || cat1==function) ? big_force :
force_lines ? force : break_space); reduce(pp,2,cat1,-1,76);
@y
@@ -386,109 +386,109 @@ else if (cat1==stmt) {
( force_lines ? force : break_space ) ); reduce(pp,2,cat1,-1,76);
@z
-@x [9.186] l.3293
+@x [9.186] l.3292
overflow("token");
@y
overflow(_("token"));
@z
-@x [9.186] l.3297
+@x [9.186] l.3296
overflow("text");
@y
overflow(_("text"));
@z
-@x [9.190] l.3352
+@x [9.190] l.3351
if (tok_ptr+6>tok_mem_end) overflow("token");
@y
if (tok_ptr+6>tok_mem_end) overflow(_("token"));
@z
-@x [9.191] l.3358
+@x [9.191] l.3357
printf("\nIrreducible scrap sequence in section %d:",(int)section_count);
@y
printf(_("\nIrreducible scrap sequence in section %d:"),(int)section_count);
@z
-@x [9.192] l.3368
+@x [9.192] l.3367
printf("\nTracing after l. %d:\n",cur_line); mark_harmless();
@y
printf(_("\nTracing after l. %d:\n"),cur_line); mark_harmless();
@z
-@x [10.197] l.3500
+@x [10.197] l.3499
overflow("scrap/token/text");
@y
overflow(_("scrap/token/text"));
@z
-@x [10.199] l.3585
+@x [10.199] l.3584
else err_print("! Double @@ should be used in strings");
@y
else err_print(_("! Double @@ should be used in strings"));
@z
-@x [10.203] l.3668
+@x [10.203] l.3667
if (next_control!='|') err_print("! Missing '|' after C text");
@y
if (next_control!='|') err_print(_("! Missing '|' after C text"));
@z
-@x [11.211] l.3809
+@x [11.211] l.3808
if (stack_ptr==stack_end) overflow("stack");
@y
if (stack_ptr==stack_end) overflow(_("stack"));
@z
-@x [11.224] l.4132
+@x [11.224] l.4131
printf("%s","\n! Illegal control code in section name: <");
@y
printf("%s",_("\n! Illegal control code in section name: <"));
@z
-@x [11.225] l.4147
+@x [11.225] l.4146
printf("%s","\n! C text in section name didn't end: <");
@y
printf("%s",_("\n! C text in section name didn't end: <"));
@z
-@x [11.225] l.4159
+@x [11.225] l.4158
if (j>buffer+long_buf_size-3) overflow("buffer");
@y
if (j>buffer+long_buf_size-3) overflow(_("buffer"));
@z
-@x [11.226] l.4167
+@x [11.226] l.4166
if (j>buffer+long_buf_size-4) overflow("buffer");
@y
if (j>buffer+long_buf_size-4) overflow(_("buffer"));
@z
-@x [12.227] l.4182
+@x [12.227] l.4181
if (show_progress) printf("%s","\nWriting the output file...");
@y
if (show_progress) printf("%s",_("\nWriting the output file..."));
@z
-@x [12.232] l.4269
+@x [12.232] l.4268
err_print("! TeX string should be in C text only"); break;
@y
err_print(_("! TeX string should be in C text only")); break;
@z
-@x [12.232] l.4275
+@x [12.232] l.4274
err_print("! You can't do that in TeX text"); break;
@y
err_print(_("! You can't do that in TeX text")); break;
@z
-@x [12.236] l.4347
+@x [12.236] l.4346
err_print("! Improper macro definition");
@y
err_print(_("! Improper macro definition"));
@z
-@x [12.236] l.4360
+@x [12.236] l.4359
} @=/* otherwise fall through */@>@;
default: err_print("! Improper macro definition"); break;
@y
@@ -496,62 +496,62 @@ if (show_progress) printf("%s",_("\nWriting the output file..."));
default: err_print(_("! Improper macro definition")); break;
@z
-@x [12.237] l.4387
+@x [12.237] l.4386
if (scrap_ptr!=scrap_info+2) err_print("! Improper format definition");
@y
if (scrap_ptr!=scrap_info+2) err_print(_("! Improper format definition"));
@z
-@x [12.240] l.4422
+@x [12.240] l.4421
err_print("! You need an = sign after the section name");
@y
err_print(_("! You need an = sign after the section name"));
@z
-@x [12.241] l.4444
+@x [12.241] l.4443
err_print("! You can't do that in C text");
@y
err_print(_("! You can't do that in C text"));
@z
-@x [13.247] l.4535
+@x [13.247] l.4534
if (show_progress) printf("%s","\nWriting the index...");
@y
if (show_progress) printf("%s",_("\nWriting the index..."));
@z
-@x [13.247] l.4546
+@x [13.247] l.4545
fatal("! Cannot open index file ",idx_file_name);
@y
fatal(_("! Cannot open index file "),idx_file_name);
@z
-@x [13.247] l.4558
+@x [13.247] l.4557
fatal("! Cannot open section file ",scn_file_name);
@y
fatal(_("! Cannot open section file "),scn_file_name);
@z
-@x [13.247] l.4570
+@x [13.247] l.4569
fclose(active_file);
@y
fclose(active_file); active_file=tex_file=NULL;
if (check_for_change) @<Update the result when it has changed@>@;
@z
-@x [13.247] l.4573
+@x [13.247] l.4572
printf("%s","Done.");
@y
printf("%s",_("Done."));
@z
-@x [13.257] l.4725
+@x [13.257] l.4724
if (sort_ptr>=scrap_info_end) overflow("sorting");
@y
if (sort_ptr>=scrap_info_end) overflow(_("sorting"));
@z
-@x [13.269] l.4862
+@x [13.269] l.4861
puts("\nMemory usage statistics:");
@.Memory usage statistics:@>
printf("%td names (out of %ld)\n",@^system dependencies@>
@@ -595,7 +595,7 @@ if (check_for_change) @<Update the result when it has changed@>@;
(ptrdiff_t)(max_sort_ptr-scrap_info),(long)max_scraps);
@z
-@x [14.270] l.4884
+@x [14.270] l.4883
@** Index.
@y
@** Extensions to {\tentex CWEB}. The following sections introduce new or
diff --git a/Build/source/texk/web2c/cwebdir/cweave.w b/Build/source/texk/web2c/cwebdir/cweave.w
index 808d46cc7eb..932b4afc123 100644
--- a/Build/source/texk/web2c/cwebdir/cweave.w
+++ b/Build/source/texk/web2c/cwebdir/cweave.w
@@ -27,7 +27,6 @@
\def\dleft{[\![} \def\dright{]\!]} % double brackets
\mathchardef\RA="3221 % right arrow
\mathchardef\BA="3224 % double arrow
-\def\({} % ) kludge for alphabetizing certain section names
\def\TeXxstring{\\{\TEX/\_string}}
\def\skipxTeX{\\{skip\_\TEX/}}
\def\copyxTeX{\\{copy\_\TEX/}}