summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/cwebboot.cin
diff options
context:
space:
mode:
authorDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
committerDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
commitc6101f91d071883b48b1b4b51e5eba0f36d9a78d (patch)
tree1bf7f5a881d7a4f5c5bf59d0b2821943dd822372 /Build/source/texk/web2c/cwebboot.cin
parent07ee7222e389b0777456b427a55c22d0e6ffd267 (diff)
French translation for tlmgr updated
git-svn-id: svn://tug.org/texlive/trunk@57912 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/cwebboot.cin')
-rw-r--r--Build/source/texk/web2c/cwebboot.cin1662
1 files changed, 0 insertions, 1662 deletions
diff --git a/Build/source/texk/web2c/cwebboot.cin b/Build/source/texk/web2c/cwebboot.cin
deleted file mode 100644
index 150c303a346..00000000000
--- a/Build/source/texk/web2c/cwebboot.cin
+++ /dev/null
@@ -1,1662 +0,0 @@
-/*1:*/
-#line 66 "cwebdir/common.w"
-
-/*3:*/
-#line 53 "cwebdir/comm-w2c.h"
-
-#ifndef HAVE_GETTEXT
-#define HAVE_GETTEXT 0
-#endif
-
-#if HAVE_GETTEXT
-#include <libintl.h>
-#else
-#define gettext(A) A
-#endif
-
-#include <ctype.h>
-#include <stdbool.h>
-#include <stddef.h>
-#include <stdint.h>
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-
-/*:3*//*89:*/
-#line 709 "cwebdir/comm-w2c.ch"
-
-#if HAVE_GETTEXT
-#include <locale.h>
-#else
-#define setlocale(A,B) ""
-#define bindtextdomain(A,B) ""
-#define textdomain(A) ""
-#endif
-
-/*:89*//*91:*/
-#line 756 "cwebdir/comm-w2c.ch"
-
-typedef bool boolean;
-#define HAVE_BOOLEAN
-#include <kpathsea/kpathsea.h>
-
-#include <w2c/config.h>
-#include <lib/lib.h>
-
-/*:91*//*94:*/
-#line 795 "cwebdir/comm-w2c.ch"
-
-#define CWEB
-#include "help.h"
-
-/*:94*/
-#line 67 "cwebdir/common.w"
-
-#define _(S) gettext(S) \
-
-#define and_and 04
-#define lt_lt 020
-#define gt_gt 021
-#define plus_plus 013
-#define minus_minus 01
-#define minus_gt 031
-#define non_eq 032
-#define lt_eq 034
-#define gt_eq 035
-#define eq_eq 036
-#define or_or 037
-#define dot_dot_dot 016
-#define colon_colon 06
-#define period_ast 026
-#define minus_gt_ast 027 \
-
-#define xisalpha(c) (isalpha((eight_bits) c) &&((eight_bits) c<0200) )
-#define xisdigit(c) (isdigit((eight_bits) c) &&((eight_bits) c<0200) )
-#define xisspace(c) (isspace((eight_bits) c) &&((eight_bits) c<0200) )
-#define xislower(c) (islower((eight_bits) c) &&((eight_bits) c<0200) )
-#define xisupper(c) (isupper((eight_bits) c) &&((eight_bits) c<0200) )
-#define xisxdigit(c) (isxdigit((eight_bits) c) &&((eight_bits) c<0200) ) \
-
-#define max_include_depth 10 \
-
-#define max_file_name_length 1024
-#define cur_file file[include_depth]
-#define cur_file_name file_name[include_depth]
-#define cur_line line[include_depth]
-#define web_file file[0]
-#define web_file_name file_name[0] \
-
-#define length(c) (size_t) ((c+1) ->byte_start-(c) ->byte_start)
-#define print_id(c) term_write((c) ->byte_start,length((c) ) )
-#define llink link
-#define rlink dummy.Rlink
-#define root name_dir->rlink \
- \
-
-#define spotless 0
-#define harmless_message 1
-#define error_message 2
-#define fatal_message 3
-#define mark_harmless {if(history==spotless) history= harmless_message;}
-#define mark_error history= error_message
-#define confusion(s) fatal(_("! This can't happen: ") ,s) \
- \
-
-#define show_banner flags['b']
-#define show_progress flags['p']
-#define show_stats flags['s']
-#define show_happiness flags['h']
-#define temporary_output flags['t']
-#define make_xrefs flags['x'] \
-
-#define update_terminal fflush(stdout)
-#define new_line putchar('\n')
-#define putxchar putchar
-#define term_write(a,b) fflush(stdout) ,fwrite(a,sizeof(char) ,b,stdout)
-#define C_printf(c,a) fprintf(C_file,c,a)
-#define C_putc(c) putc(c,C_file) \
-
-#define max_bytes 1000000 \
-
-#define max_toks 1000000
-#define max_names 10239 \
-
-#define max_sections 4000
-#define max_texts 10239
-#define longest_name 10000
-#define stack_size 500
-#define buf_size 1000
-#define long_buf_size (buf_size+longest_name) \
-
-#define lines_dont_match (change_limit-change_buffer!=limit-buffer|| \
-strncmp(buffer,change_buffer,(size_t) (limit-buffer) ) ) \
-
-#define if_section_start_make_pending(b) {*limit= '!'; \
-for(loc= buffer;xisspace(*loc) ;loc++) ; \
-*limit= ' '; \
-if(*loc=='@'&&(xisspace(*(loc+1) ) ||*(loc+1) =='*') ) change_pending= b; \
-} \
-
-#define too_long() {include_depth--; \
-err_print(_("! Include file name too long") ) ;goto restart;} \
-
-#define hash_size 8501 \
-
-#define first_chunk(p) ((p) ->byte_start+2)
-#define prefix_length(p) (int) ((eight_bits) *((p) ->byte_start) *256+ \
-(eight_bits) *((p) ->byte_start+1) )
-#define set_prefix_length(p,m) (*((p) ->byte_start) = (m) /256, \
-*((p) ->byte_start+1) = (m) %256) \
-
-#define less 0
-#define equal 1
-#define greater 2
-#define prefix 3
-#define extension 4 \
-
-#define bad_extension 5 \
-
-#define RETURN_OK 0
-#define RETURN_WARN 5
-#define RETURN_ERROR 10
-#define RETURN_FAIL 20 \
-
-#define flag_change (**argv!='-')
-#define max_banner 50 \
-
-#define PATH_SEPARATOR separators[0]
-#define DIR_SEPARATOR separators[1]
-#define DEVICE_SEPARATOR separators[2] \
-
-#define kpse_find_cweb(name) kpse_find_file(name,kpse_cweb_format,true) \
-
-
-#line 68 "cwebdir/common.w"
-
-/*2:*/
-#line 35 "cwebdir/comm-w2c.h"
-
-typedef bool boolean;
-typedef uint8_t eight_bits;
-typedef uint16_t sixteen_bits;
-typedef enum{
-ctangle,cweave,ctwill
-}cweb;
-extern cweb program;
-extern int phase;
-
-/*:2*//*4:*/
-#line 91 "cwebdir/comm-w2c.h"
-
-extern char section_text[];
-extern char*section_text_end;
-extern char*id_first;
-extern char*id_loc;
-
-/*:4*//*5:*/
-#line 105 "cwebdir/comm-w2c.h"
-
-extern char buffer[];
-extern char*buffer_end;
-extern char*loc;
-extern char*limit;
-
-/*:5*//*6:*/
-#line 122 "cwebdir/comm-w2c.h"
-
-extern int include_depth;
-extern FILE*file[];
-extern FILE*change_file;
-extern char file_name[][max_file_name_length];
-
-extern char change_file_name[];
-extern char check_file_name[];
-extern int line[];
-extern int change_line;
-extern int change_depth;
-extern boolean input_has_ended;
-extern boolean changing;
-extern boolean web_file_open;
-
-/*:6*//*8:*/
-#line 143 "cwebdir/comm-w2c.h"
-
-extern sixteen_bits section_count;
-extern boolean changed_section[];
-extern boolean change_pending;
-extern boolean print_where;
-
-/*:8*//*9:*/
-#line 157 "cwebdir/comm-w2c.h"
-
-typedef struct name_info{
-char*byte_start;
-struct name_info*link;
-union{
-struct name_info*Rlink;
-
-char Ilk;
-}dummy;
-void*equiv_or_xref;
-}name_info;
-typedef name_info*name_pointer;
-typedef name_pointer*hash_pointer;
-extern char byte_mem[];
-extern char*byte_mem_end;
-extern char*byte_ptr;
-extern name_info name_dir[];
-extern name_pointer name_dir_end;
-extern name_pointer name_ptr;
-extern name_pointer hash[];
-extern hash_pointer hash_end;
-extern hash_pointer h;
-
-/*:9*//*11:*/
-#line 201 "cwebdir/comm-w2c.h"
-
-extern int history;
-
-/*:11*//*13:*/
-#line 218 "cwebdir/comm-w2c.h"
-
-extern int argc;
-extern char**argv;
-extern char C_file_name[];
-extern char tex_file_name[];
-extern char idx_file_name[];
-extern char scn_file_name[];
-extern boolean flags[];
-extern const char*use_language;
-
-/*:13*//*14:*/
-#line 235 "cwebdir/comm-w2c.h"
-
-extern FILE*C_file;
-extern FILE*tex_file;
-extern FILE*idx_file;
-extern FILE*scn_file;
-extern FILE*active_file;
-extern FILE*check_file;
-
-/*:14*/
-#line 69 "cwebdir/common.w"
-
-/*18:*/
-#line 83 "cwebdir/common.w"
-
-#line 72 "cwebdir/comm-w2c.ch"
-cweb program;
-#line 85 "cwebdir/common.w"
-
-/*:18*//*19:*/
-#line 92 "cwebdir/common.w"
-
-int phase;
-
-/*:19*//*21:*/
-#line 130 "cwebdir/common.w"
-
-char section_text[longest_name+1];
-char*section_text_end= section_text+longest_name;
-char*id_first;
-char*id_loc;
-
-/*:21*//*22:*/
-#line 150 "cwebdir/common.w"
-
-char buffer[long_buf_size];
-char*buffer_end= buffer+buf_size-2;
-char*loc= buffer;
-char*limit= buffer;
-
-/*:22*//*25:*/
-#line 194 "cwebdir/common.w"
-
-int include_depth;
-FILE*file[max_include_depth];
-FILE*change_file;
-char file_name[max_include_depth][max_file_name_length];
-
-char change_file_name[max_file_name_length];
-#line 202 "cwebdir/common.w"
-int line[max_include_depth];
-int change_line;
-int change_depth;
-boolean input_has_ended;
-boolean changing;
-boolean web_file_open= false;
-
-/*:25*//*26:*/
-#line 220 "cwebdir/common.w"
-
-static char change_buffer[buf_size];
-static char*change_limit;
-
-/*:26*//*37:*/
-#line 399 "cwebdir/common.w"
-
-sixteen_bits section_count;
-boolean changed_section[max_sections];
-boolean change_pending;
-
-boolean print_where= false;
-
-/*:37*//*43:*/
-#line 596 "cwebdir/common.w"
-
-char byte_mem[max_bytes];
-char*byte_mem_end= byte_mem+max_bytes-1;
-name_info name_dir[max_names];
-name_pointer name_dir_end= name_dir+max_names-1;
-
-/*:43*//*44:*/
-#line 607 "cwebdir/common.w"
-
-char*byte_ptr;
-name_pointer name_ptr;
-
-/*:44*//*46:*/
-#line 627 "cwebdir/common.w"
-
-name_pointer hash[hash_size];
-hash_pointer hash_end= hash+hash_size-1;
-hash_pointer h;
-
-/*:46*//*65:*/
-#line 1014 "cwebdir/common.w"
-
-int history= spotless;
-
-/*:65*//*73:*/
-#line 1135 "cwebdir/common.w"
-
-int argc;
-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 431 "cwebdir/comm-w2c.ch"
-char scn_file_name[max_file_name_length];
-char check_file_name[max_file_name_length];
-#line 1142 "cwebdir/common.w"
-boolean flags[128];
-
-/*:73*//*83:*/
-#line 1282 "cwebdir/common.w"
-
-FILE*C_file;
-FILE*tex_file;
-FILE*idx_file;
-#line 569 "cwebdir/comm-w2c.ch"
-FILE*scn_file;
-FILE*check_file;
-#line 576 "cwebdir/comm-w2c.ch"
-FILE*active_file;
-char*found_filename;
-#line 1288 "cwebdir/common.w"
-
-#line 593 "cwebdir/comm-w2c.ch"
-/*:83*//*86:*/
-#line 638 "cwebdir/comm-w2c.ch"
-
-const char*use_language= "";
-
-
-/*:86*//*87:*/
-#line 651 "cwebdir/comm-w2c.ch"
-
-char cb_banner[max_banner];
-string texmf_locale;
-#ifndef SEPARATORS
-#define SEPARATORS "://"
-#endif
-char separators[]= SEPARATORS;
-
-/*:87*/
-#line 70 "cwebdir/common.w"
-
-/*7:*/
-#line 137 "cwebdir/comm-w2c.h"
-
-extern boolean get_line(void);
-extern void check_complete(void);
-extern void reset_input(void);
-
-/*:7*//*10:*/
-#line 180 "cwebdir/comm-w2c.h"
-
-extern boolean names_match(name_pointer,const char*,size_t,eight_bits);
-extern name_pointer id_lookup(const char*,const char*,char);
-
-extern name_pointer section_lookup(char*,char*,int);
-extern void init_node(name_pointer);
-extern void init_p(name_pointer,eight_bits);
-extern void print_prefix_name(name_pointer);
-extern void print_section_name(name_pointer);
-extern void sprint_section_name(char*,name_pointer);
-
-/*:10*//*12:*/
-#line 204 "cwebdir/comm-w2c.h"
-
-extern int wrap_up(void);
-extern void err_print(const char*);
-extern void fatal(const char*,const char*);
-extern void overflow(const char*);
-
-/*:12*//*15:*/
-#line 244 "cwebdir/comm-w2c.h"
-
-extern void common_init(void);
-extern void print_stats(void);
-extern void cb_show_banner(void);
-
-/*:15*//*24:*/
-#line 180 "cwebdir/common.w"
-static boolean input_ln(FILE*);
-
-/*:24*//*28:*/
-#line 241 "cwebdir/common.w"
-static void prime_the_change_buffer(void);
-
-/*:28*//*33:*/
-#line 340 "cwebdir/common.w"
-static void check_change(void);
-
-/*:33*//*55:*/
-#line 774 "cwebdir/common.w"
-
-static int web_strcmp(char*,int,char*,int);
-static name_pointer add_section_name(name_pointer,int,char*,char*,int);
-static void extend_section_name(name_pointer,char*,char*,int);
-
-/*:55*//*64:*/
-#line 1002 "cwebdir/common.w"
-static int section_name_cmp(char**,int,name_pointer);
-
-/*:64*//*76:*/
-#line 1197 "cwebdir/common.w"
-static void scan_args(void);
-
-#line 496 "cwebdir/comm-w2c.ch"
-/*:76*//*96:*/
-#line 808 "cwebdir/comm-w2c.ch"
-
-static void cb_usage(const_string str);
-static void cb_usagehelp(const_string*message,const_string bug_email);
-
-/*:96*/
-#line 71 "cwebdir/common.w"
-
-
-/*:1*//*20:*/
-#line 99 "cwebdir/common.w"
-
-void
-common_init(void)
-{
-#line 78 "cwebdir/comm-w2c.ch"
-/*45:*/
-#line 611 "cwebdir/common.w"
-
-name_dir->byte_start= byte_ptr= byte_mem;
-name_ptr= name_dir+1;
-name_ptr->byte_start= byte_mem;
-root= NULL;
-
-/*:45*//*47:*/
-#line 634 "cwebdir/common.w"
-
-for(h= hash;h<=hash_end;*h++= NULL);
-
-/*:47*/
-#line 78 "cwebdir/comm-w2c.ch"
-
-/*92:*/
-#line 770 "cwebdir/comm-w2c.ch"
-
-kpse_set_program_name(argv[0],"cweb");
-
-/*:92*/
-#line 79 "cwebdir/comm-w2c.ch"
-
-#line 85 "cwebdir/comm-w2c.ch"
-/*90:*/
-#line 718 "cwebdir/comm-w2c.ch"
-
-setlocale(LC_MESSAGES,setlocale(LC_CTYPE,""));
-texmf_locale= kpse_var_expand("${TEXMFLOCALEDIR}");
-
-bindtextdomain("cweb",
-bindtextdomain("cweb-tl",
-bindtextdomain("web2c-help",
-strcmp(texmf_locale,"")?
-texmf_locale:"/usr/share/locale")));
-
-free(texmf_locale);
-textdomain("cweb");
-
-
-/*:90*/
-#line 85 "cwebdir/comm-w2c.ch"
-
-/*74:*/
-#line 1148 "cwebdir/common.w"
-
-#line 438 "cwebdir/comm-w2c.ch"
-make_xrefs= true;
-temporary_output= true;
-#line 1150 "cwebdir/common.w"
-show_stats= false;
-
-/*:74*/
-#line 86 "cwebdir/comm-w2c.ch"
-
-#line 105 "cwebdir/common.w"
-/*84:*/
-#line 593 "cwebdir/comm-w2c.ch"
-
-scan_args();
-if(program==ctangle){
-if((C_file= fopen(C_file_name,"a"))==NULL)
-fatal(_("! Cannot open output file "),C_file_name);
-
-else fclose(C_file);
-strcpy(check_file_name,C_file_name);
-if(check_file_name[0]!='\0'){
-char*dot_pos= strrchr(check_file_name,'.');
-if(dot_pos==NULL)strcat(check_file_name,".ttp");
-else strcpy(dot_pos,".ttp");
-}
-if((C_file= fopen(check_file_name,"wb"))==NULL)
-fatal(_("! Cannot open output file "),check_file_name);
-
-}
-else{
-if((tex_file= fopen(tex_file_name,"a"))==NULL)
-fatal(_("! Cannot open output file "),tex_file_name);
-else fclose(tex_file);
-strcpy(check_file_name,tex_file_name);
-if(check_file_name[0]!='\0'){
-char*dot_pos= strrchr(check_file_name,'.');
-if(dot_pos==NULL)strcat(check_file_name,".wtp");
-else strcpy(dot_pos,".wtp");
-}
-if((tex_file= fopen(check_file_name,"wb"))==NULL)
-fatal(_("! Cannot open output file "),check_file_name);
-}
-#line 1300 "cwebdir/common.w"
-
-#line 628 "cwebdir/comm-w2c.ch"
-/*:84*/
-#line 105 "cwebdir/common.w"
-
-}
-
-/*:20*//*23:*/
-#line 160 "cwebdir/common.w"
-
-static boolean input_ln(
-FILE*fp)
-{
-register int c= EOF;
-register char*k;
-if(feof(fp))return false;
-limit= k= buffer;
-while(k<=buffer_end&&(c= getc(fp))!=EOF&&c!='\n')
-#line 92 "cwebdir/comm-w2c.ch"
-if((*(k++)= c)!=' '&&c!='\r')limit= k;
-#line 170 "cwebdir/common.w"
-if(k> buffer_end)
-if((c= getc(fp))!=EOF&&c!='\n'){
-#line 98 "cwebdir/comm-w2c.ch"
-ungetc(c,fp);loc= buffer;err_print(_("! Input line too long"));
-#line 173 "cwebdir/common.w"
-
-}
-if(c==EOF&&limit==buffer)return false;
-
-return true;
-}
-
-/*:23*//*27:*/
-#line 231 "cwebdir/common.w"
-
-static void
-prime_the_change_buffer(void)
-{
-change_limit= change_buffer;
-/*29:*/
-#line 247 "cwebdir/common.w"
-
-while(true){
-change_line++;
-if(!input_ln(change_file))return;
-if(limit<buffer+2)continue;
-if(buffer[0]!='@')continue;
-if(xisupper(buffer[1]))buffer[1]= tolower((eight_bits)buffer[1]);
-if(buffer[1]=='x')break;
-if(buffer[1]=='y'||buffer[1]=='z'||buffer[1]=='i'){
-loc= buffer+2;
-#line 109 "cwebdir/comm-w2c.ch"
-err_print(_("! Missing @x in change file"));
-#line 258 "cwebdir/common.w"
-
-}
-}
-
-/*:29*/
-#line 236 "cwebdir/common.w"
-
-/*30:*/
-#line 264 "cwebdir/common.w"
-
-do{
-change_line++;
-if(!input_ln(change_file)){
-#line 115 "cwebdir/comm-w2c.ch"
-err_print(_("! Change file ended after @x"));
-#line 269 "cwebdir/common.w"
-
-return;
-}
-}while(limit==buffer);
-
-/*:30*/
-#line 237 "cwebdir/common.w"
-
-/*31:*/
-#line 274 "cwebdir/common.w"
-
-{
-change_limit= change_buffer+(ptrdiff_t)(limit-buffer);
-strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
-}
-
-/*:31*/
-#line 238 "cwebdir/common.w"
-
-}
-
-/*:27*//*32:*/
-#line 302 "cwebdir/common.w"
-
-static void
-check_change(void)
-{
-int n= 0;
-if(lines_dont_match)return;
-change_pending= false;
-if(!changed_section[section_count]){
-if_section_start_make_pending(true);
-if(!change_pending)changed_section[section_count]= true;
-}
-while(true){
-changing= true;print_where= true;change_line++;
-if(!input_ln(change_file)){
-#line 121 "cwebdir/comm-w2c.ch"
-err_print(_("! Change file ended before @y"));
-#line 317 "cwebdir/common.w"
-
-change_limit= change_buffer;changing= false;
-return;
-}
-if(limit> buffer+1&&buffer[0]=='@'){
-char xyz_code= xisupper(buffer[1])?tolower((eight_bits)buffer[1]):buffer[1];
-/*34:*/
-#line 342 "cwebdir/common.w"
-
-if(xyz_code=='x'||xyz_code=='z'){
-#line 133 "cwebdir/comm-w2c.ch"
-loc= buffer+2;err_print(_("! Where is the matching @y?"));
-#line 345 "cwebdir/common.w"
-
-}
-else if(xyz_code=='y'){
-if(n> 0){
-loc= buffer+2;
-printf("\n! Hmm... %d ",n);
-#line 139 "cwebdir/comm-w2c.ch"
-err_print(_("of the preceding lines failed to match"));
-#line 352 "cwebdir/common.w"
-
-}
-change_depth= include_depth;
-return;
-}
-
-/*:34*/
-#line 324 "cwebdir/common.w"
-
-}
-/*31:*/
-#line 274 "cwebdir/common.w"
-
-{
-change_limit= change_buffer+(ptrdiff_t)(limit-buffer);
-strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
-}
-
-/*:31*/
-#line 326 "cwebdir/common.w"
-
-changing= false;cur_line++;
-while(!input_ln(cur_file)){
-if(include_depth==0){
-#line 127 "cwebdir/comm-w2c.ch"
-err_print(_("! CWEB file ended during a change"));
-#line 331 "cwebdir/common.w"
-
-input_has_ended= true;return;
-}
-include_depth--;cur_line++;
-}
-if(lines_dont_match)n++;
-}
-}
-
-/*:32*//*35:*/
-#line 362 "cwebdir/common.w"
-
-void
-reset_input(void)
-{
-limit= buffer;loc= buffer+1;buffer[0]= ' ';
-/*36:*/
-#line 377 "cwebdir/common.w"
-
-#line 149 "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);
-}else if(strlen(found_filename)<max_file_name_length){
-
-if(strcmp(web_file_name,found_filename))
-strcpy(web_file_name,found_filename+
-((strncmp(found_filename,"./",2)==0)?2:0));
-free(found_filename);
-}else fatal(_("! Filename too long\n"),found_filename);
-#line 383 "cwebdir/common.w"
-
-
-web_file_open= true;
-#line 165 "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);
-}else if(strlen(found_filename)<max_file_name_length){
-
-if(strcmp(change_file_name,found_filename))
-strcpy(change_file_name,found_filename+
-((strncmp(found_filename,"./",2)==0)?2:0));
-free(found_filename);
-}else fatal(_("! Filename too long\n"),found_filename);
-#line 388 "cwebdir/common.w"
-
-/*:36*/
-#line 367 "cwebdir/common.w"
-
-include_depth= 0;cur_line= 0;change_line= 0;
-change_depth= include_depth;
-changing= 1;prime_the_change_buffer();changing= !changing;
-limit= buffer;loc= buffer+1;buffer[0]= ' ';input_has_ended= false;
-}
-
-/*:35*//*38:*/
-#line 406 "cwebdir/common.w"
-
-boolean get_line(void)
-{
-restart:
-if(changing&&include_depth==change_depth)
-/*41:*/
-#line 514 "cwebdir/common.w"
-{
-change_line++;
-if(!input_ln(change_file)){
-#line 274 "cwebdir/comm-w2c.ch"
-err_print(_("! Change file ended without @z"));
-#line 518 "cwebdir/common.w"
-
-buffer[0]= '@';buffer[1]= 'z';limit= buffer+2;
-}
-if(limit> buffer){
-if(change_pending){
-if_section_start_make_pending(false);
-if(change_pending){
-changed_section[section_count]= true;change_pending= false;
-}
-}
-*limit= ' ';
-if(buffer[0]=='@'){
-if(xisupper(buffer[1]))buffer[1]= tolower((eight_bits)buffer[1]);
-if(buffer[1]=='x'||buffer[1]=='y'){
-loc= buffer+2;
-#line 280 "cwebdir/comm-w2c.ch"
-err_print(_("! Where is the matching @z?"));
-#line 534 "cwebdir/common.w"
-
-}
-else if(buffer[1]=='z'){
-prime_the_change_buffer();changing= !changing;print_where= true;
-}
-}
-}
-}
-
-/*:41*/
-#line 411 "cwebdir/common.w"
-
-if(!changing||include_depth> change_depth){
-/*40:*/
-#line 497 "cwebdir/common.w"
-{
-cur_line++;
-while(!input_ln(cur_file)){
-print_where= true;
-if(include_depth==0){input_has_ended= true;break;}
-else{
-fclose(cur_file);include_depth--;
-if(changing&&include_depth==change_depth)break;
-cur_line++;
-}
-}
-if(!changing&&!input_has_ended)
-if(limit-buffer==change_limit-change_buffer)
-if(buffer[0]==change_buffer[0])
-if(change_limit> change_buffer)check_change();
-}
-
-/*:40*/
-#line 413 "cwebdir/common.w"
-
-if(changing&&include_depth==change_depth)goto restart;
-}
-if(input_has_ended)return false;
-loc= buffer;*limit= ' ';
-if(buffer[0]=='@'&&(buffer[1]=='i'||buffer[1]=='I')){
-loc= buffer+2;*limit= '"';
-while(*loc==' '||*loc=='\t')loc++;
-if(loc>=limit){
-#line 180 "cwebdir/comm-w2c.ch"
-err_print(_("! Include file name not given"));
-#line 423 "cwebdir/common.w"
-
-goto restart;
-}
-if(include_depth>=max_include_depth-1){
-#line 186 "cwebdir/comm-w2c.ch"
-err_print(_("! Too many nested includes"));
-#line 428 "cwebdir/common.w"
-
-goto restart;
-}
-include_depth++;
-/*39:*/
-#line 451 "cwebdir/common.w"
-{
-#line 223 "cwebdir/comm-w2c.ch"
-char*cur_file_name_end= cur_file_name+max_file_name_length-1;
-char*k= cur_file_name;
-#line 456 "cwebdir/common.w"
-
-if(*loc=='"'){
-loc++;
-while(*loc!='"'&&k<=cur_file_name_end)*k++= *loc++;
-if(loc==limit)k= cur_file_name_end+1;
-}else
-while(*loc!=' '&&*loc!='\t'&&*loc!='"'&&k<=cur_file_name_end)*k++= *loc++;
-if(k> cur_file_name_end)too_long();
-
-*k= '\0';
-#line 230 "cwebdir/comm-w2c.ch"
-if((found_filename= kpse_find_cweb(cur_file_name))!=NULL&&
-(cur_file= fopen(found_filename,"r"))!=NULL){
-
-if(strlen(found_filename)<max_file_name_length){
-if(strcmp(cur_file_name,found_filename))
-strcpy(cur_file_name,found_filename+
-((strncmp(found_filename,"./",2)==0)?2:0));
-free(found_filename);
-}else fatal(_("! Filename too long\n"),found_filename);
-#line 467 "cwebdir/common.w"
-cur_line= 0;print_where= true;
-goto restart;
-}
-#line 268 "cwebdir/comm-w2c.ch"
-include_depth--;err_print(_("! Cannot open include file"));goto restart;
-#line 495 "cwebdir/common.w"
-}
-
-/*:39*/
-#line 432 "cwebdir/common.w"
-
-}
-return true;
-}
-
-#line 201 "cwebdir/comm-w2c.ch"
-/*:38*//*42:*/
-#line 546 "cwebdir/common.w"
-
-void
-check_complete(void){
-if(change_limit!=change_buffer){
-strncpy(buffer,change_buffer,(size_t)(change_limit-change_buffer+1));
-limit= buffer+(ptrdiff_t)(change_limit-change_buffer);
-changing= true;change_depth= include_depth;loc= buffer;
-#line 286 "cwebdir/comm-w2c.ch"
-err_print(_("! Change file entry did not match"));
-#line 554 "cwebdir/common.w"
-
-}
-}
-
-/*:42*//*48:*/
-#line 639 "cwebdir/common.w"
-
-name_pointer
-id_lookup(
-const char*first,
-const char*last,
-char t)
-{
-const char*i= first;
-int h;
-int l;
-name_pointer p;
-if(last==NULL)for(last= first;*last!='\0';last++);
-l= (int)(last-first);
-/*49:*/
-#line 662 "cwebdir/common.w"
-
-h= (eight_bits)*i;
-while(++i<last)h= (h+h+(int)((eight_bits)*i))%hash_size;
-
-
-/*:49*/
-#line 652 "cwebdir/common.w"
-
-/*50:*/
-#line 670 "cwebdir/common.w"
-
-p= hash[h];
-while(p&&!names_match(p,first,l,t))p= p->link;
-if(p==NULL){
-p= name_ptr;
-p->link= hash[h];hash[h]= p;
-}
-
-/*:50*/
-#line 653 "cwebdir/common.w"
-
-if(p==name_ptr)/*51:*/
-#line 681 "cwebdir/common.w"
-{
-#line 293 "cwebdir/comm-w2c.ch"
-if(byte_ptr+l> byte_mem_end)overflow(_("byte memory"));
-if(name_ptr>=name_dir_end)overflow(_("name"));
-#line 684 "cwebdir/common.w"
-strncpy(byte_ptr,first,l);
-(++name_ptr)->byte_start= byte_ptr+= l;
-init_p(p,t);
-}
-
-/*:51*/
-#line 654 "cwebdir/common.w"
-
-return p;
-}
-
-/*:48*//*52:*/
-#line 713 "cwebdir/common.w"
-
-void
-print_section_name(
-name_pointer p)
-{
-char*ss,*s= first_chunk(p);
-name_pointer q= p+1;
-while(p!=name_dir){
-ss= (p+1)->byte_start-1;
-if(*ss==' '&&ss>=s){
-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;
-}
-s= p->byte_start;
-}
-if(q)term_write("...",3);
-}
-
-/*:52*//*53:*/
-#line 732 "cwebdir/common.w"
-
-void
-sprint_section_name(
-char*dest,
-name_pointer p)
-{
-char*ss,*s= first_chunk(p);
-name_pointer q= p+1;
-while(p!=name_dir){
-ss= (p+1)->byte_start-1;
-if(*ss==' '&&ss>=s){
-p= q->link;q= p;
-}else{
-ss++;p= name_dir;
-}
-strncpy(dest,s,(size_t)(ss-s)),dest+= ss-s;
-s= p->byte_start;
-}
-*dest= '\0';
-}
-
-/*:53*//*54:*/
-#line 753 "cwebdir/common.w"
-
-void
-print_prefix_name(
-name_pointer p)
-{
-char*s= first_chunk(p);
-int l= prefix_length(p);
-term_write(s,l);
-if(s+l<(p+1)->byte_start)term_write("...",3);
-}
-
-/*:54*//*56:*/
-#line 779 "cwebdir/common.w"
-
-static int web_strcmp(
-char*j,
-int j_len,
-char*k,
-int k_len)
-{
-char*j1= j+j_len,*k1= k+k_len;
-while(k<k1&&j<j1&&*j==*k)k++,j++;
-if(k==k1)if(j==j1)return equal;
-else return extension;
-else if(j==j1)return prefix;
-else if(*j<*k)return less;
-else return greater;
-}
-
-/*:56*//*57:*/
-#line 808 "cwebdir/common.w"
-
-static name_pointer
-add_section_name(
-name_pointer par,
-int c,
-char*first,
-char*last,
-int ispref)
-{
-name_pointer p= name_ptr;
-char*s= first_chunk(p);
-int name_len= (int)(last-first)+ispref;
-#line 301 "cwebdir/comm-w2c.ch"
-if(s+name_len> byte_mem_end)overflow(_("byte memory"));
-if(name_ptr+1>=name_dir_end)overflow(_("name"));
-#line 822 "cwebdir/common.w"
-(++name_ptr)->byte_start= byte_ptr= s+name_len;
-if(ispref){
-*(byte_ptr-1)= ' ';
-name_len--;
-name_ptr->link= name_dir;
-(++name_ptr)->byte_start= byte_ptr;
-}
-set_prefix_length(p,name_len);
-strncpy(s,first,name_len);
-p->llink= NULL;
-p->rlink= NULL;
-init_node(p);
-return par==NULL?(root= p):c==less?(par->llink= p):(par->rlink= p);
-}
-
-/*:57*//*58:*/
-#line 837 "cwebdir/common.w"
-
-static void
-extend_section_name(
-name_pointer p,
-char*first,
-char*last,
-int ispref)
-{
-char*s;
-name_pointer q= p+1;
-int name_len= (int)(last-first)+ispref;
-#line 308 "cwebdir/comm-w2c.ch"
-if(name_ptr>=name_dir_end)overflow(_("name"));
-#line 849 "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 314 "cwebdir/comm-w2c.ch"
-if(s+name_len> byte_mem_end)overflow(_("byte memory"));
-#line 854 "cwebdir/common.w"
-(++name_ptr)->byte_start= byte_ptr= s+name_len;
-strncpy(s,first,name_len);
-if(ispref)*(byte_ptr-1)= ' ';
-}
-
-/*:58*//*59:*/
-#line 865 "cwebdir/common.w"
-
-name_pointer
-section_lookup(
-char*first,char*last,
-int ispref)
-{
-int c= 0;
-name_pointer p= root;
-name_pointer q= NULL;
-name_pointer r= NULL;
-name_pointer par= NULL;
-
-int name_len= (int)(last-first)+1;
-/*60:*/
-#line 889 "cwebdir/common.w"
-
-while(p){
-c= web_strcmp(first,name_len,first_chunk(p),prefix_length(p));
-if(c==less||c==greater){
-if(r==NULL)
-par= p;
-p= (c==less?p->llink:p->rlink);
-}else{
-if(r!=NULL){
-#line 320 "cwebdir/comm-w2c.ch"
-fputs(_("\n! Ambiguous prefix: matches <"),stdout);
-#line 899 "cwebdir/common.w"
-
-print_prefix_name(p);
-#line 326 "cwebdir/comm-w2c.ch"
-fputs(_(">\n and <"),stdout);
-#line 902 "cwebdir/common.w"
-print_prefix_name(r);
-err_print(">");
-return name_dir;
-}
-r= p;
-p= p->llink;
-q= r->rlink;
-}
-if(p==NULL)
-p= q,q= NULL;
-}
-
-/*:60*/
-#line 879 "cwebdir/common.w"
-
-/*61:*/
-#line 914 "cwebdir/common.w"
-
-if(r==NULL)
-return add_section_name(par,c,first,last+1,ispref);
-
-/*:61*/
-#line 880 "cwebdir/common.w"
-
-/*62:*/
-#line 922 "cwebdir/common.w"
-
-switch(section_name_cmp(&first,name_len,r)){
-
-case prefix:
-if(!ispref){
-#line 332 "cwebdir/comm-w2c.ch"
-fputs(_("\n! New name is a prefix of <"),stdout);
-#line 928 "cwebdir/common.w"
-
-print_section_name(r);
-err_print(">");
-}
-else if(name_len<prefix_length(r))set_prefix_length(r,name_len);
-
-case equal:return r;
-case extension:if(!ispref||first<=last)
-extend_section_name(r,first,last+1,ispref);
-return r;
-case bad_extension:
-#line 338 "cwebdir/comm-w2c.ch"
-fputs(_("\n! New name extends <"),stdout);
-#line 940 "cwebdir/common.w"
-
-print_section_name(r);
-err_print(">");
-return r;
-default:
-#line 344 "cwebdir/comm-w2c.ch"
-fputs(_("\n! Section name incompatible with <"),stdout);
-#line 946 "cwebdir/common.w"
-
-print_prefix_name(r);
-#line 350 "cwebdir/comm-w2c.ch"
-fputs(_(">,\n which abbreviates <"),stdout);
-#line 949 "cwebdir/common.w"
-print_section_name(r);
-err_print(">");
-return r;
-}
-
-/*:62*/
-#line 881 "cwebdir/common.w"
-
-}
-
-/*:59*//*63:*/
-#line 970 "cwebdir/common.w"
-
-static int section_name_cmp(
-char**pfirst,
-int len,
-name_pointer r)
-{
-char*first= *pfirst;
-name_pointer q= r+1;
-char*ss,*s= first_chunk(r);
-int c;
-int ispref;
-while(true){
-ss= (r+1)->byte_start-1;
-if(*ss==' '&&ss>=r->byte_start)ispref= 1,q= q->link;
-else ispref= 0,ss++,q= name_dir;
-switch(c= web_strcmp(first,len,s,ss-s)){
-case equal:if(q==name_dir)
-if(ispref){
-*pfirst= first+(ptrdiff_t)(ss-s);
-return extension;
-}else return equal;
-else return(q->byte_start==(q+1)->byte_start)?equal:prefix;
-case extension:
-if(!ispref)return bad_extension;
-first+= ss-s;
-if(q!=name_dir){len-= (int)(ss-s);s= q->byte_start;r= q;continue;}
-*pfirst= first;return extension;
-default:return c;
-}
-}
-}
-
-/*:63*//*66:*/
-#line 1024 "cwebdir/common.w"
-
-void
-err_print(
-const char*s)
-{
-char*k,*l;
-printf(*s=='!'?"\n%s":"%s",s);
-if(web_file_open)/*67:*/
-#line 1044 "cwebdir/common.w"
-
-{if(changing&&include_depth==change_depth)
-#line 358 "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);
-#line 1049 "cwebdir/common.w"
-l= (loc>=limit?limit:loc);
-if(l> buffer){
-for(k= buffer;k<l;k++)
-if(*k=='\t')putchar(' ');
-else putchar(*k);
-putchar('\n');
-for(k= buffer;k<l;k++)putchar(' ');
-}
-for(k= l;k<limit;k++)putchar(*k);
-if(*limit=='|')putchar('|');
-putchar(' ');
-}
-
-/*:67*/
-#line 1031 "cwebdir/common.w"
-
-update_terminal;mark_error;
-}
-
-/*:66*//*68:*/
-#line 1076 "cwebdir/common.w"
-
-int wrap_up(void){
-if(show_progress)new_line;
-if(show_stats)
-print_stats();
-#line 388 "cwebdir/comm-w2c.ch"
-/*69:*/
-#line 1086 "cwebdir/common.w"
-
-switch(history){
-#line 412 "cwebdir/comm-w2c.ch"
-case spotless:
-if(show_happiness)puts(_("(No errors were found.)"));break;
-case harmless_message:
-puts(_("(Did you see the warning message above?)"));break;
-case error_message:
-puts(_("(Pardon me, but I think I spotted something wrong.)"));break;
-case fatal_message:
-puts(_("(That was a fatal error, my friend.)"));
-#line 1094 "cwebdir/common.w"
-}
-
-/*:69*/
-#line 388 "cwebdir/comm-w2c.ch"
-
-/*88:*/
-#line 662 "cwebdir/comm-w2c.ch"
-
-if(C_file)fclose(C_file);
-if(tex_file)fclose(tex_file);
-if(check_file)fclose(check_file);
-if(strlen(check_file_name))
-remove(check_file_name);
-
-/*:88*/
-#line 389 "cwebdir/comm-w2c.ch"
-
-#line 396 "cwebdir/comm-w2c.ch"
-switch(history){
-case harmless_message:return RETURN_WARN;
-case error_message:return RETURN_ERROR;
-case fatal_message:return RETURN_FAIL;
-default:return RETURN_OK;
-}
-#line 1084 "cwebdir/common.w"
-}
-
-/*:68*//*70:*/
-#line 1102 "cwebdir/common.w"
-void
-fatal(
-const char*s,const char*t)
-{
-if(*s)err_print(s);
-err_print(t);
-history= fatal_message;exit(wrap_up());
-}
-
-/*:70*//*71:*/
-#line 1113 "cwebdir/common.w"
-void
-overflow(
-const char*t)
-{
-#line 425 "cwebdir/comm-w2c.ch"
-printf(_("\n! Sorry, %s capacity exceeded"),t);fatal("","");
-#line 1118 "cwebdir/common.w"
-}
-
-
-/*:71*//*75:*/
-#line 1167 "cwebdir/common.w"
-
-static void
-scan_args(void)
-{
-char*dot_pos;
-char*name_pos;
-register char*s;
-boolean found_web= false,found_change= false,found_out= false;
-
-
-#line 462 "cwebdir/comm-w2c.ch"
-
-#if defined DEV_NULL
-strncpy(change_file_name,DEV_NULL,max_file_name_length-2);
-change_file_name[max_file_name_length-2]= '\0';
-#elif defined _DEV_NULL
-strncpy(change_file_name,_DEV_NULL,max_file_name_length-2);
-change_file_name[max_file_name_length-2]= '\0';
-#else
-strcpy(change_file_name,"/dev/null");
-#endif
-
-#line 1178 "cwebdir/common.w"
-while(--argc> 0){
-if((**(++argv)=='-'||**argv=='+')&&*(*argv+1))/*80:*/
-#line 510 "cwebdir/comm-w2c.ch"
-
-{
-if(strcmp("-help",*argv)==0||strcmp("--help",*argv)==0)
-
-/*95:*/
-#line 799 "cwebdir/comm-w2c.ch"
-
-cb_usagehelp(program==ctangle?CTANGLEHELP:
-program==cweave?CWEAVEHELP:CTWILLHELP,NULL);
-
-
-/*:95*/
-#line 514 "cwebdir/comm-w2c.ch"
-
-if(strcmp("-version",*argv)==0||strcmp("--version",*argv)==0)
-
-/*98:*/
-#line 846 "cwebdir/comm-w2c.ch"
-
-printversionandexit(cb_banner,
-program==ctwill?"Donald E. Knuth":"Silvio Levy and Donald E. Knuth",
-NULL,"Contemporary development on https://github.com/ascherer/cweb.\n");
-
-
-/*:98*/
-#line 517 "cwebdir/comm-w2c.ch"
-
-if(strcmp("-verbose",*argv)==0||strcmp("--verbose",*argv)==0)
-
-{show_banner= show_progress= show_happiness= 1;continue;}
-if(strcmp("-quiet",*argv)==0||strcmp("--quiet",*argv)==0)
-
-{show_banner= show_progress= show_happiness= 0;continue;}
-for(dot_pos= *argv+1;*dot_pos> '\0';dot_pos++)
-if(*dot_pos=='v'){
-show_banner= show_progress= show_happiness= true;
-}else
-if(*dot_pos=='q'){
-show_banner= show_progress= show_happiness= false;
-}else
-if(*dot_pos=='d'){
-if(sscanf(++dot_pos,"%u",&kpathsea_debug)!=1)/*81:*/
-#line 555 "cwebdir/comm-w2c.ch"
-
-cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill");
-
-#line 1275 "cwebdir/common.w"
-
-#line 563 "cwebdir/comm-w2c.ch"
-/*:81*/
-#line 532 "cwebdir/comm-w2c.ch"
-
-while(isdigit(*dot_pos))dot_pos++;
-dot_pos--;
-}else
-if(*dot_pos=='l'){
-use_language= ++dot_pos;
-break;
-}else
-#line 1261 "cwebdir/common.w"
- flags[(eight_bits)*dot_pos]= flag_change;
-}
-
-#line 555 "cwebdir/comm-w2c.ch"
-/*:80*/
-#line 1179 "cwebdir/common.w"
-
-else{
-s= name_pos= *argv;dot_pos= NULL;
-#line 482 "cwebdir/comm-w2c.ch"
-while(*s){
-if(*s=='.')dot_pos= s++;
-else if(*s==DIR_SEPARATOR||*s==DEVICE_SEPARATOR||*s=='/')
-dot_pos= NULL,name_pos= ++s;
-else s++;
-}
-
-#line 1187 "cwebdir/common.w"
-if(!found_web)/*77:*/
-#line 1206 "cwebdir/common.w"
-
-{
-if(s-*argv> max_file_name_length-5)
-/*82:*/
-#line 563 "cwebdir/comm-w2c.ch"
-fatal(_("! Filename too long\n"),*argv);
-#line 1277 "cwebdir/common.w"
-
-
-/*:82*/
-#line 1209 "cwebdir/common.w"
-
-if(dot_pos==NULL)
-sprintf(web_file_name,"%s.w",*argv);
-else{
-strcpy(web_file_name,*argv);
-*dot_pos= 0;
-}
-#line 1217 "cwebdir/common.w"
-sprintf(tex_file_name,"%s.tex",name_pos);
-sprintf(idx_file_name,"%s.idx",name_pos);
-sprintf(scn_file_name,"%s.scn",name_pos);
-sprintf(C_file_name,"%s.c",name_pos);
-found_web= true;
-}
-
-/*:77*/
-#line 1188 "cwebdir/common.w"
-
-else if(!found_change)/*78:*/
-#line 1224 "cwebdir/common.w"
-
-{
-if(strcmp(*argv,"-")!=0){
-if(s-*argv> max_file_name_length-4)
-/*82:*/
-#line 563 "cwebdir/comm-w2c.ch"
-fatal(_("! Filename too long\n"),*argv);
-#line 1277 "cwebdir/common.w"
-
-
-/*:82*/
-#line 1228 "cwebdir/common.w"
-
-if(dot_pos==NULL)
-sprintf(change_file_name,"%s.ch",*argv);
-else strcpy(change_file_name,*argv);
-}
-found_change= true;
-}
-
-/*:78*/
-#line 1189 "cwebdir/common.w"
-
-else if(!found_out)/*79:*/
-#line 1236 "cwebdir/common.w"
-
-{
-if(s-*argv> max_file_name_length-5)
-/*82:*/
-#line 563 "cwebdir/comm-w2c.ch"
-fatal(_("! Filename too long\n"),*argv);
-#line 1277 "cwebdir/common.w"
-
-
-/*:82*/
-#line 1239 "cwebdir/common.w"
-
-if(dot_pos==NULL){
-sprintf(tex_file_name,"%s.tex",*argv);
-sprintf(idx_file_name,"%s.idx",*argv);
-sprintf(scn_file_name,"%s.scn",*argv);
-sprintf(C_file_name,"%s.c",*argv);
-}else{
-strcpy(tex_file_name,*argv);
-strcpy(C_file_name,*argv);
-if(make_xrefs){
-*dot_pos= 0;
-sprintf(idx_file_name,"%s.idx",*argv);
-sprintf(scn_file_name,"%s.scn",*argv);
-}
-}
-found_out= true;
-}
-
-/*:79*/
-#line 1190 "cwebdir/common.w"
-
-else/*81:*/
-#line 555 "cwebdir/comm-w2c.ch"
-
-cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill");
-
-#line 1275 "cwebdir/common.w"
-
-#line 563 "cwebdir/comm-w2c.ch"
-/*:81*/
-#line 1191 "cwebdir/common.w"
-
-}
-}
-if(!found_web)/*81:*/
-#line 555 "cwebdir/comm-w2c.ch"
-
-cb_usage(program==ctangle?"ctangle":program==cweave?"cweave":"ctwill");
-
-#line 1275 "cwebdir/common.w"
-
-#line 563 "cwebdir/comm-w2c.ch"
-/*:81*/
-#line 1194 "cwebdir/common.w"
-
-}
-
-/*:75*//*97:*/
-#line 812 "cwebdir/comm-w2c.ch"
-
-static void cb_usage(const_string str)
-{
-textdomain("cweb-tl");
-
-fprintf(stderr,_("%s: Need one to three file arguments.\n"),str);
-fprintf(stderr,_("Try `%s --help' for more information.\n"),str);
-
-textdomain("cweb");
-
-history= fatal_message;exit(wrap_up());
-}
-
-static void cb_usagehelp(const_string*message,const_string bug_email)
-{
-if(!bug_email)
-bug_email= "tex-k@tug.org";
-textdomain("web2c-help");
-
-while(*message){
-printf("%s\n",strcmp("",*message)?_(*message):*message);
-++message;
-}
-textdomain("cweb-tl");
-
-printf(_("\nEmail bug reports to %s.\n"),bug_email);
-textdomain("cweb");
-
-history= spotless;exit(wrap_up());
-}
-
-/*:97*//*99:*/
-#line 854 "cwebdir/comm-w2c.ch"
-
-void cb_show_banner(void)
-{
-assert(cb_banner[0]!='\0');
-textdomain("cweb-tl");
-
-printf("%s%s\n",_(cb_banner),versionstring);
-textdomain("cweb");
-
-}
-
-/*:99*/