diff options
author | Andreas Scherer <andreas_tex@freenet.de> | 2020-06-07 17:59:46 +0000 |
---|---|---|
committer | Andreas Scherer <andreas_tex@freenet.de> | 2020-06-07 17:59:46 +0000 |
commit | aa3e111e5d4398b9a787c9ca452aba79700e706c (patch) | |
tree | 2f067e70c60f635d3fdfed3cbfaad929de36b5a7 /Build/source/texk | |
parent | 004df680339fe22612e027793221d8cb4d11eec0 (diff) |
[CWEB] Add date to table-of-contents page.
git-svn-id: svn://tug.org/texlive/trunk@55465 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk')
-rw-r--r-- | Build/source/texk/web2c/ChangeLog | 5 | ||||
-rw-r--r-- | Build/source/texk/web2c/ctangleboot.cin | 236 | ||||
-rw-r--r-- | Build/source/texk/web2c/cwebboot.cin | 270 | ||||
-rw-r--r-- | Build/source/texk/web2c/cwebdir/ChangeLog | 7 | ||||
-rw-r--r-- | Build/source/texk/web2c/cwebdir/comm-w2c.ch | 13 | ||||
-rw-r--r-- | Build/source/texk/web2c/cwebdir/ctang-w2c.ch | 13 | ||||
-rw-r--r-- | Build/source/texk/web2c/cwebdir/ctwill-w2c.ch | 13 | ||||
-rw-r--r-- | Build/source/texk/web2c/cwebdir/cweav-w2c.ch | 13 |
8 files changed, 317 insertions, 253 deletions
diff --git a/Build/source/texk/web2c/ChangeLog b/Build/source/texk/web2c/ChangeLog index 1e5196684f4..ccc00952dbc 100644 --- a/Build/source/texk/web2c/ChangeLog +++ b/Build/source/texk/web2c/ChangeLog @@ -1,5 +1,10 @@ 2020-06-07 Andreas Scherer <https://ascherer.github.io> + * ctangleboot.cin, + * cwebboot.cin: Add date to table-of-contents page. + +2020-06-07 Andreas Scherer <https://ascherer.github.io> + * ctangleboot.cin: Handle special 'files' as secondary output. 2020-06-07 Andreas Scherer <https://ascherer.github.io> diff --git a/Build/source/texk/web2c/ctangleboot.cin b/Build/source/texk/web2c/ctangleboot.cin index 57f51f416f2..f1c6e7ba140 100644 --- a/Build/source/texk/web2c/ctangleboot.cin +++ b/Build/source/texk/web2c/ctangleboot.cin @@ -2,7 +2,7 @@ #line 64 "cwebdir/ctangle.w" /*2:*/ -#line 60 "cwebdir/ctang-w2c.ch" +#line 73 "cwebdir/ctang-w2c.ch" #include <string.h> #line 83 "cwebdir/ctangle.w" @@ -290,7 +290,7 @@ extern void cb_show_banner(void); #line 128 "cwebdir/ctangle.w" /*:15*//*108:*/ -#line 886 "cwebdir/ctang-w2c.ch" +#line 899 "cwebdir/ctang-w2c.ch" extern char cb_banner[]; @@ -407,40 +407,40 @@ extern sixteen_bits section_count; /*41:*/ #line 533 "cwebdir/ctangle.w" -#line 251 "cwebdir/ctang-w2c.ch" +#line 264 "cwebdir/ctang-w2c.ch" static void phase_two(void); #line 535 "cwebdir/ctangle.w" /*:41*//*46:*/ #line 602 "cwebdir/ctangle.w" -#line 338 "cwebdir/ctang-w2c.ch" +#line 351 "cwebdir/ctang-w2c.ch" static void output_defs(void); #line 604 "cwebdir/ctangle.w" /*:46*//*48:*/ #line 648 "cwebdir/ctangle.w" -#line 358 "cwebdir/ctang-w2c.ch" +#line 371 "cwebdir/ctang-w2c.ch" static void out_char(eight_bits); #line 650 "cwebdir/ctangle.w" /*:48*//*90:*/ #line 1460 "cwebdir/ctangle.w" -#line 654 "cwebdir/ctang-w2c.ch" +#line 667 "cwebdir/ctang-w2c.ch" static void phase_one(void); #line 1462 "cwebdir/ctangle.w" /*:90*//*92:*/ #line 1478 "cwebdir/ctangle.w" -#line 668 "cwebdir/ctang-w2c.ch" +#line 681 "cwebdir/ctang-w2c.ch" static void skip_limbo(void); #line 1480 "cwebdir/ctangle.w" /*:92*//*97:*/ -#line 755 "cwebdir/ctang-w2c.ch" +#line 768 "cwebdir/ctang-w2c.ch" static eight_bits get_next(void); static eight_bits skip_ahead(void); @@ -457,11 +457,11 @@ static void store_two_bytes(sixteen_bits); #line 70 "cwebdir/ctangle.w" -#line 55 "cwebdir/ctang-w2c.ch" +#line 68 "cwebdir/ctang-w2c.ch" /*:1*//*3:*/ #line 91 "cwebdir/ctangle.w" -#line 69 "cwebdir/ctang-w2c.ch" +#line 82 "cwebdir/ctang-w2c.ch" int main( int ac, char**av) @@ -479,7 +479,7 @@ text_ptr= text_info+1;text_ptr->tok_start= tok_mem; /*:18*//*20:*/ #line 177 "cwebdir/ctangle.w" -#line 130 "cwebdir/ctang-w2c.ch" +#line 143 "cwebdir/ctang-w2c.ch" init_node(name_dir); #line 179 "cwebdir/ctangle.w" @@ -525,7 +525,7 @@ ccode['\'']= ord; section_text[0]= ' '; /*:71*//*109:*/ -#line 889 "cwebdir/ctang-w2c.ch" +#line 902 "cwebdir/ctang-w2c.ch" strncpy(cb_banner,banner,max_banner-1); @@ -533,7 +533,7 @@ strncpy(cb_banner,banner,max_banner-1); #line 98 "cwebdir/ctangle.w" ; common_init(); -#line 77 "cwebdir/ctang-w2c.ch" +#line 90 "cwebdir/ctang-w2c.ch" if(show_banner)cb_show_banner(); #line 101 "cwebdir/ctangle.w" phase_one(); @@ -544,7 +544,7 @@ return wrap_up(); /*:3*//*21:*/ #line 183 "cwebdir/ctangle.w" -#line 140 "cwebdir/ctang-w2c.ch" +#line 153 "cwebdir/ctang-w2c.ch" boolean names_match( name_pointer p, const char*first, @@ -559,17 +559,17 @@ return!strncmp(first,p->byte_start,l); /*:21*//*22:*/ #line 198 "cwebdir/ctangle.w" -#line 153 "cwebdir/ctang-w2c.ch" +#line 166 "cwebdir/ctang-w2c.ch" void init_node( name_pointer node) #line 202 "cwebdir/ctangle.w" { -#line 161 "cwebdir/ctang-w2c.ch" +#line 174 "cwebdir/ctang-w2c.ch" node->equiv= (void*)text_info; #line 204 "cwebdir/ctangle.w" } -#line 168 "cwebdir/ctang-w2c.ch" +#line 181 "cwebdir/ctang-w2c.ch" void init_p(name_pointer p,eight_bits t){(void)p;(void)t;} #line 207 "cwebdir/ctangle.w" @@ -577,13 +577,13 @@ init_p(name_pointer p,eight_bits t){(void)p;(void)t;} /*:22*//*26:*/ #line 260 "cwebdir/ctangle.w" -#line 177 "cwebdir/ctang-w2c.ch" +#line 190 "cwebdir/ctang-w2c.ch" static void store_two_bytes( sixteen_bits x) #line 264 "cwebdir/ctangle.w" { -#line 185 "cwebdir/ctang-w2c.ch" +#line 198 "cwebdir/ctang-w2c.ch" if(tok_ptr+2> tok_mem_end)overflow(_("token")); #line 266 "cwebdir/ctangle.w" *tok_ptr++= x>>8; @@ -593,13 +593,13 @@ if(tok_ptr+2> tok_mem_end)overflow(_("token")); /*:26*//*30:*/ #line 336 "cwebdir/ctangle.w" -#line 193 "cwebdir/ctang-w2c.ch" +#line 206 "cwebdir/ctang-w2c.ch" static void push_level( name_pointer p) #line 340 "cwebdir/ctangle.w" { -#line 201 "cwebdir/ctang-w2c.ch" +#line 214 "cwebdir/ctang-w2c.ch" if(stack_ptr==stack_end)overflow(_("stack")); #line 342 "cwebdir/ctangle.w" *stack_ptr= cur_state; @@ -614,7 +614,7 @@ cur_section= 0; /*:30*//*31:*/ #line 355 "cwebdir/ctangle.w" -#line 209 "cwebdir/ctang-w2c.ch" +#line 222 "cwebdir/ctang-w2c.ch" static void pop_level( int flag) @@ -632,7 +632,7 @@ if(stack_ptr> stack)cur_state= *stack_ptr; /*:31*//*33:*/ #line 391 "cwebdir/ctangle.w" -#line 218 "cwebdir/ctang-w2c.ch" +#line 231 "cwebdir/ctang-w2c.ch" static void get_output(void) #line 394 "cwebdir/ctangle.w" @@ -659,11 +659,11 @@ else/*34:*/ { a-= 024000; -#line 225 "cwebdir/ctang-w2c.ch" +#line 238 "cwebdir/ctang-w2c.ch" if((a+name_dir)->equiv!=(void*)text_info)push_level(a+name_dir); #line 427 "cwebdir/ctangle.w" else if(a!=0){ -#line 231 "cwebdir/ctang-w2c.ch" +#line 244 "cwebdir/ctang-w2c.ch" fputs(_("\n! Not present: <"),stdout); #line 429 "cwebdir/ctangle.w" print_section_name(a+name_dir);err_print(">"); @@ -685,7 +685,7 @@ out_char(section_number); /*:33*//*37:*/ #line 481 "cwebdir/ctangle.w" -#line 238 "cwebdir/ctang-w2c.ch" +#line 251 "cwebdir/ctang-w2c.ch" static void flush_buffer(void) #line 484 "cwebdir/ctangle.w" @@ -702,7 +702,7 @@ cur_line++; /*:37*//*42:*/ #line 536 "cwebdir/ctangle.w" -#line 258 "cwebdir/ctang-w2c.ch" +#line 271 "cwebdir/ctang-w2c.ch" static void phase_two(void){ #line 539 "cwebdir/ctangle.w" @@ -727,7 +727,7 @@ output_defs(); #line 542 "cwebdir/ctangle.w" ; if(text_info->text_link==0&&cur_out_file==end_output_files){ -#line 265 "cwebdir/ctang-w2c.ch" +#line 278 "cwebdir/ctang-w2c.ch" fputs(_("\n! No program text was specified."),stdout);mark_harmless; #line 545 "cwebdir/ctangle.w" @@ -735,13 +735,13 @@ fputs(_("\n! No program text was specified."),stdout);mark_harmless; else{ if(cur_out_file==end_output_files){ if(show_progress) -#line 271 "cwebdir/ctang-w2c.ch" +#line 284 "cwebdir/ctang-w2c.ch" printf(_("\nWriting the output file (%s):"),C_file_name); #line 551 "cwebdir/ctangle.w" } else{ if(show_progress){ -#line 277 "cwebdir/ctang-w2c.ch" +#line 290 "cwebdir/ctang-w2c.ch" fputs(_("\nWriting the output files:"),stdout); #line 555 "cwebdir/ctangle.w" @@ -753,15 +753,15 @@ if(text_info->text_link==0)goto writeloop; while(stack_ptr> stack)get_output(); flush_buffer(); writeloop:/*43:*/ -#line 309 "cwebdir/ctang-w2c.ch" +#line 322 "cwebdir/ctang-w2c.ch" fclose(C_file);C_file= NULL; /*98:*/ -#line 775 "cwebdir/ctang-w2c.ch" +#line 788 "cwebdir/ctang-w2c.ch" if((C_file= fopen(C_file_name,"r"))!=NULL){ /*99:*/ -#line 782 "cwebdir/ctang-w2c.ch" +#line 795 "cwebdir/ctang-w2c.ch" char x[BUFSIZ],y[BUFSIZ]; int x_size,y_size,comparison= false; @@ -771,7 +771,7 @@ fatal(_("! Cannot open output file "),check_file_name); if(temporary_output)/*100:*/ -#line 797 "cwebdir/ctang-w2c.ch" +#line 810 "cwebdir/ctang-w2c.ch" do{ x_size= fread(x,1,BUFSIZ,C_file); @@ -781,17 +781,17 @@ if(comparison)comparison= !memcmp(x,y,x_size); }while(comparison&&!feof(C_file)&&!feof(check_file)); /*:100*/ -#line 790 "cwebdir/ctang-w2c.ch" +#line 803 "cwebdir/ctang-w2c.ch" fclose(C_file);C_file= NULL; fclose(check_file);check_file= NULL; /*:99*/ -#line 777 "cwebdir/ctang-w2c.ch" +#line 790 "cwebdir/ctang-w2c.ch" /*101:*/ -#line 808 "cwebdir/ctang-w2c.ch" +#line 821 "cwebdir/ctang-w2c.ch" if(comparison) remove(check_file_name); @@ -801,13 +801,13 @@ rename(check_file_name,C_file_name); } /*:101*/ -#line 778 "cwebdir/ctang-w2c.ch" +#line 791 "cwebdir/ctang-w2c.ch" }else rename(check_file_name,C_file_name); /*:98*/ -#line 311 "cwebdir/ctang-w2c.ch" +#line 324 "cwebdir/ctang-w2c.ch" for(an_output_file= end_output_files;an_output_file> cur_out_file;){ an_output_file--; @@ -828,14 +828,14 @@ cur_end= (cur_repl+1)->tok_start; while(stack_ptr> stack)get_output(); flush_buffer();fclose(C_file);C_file= NULL; /*102:*/ -#line 821 "cwebdir/ctang-w2c.ch" +#line 834 "cwebdir/ctang-w2c.ch" if(0==strcmp("/dev/stdout",output_file_name)) /*104:*/ -#line 846 "cwebdir/ctang-w2c.ch" +#line 859 "cwebdir/ctang-w2c.ch" { /*107:*/ -#line 873 "cwebdir/ctang-w2c.ch" +#line 886 "cwebdir/ctang-w2c.ch" char in_buf[BUFSIZ+1]; int in_size,comparison= true; @@ -844,7 +844,7 @@ fatal("! Cannot open output file ",check_file_name); /*:107*/ -#line 847 "cwebdir/ctang-w2c.ch" +#line 860 "cwebdir/ctang-w2c.ch" do{ in_size= fread(in_buf,1,BUFSIZ,check_file); @@ -853,7 +853,7 @@ fprintf(stdout,"%s",in_buf); }while(!feof(check_file)); fclose(check_file);check_file= NULL; /*103:*/ -#line 838 "cwebdir/ctang-w2c.ch" +#line 851 "cwebdir/ctang-w2c.ch" if(comparison) remove(check_file_name); @@ -863,19 +863,19 @@ rename(check_file_name,output_file_name); } /*:103*/ -#line 854 "cwebdir/ctang-w2c.ch" +#line 867 "cwebdir/ctang-w2c.ch" } /*:104*/ -#line 823 "cwebdir/ctang-w2c.ch" +#line 836 "cwebdir/ctang-w2c.ch" else if(0==strcmp("/dev/stderr",output_file_name)) /*105:*/ -#line 857 "cwebdir/ctang-w2c.ch" +#line 870 "cwebdir/ctang-w2c.ch" { /*107:*/ -#line 873 "cwebdir/ctang-w2c.ch" +#line 886 "cwebdir/ctang-w2c.ch" char in_buf[BUFSIZ+1]; int in_size,comparison= true; @@ -884,7 +884,7 @@ fatal("! Cannot open output file ",check_file_name); /*:107*/ -#line 858 "cwebdir/ctang-w2c.ch" +#line 871 "cwebdir/ctang-w2c.ch" do{ in_size= fread(in_buf,1,BUFSIZ,check_file); @@ -893,7 +893,7 @@ fprintf(stderr,"%s",in_buf); }while(!feof(check_file)); fclose(check_file);check_file= NULL; /*103:*/ -#line 838 "cwebdir/ctang-w2c.ch" +#line 851 "cwebdir/ctang-w2c.ch" if(comparison) remove(check_file_name); @@ -903,20 +903,20 @@ rename(check_file_name,output_file_name); } /*:103*/ -#line 865 "cwebdir/ctang-w2c.ch" +#line 878 "cwebdir/ctang-w2c.ch" } /*:105*/ -#line 825 "cwebdir/ctang-w2c.ch" +#line 838 "cwebdir/ctang-w2c.ch" else if(0==strcmp("/dev/null",output_file_name)) /*106:*/ -#line 868 "cwebdir/ctang-w2c.ch" +#line 881 "cwebdir/ctang-w2c.ch" { int comparison= true; /*103:*/ -#line 838 "cwebdir/ctang-w2c.ch" +#line 851 "cwebdir/ctang-w2c.ch" if(comparison) remove(check_file_name); @@ -926,17 +926,17 @@ rename(check_file_name,output_file_name); } /*:103*/ -#line 870 "cwebdir/ctang-w2c.ch" +#line 883 "cwebdir/ctang-w2c.ch" } /*:106*/ -#line 827 "cwebdir/ctang-w2c.ch" +#line 840 "cwebdir/ctang-w2c.ch" else{ if((C_file= fopen(output_file_name,"r"))!=NULL){ /*99:*/ -#line 782 "cwebdir/ctang-w2c.ch" +#line 795 "cwebdir/ctang-w2c.ch" char x[BUFSIZ],y[BUFSIZ]; int x_size,y_size,comparison= false; @@ -946,7 +946,7 @@ fatal(_("! Cannot open output file "),check_file_name); if(temporary_output)/*100:*/ -#line 797 "cwebdir/ctang-w2c.ch" +#line 810 "cwebdir/ctang-w2c.ch" do{ x_size= fread(x,1,BUFSIZ,C_file); @@ -956,17 +956,17 @@ if(comparison)comparison= !memcmp(x,y,x_size); }while(comparison&&!feof(C_file)&&!feof(check_file)); /*:100*/ -#line 790 "cwebdir/ctang-w2c.ch" +#line 803 "cwebdir/ctang-w2c.ch" fclose(C_file);C_file= NULL; fclose(check_file);check_file= NULL; /*:99*/ -#line 830 "cwebdir/ctang-w2c.ch" +#line 843 "cwebdir/ctang-w2c.ch" /*103:*/ -#line 838 "cwebdir/ctang-w2c.ch" +#line 851 "cwebdir/ctang-w2c.ch" if(comparison) remove(check_file_name); @@ -976,14 +976,14 @@ rename(check_file_name,output_file_name); } /*:103*/ -#line 831 "cwebdir/ctang-w2c.ch" +#line 844 "cwebdir/ctang-w2c.ch" }else rename(check_file_name,output_file_name); } /*:102*/ -#line 330 "cwebdir/ctang-w2c.ch" +#line 343 "cwebdir/ctang-w2c.ch" } strcpy(check_file_name,""); @@ -992,7 +992,7 @@ strcpy(check_file_name,""); /*:43*/ #line 563 "cwebdir/ctangle.w" ; -#line 283 "cwebdir/ctang-w2c.ch" +#line 296 "cwebdir/ctang-w2c.ch" if(show_happiness){ if(show_progress)new_line; fputs(_("Done."),stdout); @@ -1004,7 +1004,7 @@ fputs(_("Done."),stdout); /*:42*//*47:*/ #line 605 "cwebdir/ctangle.w" -#line 345 "cwebdir/ctang-w2c.ch" +#line 358 "cwebdir/ctang-w2c.ch" static void output_defs(void) #line 608 "cwebdir/ctangle.w" @@ -1030,7 +1030,7 @@ a= (a-0200)*0400+*cur_byte++; if(a<024000){ cur_val= a;out_char(identifier); } -#line 352 "cwebdir/ctang-w2c.ch" +#line 365 "cwebdir/ctang-w2c.ch" else if(a<050000){confusion(_("macro defs have strange char"));} #line 631 "cwebdir/ctangle.w" else{ @@ -1048,7 +1048,7 @@ pop_level(0); /*:47*//*49:*/ #line 651 "cwebdir/ctangle.w" -#line 366 "cwebdir/ctang-w2c.ch" +#line 379 "cwebdir/ctang-w2c.ch" static void out_char( eight_bits cur_char) @@ -1109,7 +1109,7 @@ break; #line 663 "cwebdir/ctangle.w" ; /*50:*/ -#line 391 "cwebdir/ctang-w2c.ch" +#line 404 "cwebdir/ctang-w2c.ch" case plus_plus:C_putc('+');C_putc('+');out_state= normal;break; case minus_minus:C_putc('-');C_putc('-');out_state= normal;break; @@ -1149,11 +1149,11 @@ default:C_putc(cur_char);out_state= normal;break; } } -#line 391 "cwebdir/ctang-w2c.ch" +#line 404 "cwebdir/ctang-w2c.ch" /*:49*//*58:*/ #line 813 "cwebdir/ctangle.w" -#line 415 "cwebdir/ctang-w2c.ch" +#line 428 "cwebdir/ctang-w2c.ch" static eight_bits skip_ahead(void) #line 816 "cwebdir/ctangle.w" @@ -1173,7 +1173,7 @@ if(c!=ignore||*(loc-1)=='>')return(c); /*:58*//*60:*/ #line 848 "cwebdir/ctangle.w" -#line 423 "cwebdir/ctang-w2c.ch" +#line 436 "cwebdir/ctang-w2c.ch" static boolean skip_comment( boolean is_long_comment) #line 851 "cwebdir/ctangle.w" @@ -1184,7 +1184,7 @@ if(loc> limit){ if(is_long_comment){ if(get_line())return(comment_continues= 1); else{ -#line 430 "cwebdir/ctang-w2c.ch" +#line 443 "cwebdir/ctang-w2c.ch" err_print(_("! Input ended in mid-comment")); #line 859 "cwebdir/ctangle.w" @@ -1199,7 +1199,7 @@ loc++;return(comment_continues= 0); } if(c=='@'){ if(ccode[(eight_bits)*loc]==new_section){ -#line 436 "cwebdir/ctang-w2c.ch" +#line 449 "cwebdir/ctang-w2c.ch" err_print(_("! Section name ended in mid-comment"));loc--; #line 872 "cwebdir/ctangle.w" @@ -1213,7 +1213,7 @@ else loc++; /*:60*//*63:*/ #line 900 "cwebdir/ctangle.w" -#line 443 "cwebdir/ctang-w2c.ch" +#line 456 "cwebdir/ctang-w2c.ch" static eight_bits get_next(void) #line 903 "cwebdir/ctangle.w" @@ -1238,7 +1238,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 585 "cwebdir/ctang-w2c.ch" +#line 598 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1285,7 +1285,7 @@ return(constant); /*:66*/ #line 924 "cwebdir/ctangle.w" -#line 450 "cwebdir/ctang-w2c.ch" +#line 463 "cwebdir/ctang-w2c.ch" else if(c=='\''||c=='"' ||((c=='L'||c=='u'||c=='U')&&(*loc=='\''||*loc=='"')) ||((c=='u'&&*loc=='8')&&(*(loc+1)=='\''||*(loc+1)=='"'))) @@ -1296,7 +1296,7 @@ else if(c=='\''||c=='"' char delim= c; id_first= section_text+1; id_loc= section_text;*++id_loc= delim; -#line 481 "cwebdir/ctang-w2c.ch" +#line 494 "cwebdir/ctang-w2c.ch" if(delim=='L'||delim=='u'||delim=='U'){ if(delim=='u'&&*loc=='8'){*++id_loc= *loc++;} delim= *loc++;*++id_loc= delim; @@ -1305,13 +1305,13 @@ delim= *loc++;*++id_loc= delim; while(1){ if(loc>=limit){ if(*(limit-1)!='\\'){ -#line 490 "cwebdir/ctang-w2c.ch" +#line 503 "cwebdir/ctang-w2c.ch" err_print(_("! String didn't end"));loc= limit;break; #line 1017 "cwebdir/ctangle.w" } if(get_line()==0){ -#line 496 "cwebdir/ctang-w2c.ch" +#line 509 "cwebdir/ctang-w2c.ch" err_print(_("! Input ended in middle of string"));loc= buffer;break; #line 1021 "cwebdir/ctangle.w" @@ -1331,7 +1331,7 @@ c= *loc++; if(++id_loc<=section_text_end)*id_loc= c; } if(id_loc>=section_text_end){ -#line 502 "cwebdir/ctang-w2c.ch" +#line 515 "cwebdir/ctang-w2c.ch" fputs(_("\n! String too long: "),stdout); #line 1039 "cwebdir/ctangle.w" @@ -1350,7 +1350,7 @@ else if(isalpha(c)||isxalpha(c)||ishigh(c)) #line 972 "cwebdir/ctangle.w" { id_first= --loc; -#line 472 "cwebdir/ctang-w2c.ch" +#line 485 "cwebdir/ctang-w2c.ch" while(isalpha((eight_bits)*++loc)||isdigit((eight_bits)*loc) ||isxalpha((eight_bits)*loc)||ishigh((eight_bits)*loc)); #line 975 "cwebdir/ctangle.w" @@ -1366,14 +1366,14 @@ else if(c=='@')/*68:*/ c= ccode[(eight_bits)*loc++]; switch(c){ case ignore:continue; -#line 508 "cwebdir/ctang-w2c.ch" +#line 521 "cwebdir/ctang-w2c.ch" case translit_code:err_print(_("! Use @l in limbo only"));continue; #line 1055 "cwebdir/ctangle.w" case control_text:while((c= skip_ahead())=='@'); if(*(loc-1)!='>') -#line 514 "cwebdir/ctang-w2c.ch" +#line 527 "cwebdir/ctang-w2c.ch" err_print(_("! Double @ should be used in control text")); #line 1060 "cwebdir/ctangle.w" @@ -1390,7 +1390,7 @@ char*k; k= section_text; while(1){ if(loc> limit&&get_line()==0){ -#line 532 "cwebdir/ctang-w2c.ch" +#line 545 "cwebdir/ctang-w2c.ch" err_print(_("! Input ended in section name")); #line 1123 "cwebdir/ctangle.w" @@ -1406,13 +1406,13 @@ if(c=='>'){ loc+= 2;break; } if(ccode[(eight_bits)c]==new_section){ -#line 544 "cwebdir/ctang-w2c.ch" +#line 557 "cwebdir/ctang-w2c.ch" err_print(_("! Section name didn't end"));break; #line 1150 "cwebdir/ctangle.w" } if(ccode[(eight_bits)c]==section_name){ -#line 550 "cwebdir/ctang-w2c.ch" +#line 563 "cwebdir/ctang-w2c.ch" err_print(_("! Nesting of section names not allowed"));break; #line 1154 "cwebdir/ctangle.w" @@ -1430,7 +1430,7 @@ c= ' ';if(*(k-1)==' ')k--; *k= c; } if(k>=section_text_end){ -#line 538 "cwebdir/ctang-w2c.ch" +#line 551 "cwebdir/ctang-w2c.ch" fputs(_("\n! Section name too long: "),stdout); #line 1136 "cwebdir/ctangle.w" @@ -1457,7 +1457,7 @@ if(an_output_file==end_output_files){ if(cur_out_file> output_files) *--cur_out_file= cur_section_name; else{ -#line 245 "cwebdir/ctang-w2c.ch" +#line 258 "cwebdir/ctang-w2c.ch" overflow(_("output files")); #line 526 "cwebdir/ctangle.w" } @@ -1478,7 +1478,7 @@ case string:/*74:*/ { id_first= loc++;*(limit+1)= '@';*(limit+2)= '>'; while(*loc!='@'||*(loc+1)!='>')loc++; -#line 556 "cwebdir/ctang-w2c.ch" +#line 569 "cwebdir/ctang-w2c.ch" if(loc>=limit)err_print(_("! Verbatim string didn't end")); #line 1168 "cwebdir/ctangle.w" @@ -1499,7 +1499,7 @@ if(*++loc=='\'')loc++; while(*loc!='\''){ if(*loc=='@'){ if(*(loc+1)!='@') -#line 520 "cwebdir/ctang-w2c.ch" +#line 533 "cwebdir/ctang-w2c.ch" err_print(_("! Double @ should be used in ASCII constant")); #line 1086 "cwebdir/ctangle.w" @@ -1507,7 +1507,7 @@ else loc++; } loc++; if(loc> limit){ -#line 526 "cwebdir/ctang-w2c.ch" +#line 539 "cwebdir/ctang-w2c.ch" err_print(_("! String didn't end"));loc= limit-1;break; #line 1092 "cwebdir/ctangle.w" @@ -1538,7 +1538,7 @@ mistake:/*64:*/ switch(c){ case'+':if(*loc=='+')compress(plus_plus);break; case'-':if(*loc=='-'){compress(minus_minus);} -#line 459 "cwebdir/ctang-w2c.ch" +#line 472 "cwebdir/ctang-w2c.ch" else{if(*loc=='>'){if(*(loc+1)=='*'){loc++;compress(minus_gt_ast);} else compress(minus_gt);}}break; #line 956 "cwebdir/ctangle.w" @@ -1555,7 +1555,7 @@ case'<':if(*loc=='='){compress(lt_eq);} else if(*loc=='<')compress(lt_lt);break; case'&':if(*loc=='&')compress(and_and);break; case'|':if(*loc=='|')compress(or_or);break; -#line 466 "cwebdir/ctang-w2c.ch" +#line 479 "cwebdir/ctang-w2c.ch" case'!':if(*loc=='=')compress(non_eq);break; #line 970 "cwebdir/ctangle.w" } @@ -1570,7 +1570,7 @@ return(c); /*:63*//*76:*/ #line 1199 "cwebdir/ctangle.w" -#line 570 "cwebdir/ctang-w2c.ch" +#line 583 "cwebdir/ctang-w2c.ch" static void scan_repl( eight_bits t) @@ -1589,7 +1589,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 585 "cwebdir/ctang-w2c.ch" +#line 598 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1613,7 +1613,7 @@ char*try_loc= loc; while(*try_loc==' '&&try_loc<limit)try_loc++; if(*try_loc=='+'&&try_loc<limit)try_loc++; while(*try_loc==' '&&try_loc<limit)try_loc++; -#line 604 "cwebdir/ctang-w2c.ch" +#line 617 "cwebdir/ctang-w2c.ch" if(*try_loc=='=')err_print(_("! Missing `@ ' before a named section")); #line 1277 "cwebdir/ctangle.w" @@ -1639,7 +1639,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 585 "cwebdir/ctang-w2c.ch" +#line 598 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1648,7 +1648,7 @@ app_repl(a_l%0400);} #line 1248 "cwebdir/ctangle.w" ;break; } -#line 592 "cwebdir/ctang-w2c.ch" +#line 605 "cwebdir/ctang-w2c.ch" case output_defs_code:if(t!=section_name)err_print(_("! Misplaced @h")); #line 1251 "cwebdir/ctangle.w" @@ -1669,7 +1669,7 @@ id_first= cur_file_name; store_two_bytes((sixteen_bits)cur_line); } id_loc= id_first+strlen(id_first); -#line 585 "cwebdir/ctang-w2c.ch" +#line 598 "cwebdir/ctang-w2c.ch" {int a_l= id_lookup(id_first,id_loc,0)-name_dir;app_repl((a_l/0400)+0200); app_repl(a_l%0400);} #line 1237 "cwebdir/ctangle.w" @@ -1687,7 +1687,7 @@ app_repl(a); while(id_first<id_loc){ if(*id_first=='@'){ if(*(id_first+1)=='@')id_first++; -#line 610 "cwebdir/ctang-w2c.ch" +#line 623 "cwebdir/ctang-w2c.ch" else err_print(_("! Double @ should be used in string")); #line 1288 "cwebdir/ctangle.w" @@ -1727,14 +1727,14 @@ case'x': if(xisdigit(*(id_first+1)))c= *(++id_first)-'0'; else if(xisxdigit(*(id_first+1))){ ++id_first; -#line 616 "cwebdir/ctang-w2c.ch" +#line 629 "cwebdir/ctang-w2c.ch" c= toupper((eight_bits)*id_first)-'A'+10; #line 1324 "cwebdir/ctangle.w" } if(xisdigit(*(id_first+1)))c= 16*c+*(++id_first)-'0'; else if(xisxdigit(*(id_first+1))){ ++id_first; -#line 622 "cwebdir/ctang-w2c.ch" +#line 635 "cwebdir/ctang-w2c.ch" c= 16*c+toupper((eight_bits)*id_first)-'A'+10; #line 1329 "cwebdir/ctangle.w" } @@ -1742,7 +1742,7 @@ break; case'\\':c= '\\';break; case'\'':c= '\'';break; case'\"':c= '\"';break; -#line 628 "cwebdir/ctang-w2c.ch" +#line 641 "cwebdir/ctang-w2c.ch" default:err_print(_("! Unrecognized escape sequence")); #line 1335 "cwebdir/ctangle.w" @@ -1762,7 +1762,7 @@ break; ; case definition:case format_code:case begin_C:if(t!=section_name)goto done; else{ -#line 598 "cwebdir/ctang-w2c.ch" +#line 611 "cwebdir/ctang-w2c.ch" err_print(_("! @d, @f and @c are ignored in C text"));continue; #line 1267 "cwebdir/ctangle.w" @@ -1778,7 +1778,7 @@ break; default:app_repl(a); } done:next_control= (eight_bits)a; -#line 578 "cwebdir/ctang-w2c.ch" +#line 591 "cwebdir/ctang-w2c.ch" if(text_ptr> text_info_end)overflow(_("text")); #line 1218 "cwebdir/ctangle.w" cur_text= text_ptr;(++text_ptr)->tok_start= tok_ptr; @@ -1787,7 +1787,7 @@ cur_text= text_ptr;(++text_ptr)->tok_start= tok_ptr; /*:76*//*83:*/ #line 1360 "cwebdir/ctangle.w" -#line 635 "cwebdir/ctang-w2c.ch" +#line 648 "cwebdir/ctang-w2c.ch" static void scan_section(void) #line 1363 "cwebdir/ctangle.w" @@ -1819,7 +1819,7 @@ if(next_control==definition){ { while((next_control= get_next())=='\n'); if(next_control!=identifier){ -#line 642 "cwebdir/ctang-w2c.ch" +#line 655 "cwebdir/ctang-w2c.ch" err_print(_("! Definition flushed, must start with identifier")); #line 1410 "cwebdir/ctangle.w" @@ -1879,7 +1879,7 @@ scan_repl(section_name); if(p==name_dir||p==0){ (last_unnamed)->text_link= cur_text-text_info;last_unnamed= cur_text; } -#line 648 "cwebdir/ctang-w2c.ch" +#line 661 "cwebdir/ctang-w2c.ch" else if(p->equiv==(void*)text_info)p->equiv= (void*)cur_text; #line 1450 "cwebdir/ctangle.w" @@ -1904,7 +1904,7 @@ cur_text->text_link= section_flag; /*:83*//*91:*/ #line 1463 "cwebdir/ctangle.w" -#line 661 "cwebdir/ctang-w2c.ch" +#line 674 "cwebdir/ctang-w2c.ch" static void phase_one(void){ #line 1466 "cwebdir/ctangle.w" @@ -1920,7 +1920,7 @@ phase= 2; /*:91*//*93:*/ #line 1481 "cwebdir/ctangle.w" -#line 675 "cwebdir/ctang-w2c.ch" +#line 688 "cwebdir/ctang-w2c.ch" static void skip_limbo(void) #line 1484 "cwebdir/ctangle.w" @@ -1941,7 +1941,7 @@ while(xisspace(*loc)&&loc<limit)loc++; loc+= 3; if(loc> limit||!xisxdigit(*(loc-3))||!xisxdigit(*(loc-2)) ||(*(loc-3)>='0'&&*(loc-3)<='7')||!xisspace(*(loc-1))) -#line 694 "cwebdir/ctang-w2c.ch" +#line 707 "cwebdir/ctang-w2c.ch" err_print(_("! Improper hex number following @l")); #line 1516 "cwebdir/ctangle.w" @@ -1953,12 +1953,12 @@ while(xisspace(*loc)&&loc<limit)loc++; beg= loc; while(loc<limit&&(xisalpha(*loc)||xisdigit(*loc)||*loc=='_'))loc++; if(loc-beg>=translit_length) -#line 700 "cwebdir/ctang-w2c.ch" +#line 713 "cwebdir/ctang-w2c.ch" err_print(_("! Replacement string in @l too long")); #line 1526 "cwebdir/ctangle.w" else{ -#line 706 "cwebdir/ctang-w2c.ch" +#line 719 "cwebdir/ctang-w2c.ch" strncpy(translit[i-0200],beg,(size_t)(loc-beg)); #line 1529 "cwebdir/ctangle.w" translit[i-0200][loc-beg]= '\0'; @@ -1972,13 +1972,13 @@ case format_code:case'@':break; case control_text:if(c=='q'||c=='Q'){ while((c= skip_ahead())=='@'); if(*(loc-1)!='>') -#line 682 "cwebdir/ctang-w2c.ch" +#line 695 "cwebdir/ctang-w2c.ch" err_print(_("! Double @ should be used in control text")); #line 1500 "cwebdir/ctangle.w" break; } -#line 688 "cwebdir/ctang-w2c.ch" +#line 701 "cwebdir/ctang-w2c.ch" default:err_print(_("! Double @ should be used in limbo")); #line 1504 "cwebdir/ctangle.w" @@ -1990,10 +1990,10 @@ default:err_print(_("! Double @ should be used in limbo")); /*:93*//*95:*/ #line 1536 "cwebdir/ctangle.w" -#line 713 "cwebdir/ctang-w2c.ch" +#line 726 "cwebdir/ctang-w2c.ch" void print_stats(void){ -#line 727 "cwebdir/ctang-w2c.ch" +#line 740 "cwebdir/ctang-w2c.ch" puts(_("\nMemory usage statistics:")); printf(_("%ld names (out of %ld)\n"), (long)(name_ptr-name_dir),(long)max_names); @@ -2006,5 +2006,5 @@ printf(_("%ld tokens (out of %ld)\n"), (long)(tok_ptr-tok_mem),(long)max_toks); } -#line 740 "cwebdir/ctang-w2c.ch" +#line 753 "cwebdir/ctang-w2c.ch" /*:95*/ diff --git a/Build/source/texk/web2c/cwebboot.cin b/Build/source/texk/web2c/cwebboot.cin index 6b9c2addeb7..f7b330d2454 100644 --- a/Build/source/texk/web2c/cwebboot.cin +++ b/Build/source/texk/web2c/cwebboot.cin @@ -2,13 +2,13 @@ #line 58 "cwebdir/common.w" /*85:*/ -#line 1223 "cwebdir/comm-w2c.ch" +#line 1236 "cwebdir/comm-w2c.ch" #include <stdbool.h> #include <stddef.h> /*:85*//*88:*/ -#line 1264 "cwebdir/comm-w2c.ch" +#line 1277 "cwebdir/comm-w2c.ch" #ifndef HAVE_GETTEXT #define HAVE_GETTEXT 0 @@ -25,7 +25,7 @@ #endif /*:88*//*90:*/ -#line 1355 "cwebdir/comm-w2c.ch" +#line 1368 "cwebdir/comm-w2c.ch" typedef bool boolean; #define HAVE_BOOLEAN @@ -162,10 +162,10 @@ err_print(_("! Include file name too long") ) ;goto restart;} \ /*2:*/ #line 73 "cwebdir/common.w" -#line 51 "cwebdir/comm-w2c.ch" +#line 64 "cwebdir/comm-w2c.ch" typedef uint8_t eight_bits; typedef uint16_t sixteen_bits; -#line 58 "cwebdir/comm-w2c.ch" +#line 71 "cwebdir/comm-w2c.ch" typedef enum{ ctangle,cweave,ctwill }cweb; @@ -173,7 +173,7 @@ cweb program; #line 76 "cwebdir/common.w" /*:2*//*6:*/ -#line 104 "cwebdir/comm-w2c.ch" +#line 117 "cwebdir/comm-w2c.ch" char section_text[longest_name+1]; char*section_text_end= section_text+longest_name; @@ -189,7 +189,7 @@ char*buffer_end= buffer+buf_size-2; char*limit= buffer; char*loc= buffer; -#line 129 "cwebdir/comm-w2c.ch" +#line 142 "cwebdir/comm-w2c.ch" /*:7*//*10:*/ #line 214 "cwebdir/common.w" @@ -237,7 +237,7 @@ char Ilk; }dummy; /*:40*//*55:*/ -#line 747 "cwebdir/comm-w2c.ch" +#line 760 "cwebdir/comm-w2c.ch" void*equiv_or_xref; #line 1064 "cwebdir/common.w" @@ -279,10 +279,10 @@ char**argv; char C_file_name[max_file_name_length]; char tex_file_name[max_file_name_length]; char idx_file_name[max_file_name_length]; -#line 908 "cwebdir/comm-w2c.ch" +#line 921 "cwebdir/comm-w2c.ch" char scn_file_name[max_file_name_length]; char check_file_name[max_file_name_length]; -#line 915 "cwebdir/comm-w2c.ch" +#line 928 "cwebdir/comm-w2c.ch" boolean flags[128]; const char*use_language= ""; #line 1228 "cwebdir/common.w" @@ -293,15 +293,15 @@ const char*use_language= ""; FILE*C_file; FILE*tex_file; FILE*idx_file; -#line 1105 "cwebdir/comm-w2c.ch" +#line 1118 "cwebdir/comm-w2c.ch" FILE*scn_file; FILE*check_file; -#line 1112 "cwebdir/comm-w2c.ch" +#line 1125 "cwebdir/comm-w2c.ch" FILE*active_file; char*found_filename; #line 1376 "cwebdir/common.w" -#line 1129 "cwebdir/comm-w2c.ch" +#line 1142 "cwebdir/comm-w2c.ch" /*:77*/ #line 61 "cwebdir/common.w" @@ -316,7 +316,7 @@ char change_buffer[buf_size]; char*change_limit; /*:11*//*86:*/ -#line 1238 "cwebdir/comm-w2c.ch" +#line 1251 "cwebdir/comm-w2c.ch" char cb_banner[max_banner]; string texmf_locale; @@ -331,51 +331,51 @@ char separators[]= SEPARATORS; /*33:*/ #line 650 "cwebdir/common.w" -#line 476 "cwebdir/comm-w2c.ch" +#line 489 "cwebdir/comm-w2c.ch" extern boolean names_match(name_pointer,const char*,size_t,eight_bits); #line 652 "cwebdir/common.w" /*:33*//*38:*/ #line 703 "cwebdir/common.w" -#line 506 "cwebdir/comm-w2c.ch" +#line 519 "cwebdir/comm-w2c.ch" extern void init_p(name_pointer,eight_bits); #line 705 "cwebdir/common.w" /*:38*//*46:*/ #line 852 "cwebdir/common.w" -#line 586 "cwebdir/comm-w2c.ch" +#line 599 "cwebdir/comm-w2c.ch" extern void init_node(name_pointer); #line 854 "cwebdir/common.w" /*:46*//*53:*/ #line 1017 "cwebdir/common.w" -#line 712 "cwebdir/comm-w2c.ch" +#line 725 "cwebdir/comm-w2c.ch" static int section_name_cmp(char**,int,name_pointer); #line 1019 "cwebdir/common.w" /*:53*//*57:*/ #line 1092 "cwebdir/common.w" -#line 754 "cwebdir/comm-w2c.ch" +#line 767 "cwebdir/comm-w2c.ch" extern void err_print(const char*); #line 1094 "cwebdir/common.w" /*:57*//*60:*/ #line 1140 "cwebdir/common.w" -#line 781 "cwebdir/comm-w2c.ch" +#line 794 "cwebdir/comm-w2c.ch" extern int wrap_up(void); extern void print_stats(void); #line 1143 "cwebdir/common.w" -#line 792 "cwebdir/comm-w2c.ch" +#line 805 "cwebdir/comm-w2c.ch" /*:60*//*63:*/ #line 1173 "cwebdir/common.w" -#line 855 "cwebdir/comm-w2c.ch" +#line 868 "cwebdir/comm-w2c.ch" extern void fatal(const char*,const char*); extern void overflow(const char*); #line 1175 "cwebdir/common.w" @@ -383,12 +383,12 @@ extern void overflow(const char*); /*:63*//*69:*/ #line 1251 "cwebdir/common.w" -#line 945 "cwebdir/comm-w2c.ch" +#line 958 "cwebdir/comm-w2c.ch" static void scan_args(void); #line 1253 "cwebdir/common.w" /*:69*//*83:*/ -#line 1198 "cwebdir/comm-w2c.ch" +#line 1211 "cwebdir/comm-w2c.ch" boolean get_line(void); name_pointer id_lookup(const char*,const char*,char); @@ -401,7 +401,7 @@ void reset_input(void); void sprint_section_name(char*,name_pointer); /*:83*//*84:*/ -#line 1211 "cwebdir/comm-w2c.ch" +#line 1224 "cwebdir/comm-w2c.ch" static boolean input_ln(FILE*); static int web_strcmp(char*,int,char*,int); @@ -411,7 +411,7 @@ static void check_change(void); static void prime_the_change_buffer(void); /*:84*//*98:*/ -#line 1457 "cwebdir/comm-w2c.ch" +#line 1470 "cwebdir/comm-w2c.ch" static void cb_usage(const_string str); static void cb_usagehelp(const_string*message,const_string bug_email); @@ -424,12 +424,12 @@ void cb_show_banner(void); /*:1*//*4:*/ #line 89 "cwebdir/common.w" -#line 68 "cwebdir/comm-w2c.ch" +#line 81 "cwebdir/comm-w2c.ch" void common_init(void) #line 92 "cwebdir/common.w" { -#line 77 "cwebdir/comm-w2c.ch" +#line 90 "cwebdir/comm-w2c.ch" /*30:*/ #line 621 "cwebdir/common.w" @@ -448,18 +448,18 @@ for(h= hash;h<=hash_end;*h++= NULL); root= NULL; /*:41*/ -#line 77 "cwebdir/comm-w2c.ch" +#line 90 "cwebdir/comm-w2c.ch" /*91:*/ -#line 1371 "cwebdir/comm-w2c.ch" +#line 1384 "cwebdir/comm-w2c.ch" kpse_set_program_name(argv[0],"cweb"); /*:91*/ -#line 78 "cwebdir/comm-w2c.ch" +#line 91 "cwebdir/comm-w2c.ch" /*89:*/ -#line 1320 "cwebdir/comm-w2c.ch" +#line 1333 "cwebdir/comm-w2c.ch" setlocale(LC_MESSAGES,setlocale(LC_CTYPE,"")); texmf_locale= kpse_var_expand("${TEXMFLOCALEDIR}"); @@ -475,20 +475,20 @@ textdomain("cweb"); /*:89*/ -#line 79 "cwebdir/comm-w2c.ch" +#line 92 "cwebdir/comm-w2c.ch" /*68:*/ #line 1233 "cwebdir/common.w" -#line 922 "cwebdir/comm-w2c.ch" +#line 935 "cwebdir/comm-w2c.ch" temporary_output= 1; #line 1235 "cwebdir/common.w" /*:68*/ -#line 80 "cwebdir/comm-w2c.ch" +#line 93 "cwebdir/comm-w2c.ch" /*78:*/ -#line 1129 "cwebdir/comm-w2c.ch" +#line 1142 "cwebdir/comm-w2c.ch" scan_args(); if(program==ctangle){ @@ -522,7 +522,7 @@ fatal(_("! Cannot open output file "),check_file_name); #line 1388 "cwebdir/common.w" /*:78*/ -#line 81 "cwebdir/comm-w2c.ch" +#line 94 "cwebdir/comm-w2c.ch" #line 96 "cwebdir/common.w" } @@ -530,7 +530,7 @@ fatal(_("! Cannot open output file "),check_file_name); /*:4*//*9:*/ #line 172 "cwebdir/common.w" -#line 136 "cwebdir/comm-w2c.ch" +#line 149 "cwebdir/comm-w2c.ch" static boolean input_ln( FILE*fp) #line 175 "cwebdir/common.w" @@ -540,12 +540,12 @@ register char*k; if(feof(fp))return(0); limit= k= buffer; while(k<=buffer_end&&(c= getc(fp))!=EOF&&c!='\n') -#line 143 "cwebdir/comm-w2c.ch" +#line 156 "cwebdir/comm-w2c.ch" if((*(k++)= c)!=' '&&c!='\r')limit= k; #line 182 "cwebdir/common.w" if(k> buffer_end) if((c= getc(fp))!=EOF&&c!='\n'){ -#line 149 "cwebdir/comm-w2c.ch" +#line 162 "cwebdir/comm-w2c.ch" ungetc(c,fp);loc= buffer;err_print(_("! Input line too long")); #line 185 "cwebdir/common.w" @@ -558,7 +558,7 @@ return(1); /*:9*//*12:*/ #line 251 "cwebdir/common.w" -#line 175 "cwebdir/comm-w2c.ch" +#line 188 "cwebdir/comm-w2c.ch" static void prime_the_change_buffer(void) #line 254 "cwebdir/common.w" @@ -572,13 +572,13 @@ change_line++; if(!input_ln(change_file))return; if(limit<buffer+2)continue; if(buffer[0]!='@')continue; -#line 182 "cwebdir/comm-w2c.ch" +#line 195 "cwebdir/comm-w2c.ch" if(xisupper(buffer[1]))buffer[1]= tolower((eight_bits)buffer[1]); #line 272 "cwebdir/common.w" if(buffer[1]=='x')break; if(buffer[1]=='y'||buffer[1]=='z'||buffer[1]=='i'){ loc= buffer+2; -#line 188 "cwebdir/comm-w2c.ch" +#line 201 "cwebdir/comm-w2c.ch" err_print(_("! Missing @x in change file")); #line 276 "cwebdir/common.w" @@ -594,7 +594,7 @@ err_print(_("! Missing @x in change file")); do{ change_line++; if(!input_ln(change_file)){ -#line 194 "cwebdir/comm-w2c.ch" +#line 207 "cwebdir/comm-w2c.ch" err_print(_("! Change file ended after @x")); #line 287 "cwebdir/common.w" @@ -609,7 +609,7 @@ return; #line 292 "cwebdir/common.w" { -#line 201 "cwebdir/comm-w2c.ch" +#line 214 "cwebdir/comm-w2c.ch" change_limit= change_buffer+(ptrdiff_t)(limit-buffer); strncpy(change_buffer,buffer,(size_t)(limit-buffer+1)); #line 296 "cwebdir/common.w" @@ -623,7 +623,7 @@ strncpy(change_buffer,buffer,(size_t)(limit-buffer+1)); /*:12*//*16:*/ #line 320 "cwebdir/common.w" -#line 209 "cwebdir/comm-w2c.ch" +#line 222 "cwebdir/comm-w2c.ch" static void check_change(void) #line 323 "cwebdir/common.w" @@ -638,7 +638,7 @@ if(!change_pending)changed_section[section_count]= 1; while(1){ changing= 1;print_where= 1;change_line++; if(!input_ln(change_file)){ -#line 216 "cwebdir/comm-w2c.ch" +#line 229 "cwebdir/comm-w2c.ch" err_print(_("! Change file ended before @y")); #line 335 "cwebdir/common.w" @@ -646,14 +646,14 @@ change_limit= change_buffer;changing= 0; return; } if(limit> buffer+1&&buffer[0]=='@'){ -#line 222 "cwebdir/comm-w2c.ch" +#line 235 "cwebdir/comm-w2c.ch" char xyz_code= xisupper(buffer[1])?tolower((eight_bits)buffer[1]):buffer[1]; #line 341 "cwebdir/common.w" /*17:*/ #line 358 "cwebdir/common.w" if(xyz_code=='x'||xyz_code=='z'){ -#line 234 "cwebdir/comm-w2c.ch" +#line 247 "cwebdir/comm-w2c.ch" loc= buffer+2;err_print(_("! Where is the matching @y?")); #line 361 "cwebdir/common.w" @@ -662,7 +662,7 @@ else if(xyz_code=='y'){ if(n> 0){ loc= buffer+2; printf("\n! Hmm... %d ",n); -#line 240 "cwebdir/comm-w2c.ch" +#line 253 "cwebdir/comm-w2c.ch" err_print(_("of the preceding lines failed to match")); #line 368 "cwebdir/common.w" @@ -679,7 +679,7 @@ return; #line 292 "cwebdir/common.w" { -#line 201 "cwebdir/comm-w2c.ch" +#line 214 "cwebdir/comm-w2c.ch" change_limit= change_buffer+(ptrdiff_t)(limit-buffer); strncpy(change_buffer,buffer,(size_t)(limit-buffer+1)); #line 296 "cwebdir/common.w" @@ -691,7 +691,7 @@ strncpy(change_buffer,buffer,(size_t)(limit-buffer+1)); changing= 0;cur_line++; while(!input_ln(cur_file)){ if(include_depth==0){ -#line 228 "cwebdir/comm-w2c.ch" +#line 241 "cwebdir/comm-w2c.ch" err_print(_("! CWEB file ended during a change")); #line 349 "cwebdir/common.w" @@ -706,7 +706,7 @@ if(lines_dont_match)n++; /*:16*//*18:*/ #line 378 "cwebdir/common.w" -#line 247 "cwebdir/comm-w2c.ch" +#line 260 "cwebdir/comm-w2c.ch" void reset_input(void) #line 381 "cwebdir/common.w" @@ -715,7 +715,7 @@ limit= buffer;loc= buffer+1;buffer[0]= ' '; /*19:*/ #line 393 "cwebdir/common.w" -#line 258 "cwebdir/comm-w2c.ch" +#line 271 "cwebdir/comm-w2c.ch" if((found_filename= kpse_find_cweb(web_file_name))==NULL|| (web_file= fopen(found_filename,"r"))==NULL){ fatal(_("! Cannot open input file "),web_file_name); @@ -730,7 +730,7 @@ free(found_filename); web_file_open= 1; -#line 274 "cwebdir/comm-w2c.ch" +#line 287 "cwebdir/comm-w2c.ch" if((found_filename= kpse_find_cweb(change_file_name))==NULL|| (change_file= fopen(found_filename,"r"))==NULL){ fatal(_("! Cannot open change file "),change_file_name); @@ -755,7 +755,7 @@ limit= buffer;loc= buffer+1;buffer[0]= ' ';input_has_ended= 0; /*:18*//*21:*/ #line 426 "cwebdir/common.w" -#line 302 "cwebdir/comm-w2c.ch" +#line 315 "cwebdir/comm-w2c.ch" boolean get_line(void) #line 428 "cwebdir/common.w" { @@ -766,7 +766,7 @@ if(changing&&include_depth==change_depth) { change_line++; if(!input_ln(change_file)){ -#line 414 "cwebdir/comm-w2c.ch" +#line 427 "cwebdir/comm-w2c.ch" err_print(_("! Change file ended without @z")); #line 541 "cwebdir/common.w" @@ -781,12 +781,12 @@ changed_section[section_count]= 1;change_pending= 0; } *limit= ' '; if(buffer[0]=='@'){ -#line 420 "cwebdir/comm-w2c.ch" +#line 433 "cwebdir/comm-w2c.ch" if(xisupper(buffer[1]))buffer[1]= tolower((eight_bits)buffer[1]); #line 554 "cwebdir/common.w" if(buffer[1]=='x'||buffer[1]=='y'){ loc= buffer+2; -#line 426 "cwebdir/comm-w2c.ch" +#line 439 "cwebdir/comm-w2c.ch" err_print(_("! Where is the matching @z?")); #line 557 "cwebdir/common.w" @@ -832,14 +832,14 @@ if(buffer[0]=='@'&&(buffer[1]=='i'||buffer[1]=='I')){ loc= buffer+2;*limit= '"'; while(*loc==' '||*loc=='\t')loc++; if(loc>=limit){ -#line 308 "cwebdir/comm-w2c.ch" +#line 321 "cwebdir/comm-w2c.ch" err_print(_("! Include file name not given")); #line 443 "cwebdir/common.w" goto restart; } if(include_depth>=max_include_depth-1){ -#line 314 "cwebdir/comm-w2c.ch" +#line 327 "cwebdir/comm-w2c.ch" err_print(_("! Too many nested includes")); #line 448 "cwebdir/common.w" @@ -847,9 +847,9 @@ goto restart; } include_depth++; /*23:*/ -#line 354 "cwebdir/comm-w2c.ch" +#line 367 "cwebdir/comm-w2c.ch" { -#line 363 "cwebdir/comm-w2c.ch" +#line 376 "cwebdir/comm-w2c.ch" char*cur_file_name_end= cur_file_name+max_file_name_length-1; char*k= cur_file_name; #line 479 "cwebdir/common.w" @@ -863,7 +863,7 @@ while(*loc!=' '&&*loc!='\t'&&*loc!='"'&&k<=cur_file_name_end)*k++= *loc++; if(k> cur_file_name_end)too_long(); *k= '\0'; -#line 370 "cwebdir/comm-w2c.ch" +#line 383 "cwebdir/comm-w2c.ch" if((found_filename= kpse_find_cweb(cur_file_name))!=NULL&& (cur_file= fopen(found_filename,"r"))!=NULL){ @@ -877,7 +877,7 @@ free(found_filename); cur_line= 0;print_where= 1; goto restart; } -#line 408 "cwebdir/comm-w2c.ch" +#line 421 "cwebdir/comm-w2c.ch" include_depth--;err_print(_("! Cannot open include file"));goto restart; #line 518 "cwebdir/common.w" } @@ -889,11 +889,11 @@ include_depth--;err_print(_("! Cannot open include file"));goto restart; return 1; } -#line 329 "cwebdir/comm-w2c.ch" +#line 342 "cwebdir/comm-w2c.ch" /*:21*//*26:*/ #line 569 "cwebdir/common.w" -#line 436 "cwebdir/comm-w2c.ch" +#line 449 "cwebdir/comm-w2c.ch" void check_complete(void){ if(change_limit!=change_buffer){ @@ -901,7 +901,7 @@ strncpy(buffer,change_buffer,(size_t)(change_limit-change_buffer+1)); limit= buffer+(ptrdiff_t)(change_limit-change_buffer); #line 575 "cwebdir/common.w" changing= 1;change_depth= include_depth;loc= buffer; -#line 446 "cwebdir/comm-w2c.ch" +#line 459 "cwebdir/comm-w2c.ch" err_print(_("! Change file entry did not match")); #line 577 "cwebdir/common.w" @@ -911,7 +911,7 @@ err_print(_("! Change file entry did not match")); /*:26*//*35:*/ #line 660 "cwebdir/common.w" -#line 488 "cwebdir/comm-w2c.ch" +#line 501 "cwebdir/comm-w2c.ch" name_pointer id_lookup( const char*first, @@ -924,7 +924,7 @@ int h; int l; name_pointer p; if(last==NULL)for(last= first;*last!='\0';last++); -#line 500 "cwebdir/comm-w2c.ch" +#line 513 "cwebdir/comm-w2c.ch" l= (int)(last-first); #line 673 "cwebdir/common.w" /*36:*/ @@ -953,13 +953,13 @@ p->link= hash[h];hash[h]= p; if(p==name_ptr)/*39:*/ #line 706 "cwebdir/common.w" { -#line 513 "cwebdir/comm-w2c.ch" +#line 526 "cwebdir/comm-w2c.ch" if(byte_ptr+l> byte_mem_end)overflow(_("byte memory")); if(name_ptr>=name_dir_end)overflow(_("name")); #line 709 "cwebdir/common.w" strncpy(byte_ptr,first,l); (++name_ptr)->byte_start= byte_ptr+= l; -#line 520 "cwebdir/comm-w2c.ch" +#line 533 "cwebdir/comm-w2c.ch" init_p(p,t); #line 712 "cwebdir/common.w" } @@ -973,7 +973,7 @@ return(p); /*:35*//*42:*/ #line 764 "cwebdir/common.w" -#line 528 "cwebdir/comm-w2c.ch" +#line 541 "cwebdir/comm-w2c.ch" void print_section_name( name_pointer p) @@ -984,7 +984,7 @@ name_pointer q= p+1; while(p!=name_dir){ ss= (p+1)->byte_start-1; if(*ss==' '&&ss>=s){ -#line 538 "cwebdir/comm-w2c.ch" +#line 551 "cwebdir/comm-w2c.ch" term_write(s,(size_t)(ss-s));p= q->link;q= p; }else{ term_write(s,(size_t)(ss+1-s));p= name_dir;q= NULL; @@ -998,7 +998,7 @@ if(q)term_write("...",3); /*:42*//*43:*/ #line 783 "cwebdir/common.w" -#line 549 "cwebdir/comm-w2c.ch" +#line 562 "cwebdir/comm-w2c.ch" void sprint_section_name( char*dest, @@ -1014,7 +1014,7 @@ p= q->link;q= p; }else{ ss++;p= name_dir; } -#line 558 "cwebdir/comm-w2c.ch" +#line 571 "cwebdir/comm-w2c.ch" strncpy(dest,s,(size_t)(ss-s)),dest+= ss-s; #line 799 "cwebdir/common.w" s= p->byte_start; @@ -1025,7 +1025,7 @@ s= p->byte_start; /*:43*//*44:*/ #line 804 "cwebdir/common.w" -#line 566 "cwebdir/comm-w2c.ch" +#line 579 "cwebdir/comm-w2c.ch" void print_prefix_name( name_pointer p) @@ -1040,7 +1040,7 @@ if(s+l<(p+1)->byte_start)term_write("...",3); /*:44*//*45:*/ #line 825 "cwebdir/common.w" -#line 576 "cwebdir/comm-w2c.ch" +#line 589 "cwebdir/comm-w2c.ch" static int web_strcmp( char*j, int j_len, @@ -1060,7 +1060,7 @@ else return greater; /*:45*//*47:*/ #line 855 "cwebdir/common.w" -#line 598 "cwebdir/comm-w2c.ch" +#line 611 "cwebdir/comm-w2c.ch" static name_pointer add_section_name( name_pointer par, @@ -1072,9 +1072,9 @@ int ispref) { name_pointer p= name_ptr; char*s= first_chunk(p); -#line 610 "cwebdir/comm-w2c.ch" +#line 623 "cwebdir/comm-w2c.ch" int name_len= (int)(last-first)+ispref; -#line 617 "cwebdir/comm-w2c.ch" +#line 630 "cwebdir/comm-w2c.ch" if(s+name_len> byte_mem_end)overflow(_("byte memory")); if(name_ptr+1>=name_dir_end)overflow(_("name")); #line 869 "cwebdir/common.w" @@ -1096,7 +1096,7 @@ return par==NULL?(root= p):c==less?(par->llink= p):(par->rlink= p); /*:47*//*48:*/ #line 884 "cwebdir/common.w" -#line 629 "cwebdir/comm-w2c.ch" +#line 642 "cwebdir/comm-w2c.ch" static void extend_section_name( name_pointer p, @@ -1107,16 +1107,16 @@ int ispref) { char*s; name_pointer q= p+1; -#line 640 "cwebdir/comm-w2c.ch" +#line 653 "cwebdir/comm-w2c.ch" int name_len= (int)(last-first)+ispref; -#line 646 "cwebdir/comm-w2c.ch" +#line 659 "cwebdir/comm-w2c.ch" if(name_ptr>=name_dir_end)overflow(_("name")); #line 896 "cwebdir/common.w" while(q->link!=name_dir)q= q->link; q->link= name_ptr; s= name_ptr->byte_start; name_ptr->link= name_dir; -#line 652 "cwebdir/comm-w2c.ch" +#line 665 "cwebdir/comm-w2c.ch" if(s+name_len> byte_mem_end)overflow(_("byte memory")); #line 901 "cwebdir/common.w" (++name_ptr)->byte_start= byte_ptr= s+name_len; @@ -1127,7 +1127,7 @@ if(ispref)*(byte_ptr-1)= ' '; /*:48*//*49:*/ #line 912 "cwebdir/common.w" -#line 661 "cwebdir/comm-w2c.ch" +#line 674 "cwebdir/comm-w2c.ch" name_pointer section_lookup( char*first,char*last, @@ -1140,7 +1140,7 @@ name_pointer q= NULL; name_pointer r= NULL; name_pointer par= NULL; -#line 670 "cwebdir/comm-w2c.ch" +#line 683 "cwebdir/comm-w2c.ch" int name_len= (int)(last-first)+1; #line 925 "cwebdir/common.w" /*50:*/ @@ -1154,12 +1154,12 @@ par= p; p= (c==less?p->llink:p->rlink); }else{ if(r!=NULL){ -#line 676 "cwebdir/comm-w2c.ch" +#line 689 "cwebdir/comm-w2c.ch" fputs(_("\n! Ambiguous prefix: matches <"),stdout); #line 946 "cwebdir/common.w" print_prefix_name(p); -#line 682 "cwebdir/comm-w2c.ch" +#line 695 "cwebdir/comm-w2c.ch" fputs(_(">\n and <"),stdout); #line 949 "cwebdir/common.w" print_prefix_name(r); @@ -1193,7 +1193,7 @@ switch(section_name_cmp(&first,name_len,r)){ case prefix: if(!ispref){ -#line 688 "cwebdir/comm-w2c.ch" +#line 701 "cwebdir/comm-w2c.ch" fputs(_("\n! New name is a prefix of <"),stdout); #line 975 "cwebdir/common.w" @@ -1207,7 +1207,7 @@ case extension:if(!ispref||first<=last) extend_section_name(r,first,last+1,ispref); return r; case bad_extension: -#line 694 "cwebdir/comm-w2c.ch" +#line 707 "cwebdir/comm-w2c.ch" fputs(_("\n! New name extends <"),stdout); #line 987 "cwebdir/common.w" @@ -1215,12 +1215,12 @@ print_section_name(r); err_print(">"); return r; default: -#line 700 "cwebdir/comm-w2c.ch" +#line 713 "cwebdir/comm-w2c.ch" fputs(_("\n! Section name incompatible with <"),stdout); #line 993 "cwebdir/common.w" print_prefix_name(r); -#line 706 "cwebdir/comm-w2c.ch" +#line 719 "cwebdir/comm-w2c.ch" fputs(_(">,\n which abbreviates <"),stdout); #line 996 "cwebdir/common.w" print_section_name(r); @@ -1236,7 +1236,7 @@ return r; /*:49*//*54:*/ #line 1020 "cwebdir/common.w" -#line 721 "cwebdir/comm-w2c.ch" +#line 734 "cwebdir/comm-w2c.ch" static int section_name_cmp( char**pfirst, int len, @@ -1255,7 +1255,7 @@ else ispref= 0,ss++,q= name_dir; switch(c= web_strcmp(first,len,s,ss-s)){ case equal:if(q==name_dir) if(ispref){ -#line 730 "cwebdir/comm-w2c.ch" +#line 743 "cwebdir/comm-w2c.ch" *pfirst= first+(ptrdiff_t)(ss-s); #line 1039 "cwebdir/common.w" return extension; @@ -1264,7 +1264,7 @@ else return(q->byte_start==(q+1)->byte_start)?equal:prefix; case extension: if(!ispref)return bad_extension; first+= ss-s; -#line 736 "cwebdir/comm-w2c.ch" +#line 749 "cwebdir/comm-w2c.ch" if(q!=name_dir){len-= (int)(ss-s);s= q->byte_start;r= q;continue;} #line 1046 "cwebdir/common.w" *pfirst= first;return extension; @@ -1276,7 +1276,7 @@ default:return c; /*:54*//*58:*/ #line 1095 "cwebdir/common.w" -#line 762 "cwebdir/comm-w2c.ch" +#line 775 "cwebdir/comm-w2c.ch" void err_print( const char*s) @@ -1288,7 +1288,7 @@ if(web_file_open)/*59:*/ #line 1115 "cwebdir/common.w" {if(changing&&include_depth==change_depth) -#line 772 "cwebdir/comm-w2c.ch" +#line 785 "cwebdir/comm-w2c.ch" printf(_(". (l. %d of change file)\n"),change_line); else if(include_depth==0)printf(_(". (l. %d)\n"),cur_line); else printf(_(". (l. %d of include file %s)\n"),cur_line,cur_file_name); @@ -1315,18 +1315,18 @@ update_terminal;mark_error; /*:58*//*61:*/ #line 1150 "cwebdir/common.w" -#line 811 "cwebdir/comm-w2c.ch" +#line 824 "cwebdir/comm-w2c.ch" int wrap_up(void){ if(show_progress||show_happiness||(history> spotless))new_line; #line 1153 "cwebdir/common.w" if(show_stats) print_stats(); -#line 818 "cwebdir/comm-w2c.ch" +#line 831 "cwebdir/comm-w2c.ch" /*62:*/ #line 1160 "cwebdir/common.w" switch(history){ -#line 842 "cwebdir/comm-w2c.ch" +#line 855 "cwebdir/comm-w2c.ch" case spotless: if(show_happiness)puts(_("(No errors were found.)"));break; case harmless_message: @@ -1339,10 +1339,10 @@ puts(_("(That was a fatal error, my friend.)")); } /*:62*/ -#line 818 "cwebdir/comm-w2c.ch" +#line 831 "cwebdir/comm-w2c.ch" /*87:*/ -#line 1249 "cwebdir/comm-w2c.ch" +#line 1262 "cwebdir/comm-w2c.ch" if(C_file)fclose(C_file); if(tex_file)fclose(tex_file); @@ -1351,9 +1351,9 @@ if(strlen(check_file_name)) remove(check_file_name); /*:87*/ -#line 819 "cwebdir/comm-w2c.ch" +#line 832 "cwebdir/comm-w2c.ch" -#line 826 "cwebdir/comm-w2c.ch" +#line 839 "cwebdir/comm-w2c.ch" switch(history){ case harmless_message:return RETURN_WARN; case error_message:return RETURN_ERROR; @@ -1364,13 +1364,13 @@ default:return RETURN_OK; } /*:61*//*64:*/ -#line 864 "cwebdir/comm-w2c.ch" +#line 877 "cwebdir/comm-w2c.ch" void fatal( const char*s,const char*t) #line 1182 "cwebdir/common.w" { -#line 872 "cwebdir/comm-w2c.ch" +#line 885 "cwebdir/comm-w2c.ch" if(*s)err_print(s); #line 1184 "cwebdir/common.w" err_print(t); @@ -1378,13 +1378,13 @@ history= fatal_message;exit(wrap_up()); } /*:64*//*65:*/ -#line 880 "cwebdir/comm-w2c.ch" +#line 893 "cwebdir/comm-w2c.ch" void overflow( const char*t) #line 1193 "cwebdir/common.w" { -#line 888 "cwebdir/comm-w2c.ch" +#line 901 "cwebdir/comm-w2c.ch" printf(_("\n! Sorry, %s capacity exceeded"),t);fatal("",""); #line 1195 "cwebdir/common.w" } @@ -1393,7 +1393,7 @@ printf(_("\n! Sorry, %s capacity exceeded"),t);fatal("",""); /*:65*//*70:*/ #line 1254 "cwebdir/common.w" -#line 952 "cwebdir/comm-w2c.ch" +#line 965 "cwebdir/comm-w2c.ch" static void scan_args(void) #line 1257 "cwebdir/common.w" @@ -1405,7 +1405,7 @@ boolean found_web= 0,found_change= 0,found_out= 0; #line 1264 "cwebdir/common.w" -#line 964 "cwebdir/comm-w2c.ch" +#line 977 "cwebdir/comm-w2c.ch" #if defined DEV_NULL strncpy(change_file_name,DEV_NULL,max_file_name_length-2); @@ -1420,25 +1420,25 @@ strcpy(change_file_name,"/dev/null"); while(--argc> 0){ #line 1266 "cwebdir/common.w" if((**(++argv)=='-'||**argv=='+')&&*(*argv+1))/*74:*/ -#line 1042 "cwebdir/comm-w2c.ch" +#line 1055 "cwebdir/comm-w2c.ch" { if(strcmp("-help",*argv)==0||strcmp("--help",*argv)==0) /*94:*/ -#line 1396 "cwebdir/comm-w2c.ch" +#line 1409 "cwebdir/comm-w2c.ch" cb_usagehelp(program==ctangle?CTANGLEHELP: program==cweave?CWEAVEHELP:CTWILLHELP,NULL); /*:94*/ -#line 1046 "cwebdir/comm-w2c.ch" +#line 1059 "cwebdir/comm-w2c.ch" if(strcmp("-version",*argv)==0||strcmp("--version",*argv)==0) /*96:*/ -#line 1438 "cwebdir/comm-w2c.ch" +#line 1451 "cwebdir/comm-w2c.ch" printversionandexit(cb_banner, program==ctwill?"Donald E. Knuth":"Silvio Levy and Donald E. Knuth", @@ -1446,7 +1446,7 @@ NULL,"Contemporary development on https://github.com/ascherer/cwebbin.\n"); /*:96*/ -#line 1049 "cwebdir/comm-w2c.ch" +#line 1062 "cwebdir/comm-w2c.ch" if(strcmp("-verbose",*argv)==0||strcmp("--verbose",*argv)==0) @@ -1465,14 +1465,14 @@ if(*dot_pos=='d'){ if(sscanf(++dot_pos,"%u",&kpathsea_debug)!=1)/*75:*/ #line 1352 "cwebdir/common.w" -#line 1092 "cwebdir/comm-w2c.ch" +#line 1105 "cwebdir/comm-w2c.ch" cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill"); #line 1363 "cwebdir/common.w" -#line 1099 "cwebdir/comm-w2c.ch" +#line 1112 "cwebdir/comm-w2c.ch" /*:75*/ -#line 1064 "cwebdir/comm-w2c.ch" +#line 1077 "cwebdir/comm-w2c.ch" while(isdigit(*dot_pos))dot_pos++; dot_pos--; @@ -1481,7 +1481,7 @@ if(*dot_pos=='l'){ use_language= ++dot_pos; break; }else -#line 1077 "cwebdir/comm-w2c.ch" +#line 1090 "cwebdir/comm-w2c.ch" flags[(eight_bits)*dot_pos]= flag_change; #line 1350 "cwebdir/common.w" } @@ -1491,7 +1491,7 @@ break; else{ s= name_pos= *argv;dot_pos= NULL; -#line 985 "cwebdir/comm-w2c.ch" +#line 998 "cwebdir/comm-w2c.ch" while(*s){ if(*s=='.')dot_pos= s++; else if(*s==DIR_SEPARATOR||*s==DEVICE_SEPARATOR||*s=='/') @@ -1506,7 +1506,7 @@ if(!found_web)/*71:*/ { if(s-*argv> max_file_name_length-5) /*76:*/ -#line 1099 "cwebdir/comm-w2c.ch" +#line 1112 "cwebdir/comm-w2c.ch" fatal(_("! Filename too long\n"),*argv); #line 1365 "cwebdir/common.w" @@ -1535,12 +1535,12 @@ else if(!found_change)/*72:*/ #line 1310 "cwebdir/common.w" { -#line 1017 "cwebdir/comm-w2c.ch" +#line 1030 "cwebdir/comm-w2c.ch" if(strcmp(*argv,"-")!=0){ #line 1314 "cwebdir/common.w" if(s-*argv> max_file_name_length-4) /*76:*/ -#line 1099 "cwebdir/comm-w2c.ch" +#line 1112 "cwebdir/comm-w2c.ch" fatal(_("! Filename too long\n"),*argv); #line 1365 "cwebdir/common.w" @@ -1551,7 +1551,7 @@ fatal(_("! Filename too long\n"),*argv); if(dot_pos==NULL) sprintf(change_file_name,"%s.ch",*argv); else strcpy(change_file_name,*argv); -#line 1024 "cwebdir/comm-w2c.ch" +#line 1037 "cwebdir/comm-w2c.ch" } found_change= 1; #line 1321 "cwebdir/common.w" @@ -1566,7 +1566,7 @@ else if(!found_out)/*73:*/ { if(s-*argv> max_file_name_length-5) /*76:*/ -#line 1099 "cwebdir/comm-w2c.ch" +#line 1112 "cwebdir/comm-w2c.ch" fatal(_("! Filename too long\n"),*argv); #line 1365 "cwebdir/common.w" @@ -1582,7 +1582,7 @@ sprintf(C_file_name,"%s.c",*argv); }else{ strcpy(tex_file_name,*argv); strcpy(C_file_name,*argv); -#line 1031 "cwebdir/comm-w2c.ch" +#line 1044 "cwebdir/comm-w2c.ch" if(make_xrefs){ #line 1336 "cwebdir/common.w" *dot_pos= 0; @@ -1593,19 +1593,19 @@ sprintf(scn_file_name,"%s.scn",*argv); found_out= 1; } -#line 1041 "cwebdir/comm-w2c.ch" +#line 1054 "cwebdir/comm-w2c.ch" /*:73*/ #line 1277 "cwebdir/common.w" else/*75:*/ #line 1352 "cwebdir/common.w" -#line 1092 "cwebdir/comm-w2c.ch" +#line 1105 "cwebdir/comm-w2c.ch" cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill"); #line 1363 "cwebdir/common.w" -#line 1099 "cwebdir/comm-w2c.ch" +#line 1112 "cwebdir/comm-w2c.ch" /*:75*/ #line 1278 "cwebdir/common.w" ; @@ -1614,21 +1614,21 @@ else/*75:*/ if(!found_web)/*75:*/ #line 1352 "cwebdir/common.w" -#line 1092 "cwebdir/comm-w2c.ch" +#line 1105 "cwebdir/comm-w2c.ch" cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill"); #line 1363 "cwebdir/common.w" -#line 1099 "cwebdir/comm-w2c.ch" +#line 1112 "cwebdir/comm-w2c.ch" /*:75*/ #line 1281 "cwebdir/common.w" ; #line 1283 "cwebdir/common.w" } -#line 1004 "cwebdir/comm-w2c.ch" +#line 1017 "cwebdir/comm-w2c.ch" /*:70*//*95:*/ -#line 1404 "cwebdir/comm-w2c.ch" +#line 1417 "cwebdir/comm-w2c.ch" static void cb_usage(const_string str) { @@ -1661,7 +1661,7 @@ history= spotless;exit(wrap_up()); } /*:95*//*97:*/ -#line 1446 "cwebdir/comm-w2c.ch" +#line 1459 "cwebdir/comm-w2c.ch" void cb_show_banner(void) { diff --git a/Build/source/texk/web2c/cwebdir/ChangeLog b/Build/source/texk/web2c/cwebdir/ChangeLog index 72a93185f46..be8a2326b86 100644 --- a/Build/source/texk/web2c/cwebdir/ChangeLog +++ b/Build/source/texk/web2c/cwebdir/ChangeLog @@ -1,5 +1,12 @@ 2020-06-07 Andreas Scherer <https://ascherer.github.io> + * comm-w2c.ch, + * ctang-w2c.ch, + * cweav-w2c.ch, + * ctwill-w2c.ch: Add date to table-of-contents page. + +2020-06-07 Andreas Scherer <https://ascherer.github.io> + * ctang-w2c.ch: Handle special 'files' as secondary output. 2020-06-07 Andreas Scherer <https://ascherer.github.io> diff --git a/Build/source/texk/web2c/cwebdir/comm-w2c.ch b/Build/source/texk/web2c/cwebdir/comm-w2c.ch index 3fe2ac1bf62..0b7ccd012cf 100644 --- a/Build/source/texk/web2c/cwebdir/comm-w2c.ch +++ b/Build/source/texk/web2c/cwebdir/comm-w2c.ch @@ -29,6 +29,19 @@ @z @x +\def\botofcontents{\vfill +@y +\def\covernote{\vbox{ +@z + +@x +} +@y +}} +\datecontentspage +@z + +@x @s not_eq normal @q unreserve a C++ keyword @> @y @s boolean int diff --git a/Build/source/texk/web2c/cwebdir/ctang-w2c.ch b/Build/source/texk/web2c/cwebdir/ctang-w2c.ch index 8b980daa5c0..d3027f5bd04 100644 --- a/Build/source/texk/web2c/cwebdir/ctang-w2c.ch +++ b/Build/source/texk/web2c/cwebdir/ctang-w2c.ch @@ -28,6 +28,19 @@ @z @x +\def\botofcontents{\vfill +@y +\def\covernote{\vbox{ +@z + +@x +} +@y +}} +\datecontentspage +@z + +@x @s not_eq normal @q unreserve a C++ keyword @> @y @z diff --git a/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch b/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch index 59e0cf6ea76..409accdc6a4 100644 --- a/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch +++ b/Build/source/texk/web2c/cwebdir/ctwill-w2c.ch @@ -58,6 +58,19 @@ @z @x +\def\botofcontents{\vfill +@y +\def\covernote{\vbox{ +@z + +@x +} +@y +}} +\datecontentspage +@z + +@x @s not_eq normal @q unreserve a C++ keyword @> @y @z diff --git a/Build/source/texk/web2c/cwebdir/cweav-w2c.ch b/Build/source/texk/web2c/cwebdir/cweav-w2c.ch index db419d81db4..f4a85537c8a 100644 --- a/Build/source/texk/web2c/cwebdir/cweav-w2c.ch +++ b/Build/source/texk/web2c/cwebdir/cweav-w2c.ch @@ -28,6 +28,19 @@ @z @x +\def\botofcontents{\vfill +@y +\def\covernote{\vbox{ +@z + +@x +} +@y +}} +\datecontentspage +@z + +@x @s not_eq normal @q unreserve a C++ keyword @> @y @z |