~ubuntu-branches/ubuntu/karmic/fweb/karmic

« back to all changes in this revision

Viewing changes to Web/common.c

  • Committer: Bazaar Package Importer
  • Author(s): Yann Dirson
  • Date: 2002-01-04 23:20:22 UTC
  • Revision ID: james.westby@ubuntu.com-20020104232022-212l76iszpoja15x
Tags: 1.62-9
* The "Fifth anniversary (nearly)" release !
* Spelling in description (Closes: #12465).
* Spelling in copyright (lintian).
* Workaround in texi doc so that "makeinfo --html" can work - texi2html
  still does not (still many warnings).  Brought doc-base file from the
  attic.
* DEB_BUILD_OPTIONS support.
* Bounced Standards-Version to 3.5.6.
* Modernized debian/rules, debhelper v3.
* Split doc in its own package.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#if(0)
2
 
  FTANGLE v1.60,\
3
 
 created with UNIX on "Thursday, September 24, 1998 at 16:12." \
4
 
  COMMAND LINE: "Web/ftangle Web/common -A -# --F -= 1.62/Web/common.c"\
5
 
  RUN TIME:     "Friday, September 25, 1998 at 8:02."\
6
 
  WEB FILE:     "Web/common.web"\
 
2
  FTANGLE v1.61,\
 
3
 created with UNIX on "Friday, September 25, 1998 at 8:02." \
 
4
  COMMAND LINE: "./ftangle ./common -uCONFIG -mCONFIG -mGCC -= common.c"\
 
5
  RUN TIME:     "Tuesday, December 14, 1999 at 0:39."\
 
6
  WEB FILE:     "./common.web"\
7
7
  CHANGE FILE:  (none)
8
8
#endif
9
9
#define _COMMON_h  
10
10
#define COMMON_FCNS_   \
11
11
 
12
 
#define VERSION  "1.61"
 
12
#define VERSION  "1.62"
13
13
#define RELEASE_DATE  "September 23, 1998" \
14
14
 
15
15
#define normal  0
94
94
 
95
95
#define MARK(type,delim,len)mark_cmnt(type,delim,len,p) \
96
96
 
97
 
#define BLANK_OUT(d)MEMSET((d)->pos,040,(d)->len) \
 
97
#define BLANK_OUT(d)MEMSET((d)->pos,' ',(d)->len) \
98
98
 
99
99
#define is_C_style_cmnt  (C_style_cmnt= ((short_cmnt= Cpp_comments&&*lp== \
100
 
057&&*(lp+1)==057))||(*lp==057&&*(lp+1)==052)) \
 
100
'/'&&*(lp+1)=='/'))||(*lp=='/'&&*(lp+1)=='*')) \
101
101
 
102
102
#define start_comment  (is_C_style_cmnt||(*lp==(char)begin_comment0) \
103
103
||(*lp==(char)begin_comment1)) \
104
104
 
105
105
#define start_Rcomment  ((R_style_cmnt= BOOLEAN(*lp==cmnt_char&& \
106
106
*(lp+1)!=cmnt_char&&*(lp-1)!=cmnt_char&& \
107
 
!(*(lp-1)==0100)))||is_C_style_cmnt) \
 
107
!(*(lp-1)=='@')))||is_C_style_cmnt) \
108
108
 
109
109
#define k0  cur0_prms->K0
110
110
#define found_at  cur0_prms->Found_at
136
136
 
137
137
#define hash_size  353 \
138
138
 
139
 
#define stringg  (eight_bits)02 \
 
139
#define stringg  (eight_bits)'\2' \
140
140
 
141
 
#define constant  (eight_bits)03
 
141
#define constant  (eight_bits)'\3'
142
142
#define begin_Xmeta  or_or
143
143
#define end_Xmeta  star_star
144
 
#define cdir  (eight_bits)06
145
 
#define colon_colon  (eight_bits)011 \
 
144
#define cdir  (eight_bits)'\6'
 
145
#define colon_colon  (eight_bits)'\11' \
146
146
 
147
 
#define join  (eight_bits)0177 \
 
147
#define join  (eight_bits)'\177' \
148
148
 
149
149
#define ID0  0200
150
150
#define TOKEN1(a)((a)<ID0) \
167
167
 
168
168
#define ignore  0 \
169
169
 
170
 
#define begin_comment0  (eight_bits)0376
171
 
#define begin_comment1  (eight_bits)0375 \
172
 
 
173
 
#define module_number  (eight_bits)0201
174
 
#define identifier  (eight_bits)0202
175
 
#define id_keyword  (eight_bits)0203 \
176
 
 
177
 
#define L_switch  (eight_bits)0257
178
 
#define begin_FORTRAN  (eight_bits)0260
179
 
#define begin_RATFOR  (eight_bits)0261
180
 
#define begin_C  (eight_bits)0262
181
 
#define begin_LITERAL  (eight_bits)0263 \
182
 
 
183
 
#define verbatim  (eight_bits)0264 \
 
170
#define begin_comment0  (eight_bits)'\xFE'
 
171
#define begin_comment1  (eight_bits)'\xFD' \
 
172
 
 
173
#define module_number  (eight_bits)'\201'
 
174
#define identifier  (eight_bits)'\202'
 
175
#define id_keyword  (eight_bits)'\203' \
 
176
 
 
177
#define L_switch  (eight_bits)'\257'
 
178
#define begin_FORTRAN  (eight_bits)'\260'
 
179
#define begin_RATFOR  (eight_bits)'\261'
 
180
#define begin_C  (eight_bits)'\262'
 
181
#define begin_LITERAL  (eight_bits)'\263' \
 
182
 
 
183
#define verbatim  (eight_bits)'\264' \
184
184
 \
185
185
 
186
 
#define invisible_cmnt  (eight_bits)0265
187
 
#define compiler_directive  (eight_bits)0266
188
 
#define Compiler_Directive  (eight_bits)0267 \
189
 
 
190
 
#define keyword_name  (eight_bits)0270 \
191
 
 
192
 
#define no_index  (eight_bits)0300
193
 
#define yes_index  (eight_bits)0301 \
194
 
 
195
 
#define ascii_constant  (eight_bits)0302
196
 
#define begin_vcmnt  (eight_bits)0303
197
 
#define big_line_break  (eight_bits)0304 \
198
 
 
199
 
#define begin_bp  (eight_bits)0305
200
 
#define insert_bp  (eight_bits)0306 \
201
 
 
202
 
#define begin_meta  (eight_bits)017
203
 
#define end_meta  (eight_bits)027 \
204
 
 
205
 
#define TeX_string  (eight_bits)0307
206
 
#define xref_roman  (eight_bits)0310
207
 
#define xref_typewriter  (eight_bits)0311
208
 
#define xref_wildcard  (eight_bits)0312 \
209
 
 
210
 
#define control_text  (eight_bits)0313 \
211
 
 
212
 
#define begin_nuweb  (eight_bits)0314
213
 
#define no_mac_expand  (eight_bits)0315
214
 
#define set_line_info  (eight_bits)0316
215
 
#define short_fcn  (eight_bits)0317 \
216
 
 
217
 
#define formatt  (eight_bits)0320 \
218
 
 
219
 
#define limbo_text  (eight_bits)0323
220
 
#define op_def  (eight_bits)0324
221
 
#define macro_def  (eight_bits)0325 \
222
 
 
223
 
#define ignore_defn  (eight_bits)0327 \
224
 
 
225
 
#define new_output_file  (eight_bits)0331 \
226
 
 
227
 
#define definition  (eight_bits)0332
228
 
#define undefinition  (eight_bits)0333
229
 
#define WEB_definition  (eight_bits)0334 \
230
 
 
231
 
#define m_ifdef  (eight_bits)0335
232
 
#define m_ifndef  (eight_bits)0336
233
 
#define m_if  (eight_bits)0337
234
 
#define m_else  (eight_bits)0340
235
 
#define m_elif  (eight_bits)0341
236
 
#define m_endif  (eight_bits)0342
237
 
#define m_for  (eight_bits)0343
238
 
#define m_endfor  (eight_bits)0344
239
 
#define m_line  (eight_bits)0345
240
 
#define m_undef  (eight_bits)0346 \
241
 
 
242
 
#define end_of_buffer  (eight_bits)0347 \
243
 
 
244
 
#define begin_code  (eight_bits)0350
245
 
#define module_name  (eight_bits)0351 \
246
 
 
247
 
#define new_module  (eight_bits)0352 \
 
186
#define invisible_cmnt  (eight_bits)'\265'
 
187
#define compiler_directive  (eight_bits)'\266'
 
188
#define Compiler_Directive  (eight_bits)'\267' \
 
189
 
 
190
#define keyword_name  (eight_bits)'\270' \
 
191
 
 
192
#define no_index  (eight_bits)'\300'
 
193
#define yes_index  (eight_bits)'\301' \
 
194
 
 
195
#define ascii_constant  (eight_bits)'\302'
 
196
#define begin_vcmnt  (eight_bits)'\303'
 
197
#define big_line_break  (eight_bits)'\304' \
 
198
 
 
199
#define begin_bp  (eight_bits)'\305'
 
200
#define insert_bp  (eight_bits)'\306' \
 
201
 
 
202
#define begin_meta  (eight_bits)'\17'
 
203
#define end_meta  (eight_bits)'\27' \
 
204
 
 
205
#define TeX_string  (eight_bits)'\307'
 
206
#define xref_roman  (eight_bits)'\310'
 
207
#define xref_typewriter  (eight_bits)'\311'
 
208
#define xref_wildcard  (eight_bits)'\312' \
 
209
 
 
210
#define control_text  (eight_bits)'\313' \
 
211
 
 
212
#define begin_nuweb  (eight_bits)'\314'
 
213
#define no_mac_expand  (eight_bits)'\315'
 
214
#define set_line_info  (eight_bits)'\316'
 
215
#define short_fcn  (eight_bits)'\317' \
 
216
 
 
217
#define formatt  (eight_bits)'\320' \
 
218
 
 
219
#define limbo_text  (eight_bits)'\323'
 
220
#define op_def  (eight_bits)'\324'
 
221
#define macro_def  (eight_bits)'\325' \
 
222
 
 
223
#define ignore_defn  (eight_bits)'\327' \
 
224
 
 
225
#define new_output_file  (eight_bits)'\331' \
 
226
 
 
227
#define definition  (eight_bits)'\332'
 
228
#define undefinition  (eight_bits)'\333'
 
229
#define WEB_definition  (eight_bits)'\334' \
 
230
 
 
231
#define m_ifdef  (eight_bits)'\335'
 
232
#define m_ifndef  (eight_bits)'\336'
 
233
#define m_if  (eight_bits)'\337'
 
234
#define m_else  (eight_bits)'\340'
 
235
#define m_elif  (eight_bits)'\341'
 
236
#define m_endif  (eight_bits)'\342'
 
237
#define m_for  (eight_bits)'\343'
 
238
#define m_endfor  (eight_bits)'\344'
 
239
#define m_line  (eight_bits)'\345'
 
240
#define m_undef  (eight_bits)'\346' \
 
241
 
 
242
#define end_of_buffer  (eight_bits)'\347' \
 
243
 
 
244
#define begin_code  (eight_bits)'\350'
 
245
#define module_name  (eight_bits)'\351' \
 
246
 
 
247
#define new_module  (eight_bits)'\352' \
248
248
 
249
249
#define MAX_ERR_BUF  160 \
250
250
 
317
317
OVERFLW("Keyword buffer","") \
318
318
 
319
319
#define CUR_QUOTE  ((eight_bits)(single_quote||(!double_quote&&R77_or_F)? \
320
 
047:042)) \
321
 
 
322
 
 
 
320
'\'':'"')) \
 
321
 
 
322
/* 2: */
 
323
#line 44 "./common.web"
 
324
 
 
325
/* 5: */
 
326
#line 16 "./typedefs.hweb"
323
327
 
324
328
 
325
329
#ifndef part
331
335
#endif 
332
336
 
333
337
 
 
338
/* :5 */
 
339
/* 6: */
 
340
#line 42 "./typedefs.hweb"
334
341
 
335
342
 
336
343
#if(part == 0 || part == 1)
344
351
#endif
345
352
 
346
353
 
347
 
 
348
 
 
 
354
/* :6 */
 
355
#line 45 "./common.web"
 
356
 
 
357
 
 
358
/* 34: */
 
359
#line 440 "./typedefs.hweb"
349
360
 
350
361
#include "typedefs.h"
351
362
 
352
363
 
353
364
 
354
 
 
355
 
 
 
365
#line 65 "./common.web"
 
366
 
 
367
#line 8 "./xrefs.hweb"
 
368
 
 
369
/* :34 */
 
370
/* 48: */
 
371
#line 72 "./common.web"
356
372
 
357
373
#include "map.h"
358
374
 
 
375
/* :48 */
 
376
#line 47 "./common.web"
359
377
 
 
378
/* 50: */
 
379
#line 84 "./common.web"
360
380
 
361
381
 
362
382
#ifdef ibmpc 
366
386
#endif
367
387
 
368
388
 
 
389
/* :50 */
 
390
/* 52: */
 
391
#line 184 "./common.web"
369
392
 
370
393
 
371
394
IN_COMMON ASCII xord[last_text_char+1];
374
397
#endif
375
398
IN_COMMON outer_char xchr[0200];
376
399
 
 
400
/* :52 */
 
401
/* 65: */
 
402
#line 475 "./common.web"
377
403
 
378
404
 
379
405
extern DOTS dots0[],mcmds[];
380
406
 
381
407
 
 
408
/* :65 */
 
409
/* 66: */
 
410
#line 483 "./common.web"
382
411
 
383
412
 
384
413
IN_COMMON BUF_SIZE delta_dots;
385
414
IN_COMMON BUF_SIZE ndots;
386
415
IN_COMMON DOTS HUGE*dots,HUGE*dots_end,HUGE*next_dot;
387
416
 
 
417
/* :66 */
 
418
/* 72: */
 
419
#line 661 "./common.web"
388
420
 
389
421
 
390
422
IN_COMMON BUF_SIZE buf_size;
408
440
IN_COMMON CMNT_DATA posns[CMNT_MARKS],HUGE*pcmnt CSET(posns),
409
441
HUGE*pcmnt_end CSET(posns+CMNT_MARKS);
410
442
 
 
443
/* :72 */
 
444
/* 96: */
 
445
#line 1504 "./common.web"
411
446
 
412
447
 
413
448
IN_COMMON ASCII HUGE*pk;
414
449
 
 
450
/* :96 */
 
451
/* 98: */
 
452
#line 1549 "./common.web"
415
453
 
416
454
 
417
455
IN_COMMON ASCII HUGE*lp,HUGE*semi_pos;
418
456
IN_COMMON boolean found_text,text,C_style_cmnt,short_cmnt,R_style_cmnt;
419
457
 
 
458
/* :98 */
 
459
/* 103: */
 
460
#line 1693 "./common.web"
420
461
 
421
462
 
422
463
IN_COMMON ASCII HUGE*last_pos;
423
464
IN_COMMON ASCII cmnt_char;
424
465
 
 
466
/* :103 */
 
467
/* 130: */
 
468
#line 2443 "./common.web"
425
469
 
426
470
 
427
471
IN_COMMON sixteen_bits module_count;
440
484
 
441
485
 
442
486
 
 
487
/* :130 */
 
488
/* 162: */
 
489
#line 3325 "./common.web"
443
490
 
444
491
 
445
492
 
512
559
#endif 
513
560
 
514
561
 
 
562
/* :162 */
 
563
/* 171: */
 
564
#line 3678 "./common.web"
515
565
 
516
566
 
517
567
IN_COMMON name_pointer name_ptr;
518
568
IN_COMMON ASCII HUGE*byte_ptr;
519
569
 
 
570
/* :171 */
 
571
/* 214: */
 
572
#line 4962 "./common.web"
520
573
 
521
574
 
522
575
IN_COMMON ASCII HUGE*pformat,HUGE*pdefault,HUGE*pdata,
523
576
HUGE*pbp,HUGE*pinclude,HUGE*ppragma,HUGE*pcontains;
524
577
 
 
578
/* :214 */
 
579
/* 216: */
 
580
#line 4996 "./common.web"
525
581
 
526
582
 
527
583
IN_COMMON outer_char outp_buf[MAX_OUTPUT_LINE_LENGTH];
536
592
 
537
593
IN_COMMON boolean all_std CSET(NO);
538
594
 
 
595
/* :216 */
 
596
/* 263: */
 
597
#line 6559 "./common.web"
539
598
 
540
599
 
541
600
IN_COMMON STMT_LBL max_stmt CSET(STARTING_DO_NUM);
542
601
IN_COMMON int not;
543
602
 
 
603
/* :263 */
 
604
/* 283: */
 
605
#line 7419 "./common.web"
544
606
 
545
607
 
546
608
IN_COMMON double g_ratio CSET(G_RATIO);
547
609
IN_COMMON unsigned short marginal_cases CSET(MARGINAL_CASES);
548
610
IN_COMMON CASE_TYPE max_spread CSET(MAX_SPREAD);
549
611
 
 
612
/* :283 */
 
613
/* 335: */
 
614
#line 8869 "./common.web"
550
615
 
551
616
 
552
617
IN_COMMON CONST char*day[]
562
627
#endif 
563
628
;
564
629
 
 
630
/* :335 */
 
631
/* 338: */
 
632
#line 8943 "./common.web"
565
633
 
566
634
 
567
635
#if TIMING
593
661
 
594
662
#endif 
595
663
 
 
664
/* :338 */
 
665
#line 48 "./common.web"
596
666
 
 
667
/* 37: */
 
668
#line 79 "./xrefs.hweb"
597
669
 
598
670
 
599
671
typedef struct xref_info0
609
681
 
610
682
 
611
683
 
 
684
/* :37 */
 
685
/* 39: */
 
686
#line 27 "./tokens.hweb"
612
687
 
613
688
 
614
689
typedef sixteen_bits Token;
615
690
typedef Token HUGE*token_pointer;
616
691
typedef token_pointer HUGE*text_pointer;
617
692
 
 
693
/* :39 */
 
694
/* 41: */
 
695
#line 44 "./scraps.hweb"
618
696
 
619
697
 
620
698
typedef struct
626
704
union
627
705
{
628
706
text_pointer Trans;
629
 
 
630
 
 
 
707
/* 49: */
 
708
#line 77 "./common.web"
 
709
 
 
710
 
 
711
/* :49 */
 
712
#line 55 "./scraps.hweb"
631
713
 
632
714
}trans_plus;
633
715
}scrap;
634
716
 
635
717
typedef scrap HUGE*scrap_pointer;
636
718
 
 
719
/* :41 */
 
720
/* 46: */
 
721
#line 46 "./stacks.hweb"
637
722
 
 
723
#line 47 "./stacks.hweb"
638
724
 
639
725
typedef struct{
640
726
eight_bits HUGE*end_field;
649
735
 
650
736
typedef output_state HUGE*stack_pointer;
651
737
 
 
738
/* :46 */
 
739
/* 169: */
 
740
#line 19 "./trunc.hweb"
652
741
 
653
742
 
654
743
#if(0)
679
768
BP HUGE*first,HUGE*last;
680
769
struct Trunc HUGE*next;
681
770
}TRUNC;
 
771
#line 3628 "./common.web"
682
772
 
 
773
/* :169 */
 
774
/* 237: */
 
775
#line 5713 "./common.web"
683
776
 
684
777
 
685
778
typedef struct
694
787
IN_COMMON outer_char HUGE*HUGE*mod_names;
695
788
IN_COMMON outer_char HUGE*HUGE*next_mod_name,HUGE*HUGE*last_mod_name;
696
789
 
 
790
/* :237 */
 
791
#line 49 "./common.web"
697
792
 
 
793
/* 74: */
 
794
#line 761 "./common.web"
698
795
 
699
796
 
700
797
IN_COMMON long start_line CSET(1);
701
798
 
702
799
IN_COMMON long end_line CSET(LONG_MAX);
703
800
 
 
801
/* :74 */
 
802
/* 136: */
 
803
#line 2576 "./common.web"
704
804
 
705
805
 
706
806
IN_COMMON int stored_line_length;
707
807
IN_COMMON ASCII HUGE*stored_line;
708
808
 
 
809
/* :136 */
 
810
/* 138: */
 
811
#line 2624 "./common.web"
709
812
 
710
813
 
711
814
IN_COMMON outer_char last_include_file[MAX_FILE_NAME_LENGTH]CSET(""),
712
815
this_include_file[MAX_FILE_NAME_LENGTH]CSET("");
713
816
 
 
817
/* :138 */
 
818
#line 50 "./common.web"
714
819
 
 
820
/* 33: */
 
821
#line 426 "./typedefs.hweb"
715
822
 
716
823
 
717
824
 
725
832
 
726
833
 
727
834
 
 
835
/* :33 */
 
836
/* 36: */
 
837
#line 47 "./xrefs.hweb"
728
838
 
729
839
 
730
840
EXTERN boolean change_exists;
731
841
 
 
842
/* :36 */
 
843
/* 38: */
 
844
#line 111 "./xrefs.hweb"
732
845
 
733
846
 
734
847
#ifndef COMMON_FCNS_
746
859
EXTERN NAME_TYPE defd_type SET(NEVER_DEFINED);
747
860
EXTERN boolean typd_switch;
748
861
EXTERN boolean index_short;
 
862
#line 8 "./tokens.hweb"
749
863
 
 
864
/* :38 */
 
865
/* 40: */
 
866
#line 37 "./tokens.hweb"
750
867
 
751
868
 
752
869
EXTERN long max_toks;
764
881
 
765
882
EXTERN token_pointer mx_tok_ptr;
766
883
EXTERN text_pointer mx_text_ptr;
 
884
#line 8 "./scraps.hweb"
767
885
 
 
886
/* :40 */
 
887
/* 42: */
 
888
#line 67 "./scraps.hweb"
768
889
 
769
890
 
770
891
EXTERN long max_scraps;
779
900
 
780
901
EXTERN scrap_pointer mx_scr_ptr;
781
902
 
 
903
/* :42 */
 
904
/* 47: */
 
905
#line 82 "./stacks.hweb"
782
906
 
783
907
 
784
908
EXTERN output_state cur_state;
788
912
EXTERN output_state HUGE*stack;
789
913
EXTERN stack_pointer stck_end;
790
914
EXTERN stack_pointer stck_ptr;
 
915
#line 70 "./common.web"
791
916
 
 
917
/* :47 */
 
918
/* 91: */
 
919
#line 1356 "./common.web"
792
920
 
793
921
 
794
922
IN_COMMON ASCII string_char;
795
923
IN_COMMON boolean in_char_string;
796
924
 
 
925
/* :91 */
 
926
/* 121: */
 
927
#line 2196 "./common.web"
797
928
 
798
929
 
799
930
IN_COMMON INPUT_PARAMS change_params0
802
933
#endif
803
934
;
804
935
 
 
936
/* :121 */
 
937
/* 140: */
 
938
#line 2695 "./common.web"
805
939
 
806
940
 
807
941
IN_COMMON BUF_SIZE max_ifiles;
808
942
IN_COMMON outer_char**ifiles;
809
943
IN_COMMON int num_ifiles;
810
944
 
 
945
/* :140 */
 
946
/* 150: */
 
947
#line 3051 "./common.web"
811
948
 
812
949
 
813
950
IN_COMMON BUF_SIZE max_keywords;
814
951
IN_COMMON RCS HUGE*rcs;
815
952
IN_COMMON unsigned num_keywords;
816
953
 
 
954
/* :150 */
 
955
/* 155: */
 
956
#line 10 "./mem.hweb"
817
957
 
 
958
#line 11 "./mem.hweb"
818
959
 
819
960
#ifndef C_TYPES
820
961
#include SFILE(y_type.h)
821
962
#endif 
 
963
#line 3163 "./common.web"
822
964
 
 
965
/* :155 */
 
966
/* 156: */
 
967
#line 3168 "./common.web"
823
968
 
824
969
 
825
970
IN_COMMON BUF_SIZE total_mem CSET(0);
826
971
 
827
972
IN_COMMON BUF_SIZE max_mem CSET(0);
828
973
 
 
974
/* :156 */
 
975
/* 161: */
 
976
#line 3312 "./common.web"
829
977
 
830
978
 
831
979
IN_COMMON boolean show_mem CSET(SHOW_MEM);
832
980
IN_COMMON BUF_SIZE show_size CSET(10000);
833
981
 
 
982
/* :161 */
 
983
/* 163: */
 
984
#line 3398 "./common.web"
834
985
 
835
986
 
836
987
IN_COMMON MEM mem[]
914
1065
 
915
1066
IN_COMMON size_t sizeof_mem CSET(sizeof(mem));
916
1067
 
 
1068
/* :163 */
 
1069
/* 182: */
 
1070
#line 3895 "./common.web"
917
1071
 
918
1072
 
919
1073
IN_COMMON boolean info_option CSET(NO);
926
1080
IN_COMMON outer_char HUGE*style_args CSET(NULL);
927
1081
IN_STYLE ASCII HUGE*at_codes;
928
1082
 
 
1083
/* :182 */
 
1084
/* 197: */
 
1085
#line 4204 "./common.web"
929
1086
 
930
1087
 
931
1088
IN_COMMON CONST char*origin_name[]
934
1091
#endif 
935
1092
;
936
1093
 
 
1094
/* :197 */
 
1095
/* 218: */
 
1096
#line 5044 "./common.web"
937
1097
 
938
1098
 
939
1099
IN_COMMON boolean found_web,found_change;
940
1100
IN_COMMON outer_char wbflnm0[MAX_FILE_NAME_LENGTH];
941
1101
 
942
1102
 
 
1103
/* :218 */
 
1104
/* 221: */
 
1105
#line 5147 "./common.web"
943
1106
 
944
1107
 
945
1108
IN_COMMON outer_char
952
1115
IN_COMMON outer_char HUGE*HUGE*pn1;
953
1116
IN_COMMON FILE*ini_file CSET(NULL);
954
1117
 
 
1118
/* :221 */
 
1119
/* 226: */
 
1120
#line 5366 "./common.web"
955
1121
 
956
1122
 
957
1123
IN_COMMON INCL_PATHS incl;
958
1124
IN_COMMON INCL_PATHS hdr_incl;
959
1125
 
 
1126
/* :226 */
 
1127
/* 243: */
 
1128
#line 5912 "./common.web"
960
1129
 
961
1130
 
962
1131
jmp_buf top_of_get_arg;
963
1132
 
 
1133
/* :243 */
 
1134
/* 249: */
 
1135
#line 6138 "./common.web"
964
1136
 
965
1137
 
966
1138
IN_COMMON outer_char style_file_name[MAX_FILE_NAME_LENGTH]
967
1139
CSET(STYLE_FILE_NAME);
968
1140
IN_COMMON boolean renamed_style CSET(NO);
969
1141
 
 
1142
/* :249 */
 
1143
/* 252: */
 
1144
#line 6175 "./common.web"
970
1145
 
971
1146
 
972
1147
IN_COMMON boolean doing_cmd_line;
973
1148
IN_COMMON boolean cmd_prms;
974
1149
 
 
1150
/* :252 */
 
1151
/* 291: */
 
1152
#line 7691 "./common.web"
975
1153
 
976
1154
 
977
1155
IN_COMMON ASCII HUGE*fbuffer,HUGE*flimit,HUGE*floc;
978
1156
 
979
1157
 
 
1158
/* :291 */
 
1159
/* 295: */
 
1160
#line 7760 "./common.web"
980
1161
 
981
1162
 
982
1163
IN_COMMON BUF_SIZE starting_memory CSET(ULONG_MAX);
983
1164
 
984
1165
 
 
1166
/* :295 */
 
1167
/* 308: */
 
1168
#line 8096 "./common.web"
985
1169
 
986
1170
 
987
1171
IN_COMMON outer_char*extra_args;
988
1172
 
989
1173
IN_COMMON boolean mod_warning_flag CSET(NEVER_USED);
990
1174
 
 
1175
/* :308 */
 
1176
/* 348: */
 
1177
#line 9221 "./common.web"
991
1178
 
992
1179
 
993
1180
IN_COMMON boolean single_quote CSET(NO),double_quote CSET(NO);
994
1181
 
 
1182
/* :348 */
 
1183
#line 51 "./common.web"
995
1184
 
996
1185
 
997
1186
 
998
1187
 
999
1188
#if(part != 2)
 
1189
/* 53: */
 
1190
#line 204 "./common.web"
1000
1191
 
1001
1192
 
1002
1193
SRTN
1011
1202
 
1012
1203
is_Rat_present();
1013
1204
 
 
1205
/* 54: */
 
1206
#line 243 "./common.web"
1014
1207
 
1015
1208
{
1016
1209
STRNCPY(xchr,"                                 !\"#$%&'()*+,-./0123456789\
1019
1212
 
1020
1213
 
1021
1214
xchr[tab_mark]= '\t';
1022
 
xchr[012]= '\n';
1023
 
 
1024
 
 
1025
 
 
 
1215
xchr['\n']= '\n';
 
1216
 
 
1217
/* 60: */
 
1218
#line 411 "./common.web"
 
1219
 
 
1220
 
 
1221
/* :60 */
 
1222
#line 253 "./common.web"
1026
1223
;
 
1224
/* 55: */
 
1225
#line 260 "./common.web"
1027
1226
 
1028
1227
{
1029
1228
int i;
1032
1231
 
1033
1232
for(i= first_text_char;i<=last_text_char;i++)
1034
1233
{
1035
 
xord[i]= 040;
 
1234
xord[i]= ' ';
1036
1235
#ifdef scramble_ASCII
1037
 
xxord[i]= 040;
 
1236
xxord[i]= ' ';
1038
1237
#endif
1039
1238
}
1040
1239
 
1058
1257
#endif
1059
1258
}
1060
1259
 
 
1260
/* :55 */
 
1261
#line 254 "./common.web"
1061
1262
;
1062
1263
}
1063
1264
 
 
1265
/* :54 */
 
1266
#line 218 "./common.web"
1064
1267
 
 
1268
/* 212: */
 
1269
#line 4729 "./common.web"
1065
1270
 
1066
1271
{
1067
1272
int k;
1069
1274
for(k= 0;k<128;k++)
1070
1275
TeX[k]= TeX_other;
1071
1276
 
1072
 
for(k= 0101;k<=0132;k++)
1073
 
TeX[k]= TeX_letter;
1074
 
 
1075
 
for(k= 0141;k<=0172;k++)
1076
 
TeX[k]= TeX_letter;
1077
 
 
1078
 
TeX[0134]= TeX_escape;
1079
 
TeX[0173]= TeX_bgroup;
1080
 
TeX[0175]= TeX_egroup;
1081
 
TeX[044]= TeX_math_shift;
1082
 
TeX[046]= TeX_alignment_tab;
1083
 
TeX[012]= TeX_eol;
1084
 
TeX[043]= TeX_parameter;
1085
 
TeX[0136]= TeX_superscript;
1086
 
TeX[0137]= TeX_subscript;
 
1277
for(k= 'A';k<='Z';k++)
 
1278
TeX[k]= TeX_letter;
 
1279
 
 
1280
for(k= 'a';k<='z';k++)
 
1281
TeX[k]= TeX_letter;
 
1282
 
 
1283
TeX['\\']= TeX_escape;
 
1284
TeX['{']= TeX_bgroup;
 
1285
TeX['}']= TeX_egroup;
 
1286
TeX['$']= TeX_math_shift;
 
1287
TeX['&']= TeX_alignment_tab;
 
1288
TeX['\n']= TeX_eol;
 
1289
TeX['#']= TeX_parameter;
 
1290
TeX['^']= TeX_superscript;
 
1291
TeX['_']= TeX_subscript;
1087
1292
TeX[0]= TeX_ignored;
1088
 
TeX[040]= TeX[tab_mark]= TeX_space;
1089
 
TeX[0176]= TeX_active;
1090
 
TeX[045]= TeX_comment;
 
1293
TeX[' ']= TeX[tab_mark]= TeX_space;
 
1294
TeX['~']= TeX_active;
 
1295
TeX['%']= TeX_comment;
1091
1296
TeX[0177]= TeX_invalid;
1092
1297
}
1093
1298
 
 
1299
/* :212 */
 
1300
#line 219 "./common.web"
1094
1301
;
 
1302
/* 124: */
 
1303
#line 2221 "./common.web"
1095
1304
 
1096
1305
{
1097
1306
ALLOC(INPUT_PRMS,prms,"id",max_include_depth,1);
1098
1307
}
1099
1308
 
 
1309
/* :124 */
 
1310
/* 174: */
 
1311
#line 3708 "./common.web"
1100
1312
 
1101
1313
 
1102
1314
hash= GET_MEM("hash",hash_size,name_pointer);
1104
1316
 
1105
1317
for(h= hash;h<=hash_end;*h++= NULL);
1106
1318
 
 
1319
/* :174 */
 
1320
/* 215: */
 
1321
#line 4969 "./common.web"
1107
1322
 
1108
1323
{
1109
1324
pformat= x__to_ASCII(OC("format"));
1121
1336
conv_dot(mcmds);
1122
1337
}
1123
1338
 
 
1339
/* :215 */
 
1340
/* 262: */
 
1341
#line 6551 "./common.web"
1124
1342
 
1125
1343
 
1126
1344
SET_VAL(mbuf_size,"mb");
1127
1345
 
 
1346
/* :262 */
 
1347
/* 300: */
 
1348
#line 7865 "./common.web"
1128
1349
 
1129
1350
{
1130
1351
init_buf(&sput_buf,10);
1131
1352
init_buf(&c_buf,10);
1132
1353
}
1133
1354
 
 
1355
/* :300 */
 
1356
#line 220 "./common.web"
1134
1357
;
1135
1358
predefine_macros();
1136
1359
 
 
1360
/* 213: */
 
1361
#line 4761 "./common.web"
1137
1362
 
1138
1363
{
1139
1364
params.uses= 0;
1331
1556
global_params= params;
1332
1557
}
1333
1558
 
1334
 
 
1335
 
 
 
1559
/* :213 */
 
1560
#line 223 "./common.web"
 
1561
 
 
1562
 
 
1563
/* 325: */
 
1564
#line 8594 "./common.web"
1336
1565
 
1337
1566
{
 
1567
/* 326: */
 
1568
#line 8619 "./common.web"
1338
1569
 
1339
1570
{
1340
1571
int k;
1348
1579
new_fname(params.outp_nm+k,NULL,NULL);
1349
1580
}
1350
1581
 
 
1582
/* :326 */
 
1583
#line 8596 "./common.web"
1351
1584
 
1352
1585
scan_args();
1353
1586
 
1356
1589
{
1357
1590
ini_input_prms(WEB_FILE,(outer_char HUGE*)"",ABORT_ON_ERROR);
1358
1591
 
 
1592
/* 328: */
 
1593
#line 8671 "./common.web"
1359
1594
 
1360
1595
{
1361
1596
outer_char temp1[100],temp2[1000],
1393
1628
STRCAT(cmd_ln_buf,temp2);
1394
1629
}
1395
1630
 
 
1631
/* :328 */
 
1632
#line 8604 "./common.web"
1396
1633
;
1397
1634
 
1398
1635
if(program==weave)
1407
1644
global_params= params;
1408
1645
}
1409
1646
 
 
1647
/* :325 */
 
1648
#line 225 "./common.web"
1410
1649
;
1411
1650
 
1412
1651
#if 0
1414
1653
#endif
1415
1654
 
1416
1655
 
 
1656
/* 67: */
 
1657
#line 490 "./common.web"
1417
1658
 
1418
1659
{
1419
1660
DOTS HUGE*d;
1432
1673
}
1433
1674
}
1434
1675
 
 
1676
/* :67 */
 
1677
/* 125: */
 
1678
#line 2230 "./common.web"
1435
1679
 
1436
1680
{
1437
1681
BUF_SIZE cur_prms_units;
1444
1688
(DFLT_MAX_INCLUDE_DEPTH+1)*sizeof(INPUT_PRMS));
1445
1689
}
1446
1690
 
 
1691
/* :125 */
 
1692
/* 131: */
 
1693
#line 2462 "./common.web"
1447
1694
 
1448
1695
 
1449
1696
ALLOC(boolean,chngd_module,"m",max_modules,0);
1450
1697
 
 
1698
/* :131 */
 
1699
/* 141: */
 
1700
#line 2702 "./common.web"
1451
1701
 
1452
1702
{
1453
1703
ALLOC(outer_char*,ifiles,"if",max_ifiles,0);
1454
1704
}
1455
1705
 
 
1706
/* :141 */
 
1707
/* 151: */
 
1708
#line 3058 "./common.web"
1456
1709
 
1457
1710
{
1458
1711
ALLOC(RCS,rcs,"rk",max_keywords,0);
1459
1712
}
1460
1713
 
 
1714
/* :151 */
 
1715
/* 168: */
 
1716
#line 3615 "./common.web"
1461
1717
 
1462
1718
 
1463
1719
ALLOC(ASCII,byte_mem,"b",max_bytes,0);
1470
1726
ALLOC(ASCII,mod_text,"ln",longest_name,1);
1471
1727
mod_end= mod_text+longest_name;
1472
1728
 
 
1729
#line 8 "./trunc.hweb"
1473
1730
 
 
1731
/* :168 */
 
1732
/* 238: */
 
1733
#line 5728 "./common.web"
1474
1734
 
1475
1735
 
1476
1736
ALLOC(SECT_INFO,sect_info,"m",max_modules,0);
1477
1737
 
 
1738
/* :238 */
 
1739
/* 334: */
 
1740
#line 8854 "./common.web"
1478
1741
 
1479
1742
{
1480
1743
if(program==tangle)
1484
1747
}
1485
1748
}
1486
1749
 
 
1750
/* :334 */
 
1751
#line 232 "./common.web"
1487
1752
 
 
1753
/* 172: */
 
1754
#line 3684 "./common.web"
1488
1755
 
1489
1756
 
1490
1757
CAST(name_pointer,name_dir)->byte_start= byte_ptr= byte_mem;
1493
1760
CAST(name_pointer,name_ptr)->byte_start= byte_mem;
1494
1761
 
1495
1762
 
 
1763
/* :172 */
 
1764
/* 190: */
 
1765
#line 4027 "./common.web"
1496
1766
 
1497
1767
 
1498
1768
root= NULL;
1499
1769
 
 
1770
/* :190 */
 
1771
#line 233 "./common.web"
1500
1772
;
 
1773
/* 183: */
 
1774
#line 3910 "./common.web"
1501
1775
 
1502
1776
{
1503
1777
if(rsrvd.args)see_reserved(&rsrvd);
1507
1781
wrap_up();
1508
1782
}
1509
1783
 
 
1784
/* :183 */
 
1785
#line 234 "./common.web"
1510
1786
 
1511
1787
 
1512
1788
more_includes(&incl,wt_style.Idir);
1515
1791
read_aux();
1516
1792
}
1517
1793
 
 
1794
/* :53 */
 
1795
/* 56: */
 
1796
#line 299 "./common.web"
1518
1797
 
1519
1798
 
1520
1799
ASCII HUGE*
1538
1817
return(ASCII HUGE*)p0;
1539
1818
}
1540
1819
 
 
1820
/* :56 */
 
1821
/* 57: */
 
1822
#line 325 "./common.web"
1541
1823
 
1542
1824
 
1543
1825
ASCII HUGE*
1578
1860
return(ASCII HUGE*)p0;
1579
1861
}
1580
1862
 
 
1863
/* :57 */
 
1864
/* 58: */
 
1865
#line 366 "./common.web"
1581
1866
 
1582
1867
 
1583
1868
ASCII HUGE*
1593
1878
return(ASCII HUGE*)p0;
1594
1879
}
1595
1880
 
 
1881
/* :58 */
 
1882
/* 59: */
 
1883
#line 383 "./common.web"
1596
1884
 
1597
1885
 
1598
1886
outer_char HUGE*
1607
1895
return(outer_char HUGE*)p0;
1608
1896
}
1609
1897
 
 
1898
/* :59 */
 
1899
/* 62: */
 
1900
#line 422 "./common.web"
1610
1901
 
1611
1902
 
1612
1903
boolean
1619
1910
 
1620
1911
if(program==tangle)return NO;
1621
1912
 
1622
 
if(!(*id_first==044||*id_first==0137))return NO;
 
1913
if(!(*id_first=='$'||*id_first=='_'))return NO;
1623
1914
return is_in(WEB_incl_likes,id_first,id_loc);
1624
1915
}
1625
1916
 
 
1917
/* :62 */
 
1918
/* 63: */
 
1919
#line 439 "./common.web"
1626
1920
 
1627
1921
SRTN conv_bi FCN((b))
1628
1922
BUILT_IN HUGE*b C1("")
1639
1933
d->symbol= x__to_ASCII((outer_char*)d->symbol);
1640
1934
}
1641
1935
 
 
1936
/* :63 */
 
1937
/* 64: */
 
1938
#line 457 "./common.web"
1642
1939
 
1643
1940
 
1644
1941
boolean
1656
1953
return NO;
1657
1954
}
1658
1955
 
 
1956
/* :64 */
 
1957
/* 68: */
 
1958
#line 510 "./common.web"
1659
1959
 
1660
1960
 
1661
1961
ASCII HUGE*
1671
1971
return p;
1672
1972
}
1673
1973
 
 
1974
/* :68 */
 
1975
/* 69: */
 
1976
#line 528 "./common.web"
1674
1977
 
1675
1978
 
1676
1979
boolean
1683
1986
 
1684
1987
 
1685
1988
for(p= loc,n= 0;n<MAX_DOT_LENGTH;n++,p++)
1686
 
if(*p==056||!isAlpha(*p))
 
1989
if(*p=='.'||!isAlpha(*p))
1687
1990
break;
1688
1991
 
1689
 
if(*p!=056||p==loc)
 
1992
if(*p!='.'||p==loc)
1690
1993
return NO;
1691
1994
 
1692
1995
 
1696
1999
YES,NO));
1697
2000
}
1698
2001
 
 
2002
/* :69 */
 
2003
/* 70: */
 
2004
#line 557 "./common.web"
1699
2005
 
1700
2006
 
1701
2007
eight_bits
1748
2054
goto re_dot;
1749
2055
}
1750
2056
 
 
2057
/* :70 */
 
2058
/* 71: */
 
2059
#line 611 "./common.web"
1751
2060
 
1752
2061
 
1753
2062
eight_bits
1766
2075
}
1767
2076
 
1768
2077
 
 
2078
/* :71 */
 
2079
/* 73: */
 
2080
#line 692 "./common.web"
1769
2081
 
1770
2082
 
1771
2083
boolean
1810
2122
 
1811
2123
if(column_mode&&FORTRAN_LIKE(language)&&
1812
2124
PTR_DIFF(size_t,limit,cur_buffer)==2&&
1813
 
((!auto_semi&&(cur_buffer[1]==073||cur_buffer[1]==040))||
1814
 
(auto_semi&&cur_buffer[1]==073&&(cur_buffer[0]=='C'||
1815
 
cur_buffer[0]==0143||cur_buffer[0]==052))))
 
2125
((!auto_semi&&(cur_buffer[1]==';'||cur_buffer[1]==' '))||
 
2126
(auto_semi&&cur_buffer[1]==';'&&(cur_buffer[0]=='C'||
 
2127
cur_buffer[0]=='c'||cur_buffer[0]=='*'))))
1816
2128
empty_line:
1817
2129
limit= cur_buffer;
1818
2130
 
 
2131
/* :73 */
 
2132
/* 73: */
 
2133
#line 746 "./common.web"
1819
2134
 
1820
2135
#if(DEBUG)
 
2136
/* 75: */
 
2137
#line 768 "./common.web"
1821
2138
 
1822
2139
{
1823
2140
register ASCII HUGE*k;
1860
2177
}
1861
2178
}
1862
2179
 
 
2180
/* :75 */
 
2181
#line 748 "./common.web"
1863
2182
;
1864
2183
#endif
1865
2184
 
1866
2185
return YES;
1867
2186
}
1868
2187
 
 
2188
/* :73 */
 
2189
/* 76: */
 
2190
#line 816 "./common.web"
1869
2191
 
1870
2192
 
1871
2193
boolean
1874
2196
register int c= '\0';
1875
2197
register ASCII HUGE*k;
1876
2198
 
 
2199
/* 77: */
 
2200
#line 830 "./common.web"
1877
2201
 
1878
2202
{
1879
2203
if(num_in_buffer!=0)
 
2204
/* 82: */
 
2205
#line 1011 "./common.web"
1880
2206
 
1881
2207
{
1882
2208
STRNCPY(cur_buffer,k0,num_in_buffer);
1885
2211
num_in_buffer= 0;
1886
2212
}
1887
2213
 
 
2214
/* :82 */
 
2215
#line 833 "./common.web"
1888
2216
 
1889
2217
else
1890
2218
{
1891
2219
if(feof(cur0_prms->File))
1892
2220
return NO;
1893
2221
 
 
2222
/* 78: */
 
2223
#line 857 "./common.web"
1894
2224
 
1895
2225
{
1896
2226
k= cur_buffer;
1897
2227
 
 
2228
/* :78 */
 
2229
/* 78: */
 
2230
#line 867 "./common.web"
1898
2231
 
1899
2232
while(k<=buffer_end&&(c= getc(cur0_prms->File))!=EOF&&c!='\n')
1900
 
if((*(k++)= XORD(c))!=040)limit= k;
 
2233
if((*(k++)= XORD(c))!=' ')limit= k;
1901
2234
 
1902
2235
 
1903
2236
 
1912
2245
return NO;
1913
2246
}
1914
2247
 
 
2248
/* :78 */
 
2249
#line 839 "./common.web"
1915
2250
;
 
2251
/* :77 */
 
2252
/* 77: */
 
2253
#line 843 "./common.web"
1916
2254
}
1917
2255
}
1918
2256
 
 
2257
/* :77 */
 
2258
#line 824 "./common.web"
1919
2259
 
1920
2260
 
1921
2261
return YES;
1922
2262
}
1923
2263
 
 
2264
/* :76 */
 
2265
/* 80: */
 
2266
#line 940 "./common.web"
1924
2267
 
1925
2268
 
1926
2269
boolean
1940
2283
 
1941
2284
for(k= limit;;k= k0= (limit+= N_END),first_line= NO,cur_line++)
1942
2285
if(num_in_buffer==0)
 
2286
/* 83: */
 
2287
#line 1020 "./common.web"
1943
2288
 
1944
2289
{
1945
2290
int i;
1955
2300
 
1956
2301
k0= limit;
1957
2302
 
 
2303
/* 85: */
 
2304
#line 1121 "./common.web"
1958
2305
 
1959
2306
{
1960
2307
if(ignore_C)
 
2308
/* 87: */
 
2309
#line 1218 "./common.web"
1961
2310
 
1962
2311
{
1963
2312
first_char:
1986
2335
}
1987
2336
}
1988
2337
 
 
2338
/* :87 */
 
2339
#line 1124 "./common.web"
1989
2340
 
1990
2341
 
1991
2342
while(k<=buffer_end&&(c= getc(cur0_prms->File))!=EOF&&c!='\n')
1992
2343
if(c=='\t'&&k<=buffer_end-6)
1993
2344
for(i= 0;i<6;++i)
1994
 
*(k++)= 040;
 
2345
*(k++)= ' ';
1995
2346
 
1996
2347
else
1997
2348
{
2000
2351
 
2001
2352
if(c==';')
2002
2353
c= XCHR(interior_semi);
2003
 
else if(point_comments&&(*k0!=0100)&&
 
2354
else if(point_comments&&(*k0!='@')&&
2004
2355
(escaped_char= BOOLEAN(c=='\\')))
2005
2356
{
2006
2357
c= getc(cur0_prms->File);
2015
2366
 
2016
2367
 
2017
2368
if((*(k++)= CHOICE(IS_POINT(c)&&!escaped_char,
2018
 
(ASCII)begin_comment1,XORD(c)))!=040)
 
2369
(ASCII)begin_comment1,XORD(c)))!=' ')
2019
2370
limit= k;
2020
2371
}
2021
2372
 
2030
2381
 
2031
2382
}
2032
2383
 
 
2384
/* :85 */
 
2385
#line 1035 "./common.web"
2033
2386
;
2034
2387
 
2035
2388
 
2036
2389
 
2037
 
MEMSET(limit,040,N_END);
 
2390
MEMSET(limit,' ',N_END);
2038
2391
num_in_buffer= 0;
2039
2392
 
2040
2393
 
2041
2394
 
2042
 
at_line= BOOLEAN(*k0==0100&&*(k0+1)!=057);
 
2395
at_line= BOOLEAN(*k0=='@'&&*(k0+1)!='/');
2043
2396
 
2044
 
if(at_line&&(*(k0+1)==052||*(k0+1)==040))
 
2397
if(at_line&&(*(k0+1)=='*'||*(k0+1)==' '))
2045
2398
found_at= YES;
2046
2399
 
2047
2400
 
2065
2418
}
2066
2419
 
2067
2420
if(!(at_line||scanning_C_cmnt))
 
2421
/* 86: */
 
2422
#line 1172 "./common.web"
2068
2423
 
2069
2424
{
2070
2425
boolean is_cmnt= NO,Fortran_cmnt= NO,C_cmnt= NO;
2075
2430
 
2076
2431
switch(*k0)
2077
2432
{
2078
 
case 0103:
2079
 
case 0143:
2080
 
case 052:
 
2433
case 'C':
 
2434
case 'c':
 
2435
case '*':
2081
2436
case(ASCII)begin_comment0:
2082
2437
case(ASCII)begin_comment1:
2083
2438
is_cmnt= Fortran_cmnt= YES;
2086
2441
default:
2087
2442
 
2088
2443
for(;p<limit;p++)
2089
 
if(*p!=040)
 
2444
if(*p!=' ')
2090
2445
break;
2091
2446
 
2092
 
if((*p==057&&(*(p+1)==052
2093
 
||(*(p+1)==057&&Cpp_comments&&!ignore_C)))
 
2447
if((*p=='/'&&(*(p+1)=='*'
 
2448
||(*(p+1)=='/'&&Cpp_comments&&!ignore_C)))
2094
2449
||*p==(ASCII)begin_comment0
2095
2450
||*p==(ASCII)begin_comment1)
2096
2451
is_cmnt= C_cmnt= YES;
2098
2453
}
2099
2454
 
2100
2455
if(is_cmnt)
 
2456
/* 88: */
 
2457
#line 1250 "./common.web"
2101
2458
 
2102
2459
{
2103
2460
if(limit==k0+1)
2111
2468
}
2112
2469
 
2113
2470
if(k0>cur_buffer)
2114
 
MEMSET(k0-N_END,040,N_END);
 
2471
MEMSET(k0-N_END,' ',N_END);
2115
2472
 
2116
2473
if(Fortran_cmnt)
2117
2474
*p= begin_comment1;
2131
2488
}
2132
2489
 
2133
2490
 
2134
 
 
2135
 
 
2136
 
 
2137
 
 
2138
 
 
2139
 
if(limit-k0>=5&&!(k0[5]==040||k0[5]==060))
 
2491
/* :88 */
 
2492
#line 1205 "./common.web"
 
2493
 
 
2494
 
 
2495
 
 
2496
 
 
2497
 
 
2498
if(limit-k0>=5&&!(k0[5]==' '||k0[5]=='0'))
 
2499
/* 89: */
 
2500
#line 1289 "./common.web"
2140
2501
 
2141
2502
{
2142
2503
register ASCII HUGE*l;
2155
2516
stuff_in_1_5= NO;
2156
2517
 
2157
2518
for(l= k0;l<k0+5;++l)
2158
 
if(*l!=040)
 
2519
if(*l!=' ')
2159
2520
{
2160
2521
stuff_in_1_5= YES;
2161
2522
break;
2166
2527
 
2167
2528
if(stuff_in_1_5)goto neither_cmnt_nor_continuation;
2168
2529
 
2169
 
*l= 040;
 
2530
*l= ' ';
2170
2531
scan_for_cmnts();
2171
2532
continue;
2172
2533
}
2173
2534
 
 
2535
/* :89 */
 
2536
#line 1211 "./common.web"
2174
2537
 
2175
2538
}
2176
2539
 
2177
2540
 
 
2541
/* :86 */
 
2542
#line 1070 "./common.web"
2178
2543
 
2179
2544
 
2180
2545
 
2197
2562
 
2198
2563
}
2199
2564
 
 
2565
/* 84: */
 
2566
#line 1098 "./common.web"
2200
2567
 
2201
2568
{
2202
2569
last_of_read:
2214
2581
break;
2215
2582
}
2216
2583
 
 
2584
/* :84 */
 
2585
#line 1092 "./common.web"
2217
2586
;
2218
2587
}
2219
2588
 
 
2589
/* :83 */
 
2590
#line 959 "./common.web"
2220
2591
 
2221
2592
else
 
2593
/* 81: */
 
2594
#line 984 "./common.web"
2222
2595
 
2223
2596
{
 
2597
/* 82: */
 
2598
#line 1011 "./common.web"
2224
2599
 
2225
2600
{
2226
2601
STRNCPY(cur_buffer,k0,num_in_buffer);
2229
2604
num_in_buffer= 0;
2230
2605
}
2231
2606
 
 
2607
/* :82 */
 
2608
#line 986 "./common.web"
2232
2609
;
2233
2610
 
2234
2611
 
2251
2628
scan_for_cmnts();
2252
2629
}
2253
2630
 
2254
 
 
2255
 
 
2256
 
 
2257
 
 
2258
 
if(*cur_buffer==0100&&!(limit==cur_buffer+1||*(cur_buffer+1)==052||
2259
 
*(cur_buffer+1)==040))
 
2631
/* :81 */
 
2632
#line 961 "./common.web"
 
2633
 
 
2634
 
 
2635
 
 
2636
 
 
2637
if(*cur_buffer=='@'&&!(limit==cur_buffer+1||*(cur_buffer+1)=='*'||
 
2638
*(cur_buffer+1)==' '))
2260
2639
for(k= cur_buffer+2;k<limit;++k)
2261
 
if(*k==073)
 
2640
if(*k==';')
2262
2641
{
2263
 
*k= 040;
 
2642
/* :80 */
 
2643
/* 80: */
 
2644
#line 973 "./common.web"
 
2645
*k= ' ';
2264
2646
break;
2265
2647
}
2266
2648
 
2267
2649
return YES;
2268
2650
}
2269
2651
 
 
2652
/* :80 */
 
2653
/* 90: */
 
2654
#line 1326 "./common.web"
2270
2655
 
2271
2656
 
2272
2657
SRTN
2296
2681
pcmnt->pos= limit;
2297
2682
}
2298
2683
 
 
2684
/* :90 */
 
2685
/* 92: */
 
2686
#line 1365 "./common.web"
2299
2687
 
2300
2688
 
2301
2689
SRTN
2322
2710
MARK(SHORT_CMNT,END,0);
2323
2711
break;
2324
2712
 
2325
 
case 047:
2326
 
case 042:
 
2713
case '\'':
 
2714
case '"':
2327
2715
if(!scanning_C_cmnt)
 
2716
/* 93: */
 
2717
#line 1430 "./common.web"
2328
2718
 
2329
2719
{
2330
2720
if(!in_char_string)
2343
2733
in_char_string= NO;
2344
2734
}
2345
2735
 
 
2736
/* :93 */
 
2737
#line 1394 "./common.web"
2346
2738
 
2347
2739
break;
2348
2740
 
2349
 
case 057:
 
2741
case '/':
2350
2742
if(in_char_string||scanning_C_cmnt)
2351
2743
break;
2352
2744
 
2353
 
if(*(p+1)==057&&Cpp_comments&&!ignore_C)
 
2745
if(*(p+1)=='/'&&Cpp_comments&&!ignore_C)
2354
2746
{
2355
2747
MARK(SHORT_CMNT,START,2);
2356
2748
p= limit;
2357
2749
MARK(SHORT_CMNT,END,0);
2358
2750
}
2359
 
else if(*(p+1)==052)
 
2751
else if(*(p+1)=='*')
2360
2752
{
2361
2753
MARK(LONG_CMNT,START,2);
2362
2754
p++;
2364
2756
 
2365
2757
break;
2366
2758
 
2367
 
case 052:
 
2759
case '*':
2368
2760
if(in_char_string)
2369
2761
break;
2370
2762
 
2371
 
if(scanning_C_cmnt&&*(p+1)==057)
 
2763
if(scanning_C_cmnt&&*(p+1)=='/')
2372
2764
{
2373
2765
MARK(LONG_CMNT,END,2);
2374
2766
p++;
2378
2770
}
2379
2771
}
2380
2772
 
 
2773
/* :92 */
 
2774
/* 94: */
 
2775
#line 1452 "./common.web"
2381
2776
 
2382
2777
 
2383
2778
SRTN
2394
2789
found_text= NO;
2395
2790
 
2396
2791
for(l= d->pos+d->len;l<(d+1)->pos;l++)
2397
 
if(*l!=040)
 
2792
if(*l!=' ')
2398
2793
{
2399
2794
found_text= YES;
2400
2795
break;
2406
2801
{
2407
2802
BLANK_OUT(d-1);
2408
2803
*((d-1)->pos)= begin_comment0;
2409
 
*(d->pos)= 052;
2410
 
*(d->pos+1)= 057;
 
2804
*(d->pos)= '*';
 
2805
*(d->pos+1)= '/';
2411
2806
}
2412
2807
}
2413
2808
else if(d->type==(d+1)->type)
2418
2813
}
2419
2814
}
2420
2815
 
 
2816
/* 99: */
 
2817
#line 1555 "./common.web"
2421
2818
 
2422
2819
{
2423
2820
boolean text_after= NO;
2426
2823
{
2427
2824
if(!scanning_C_cmnt)
2428
2825
for(l= limit-1;l>(pcmnt-1)->pos+(pcmnt-1)->len;l--)
2429
 
if(*l!=040)
 
2826
if(*l!=' ')
2430
2827
{
2431
2828
text_after= YES;
2432
 
*(l+1)= 073;
 
2829
*(l+1)= ';';
2433
2830
break;
2434
2831
}
2435
2832
 
2464
2861
 
2465
2862
for(l= pcmnt->pos-1;l>=lmin;l--)
2466
2863
{
2467
 
if(*l!=040)
 
2864
if(*l!=' ')
2468
2865
{
2469
2866
semi_pos= pcmnt->pos;
 
2867
/* 100: */
 
2868
#line 1628 "./common.web"
2470
2869
 
2471
2870
{
2472
2871
*(semi_pos+1)= (ASCII)(((pcmnt+1)->type==LONG_CMNT?begin_comment0:
2476
2875
 
2477
2876
 
2478
2877
 
2479
 
if(semi_pos>cur_buffer&&*(semi_pos-1)==0100)
 
2878
if(semi_pos>cur_buffer&&*(semi_pos-1)=='@')
2480
2879
{
2481
 
*(semi_pos--)= 0100;
 
2880
*(semi_pos--)= '@';
2482
2881
}
2483
2882
 
2484
 
*semi_pos= 073;
2485
 
 
2486
 
 
 
2883
*semi_pos= ';';
 
2884
 
 
2885
 
 
2886
/* 101: */
 
2887
#line 1650 "./common.web"
2487
2888
 
2488
2889
 
2489
2890
for(lp= semi_pos-1;lp>cur_buffer;lp--)
2490
2891
{
2491
 
if(*lp==040)continue;
 
2892
if(*lp==' ')continue;
2492
2893
 
2493
 
if(*lp==057&&*(--lp)==0100)
 
2894
if(*lp=='/'&&*(--lp)=='@')
2494
2895
{
2495
 
*semi_pos= 040;
2496
 
*lp= 073;*(lp+1)= 0100;*(lp+2)= 057;
 
2896
*semi_pos= ' ';
 
2897
*lp= ';';*(lp+1)= '@';*(lp+2)= '/';
2497
2898
}
2498
2899
break;
2499
2900
}
2500
2901
 
2501
2902
 
 
2903
/* :101 */
 
2904
#line 1645 "./common.web"
2502
2905
;
2503
2906
}
2504
2907
 
 
2908
/* :100 */
 
2909
#line 1603 "./common.web"
2505
2910
 
2506
2911
goto done_auto_insert;
2507
2912
}
2514
2919
else
2515
2920
{
2516
2921
for(l= limit-1;l>=cur_buffer;l--)
2517
 
if(*l!=040)
 
2922
if(*l!=' ')
2518
2923
{
2519
 
*(l+1)= 073;
 
2924
*(l+1)= ';';
2520
2925
break;
2521
2926
}
2522
2927
}
2525
2930
;
2526
2931
}
2527
2932
 
 
2933
/* :99 */
 
2934
#line 1492 "./common.web"
2528
2935
 
2529
2936
 
2530
2937
pcmnt= posns;
2531
2938
}
2532
2939
 
 
2940
/* :94 */
 
2941
/* 102: */
 
2942
#line 1667 "./common.web"
2533
2943
 
2534
2944
 
2535
2945
boolean
2542
2952
string_char= '\0';
2543
2953
in_char_string= NO;
2544
2954
 
 
2955
/* 77: */
 
2956
#line 830 "./common.web"
2545
2957
 
2546
2958
{
2547
2959
if(num_in_buffer!=0)
 
2960
/* 82: */
 
2961
#line 1011 "./common.web"
2548
2962
 
2549
2963
{
2550
2964
STRNCPY(cur_buffer,k0,num_in_buffer);
2553
2967
num_in_buffer= 0;
2554
2968
}
2555
2969
 
 
2970
/* :82 */
 
2971
#line 833 "./common.web"
2556
2972
 
2557
2973
else
2558
2974
{
2559
2975
if(feof(cur0_prms->File))
2560
2976
return NO;
2561
2977
 
 
2978
/* 78: */
 
2979
#line 857 "./common.web"
2562
2980
 
2563
2981
{
2564
2982
k= cur_buffer;
2565
2983
 
 
2984
/* :78 */
 
2985
/* 78: */
 
2986
#line 867 "./common.web"
2566
2987
 
2567
2988
while(k<=buffer_end&&(c= getc(cur0_prms->File))!=EOF&&c!='\n')
2568
 
if((*(k++)= XORD(c))!=040)limit= k;
 
2989
if((*(k++)= XORD(c))!=' ')limit= k;
2569
2990
 
2570
2991
 
2571
2992
 
2580
3001
return NO;
2581
3002
}
2582
3003
 
 
3004
/* :78 */
 
3005
#line 839 "./common.web"
2583
3006
;
2584
 
}
2585
 
}
2586
 
 
2587
 
 
2588
 
 
2589
 
 
2590
 
 
2591
 
if(*cur_buffer==0100&&(limit==cur_buffer+1
2592
 
||*(cur_buffer+1)==052||*(cur_buffer+1)==040))
 
3007
/* :77 */
 
3008
/* 77: */
 
3009
#line 843 "./common.web"
 
3010
}
 
3011
}
 
3012
 
 
3013
/* :77 */
 
3014
#line 1679 "./common.web"
 
3015
 
 
3016
 
 
3017
 
 
3018
 
 
3019
if(*cur_buffer=='@'&&(limit==cur_buffer+1
 
3020
||*(cur_buffer+1)=='*'||*(cur_buffer+1)==' '))
2593
3021
column_mode= NO;
2594
3022
else
 
3023
/* 104: */
 
3024
#line 1702 "./common.web"
2595
3025
 
2596
3026
{
2597
3027
last_was_continued= continuing_line;
2600
3030
if(limit==cur_buffer)
2601
3031
return YES;
2602
3032
 
2603
 
limit[0]= limit[1]= limit[2]= limit[3]= 040;
 
3033
limit[0]= limit[1]= limit[2]= limit[3]= ' ';
2604
3034
 
2605
 
cmnt_char= 043;
 
3035
cmnt_char= '#';
2606
3036
 
2607
3037
found_semi= found_text= text= NO;
2608
3038
 
2610
3040
 
2611
3041
 
2612
3042
 
2613
 
if(!free_form_input&&!(*cur_buffer==0100&&*(cur_buffer+1)==043))
 
3043
if(!free_form_input&&!(*cur_buffer=='@'&&*(cur_buffer+1)=='#'))
2614
3044
{
2615
3045
for(lp= cur_buffer;;)
2616
3046
if(!skip_Rtext()||!skp_cmnt())break;
2617
3047
 
2618
3048
switch(*last_pos)
2619
3049
{
2620
 
case 053:case 055:case 052:case 075:case 0173:case 0175:
2621
 
case 0136:case 046:case 0174:case 050:case 072:
2622
 
case 076:case 074:case 0133:case 054:case 0134:
 
3050
case '+':case '-':case '*':case '=':case '{':case '}':
 
3051
case '^':case '&':case '|':case '(':case ':':
 
3052
case '>':case '<':case '[':case ',':case '\\':
2623
3053
continuing_line= YES;
2624
3054
break;
2625
3055
 
2626
3056
 
2627
 
case 0137:
 
3057
case '_':
2628
3058
if(last_pos>cur_buffer)
2629
3059
{
2630
3060
ASCII c;
2631
3061
 
2632
3062
c= *(last_pos-1);
2633
3063
if(isAlpha(c)||isDigit(c)||
2634
 
c==0137||c==044)
 
3064
c=='_'||c=='$')
2635
3065
goto not_continuation;
2636
3066
}
2637
 
*last_pos= 040;
 
3067
*last_pos= ' ';
2638
3068
continuing_line= YES;
2639
3069
break;
2640
3070
 
2647
3077
 
2648
3078
 
2649
3079
 
2650
 
if(!text&&semi_pos!=NULL)
 
3080
if(!text&&semi_pos!=NULL)/* 100: */
 
3081
#line 1628 "./common.web"
 
3082
 
2651
3083
{
2652
3084
*(semi_pos+1)= (ASCII)(((pcmnt+1)->type==LONG_CMNT?begin_comment0:
2653
3085
begin_comment1));
2656
3088
 
2657
3089
 
2658
3090
 
2659
 
if(semi_pos>cur_buffer&&*(semi_pos-1)==0100)
 
3091
if(semi_pos>cur_buffer&&*(semi_pos-1)=='@')
2660
3092
{
2661
 
*(semi_pos--)= 0100;
 
3093
*(semi_pos--)= '@';
2662
3094
}
2663
3095
 
2664
 
*semi_pos= 073;
2665
 
 
2666
 
 
 
3096
*semi_pos= ';';
 
3097
 
 
3098
 
 
3099
/* 101: */
 
3100
#line 1650 "./common.web"
2667
3101
 
2668
3102
 
2669
3103
for(lp= semi_pos-1;lp>cur_buffer;lp--)
2670
3104
{
2671
 
if(*lp==040)continue;
 
3105
if(*lp==' ')continue;
2672
3106
 
2673
 
if(*lp==057&&*(--lp)==0100)
 
3107
if(*lp=='/'&&*(--lp)=='@')
2674
3108
{
2675
 
*semi_pos= 040;
2676
 
*lp= 073;*(lp+1)= 0100;*(lp+2)= 057;
 
3109
*semi_pos= ' ';
 
3110
*lp= ';';*(lp+1)= '@';*(lp+2)= '/';
2677
3111
}
2678
3112
break;
2679
3113
}
2680
3114
 
2681
3115
 
 
3116
/* :101 */
 
3117
#line 1645 "./common.web"
2682
3118
;
2683
3119
}
2684
3120
 
 
3121
/* :100 */
 
3122
#line 1757 "./common.web"
2685
3123
 
2686
 
else if(found_text&&limit>cur_buffer)*limit++= 073;
 
3124
else if(found_text&&limit>cur_buffer)*limit++= ';';
2687
3125
 
2688
3126
break;
2689
3127
}
2690
3128
}
2691
3129
}
2692
3130
 
 
3131
/* :104 */
 
3132
#line 1687 "./common.web"
2693
3133
;
2694
3134
 
2695
3135
return YES;
2696
3136
}
2697
3137
 
 
3138
/* :102 */
 
3139
/* 106: */
 
3140
#line 1800 "./common.web"
2698
3141
 
2699
3142
boolean skip_Rtext(VOID)
2700
3143
{
2701
 
static ASCII blank= 040;
 
3144
static ASCII blank= ' ';
2702
3145
 
 
3146
/* 107: */
 
3147
#line 1836 "./common.web"
2703
3148
 
2704
3149
 
2705
3150
if(scanning_C_cmnt)return YES;
2707
3152
 
2708
3153
 
2709
3154
for(;lp<limit;++lp)
2710
 
if(!(*lp==040||*lp==tab_mark))break;
 
3155
if(!(*lp==' '||*lp==tab_mark))break;
2711
3156
 
2712
3157
if(lp>=limit)return NO;
2713
3158
 
 
3159
/* :107 */
 
3160
#line 1805 "./common.web"
2714
3161
;
2715
3162
 
2716
3163
last_pos= &blank;
2729
3176
if(R_style_cmnt)
2730
3177
{
2731
3178
*lp= cmnt_char= begin_comment0;
2732
 
*limit++= 052;*limit++= 057;
 
3179
*limit++= '*';*limit++= '/';
2733
3180
}
2734
3181
if(++lp<limit)return YES;
2735
3182
}
2736
3183
 
2737
 
if(*lp!=040&&*lp!=tab_mark)
 
3184
if(*lp!=' '&&*lp!=tab_mark)
2738
3185
last_pos= lp;
2739
3186
}
2740
3187
 
2741
3188
return NO;
2742
3189
}
2743
3190
 
 
3191
/* :106 */
 
3192
/* 108: */
 
3193
#line 1848 "./common.web"
2744
3194
 
2745
3195
boolean skp_cmnt(VOID)
2746
3196
{
2764
3214
{
2765
3215
if(*lp==(ASCII)begin_comment0||*lp==(ASCII)begin_comment1)
2766
3216
{
2767
 
*lp= 0143;
 
3217
*lp= 'c';
2768
3218
continue;
2769
3219
}
2770
3220
 
2771
 
if(*lp==052&&*(lp+1)==057)
 
3221
if(*lp=='*'&&*(lp+1)=='/')
2772
3222
{
2773
3223
lp+= 2;
2774
3224
if(lp<=limit)return YES;
2781
3231
{
2782
3232
for(++lp;lp<limit;lp++)
2783
3233
if(*lp==(ASCII)begin_comment1)
2784
 
*lp= 041;
 
3234
*lp= '!';
2785
3235
 
2786
 
*(limit-2)= 052;*(limit-1)= 057;
 
3236
*(limit-2)= '*';*(limit-1)= '/';
2787
3237
}
2788
3238
 
2789
3239
return NO;
2790
3240
}
2791
3241
 
 
3242
/* :108 */
 
3243
/* 111: */
 
3244
#line 1941 "./common.web"
2792
3245
 
2793
3246
 
2794
3247
SRTN
2806
3259
 
2807
3260
change_limit= NULL;
2808
3261
 
 
3262
/* 112: */
 
3263
#line 1978 "./common.web"
2809
3264
 
2810
3265
 
2811
3266
WHILE()
2820
3275
 
2821
3276
if(limit<cur_buffer+2)continue;
2822
3277
 
2823
 
if(cur_buffer[0]!=0100)continue;
2824
 
 
2825
 
 
2826
 
 
2827
 
if((cur_buffer[1]>=0130&&cur_buffer[1]<=0132)||cur_buffer[1]==0111)
2828
 
cur_buffer[1]+= 0172-0132;
2829
 
 
 
3278
if(cur_buffer[0]!='@')continue;
 
3279
 
 
3280
/* 114: */
 
3281
#line 2056 "./common.web"
 
3282
 
 
3283
 
 
3284
if((cur_buffer[1]>='X'&&cur_buffer[1]<='Z')||cur_buffer[1]=='I')
 
3285
cur_buffer[1]+= 'z'-'Z';
 
3286
 
 
3287
/* :114 */
 
3288
#line 1994 "./common.web"
2830
3289
;
2831
 
 
2832
 
 
2833
 
if(cur_buffer[1]==0151)
 
3290
/* 115: */
 
3291
#line 2063 "./common.web"
 
3292
 
 
3293
 
 
3294
if(cur_buffer[1]=='i')
2834
3295
{
2835
3296
loc= cur_buffer+2;
2836
3297
 
2838
3299
 
2839
3300
}
2840
3301
 
 
3302
/* :115 */
 
3303
#line 1995 "./common.web"
2841
3304
;
2842
 
if((c= cur_buffer[1])==0170)break;
 
3305
if((c= cur_buffer[1])=='x')break;
2843
3306
 
2844
 
if(c==0171||c==0172)
 
3307
if(c=='y'||c=='z')
2845
3308
{
2846
3309
loc= cur_buffer+2;
2847
3310
 
2848
3311
err0_print(ERR_C,OC("Where is the matching @x?"),0);
2849
3312
 
2850
3313
}
2851
 
else
 
3314
else/* 113: */
 
3315
#line 2008 "./common.web"
 
3316
 
2852
3317
{
2853
 
if(c==0154)
 
3318
if(c=='l')
2854
3319
if(limit==cur_buffer+2)
2855
3320
 
2856
3321
err0_print(ERR_C,OC("Missing language character after @L"),0);
2858
3323
 
2859
3324
switch(c)
2860
3325
{
2861
 
 
2862
 
case 0143
2863
 
 
 
3326
/* 10: */
 
3327
#line 95 "./typedefs.hweb"
 
3328
 
 
3329
case 'c'
 
3330
 
 
3331
/* :10 */
 
3332
#line 2017 "./common.web"
2864
3333
:
2865
3334
language= change_params.Language= 
2866
 
(cur_buffer[2]==053)?C_PLUS_PLUS:C;
 
3335
(cur_buffer[2]=='+')?C_PLUS_PLUS:C;
2867
3336
column_mode= change_params.Column_mode= NO;
2868
3337
continue;
2869
3338
 
2870
 
 
2871
 
case 0162
2872
 
 
 
3339
/* 11: */
 
3340
#line 98 "./typedefs.hweb"
 
3341
 
 
3342
case 'r'
 
3343
 
 
3344
/* :11 */
 
3345
#line 2023 "./common.web"
2873
3346
:
2874
3347
if(!RAT_OK("Language change ignored"))continue;
2875
3348
 
2876
3349
language= change_params.Language= 
2877
 
(cur_buffer[2]==071)?RATFOR_90:RATFOR;
 
3350
(cur_buffer[2]=='9')?RATFOR_90:RATFOR;
2878
3351
continue;
2879
3352
 
2880
 
 
2881
 
case 0156
2882
 
 
 
3353
/* 12: */
 
3354
#line 101 "./typedefs.hweb"
 
3355
 
 
3356
case 'n'
 
3357
 
 
3358
/* :12 */
 
3359
#line 2030 "./common.web"
2883
3360
:
2884
3361
language= change_params.Language= 
2885
 
(cur_buffer[2]==071)?FORTRAN_90:FORTRAN;
 
3362
(cur_buffer[2]=='9')?FORTRAN_90:FORTRAN;
2886
3363
continue;
2887
3364
 
2888
 
 
2889
 
case 0166
2890
 
 
2891
 
 
2892
 
 
 
3365
/* 14: */
 
3366
#line 107 "./typedefs.hweb"
 
3367
 
 
3368
case 'v'
 
3369
 
 
3370
 
 
3371
 
 
3372
/* :14 */
 
3373
#line 2035 "./common.web"
2893
3374
:
2894
3375
language= change_params.Language= LITERAL;continue;
2895
3376
 
2896
 
 
2897
 
case 0170
2898
 
 
 
3377
/* 13: */
 
3378
#line 104 "./typedefs.hweb"
 
3379
 
 
3380
case 'x'
 
3381
 
 
3382
/* :13 */
 
3383
#line 2038 "./common.web"
2899
3384
:
2900
3385
language= change_params.Language= TEX;continue;
2901
3386
 
2902
 
case 0133:
 
3387
case '[':
2903
3388
column_mode= change_params.Column_mode= YES;continue;
2904
3389
 
2905
 
case 0135:
 
3390
case ']':
2906
3391
column_mode= change_params.Column_mode= NO;continue;
2907
3392
 
2908
3393
default:
2913
3398
}
2914
3399
}
2915
3400
 
 
3401
/* :113 */
 
3402
#line 2004 "./common.web"
2916
3403
 
2917
3404
}
2918
3405
 
 
3406
/* :112 */
 
3407
#line 1959 "./common.web"
2919
3408
;
 
3409
/* 116: */
 
3410
#line 2074 "./common.web"
2920
3411
 
2921
3412
 
2922
3413
do
2932
3423
}
2933
3424
while(limit==cur_buffer);
2934
3425
 
 
3426
/* :116 */
 
3427
#line 1960 "./common.web"
2935
3428
;
2936
3429
 
2937
3430
done_priming:
2945
3438
cur0_prms= cur_prms.web;
2946
3439
}
2947
3440
 
 
3441
/* :111 */
 
3442
/* 117: */
 
3443
#line 2096 "./common.web"
2948
3444
 
2949
3445
 
2950
3446
SRTN
2967
3463
return;
2968
3464
}
2969
3465
 
2970
 
 
2971
 
 
2972
 
if(limit>cur_buffer+1&&cur_buffer[0]==0100)
 
3466
/* 118: */
 
3467
#line 2138 "./common.web"
 
3468
 
 
3469
 
 
3470
if(limit>cur_buffer+1&&cur_buffer[0]=='@')
2973
3471
{
2974
 
 
2975
 
 
2976
 
if((cur_buffer[1]>=0130&&cur_buffer[1]<=0132)||cur_buffer[1]==0111)
2977
 
cur_buffer[1]+= 0172-0132;
2978
 
 
 
3472
/* 114: */
 
3473
#line 2056 "./common.web"
 
3474
 
 
3475
 
 
3476
if((cur_buffer[1]>='X'&&cur_buffer[1]<='Z')||cur_buffer[1]=='I')
 
3477
cur_buffer[1]+= 'z'-'Z';
 
3478
 
 
3479
/* :114 */
 
3480
#line 2142 "./common.web"
2979
3481
;
2980
 
 
2981
 
 
2982
 
if(cur_buffer[1]==0151)
 
3482
/* 115: */
 
3483
#line 2063 "./common.web"
 
3484
 
 
3485
 
 
3486
if(cur_buffer[1]=='i')
2983
3487
{
2984
3488
loc= cur_buffer+2;
2985
3489
 
2987
3491
 
2988
3492
}
2989
3493
 
 
3494
/* :115 */
 
3495
#line 2143 "./common.web"
2990
3496
;
2991
3497
 
2992
 
if(cur_buffer[1]==0170||cur_buffer[1]==0172)
 
3498
if(cur_buffer[1]=='x'||cur_buffer[1]=='z')
2993
3499
{
2994
3500
loc= cur_buffer+2;
2995
3501
 
2996
3502
err0_print(ERR_C,OC("Where is the matching @y?"),0);
2997
3503
 
2998
3504
}
2999
 
else if(cur_buffer[1]==0171)
 
3505
else if(cur_buffer[1]=='y')
3000
3506
{
3001
3507
if(n>0)
3002
3508
{
3009
3515
}
3010
3516
}
3011
3517
 
 
3518
/* :118 */
 
3519
#line 2118 "./common.web"
3012
3520
;
3013
3521
changing= NO;prn_where= YES;
3014
3522
 
3029
3537
}
3030
3538
}
3031
3539
 
 
3540
/* :117 */
 
3541
#line 56 "./common.web"
3032
3542
 
3033
3543
#endif 
3034
3544
 
3035
3545
#if(part != 1)
 
3546
/* 119: */
 
3547
#line 2171 "./common.web"
3036
3548
 
3037
3549
 
3038
3550
SRTN
3042
3554
FCLOSE(prms[WEB_FILE].change.File);
3043
3555
 
3044
3556
ini_input_prms(WEB_FILE,(outer_char HUGE*)"",ABORT_ON_ERROR);
3045
 
 
3046
 
 
3047
 
limit= cur_buffer;loc= cur_buffer+1;cur_buffer[0]= 040
3048
 
 
 
3557
/* 120: */
 
3558
#line 2191 "./common.web"
 
3559
 
 
3560
 
 
3561
limit= cur_buffer;loc= cur_buffer+1;cur_buffer[0]= ' '
 
3562
 
 
3563
/* :120 */
 
3564
#line 2180 "./common.web"
3049
3565
;
3050
3566
 
 
3567
/* 122: */
 
3568
#line 2205 "./common.web"
3051
3569
 
3052
3570
{
3053
3571
cur0_prms= cur_prms.change;
3054
3572
changing= YES;
3055
3573
change_params= change_params0;
3056
3574
prime_the_change_buffer();
3057
 
 
3058
 
 
3059
 
limit= cur_buffer;loc= cur_buffer+1;cur_buffer[0]= 040
3060
 
 
 
3575
/* 120: */
 
3576
#line 2191 "./common.web"
 
3577
 
 
3578
 
 
3579
limit= cur_buffer;loc= cur_buffer+1;cur_buffer[0]= ' '
 
3580
 
 
3581
/* :120 */
 
3582
#line 2211 "./common.web"
3061
3583
;
3062
3584
}
3063
3585
 
 
3586
/* :122 */
 
3587
#line 2182 "./common.web"
3064
3588
 
3065
3589
 
3066
3590
incl_depth= WEB_FILE;
3067
3591
input_has_ended= NO;
3068
3592
}
3069
3593
 
 
3594
/* :119 */
 
3595
/* 126: */
 
3596
#line 2243 "./common.web"
3070
3597
 
3071
3598
 
3072
3599
boolean
3108
3635
return YES;
3109
3636
}
3110
3637
 
 
3638
/* :126 */
 
3639
/* 127: */
 
3640
#line 2285 "./common.web"
3111
3641
 
3112
3642
 
3113
3643
boolean
3158
3688
return YES;
3159
3689
}
3160
3690
 
 
3691
/* :127 */
 
3692
/* 128: */
 
3693
#line 2339 "./common.web"
3161
3694
 
3162
3695
 
3163
3696
FILE*
3206
3739
return NULL;
3207
3740
}
3208
3741
 
 
3742
/* :128 */
 
3743
/* 129: */
 
3744
#line 2391 "./common.web"
3209
3745
 
3210
3746
 
3211
3747
FILE*
3248
3784
return NULL;
3249
3785
}
3250
3786
 
 
3787
/* :129 */
 
3788
/* 132: */
 
3789
#line 2469 "./common.web"
3251
3790
 
3252
3791
 
3253
3792
boolean
3254
3793
get_line(VOID)
3255
3794
{
3256
3795
if(return_toggle)
 
3796
/* 137: */
 
3797
#line 2584 "./common.web"
3257
3798
 
3258
3799
{
3259
3800
return_toggle= NO;
3267
3808
STRNCPY(cur_buffer,stored_line,stored_line_length);
3268
3809
FREE_MEM(stored_line,"stored_line",stored_line_length,ASCII);
3269
3810
limit= cur_buffer+stored_line_length;
3270
 
*limit= 040;
 
3811
*limit= ' ';
3271
3812
 
3272
3813
if(popped)
3273
3814
{
3280
3821
goto process_line;
3281
3822
}
3282
3823
 
 
3824
/* :137 */
 
3825
#line 2475 "./common.web"
3283
3826
 
3284
3827
 
3285
3828
restart:
3286
3829
if(changing)
3287
3830
chngd_module[module_count]= YES;
3288
3831
else
 
3832
/* 147: */
 
3833
#line 2888 "./common.web"
3289
3834
 
3290
3835
{
3291
3836
popped= NO;
3342
3887
no_more_input= input_has_ended;
3343
3888
input_has_ended= NO;
3344
3889
popped= YES;
 
3890
/* 135: */
 
3891
#line 2559 "./common.web"
3345
3892
 
3346
3893
{
3347
3894
return_toggle= YES;
3353
3900
loc= cur_buffer+2;
3354
3901
get_fname(prms[1].web.File_name);
3355
3902
loc= limit= cur_buffer;
3356
 
*limit++= 0100;*limit++= '\001';*limit= 040;
 
3903
*limit++= '@';*limit++= '\001';*limit= ' ';
3357
3904
 
3358
3905
return YES;
3359
3906
}
3360
3907
 
 
3908
/* :135 */
 
3909
#line 2944 "./common.web"
3361
3910
 
3362
3911
}
3363
3912
 
3368
3917
if(change_limit>change_buffer)chk_change();
3369
3918
}
3370
3919
 
 
3920
/* :147 */
 
3921
#line 2481 "./common.web"
3371
3922
;
3372
3923
 
3373
3924
if(changing)
3374
3925
{
 
3926
/* 153: */
 
3927
#line 3109 "./common.web"
3375
3928
 
3376
3929
{
3377
3930
if(!input_ln(CHANGE_FILE))
3379
3932
 
3380
3933
err0_print(ERR_C,OC("Change file ended without @z"),0);
3381
3934
 
3382
 
cur_buffer[0]= 0100;cur_buffer[1]= 0172;limit= cur_buffer+2;
 
3935
cur_buffer[0]= '@';cur_buffer[1]= 'z';limit= cur_buffer+2;
3383
3936
}
3384
3937
 
3385
3938
if(limit>cur_buffer+1)
3386
 
if(cur_buffer[0]==0100)
 
3939
if(cur_buffer[0]=='@')
3387
3940
{
3388
 
 
3389
 
 
3390
 
if((cur_buffer[1]>=0130&&cur_buffer[1]<=0132)||cur_buffer[1]==0111)
3391
 
cur_buffer[1]+= 0172-0132;
3392
 
 
 
3941
/* 114: */
 
3942
#line 2056 "./common.web"
 
3943
 
 
3944
 
 
3945
if((cur_buffer[1]>='X'&&cur_buffer[1]<='Z')||cur_buffer[1]=='I')
 
3946
cur_buffer[1]+= 'z'-'Z';
 
3947
 
 
3948
/* :114 */
 
3949
#line 3121 "./common.web"
3393
3950
;
3394
 
 
3395
 
 
3396
 
if(cur_buffer[1]==0151)
 
3951
/* 115: */
 
3952
#line 2063 "./common.web"
 
3953
 
 
3954
 
 
3955
if(cur_buffer[1]=='i')
3397
3956
{
3398
3957
loc= cur_buffer+2;
3399
3958
 
3401
3960
 
3402
3961
}
3403
3962
 
 
3963
/* :115 */
 
3964
#line 3122 "./common.web"
3404
3965
;
3405
3966
 
3406
 
if(cur_buffer[1]==0170||cur_buffer[1]==0171)
 
3967
if(cur_buffer[1]=='x'||cur_buffer[1]=='y')
3407
3968
{
3408
3969
loc= cur_buffer+2;
3409
3970
err0_print(ERR_C,OC("Where is the matching @z?"),0);
3410
3971
 
3411
3972
}
3412
 
else if(cur_buffer[1]==0172)
 
3973
else if(cur_buffer[1]=='z')
3413
3974
{
3414
3975
prime_the_change_buffer();prn_where= YES;
3415
3976
}
3416
3977
}
3417
3978
}
3418
3979
 
 
3980
/* :153 */
 
3981
#line 2485 "./common.web"
3419
3982
;
3420
3983
 
3421
3984
if(!changing)
3425
3988
}
3426
3989
 
3427
3990
process_line:
3428
 
loc= cur_buffer;*limit= 040;
 
3991
loc= cur_buffer;*limit= ' ';
3429
3992
 
3430
3993
if(return_toggle)
 
3994
/* 135: */
 
3995
#line 2559 "./common.web"
3431
3996
 
3432
3997
{
3433
3998
return_toggle= YES;
3439
4004
loc= cur_buffer+2;
3440
4005
get_fname(prms[1].web.File_name);
3441
4006
loc= limit= cur_buffer;
3442
 
*limit++= 0100;*limit++= '\001';*limit= 040;
 
4007
*limit++= '@';*limit++= '\001';*limit= ' ';
3443
4008
 
3444
4009
return YES;
3445
4010
}
3446
4011
 
3447
 
 
3448
 
 
3449
 
if(*cur_buffer==0100)
 
4012
/* :135 */
 
4013
#line 2497 "./common.web"
 
4014
 
 
4015
 
 
4016
if(*cur_buffer=='@')
3450
4017
switch(*(cur_buffer+1))
3451
4018
{
3452
 
case 0151:
3453
 
case 0111:
3454
 
 
3455
 
 
3456
 
if(*(cur_buffer+1)==0111&&(skip_includes||
 
4019
case 'i':
 
4020
case 'I':
 
4021
/* 133: */
 
4022
#line 2512 "./common.web"
 
4023
 
 
4024
 
 
4025
if(*(cur_buffer+1)=='I'&&(skip_includes||
3457
4026
(program==weave&&toggle_includes&&CUR_FILE==WEB_FILE)))
3458
4027
{
3459
4028
if(skip_includes)
3464
4033
else if(toggle_includes&&CUR_FILE==WEB_FILE)
3465
4034
{
3466
4035
toggling= YES;
 
4036
/* 135: */
 
4037
#line 2559 "./common.web"
3467
4038
 
3468
4039
{
3469
4040
return_toggle= YES;
3475
4046
loc= cur_buffer+2;
3476
4047
get_fname(prms[1].web.File_name);
3477
4048
loc= limit= cur_buffer;
3478
 
*limit++= 0100;*limit++= '\001';*limit= 040;
 
4049
*limit++= '@';*limit++= '\001';*limit= ' ';
3479
4050
 
3480
4051
return YES;
3481
4052
}
3482
4053
 
 
4054
/* :135 */
 
4055
#line 2525 "./common.web"
3483
4056
 
3484
4057
}
3485
4058
}
3486
4059
else
 
4060
/* 139: */
 
4061
#line 2630 "./common.web"
3487
4062
 
3488
4063
{
3489
4064
boolean found_include;
3510
4085
else
3511
4086
{
3512
4087
if(skip_ifiles)
 
4088
/* 142: */
 
4089
#line 2708 "./common.web"
3513
4090
 
3514
4091
{
3515
4092
int j;
3533
4110
num_ifiles++;
3534
4111
}
3535
4112
 
 
4113
/* :142 */
 
4114
#line 2654 "./common.web"
3536
4115
 
3537
4116
 
3538
4117
if(!get_fname(change_file_name))
3552
4131
if(ini_input_prms(CUR_FILE,incl.list,DONT_ABORT_ON_ERROR))
3553
4132
{
3554
4133
if(cur_prms.change->File!=prms[incl_depth-1].change.File)
 
4134
/* 122: */
 
4135
#line 2205 "./common.web"
3555
4136
 
3556
4137
{
3557
4138
cur0_prms= cur_prms.change;
3558
4139
changing= YES;
3559
4140
change_params= change_params0;
3560
4141
prime_the_change_buffer();
3561
 
 
3562
 
 
3563
 
limit= cur_buffer;loc= cur_buffer+1;cur_buffer[0]= 040
3564
 
 
 
4142
/* 120: */
 
4143
#line 2191 "./common.web"
 
4144
 
 
4145
 
 
4146
limit= cur_buffer;loc= cur_buffer+1;cur_buffer[0]= ' '
 
4147
 
 
4148
/* :120 */
 
4149
#line 2211 "./common.web"
3565
4150
;
3566
4151
}
3567
4152
 
 
4153
/* :122 */
 
4154
#line 2673 "./common.web"
3568
4155
 
3569
4156
else*cur_prms.change= prms[incl_depth-1].change;
3570
4157
 
3584
4171
goto restart;
3585
4172
}
3586
4173
 
3587
 
 
3588
 
 
 
4174
/* :139 */
 
4175
#line 2529 "./common.web"
 
4176
 
 
4177
 
 
4178
/* :133 */
 
4179
#line 2504 "./common.web"
3589
4180
 
3590
4181
break;
3591
4182
}
3593
4184
return(boolean)(!input_has_ended);
3594
4185
}
3595
4186
 
 
4187
/* :132 */
 
4188
/* 143: */
 
4189
#line 2733 "./common.web"
3596
4190
 
3597
4191
 
3598
4192
boolean
3605
4199
skip_white:
3606
4200
 
3607
4201
 
3608
 
while(loc<=limit&&(*loc==040||*loc==011||*loc==042))loc++;
 
4202
while(loc<=limit&&(*loc==' '||*loc=='\t'||*loc=='"'))loc++;
3609
4203
 
3610
4204
 
3611
4205
 
3612
4206
if(loc>=limit)return NO;
3613
4207
 
 
4208
/* 144: */
 
4209
#line 2772 "./common.web"
3614
4210
 
3615
4211
{
3616
 
if(*loc==057)
 
4212
if(*loc=='/')
3617
4213
{
3618
 
if(*(loc+1)==057)
 
4214
if(*(loc+1)=='/')
3619
4215
{
3620
4216
loc= limit+1;
3621
4217
return NO;
3622
4218
}
3623
4219
 
3624
 
if(*(loc+1)==052)
 
4220
if(*(loc+1)=='*')
3625
4221
{
3626
4222
for(loc+= 2;loc<=limit;loc++)
3627
 
if(*loc==052&&*(loc+1)==057)
 
4223
if(*loc=='*'&&*(loc+1)=='/')
3628
4224
{
3629
4225
loc+= 2;
3630
4226
goto skip_white;
3636
4232
}
3637
4233
}
3638
4234
 
 
4235
/* :144 */
 
4236
#line 2751 "./common.web"
3639
4237
 
3640
4238
 
3641
4239
k= file_name;j= loc;
3642
4240
 
3643
4241
 
3644
 
while(*loc!=040&&*loc!=011&&*loc!=042)*k++= XCHR(*loc++);
 
4242
while(*loc!=' '&&*loc!='\t'&&*loc!='"')*k++= XCHR(*loc++);
3645
4243
TERMINATE(k,0);
3646
4244
 
3647
4245
 
 
4246
/* :143 */
 
4247
/* 143: */
 
4248
#line 2765 "./common.web"
3648
4249
 
3649
4250
add_prefix(file_name);
3650
4251
 
3651
4252
return YES;
3652
4253
}
3653
4254
 
 
4255
/* :143 */
 
4256
/* 145: */
 
4257
#line 2799 "./common.web"
3654
4258
 
3655
4259
 
3656
4260
SRTN
3671
4275
}
3672
4276
}
3673
4277
 
 
4278
/* :145 */
 
4279
/* 146: */
 
4280
#line 2822 "./common.web"
3674
4281
 
3675
4282
 
3676
4283
SRTN
3739
4346
#endif 
3740
4347
}
3741
4348
 
 
4349
/* :146 */
 
4350
/* 148: */
 
4351
#line 2958 "./common.web"
3742
4352
 
3743
4353
 
3744
4354
boolean
3752
4362
 
3753
4363
 
3754
4364
 
3755
 
limbo_material= BOOLEAN(cur_buffer[0]==0100&&cur_buffer[1]==0172);
 
4365
limbo_material= BOOLEAN(cur_buffer[0]=='@'&&cur_buffer[1]=='z');
3756
4366
 
3757
4367
if(limbo_material)
3758
4368
do
3770
4380
 
3771
4381
 
3772
4382
}
3773
 
while(!(cur_buffer[0]==0100&&cur_buffer[1]==0170));
 
4383
while(!(cur_buffer[0]=='@'&&cur_buffer[1]=='x'));
3774
4384
 
3775
4385
 
3776
4386
 
3784
4394
return YES;
3785
4395
}
3786
4396
 
 
4397
/* :148 */
 
4398
/* 149: */
 
4399
#line 3007 "./common.web"
3787
4400
 
3788
4401
 
3789
4402
SRTN
3795
4408
 
3796
4409
*p_end= '\0';
3797
4410
 
3798
 
pk= (ASCII HUGE*)STRCHR(p,044);
 
4411
pk= (ASCII HUGE*)STRCHR(p,'$');
3799
4412
 
3800
4413
if(!pk)
3801
4414
return;
3802
4415
 
3803
 
pk_end= (ASCII HUGE*)STRCHR(pk,072);
 
4416
pk_end= (ASCII HUGE*)STRCHR(pk,':');
3804
4417
 
3805
4418
if(!pk_end)
3806
4419
return;
3807
4420
 
3808
 
if(pk_end[1]!=040)
 
4421
if(pk_end[1]!=' ')
3809
4422
return;
3810
4423
 
3811
 
ptext_end= (ASCII HUGE*)STRCHR(pk_end+1,044);
 
4424
ptext_end= (ASCII HUGE*)STRCHR(pk_end+1,'$');
3812
4425
 
3813
4426
if(!ptext_end)
3814
4427
return;
3815
4428
 
3816
 
if(ptext_end[-1]!=040)
 
4429
if(ptext_end[-1]!=' ')
3817
4430
return;
3818
4431
 
3819
4432
 
3820
 
for(ptext= pk_end+2;*ptext==040;ptext++)
 
4433
for(ptext= pk_end+2;*ptext==' ';ptext++)
3821
4434
;
3822
4435
 
3823
4436
 
3824
 
for(ptext_end--;*ptext_end==040;ptext_end--)
 
4437
for(ptext_end--;*ptext_end==' ';ptext_end--)
3825
4438
;
3826
4439
 
3827
4440
add_keyword(pk+1,pk_end,ptext,ptext_end+1);
3828
4441
}
3829
4442
 
 
4443
/* :149 */
 
4444
/* 152: */
 
4445
#line 3064 "./common.web"
3830
4446
 
3831
4447
 
3832
4448
SRTN
3871
4487
prcs->next= NULL;
3872
4488
}
3873
4489
 
 
4490
/* :152 */
 
4491
/* 154: */
 
4492
#line 3139 "./common.web"
3874
4493
 
3875
4494
 
3876
4495
SRTN
3888
4507
}
3889
4508
}
3890
4509
 
 
4510
/* :154 */
 
4511
/* 157: */
 
4512
#line 3175 "./common.web"
3891
4513
 
3892
4514
 
3893
4515
void HUGE*
3943
4565
return p;
3944
4566
}
3945
4567
 
 
4568
/* :157 */
 
4569
/* 158: */
 
4570
#line 3231 "./common.web"
3946
4571
 
3947
4572
 
3948
4573
SRTN
3962
4587
free_buf(&c_buf);
3963
4588
}
3964
4589
 
 
4590
/* :158 */
 
4591
/* 159: */
 
4592
#line 3259 "./common.web"
3965
4593
 
3966
4594
 
3967
4595
SRTN
3980
4608
printf(ptr_string,p,(char HUGE*)p+nbytes);
3981
4609
}
3982
4610
 
 
4611
/* :159 */
 
4612
/* 160: */
 
4613
#line 3279 "./common.web"
3983
4614
 
3984
4615
 
3985
4616
SRTN
4007
4638
FREE(p);
4008
4639
}
4009
4640
 
 
4641
/* :160 */
 
4642
/* 164: */
 
4643
#line 3485 "./common.web"
4010
4644
 
4011
4645
 
4012
4646
MEM HUGE*
4048
4682
return m;
4049
4683
}
4050
4684
 
 
4685
/* :164 */
 
4686
/* 165: */
 
4687
#line 3530 "./common.web"
4051
4688
 
4052
4689
 
4053
4690
void HUGE*
4069
4706
return get_mem0(abbrev,(*pnunits)+dn,nsize);
4070
4707
}
4071
4708
 
 
4709
/* :165 */
 
4710
/* 166: */
 
4711
#line 3552 "./common.web"
4072
4712
 
4073
4713
MEM HUGE*
4074
4714
find_abbrev FCN((abbrev))
4086
4726
return NULL;
4087
4727
}
4088
4728
 
 
4729
/* :166 */
 
4730
/* 167: */
 
4731
#line 3573 "./common.web"
4089
4732
 
4090
4733
#ifdef mcc
4091
4734
 
4120
4763
 
4121
4764
#endif 
4122
4765
 
 
4766
/* :167 */
 
4767
/* 170: */
 
4768
#line 3633 "./common.web"
4123
4769
 
4124
4770
 
4125
4771
unsigned
4160
4806
return n;
4161
4807
}
4162
4808
 
 
4809
/* :170 */
 
4810
/* 175: */
 
4811
#line 3719 "./common.web"
4163
4812
 
4164
4813
 
4165
4814
name_pointer
4183
4832
}
4184
4833
 
4185
4834
l= PTR_DIFF(int,last,first);
 
4835
/* 186: */
 
4836
#line 3977 "./common.web"
4186
4837
 
4187
4838
 
4188
4839
h= *i;
4189
4840
 
4190
4841
while(++i<last)h= (h+h+*i)%hash_size;
4191
4842
 
 
4843
/* :186 */
 
4844
#line 3742 "./common.web"
4192
4845
;
 
4846
/* 187: */
 
4847
#line 3986 "./common.web"
4193
4848
 
4194
4849
p= hash[h];
4195
4850
 
4202
4857
 
4203
4858
}
4204
4859
 
 
4860
/* :187 */
 
4861
#line 3743 "./common.web"
4205
4862
;
4206
4863
 
4207
4864
if(p==name_ptr)
 
4865
/* 188: */
 
4866
#line 4002 "./common.web"
4208
4867
 
4209
4868
{
4210
4869
if(byte_ptr+l>byte_end)OVERFLW("bytes","b");
4217
4876
ini_p(p,t);
4218
4877
}
4219
4878
 
 
4879
/* :188 */
 
4880
#line 3746 "./common.web"
4220
4881
;
4221
4882
 
4222
4883
if(!(p->Language&(boolean)language))
4246
4907
return p;
4247
4908
}
4248
4909
 
 
4910
/* :175 */
 
4911
/* 176: */
 
4912
#line 3780 "./common.web"
4249
4913
 
4250
4914
 
4251
4915
sixteen_bits
4299
4963
i= first= to_ASCII((outer_char*)a);
4300
4964
last= first+l;
4301
4965
 
 
4966
/* 186: */
 
4967
#line 3977 "./common.web"
4302
4968
 
4303
4969
 
4304
4970
h= *i;
4305
4971
 
4306
4972
while(++i<last)h= (h+h+*i)%hash_size;
4307
4973
 
 
4974
/* :186 */
 
4975
#line 3833 "./common.web"
4308
4976
 
4309
4977
p= hash[h];
4310
4978
while(p&&!(STRNCMP(first,p->byte_start,l)==0))
4321
4989
return n;
4322
4990
}
4323
4991
 
 
4992
#line 8 "./t_codes.hweb"
4324
4993
 
 
4994
/* :176 */
 
4995
/* 180: */
 
4996
#line 3852 "./common.web"
4325
4997
 
4326
4998
 
4327
4999
sixteen_bits
4332
5004
return find_n(IDENTIFIER(a0,a1));
4333
5005
}
4334
5006
 
 
5007
/* :180 */
 
5008
/* 181: */
 
5009
#line 3863 "./common.web"
4335
5010
 
4336
5011
 
4337
5012
SRTN
4363
5038
pr_lan("keyword  ",np->keyword);
4364
5039
}
4365
5040
 
 
5041
/* :181 */
 
5042
/* 184: */
 
5043
#line 3922 "./common.web"
4366
5044
 
4367
5045
 
4368
5046
SRTN
4391
5069
 
4392
5070
printf(" }");
4393
5071
 
 
5072
#line 3951 "./common.web"
4394
5073
 
4395
5074
puts("");
4396
5075
}
4397
5076
 
 
5077
/* :184 */
 
5078
/* 185: */
 
5079
#line 3956 "./common.web"
4398
5080
 
4399
5081
 
4400
5082
BUF_SIZE
4412
5094
return n;
4413
5095
}
4414
5096
 
 
5097
/* :185 */
 
5098
/* 191: */
 
5099
#line 4042 "./common.web"
4415
5100
 
4416
5101
 
4417
5102
name_pointer
4443
5128
return install_node(q,c,k,PTR_DIFF(int,l,k)+1);
4444
5129
}
4445
5130
 
 
5131
/* :191 */
 
5132
/* 192: */
 
5133
#line 4075 "./common.web"
4446
5134
 
4447
5135
 
4448
5136
LEXI
4461
5149
else return GREATER;
4462
5150
}
4463
5151
 
 
5152
/* :192 */
 
5153
/* 193: */
 
5154
#line 4101 "./common.web"
4464
5155
 
4465
5156
 
4466
5157
name_pointer
4483
5174
return node;
4484
5175
}
4485
5176
 
 
5177
/* :193 */
 
5178
/* 194: */
 
5179
#line 4129 "./common.web"
4486
5180
 
4487
5181
 
4488
5182
name_pointer
4519
5213
return r;
4520
5214
}
4521
5215
 
 
5216
/* :194 */
 
5217
/* 195: */
 
5218
#line 4165 "./common.web"
4522
5219
 
4523
5220
 
4524
5221
unsigned
4533
5230
return r?prn_id(r):0;
4534
5231
}
4535
5232
 
 
5233
/* :195 */
 
5234
/* 198: */
 
5235
#line 4213 "./common.web"
4536
5236
 
4537
5237
 
4538
5238
SRTN
4599
5299
 
4600
5300
 
4601
5301
if(err_origin==ERR_S)
 
5302
/* 201: */
 
5303
#line 4384 "./common.web"
4602
5304
 
4603
5305
{
4604
5306
CONST outer_char HUGE*k,HUGE*l;
4624
5326
putchar('\n');
4625
5327
}
4626
5328
 
 
5329
/* :201 */
 
5330
#line 4279 "./common.web"
4627
5331
 
4628
5332
else
 
5333
/* 199: */
 
5334
#line 4304 "./common.web"
4629
5335
 
4630
5336
{
4631
5337
if(cur0_prms)
4663
5369
}
4664
5370
 
4665
5371
for(k= cur_buffer;k<l;k++)
4666
 
if(*k==011)
 
5372
if(*k=='\t')
4667
5373
putchar(' ');
4668
5374
else
4669
5375
putchar(*k>127?' ':XCHR(*k));
4687
5393
 
4688
5394
}
4689
5395
if(limit!=NULL)
4690
 
if(*limit==0174)putchar('|');
 
5396
if(*limit=='|')putchar('|');
4691
5397
 
4692
5398
putchar(' ');
4693
5399
err_happened= YES;
4694
5400
}
4695
5401
}
4696
5402
 
 
5403
/* :199 */
 
5404
#line 4281 "./common.web"
4697
5405
 
4698
5406
}
4699
5407
 
4708
5416
set_color(NORMAL);
4709
5417
}
4710
5418
 
 
5419
/* :198 */
 
5420
/* 202: */
 
5421
#line 4413 "./common.web"
4711
5422
 
4712
5423
 
4713
5424
int
4753
5464
 
4754
5465
}
4755
5466
 
 
5467
/* :202 */
 
5468
/* 203: */
 
5469
#line 4467 "./common.web"
4756
5470
 
4757
5471
 
4758
5472
int
4788
5502
}
4789
5503
 
4790
5504
 
 
5505
/* :203 */
 
5506
/* 204: */
 
5507
#line 4500 "./common.web"
4791
5508
 
4792
5509
 
4793
5510
SRTN
4811
5528
}
4812
5529
 
4813
5530
 
 
5531
/* :204 */
 
5532
/* 205: */
 
5533
#line 4527 "./common.web"
4814
5534
 
4815
5535
 
4816
5536
SRTN
4825
5545
OVERFLW(temp,"");
4826
5546
}
4827
5547
 
 
5548
/* :205 */
 
5549
/* 206: */
 
5550
#line 4547 "./common.web"
4828
5551
 
4829
5552
 
4830
5553
#if(VMS)
4844
5567
prn_time();
4845
5568
#endif 
4846
5569
 
 
5570
/* 208: */
 
5571
#line 4609 "./common.web"
4847
5572
 
4848
5573
{
4849
5574
if(msg_level>=SHORT_INFO
4887
5612
set_color(NORMAL);
4888
5613
}
4889
5614
 
 
5615
/* :208 */
 
5616
#line 4566 "./common.web"
4890
5617
 
 
5618
/* 207: */
 
5619
#line 4597 "./common.web"
4891
5620
 
4892
5621
{
4893
5622
if(cur_prms.web&&cur_prms.web->File)
4899
5628
cls_files();
4900
5629
}
4901
5630
 
 
5631
/* :207 */
 
5632
#line 4567 "./common.web"
4902
5633
 
4903
5634
 
4904
5635
SET_COLOR(ordinary);
4926
5657
return-1;
4927
5658
}
4928
5659
 
 
5660
/* :206 */
 
5661
/* 209: */
 
5662
#line 4654 "./common.web"
4929
5663
 
4930
5664
 
4931
5665
char
4945
5679
return '!';
4946
5680
}
4947
5681
 
 
5682
/* :209 */
 
5683
/* 210: */
 
5684
#line 4675 "./common.web"
4948
5685
 
4949
5686
 
4950
5687
SRTN
4956
5693
}
4957
5694
 
4958
5695
 
 
5696
/* :210 */
 
5697
/* 211: */
 
5698
#line 4691 "./common.web"
4959
5699
 
4960
5700
 
4961
5701
boolean
5002
5742
return(STRCMP(buf,"yes")==0);
5003
5743
}
5004
5744
 
 
5745
/* :211 */
 
5746
/* 219: */
 
5747
#line 5051 "./common.web"
5005
5748
 
5006
5749
 
5007
5750
SRTN
5024
5767
if(statistics)
5025
5768
mem_avail(0);
5026
5769
 
 
5770
/* 233: */
 
5771
#line 5593 "./common.web"
5027
5772
 
5028
5773
{
5029
5774
outer_char HUGE*dot_pos;
5056
5801
}
5057
5802
}
5058
5803
 
 
5804
/* 235: */
 
5805
#line 5641 "./common.web"
5059
5806
 
5060
5807
{
5061
5808
if(p)
5071
5818
}
5072
5819
}
5073
5820
 
 
5821
/* :235 */
 
5822
#line 5622 "./common.web"
5074
5823
 
5075
5824
}
5076
5825
 
5077
 
 
5078
 
 
 
5826
/* :233 */
 
5827
#line 5073 "./common.web"
 
5828
 
 
5829
 
 
5830
/* 250: */
 
5831
#line 6145 "./common.web"
5079
5832
 
5080
5833
{
5081
5834
read_sty(style_file_name,renamed_style);
5082
5835
 
 
5836
/* 251: */
 
5837
#line 6155 "./common.web"
5083
5838
 
5084
5839
{
5085
5840
DOT_DELIMITER HUGE*d= &wt_style.dot_delimiter;
5093
5848
}
5094
5849
}
5095
5850
 
 
5851
/* :251 */
 
5852
#line 6149 "./common.web"
5096
5853
 
5097
5854
}
5098
5855
 
5099
 
 
5100
 
 
 
5856
/* :250 */
 
5857
#line 5075 "./common.web"
 
5858
 
 
5859
 
 
5860
/* 232: */
 
5861
#line 5568 "./common.web"
5101
5862
 
5102
5863
{
5103
5864
int k;
5122
5883
set_name(TEX,wt_style.output_ext.X_);
5123
5884
}
5124
5885
 
 
5886
/* :232 */
 
5887
#line 5077 "./common.web"
5125
5888
;
5126
5889
 
5127
5890
if(!(found_web||info_option))
5131
5894
*change_file_name= '\0';
5132
5895
}
5133
5896
 
 
5897
/* :219 */
 
5898
/* 220: */
 
5899
#line 5096 "./common.web"
5134
5900
 
5135
5901
 
5136
5902
outer_char HUGE*
5175
5941
return buf;
5176
5942
}
5177
5943
 
 
5944
/* :220 */
 
5945
/* 222: */
 
5946
#line 5169 "./common.web"
5178
5947
 
5179
5948
 
5180
5949
SRTN
5199
5968
 
5200
5969
ini_args= GET_MEM("ini_args",MAX_INI_ARGS,outer_char HUGE*);
5201
5970
 
 
5971
/* 223: */
 
5972
#line 5231 "./common.web"
5202
5973
 
5203
5974
{
5204
5975
outer_char*p_root,ini_root[MAX_FILE_NAME_LENGTH];
5222
5993
HOME,YES,ini_root),"r");
5223
5994
}
5224
5995
 
 
5996
/* :223 */
 
5997
#line 5193 "./common.web"
5225
5998
 
5226
5999
 
5227
6000
 
5228
6001
if(ini_file)
 
6002
/* 224: */
 
6003
#line 5256 "./common.web"
5229
6004
 
5230
6005
{
5231
6006
outer_char CONST HUGE*b,HUGE*blimit;
5255
6030
case '"':
5256
6031
case '\'':
5257
6032
blank= NO;
 
6033
/* 225: */
 
6034
#line 5329 "./common.web"
5258
6035
 
5259
6036
{
5260
6037
outer_char delim= *b;
5292
6069
*t++= *b++;
5293
6070
}
5294
6071
 
 
6072
/* :225 */
 
6073
#line 5285 "./common.web"
5295
6074
 
5296
6075
goto done;
5297
6076
 
5336
6115
#endif
5337
6116
}
5338
6117
 
 
6118
/* :224 */
 
6119
#line 5197 "./common.web"
5339
6120
 
5340
6121
 
5341
6122
 
5362
6143
FREE_MEM(temp,"temp",T_SIZE,char);
5363
6144
}
5364
6145
 
 
6146
/* :222 */
 
6147
/* 227: */
 
6148
#line 5375 "./common.web"
5365
6149
 
5366
6150
 
5367
6151
SRTN
5412
6196
}
5413
6197
}
5414
6198
 
 
6199
/* :227 */
 
6200
/* 228: */
 
6201
#line 5427 "./common.web"
5415
6202
 
5416
6203
 
5417
6204
int
5429
6216
}
5430
6217
 
5431
6218
 
 
6219
/* :228 */
 
6220
/* 229: */
 
6221
#line 5445 "./common.web"
5432
6222
 
5433
6223
 
5434
6224
char*
5482
6272
return(char*)buffer;
5483
6273
}
5484
6274
 
 
6275
/* :229 */
 
6276
/* 230: */
 
6277
#line 5495 "./common.web"
5485
6278
 
5486
6279
 
5487
6280
boolean
5500
6293
return NO;
5501
6294
}
5502
6295
 
 
6296
/* :230 */
 
6297
/* 231: */
 
6298
#line 5515 "./common.web"
5503
6299
 
5504
6300
 
5505
6301
SRTN
5540
6336
}
5541
6337
}
5542
6338
 
 
6339
/* :231 */
 
6340
/* 234: */
 
6341
#line 5626 "./common.web"
5543
6342
 
5544
6343
 
5545
6344
SRTN
5553
6352
new_fname(params.outp_nm+k,wbflnm0,output_ext);
5554
6353
}
5555
6354
 
 
6355
/* :234 */
 
6356
/* 236: */
 
6357
#line 5659 "./common.web"
5556
6358
 
5557
6359
 
5558
6360
outer_char HUGE*
5599
6401
}
5600
6402
 
5601
6403
 
 
6404
/* :236 */
 
6405
/* 239: */
 
6406
#line 5737 "./common.web"
5602
6407
 
5603
6408
 
5604
6409
SRTN
5624
6429
if(TeX_processor!=LaTeX_p)
5625
6430
return;
5626
6431
 
 
6432
/* 240: */
 
6433
#line 5781 "./common.web"
5627
6434
 
5628
6435
{
5629
6436
outer_char*dot_pos;
5655
6462
 
5656
6463
}
5657
6464
 
 
6465
/* :240 */
 
6466
#line 5762 "./common.web"
5658
6467
 
5659
6468
 
5660
6469
modno= 0;
5666
6475
if(STRNCMP(buffer,"\\Newlabel",9)!=0)
5667
6476
continue;
5668
6477
 
 
6478
/* 242: */
 
6479
#line 5826 "./common.web"
5669
6480
 
5670
6481
{
5671
6482
#if(!ANSI_SSCANF)
5749
6560
}
5750
6561
}
5751
6562
 
 
6563
/* :242 */
 
6564
#line 5773 "./common.web"
5752
6565
 
5753
6566
}
5754
6567
 
5756
6569
fclose(fa);
5757
6570
}
5758
6571
 
 
6572
/* :239 */
 
6573
/* 245: */
 
6574
#line 5994 "./common.web"
5759
6575
 
5760
6576
 
5761
6577
outer_char HUGE*
5773
6589
letter[1]= '\0';
5774
6590
 
5775
6591
c= (ps->subpage_flag?
5776
 
XCHR(modno-ps->modno0+0141-1):'\0');
 
6592
XCHR(modno-ps->modno0+'a'-1):'\0');
5777
6593
 
5778
6594
if(c)
5779
6595
{
5780
 
if(XORD(c)>0172)
 
6596
if(XORD(c)>'z')
5781
6597
c= '?';
5782
 
else if(c==0140)
 
6598
else if(c=='`')
5783
6599
c= '\0';
5784
6600
}
5785
6601
 
5803
6619
return*(next_mod_name++)= mod_temp;
5804
6620
}
5805
6621
 
 
6622
/* :245 */
 
6623
/* 246: */
 
6624
#line 6038 "./common.web"
5806
6625
 
5807
6626
 
5808
6627
SRTN
5821
6640
}
5822
6641
}
5823
6642
 
 
6643
/* :246 */
 
6644
/* 247: */
 
6645
#line 6062 "./common.web"
5824
6646
 
5825
6647
 
5826
6648
int
5865
6687
}
5866
6688
}
5867
6689
 
 
6690
/* :247 */
 
6691
/* 248: */
 
6692
#line 6109 "./common.web"
5868
6693
 
5869
6694
int
5870
6695
lan_index FCN((Language))
5891
6716
}
5892
6717
}
5893
6718
 
 
6719
/* :248 */
 
6720
/* 253: */
 
6721
#line 6181 "./common.web"
5894
6722
 
5895
6723
 
5896
6724
SRTN
5930
6758
 
5931
6759
 
5932
6760
if((a_file_name= BOOLEAN(*pa!='-'))||*(pa+1)=='\0')
 
6761
/* 254: */
 
6762
#line 6227 "./common.web"
5933
6763
 
5934
6764
{
5935
6765
if(doing_cmd_line)
5940
6770
*pfound_web= YES;
5941
6771
}
5942
6772
else if(!*pfound_change)
 
6773
/* 255: */
 
6774
#line 6250 "./common.web"
5943
6775
 
5944
6776
{
5945
6777
if(a_file_name&&STRLEN(pa)>MAX_FILE_NAME_LENGTH-5)
5964
6796
*pfound_change= YES;
5965
6797
}
5966
6798
 
 
6799
/* :255 */
 
6800
#line 6237 "./common.web"
5967
6801
 
5968
6802
else
 
6803
/* 321: */
 
6804
#line 8545 "./common.web"
5969
6805
 
5970
6806
{
5971
6807
printf("! Warning: Ignoring multiple change file \"%s\".\n",
5974
6810
continue;
5975
6811
}
5976
6812
 
 
6813
/* :321 */
 
6814
#line 6239 "./common.web"
5977
6815
;
5978
6816
}
5979
6817
else
5984
6822
}
5985
6823
}
5986
6824
 
 
6825
/* :254 */
 
6826
#line 6220 "./common.web"
5987
6827
 
5988
6828
else
 
6829
/* 264: */
 
6830
#line 6572 "./common.web"
5989
6831
 
5990
6832
{
5991
6833
outer_char mc;
6015
6857
break;
6016
6858
 
6017
6859
case '@':
 
6860
/* 265: */
 
6861
#line 6853 "./common.web"
6018
6862
 
6019
6863
{
6020
6864
if(!at_codes)
6027
6871
info_option= YES;
6028
6872
}
6029
6873
 
 
6874
/* :265 */
 
6875
#line 6601 "./common.web"
6030
6876
 
6031
6877
continue;
6032
6878
 
6033
6879
case 'a':
6034
6880
case 'A':
 
6881
/* 266: */
 
6882
#line 6870 "./common.web"
6035
6883
 
6036
6884
{
6037
6885
#if(TRANSLATE_ASCII || DEBUG_XCHR)
6042
6890
}
6043
6891
 
6044
6892
 
 
6893
/* :266 */
 
6894
#line 6606 "./common.web"
6045
6895
 
6046
6896
break;
6047
6897
 
6048
6898
case 'b':
 
6899
/* 267: */
 
6900
#line 6882 "./common.web"
6049
6901
 
6050
6902
{
6051
6903
params.Block_nums[LN(FORTRAN)]
6055
6907
= NOT(BLOCK_NUMS);
6056
6908
}
6057
6909
 
 
6910
/* :267 */
 
6911
#line 6610 "./common.web"
6058
6912
 
6059
6913
break;
6060
6914
 
6062
6916
beeps= NOT(BEEPS);
6063
6917
break;
6064
6918
 
 
6919
/* 15: */
 
6920
#line 118 "./typedefs.hweb"
6065
6921
 
6066
6922
case 'c'
6067
6923
 
 
6924
/* :15 */
 
6925
#line 6617 "./common.web"
6068
6926
:
 
6927
/* 268: */
 
6928
#line 6894 "./common.web"
6069
6929
 
6070
6930
{
 
6931
/* 315: */
 
6932
#line 8468 "./common.web"
6071
6933
 
6072
6934
cant_negate(pa-2);
6073
6935
 
 
6936
/* :315 */
 
6937
#line 6896 "./common.web"
6074
6938
 
6075
6939
 
6076
6940
Cpp= BOOLEAN(*pa=='+');
6095
6959
}
6096
6960
 
6097
6961
 
 
6962
/* :268 */
 
6963
#line 6618 "./common.web"
6098
6964
 
6099
6965
break;
6100
6966
 
6104
6970
break;
6105
6971
 
6106
6972
case 'D':
 
6973
/* 269: */
 
6974
#line 6928 "./common.web"
6107
6975
 
6108
6976
{
6109
6977
if(*pa=='[')
 
6978
/* 270: */
 
6979
#line 6950 "./common.web"
6110
6980
 
6111
6981
{
6112
6982
for(++pa;*pa!=']';pa++)
6143
7013
pa++;
6144
7014
}
6145
7015
 
 
7016
/* :270 */
 
7017
#line 6931 "./common.web"
6146
7018
 
6147
7019
else
6148
7020
{
6162
7034
info_option= YES;
6163
7035
}
6164
7036
 
 
7037
/* :269 */
 
7038
#line 6627 "./common.web"
6165
7039
 
6166
7040
continue;
6167
7041
 
6169
7043
number_dos= NOT(NUMBER_DOS);
6170
7044
 
6171
7045
case ':':
 
7046
/* 271: */
 
7047
#line 6987 "./common.web"
6172
7048
 
6173
7049
{
 
7050
/* 315: */
 
7051
#line 8468 "./common.web"
6174
7052
 
6175
7053
cant_negate(pa-2);
6176
7054
 
 
7055
/* :315 */
 
7056
#line 6989 "./common.web"
6177
7057
 
6178
7058
 
6179
7059
max_stmt= STARTING_DO_NUM;
6189
7069
}
6190
7070
 
6191
7071
 
 
7072
/* :271 */
 
7073
#line 6634 "./common.web"
6192
7074
 
6193
7075
continue;
6194
7076
 
6196
7078
try_extensions= NOT(TRY_EXTENSIONS);break;
6197
7079
 
6198
7080
case 'E':
 
7081
/* 272: */
 
7082
#line 7007 "./common.web"
6199
7083
 
6200
7084
{
 
7085
/* 315: */
 
7086
#line 8468 "./common.web"
6201
7087
 
6202
7088
cant_negate(pa-2);
6203
7089
 
 
7090
/* :315 */
 
7091
#line 7009 "./common.web"
6204
7092
 
6205
7093
 
6206
7094
if(*pa)
6210
7098
err0_print(ERR_C,OC("Missing character after -E option; option ignored"),-1-0);
6211
7099
}
6212
7100
 
 
7101
/* :272 */
 
7102
#line 6641 "./common.web"
6213
7103
 
6214
7104
break;
6215
7105
 
6223
7113
dbg_output= NOT(DBG_OUTPUT);break;
6224
7114
 
6225
7115
case 'h':
 
7116
/* 315: */
 
7117
#line 8468 "./common.web"
6226
7118
 
6227
7119
cant_negate(pa-2);
6228
7120
 
 
7121
/* :315 */
 
7122
#line 6654 "./common.web"
6229
7123
 
6230
7124
help();
6231
7125
continue;
6232
7126
 
6233
7127
case 'H':
 
7128
/* 275: */
 
7129
#line 7078 "./common.web"
6234
7130
 
6235
7131
{
6236
7132
outer_char HUGE*p= pa;
6261
7157
 
6262
7158
}
6263
7159
 
 
7160
/* :275 */
 
7161
#line 6659 "./common.web"
6264
7162
 
6265
7163
break;
6266
7164
 
6267
7165
case 'i':
 
7166
/* 276: */
 
7167
#line 7114 "./common.web"
6268
7168
 
6269
7169
{
6270
7170
switch(*pa++)
6287
7187
}
6288
7188
}
6289
7189
 
 
7190
/* :276 */
 
7191
#line 6663 "./common.web"
6290
7192
 
6291
7193
break;
6292
7194
 
6293
7195
case 'I':
 
7196
/* 277: */
 
7197
#line 7142 "./common.web"
6294
7198
 
6295
7199
{
6296
7200
more_includes(read_iformats?&hdr_incl:&incl,pa);
6297
7201
 
6298
7202
}
6299
7203
 
 
7204
/* :277 */
 
7205
#line 6667 "./common.web"
6300
7206
 
6301
7207
continue;
6302
7208
 
6307
7213
lc_keywords= NOT(LC_KEYWORDS);break;
6308
7214
 
6309
7215
case 'L':
 
7216
/* 278: */
 
7217
#line 7151 "./common.web"
6310
7218
 
6311
7219
{
6312
7220
switch(*pa)
6313
7221
{
 
7222
/* 15: */
 
7223
#line 118 "./typedefs.hweb"
6314
7224
 
6315
7225
case 'c'
6316
7226
 
 
7227
/* :15 */
 
7228
#line 7155 "./common.web"
6317
7229
:
 
7230
/* 17: */
 
7231
#line 124 "./typedefs.hweb"
6318
7232
 
6319
7233
case 'n'
6320
7234
 
 
7235
/* :17 */
 
7236
#line 7156 "./common.web"
6321
7237
:
 
7238
/* 16: */
 
7239
#line 121 "./typedefs.hweb"
6322
7240
 
6323
7241
case 'r'
6324
7242
 
 
7243
/* :16 */
 
7244
#line 7157 "./common.web"
6325
7245
:
6326
7246
goto reswitch;
6327
7247
 
 
7248
/* 19: */
 
7249
#line 130 "./typedefs.hweb"
6328
7250
 
6329
7251
case 'v'
6330
7252
 
6331
7253
 
6332
7254
 
 
7255
/* :19 */
 
7256
#line 7160 "./common.web"
6333
7257
:
 
7258
/* 315: */
 
7259
#line 8468 "./common.web"
6334
7260
 
6335
7261
cant_negate(pa-2);
6336
7262
 
 
7263
/* :315 */
 
7264
#line 7161 "./common.web"
6337
7265
 
6338
7266
switch(*(pa+1))
6339
7267
{
6351
7279
}
6352
7280
break;
6353
7281
 
 
7282
/* 18: */
 
7283
#line 127 "./typedefs.hweb"
6354
7284
 
6355
7285
case 'x'
6356
7286
 
 
7287
/* :18 */
 
7288
#line 7178 "./common.web"
6357
7289
:
 
7290
/* 315: */
 
7291
#line 8468 "./common.web"
6358
7292
 
6359
7293
cant_negate(pa-2);
6360
7294
 
 
7295
/* :315 */
 
7296
#line 7179 "./common.web"
6361
7297
 
6362
7298
switch(*(pa+1))
6363
7299
{
6381
7317
}
6382
7318
}
6383
7319
 
 
7320
/* :278 */
 
7321
#line 6677 "./common.web"
6384
7322
 
6385
7323
continue;
6386
7324
 
6387
7325
case 'l':
 
7326
/* 279: */
 
7327
#line 7205 "./common.web"
6388
7328
 
6389
7329
{
6390
7330
prn_input_lines= BOOLEAN(YES^not);
6416
7356
}
6417
7357
}
6418
7358
 
 
7359
/* :279 */
 
7360
#line 6681 "./common.web"
6419
7361
 
6420
7362
continue;
6421
7363
 
6422
7364
case 'M':
 
7365
/* 288: */
 
7366
#line 7576 "./common.web"
6423
7367
 
6424
7368
{
6425
7369
if(!*pa)
6439
7383
}
6440
7384
 
6441
7385
 
 
7386
/* :288 */
 
7387
#line 6685 "./common.web"
6442
7388
 
6443
7389
continue;
6444
7390
 
6445
7391
case 'm':
 
7392
/* 289: */
 
7393
#line 7601 "./common.web"
6446
7394
 
6447
7395
{
6448
7396
switch(*pa)
6449
7397
{
6450
7398
case '4':
6451
7399
 
 
7400
/* 315: */
 
7401
#line 8468 "./common.web"
6452
7402
 
6453
7403
cant_negate(pa-2);
6454
7404
 
 
7405
/* :315 */
 
7406
#line 7607 "./common.web"
6455
7407
 
 
7408
/* :289 */
 
7409
/* 289: */
 
7410
#line 7611 "./common.web"
6456
7411
m4= !M4_;
6457
7412
pa++;
6458
7413
break;
6487
7442
}
6488
7443
}
6489
7444
 
 
7445
/* :289 */
 
7446
#line 6689 "./common.web"
6490
7447
 
6491
7448
break;
6492
7449
 
6503
7460
break;
6504
7461
 
6505
7462
case 'p':
 
7463
/* 286: */
 
7464
#line 7483 "./common.web"
6506
7465
 
6507
7466
{
6508
7467
IN_STYLE outer_char HUGE*sprm_buf,HUGE*sprm_ptr,HUGE*sprm_end;
6539
7498
*sprm_ptr++= '\n';
6540
7499
}
6541
7500
 
 
7501
/* :286 */
 
7502
#line 6705 "./common.web"
6542
7503
 
6543
7504
continue;
6544
7505
 
6545
7506
case 'P':
 
7507
/* 287: */
 
7508
#line 7524 "./common.web"
6546
7509
 
6547
7510
{
6548
7511
switch(*pa)
6573
7536
}
6574
7537
 
6575
7538
 
 
7539
/* :287 */
 
7540
#line 6709 "./common.web"
6576
7541
 
6577
7542
break;
6578
7543
 
6581
7546
Ratfor77= NOT(RATFOR77);
6582
7547
break;
6583
7548
 
 
7549
/* 16: */
 
7550
#line 121 "./typedefs.hweb"
6584
7551
 
6585
7552
case 'r'
6586
7553
 
 
7554
/* :16 */
 
7555
#line 6717 "./common.web"
6587
7556
:
6588
7557
if(!RAT_OK("Language command ignored"))
6589
7558
break;
6591
7560
continue;
6592
7561
 
6593
7562
case 's':
 
7563
/* 294: */
 
7564
#line 7733 "./common.web"
6594
7565
 
6595
7566
{
6596
7567
statistics= NOT(STATISTICS);
6611
7582
}
6612
7583
}
6613
7584
 
 
7585
/* :294 */
 
7586
#line 6724 "./common.web"
6614
7587
 
6615
7588
continue;
6616
7589
 
6617
7590
case 't':
 
7591
/* 302: */
 
7592
#line 7917 "./common.web"
6618
7593
 
6619
7594
{
 
7595
/* 315: */
 
7596
#line 8468 "./common.web"
6620
7597
 
6621
7598
cant_negate(pa-2);
6622
7599
 
 
7600
/* :315 */
 
7601
#line 7919 "./common.web"
6623
7602
 
6624
7603
ntrunc();
6625
7604
}
6626
7605
 
 
7606
/* :302 */
 
7607
#line 6728 "./common.web"
6627
7608
 
6628
7609
continue;
6629
7610
 
6630
7611
case 'T':
 
7612
/* 306: */
 
7613
#line 8034 "./common.web"
6631
7614
 
6632
7615
{
6633
7616
outer_char HUGE*p= pa;
6671
7654
}
6672
7655
}
6673
7656
 
 
7657
/* :306 */
 
7658
#line 6732 "./common.web"
6674
7659
 
6675
7660
continue;
6676
7661
 
6677
7662
case 'u':
 
7663
/* 307: */
 
7664
#line 8080 "./common.web"
6678
7665
 
6679
7666
{
6680
7667
if(not)
6689
7676
}
6690
7677
 
6691
7678
 
 
7679
/* :307 */
 
7680
#line 6736 "./common.web"
6692
7681
 
6693
7682
continue;
6694
7683
 
6713
7702
continue;
6714
7703
 
6715
7704
case 'W':
 
7705
/* 309: */
 
7706
#line 8108 "./common.web"
6716
7707
 
6717
7708
{
6718
7709
outer_char HUGE*p= pa;
6799
7790
}
6800
7791
}
6801
7792
 
 
7793
/* :309 */
 
7794
#line 6760 "./common.web"
6802
7795
 
6803
7796
continue;
6804
7797
 
6817
7810
continue;
6818
7811
 
6819
7812
case 'y':
 
7813
/* 311: */
 
7814
#line 8260 "./common.web"
6820
7815
 
6821
7816
{
6822
7817
outer_char abbrev[80],HUGE*a;
6825
7820
boolean query_mode= NO;
6826
7821
 
6827
7822
 
 
7823
/* 315: */
 
7824
#line 8468 "./common.web"
6828
7825
 
6829
7826
cant_negate(pa-2);
6830
7827
 
 
7828
/* :315 */
 
7829
#line 8268 "./common.web"
6831
7830
 
6832
7831
 
6833
7832
if(!*pa)
6880
7879
info_option= YES;
6881
7880
}
6882
7881
 
 
7882
/* :311 */
 
7883
#line 6778 "./common.web"
6883
7884
 
6884
7885
continue;
6885
7886
 
6886
7887
case 'z':
 
7888
/* 312: */
 
7889
#line 8323 "./common.web"
6887
7890
 
6888
7891
{
 
7892
/* 315: */
 
7893
#line 8468 "./common.web"
6889
7894
 
6890
7895
cant_negate(pa-2);
6891
7896
 
 
7897
/* :315 */
 
7898
#line 8325 "./common.web"
6892
7899
 
6893
7900
 
6894
7901
if(STRLEN(pa)<MAX_FILE_NAME_LENGTH)
6911
7918
}
6912
7919
 
6913
7920
 
 
7921
/* :312 */
 
7922
#line 6782 "./common.web"
6914
7923
 
6915
7924
continue;
6916
7925
 
6942
7951
 
6943
7952
case '>':
6944
7953
case '=':
 
7954
/* 315: */
 
7955
#line 8468 "./common.web"
6945
7956
 
6946
7957
cant_negate(pa-2);
6947
7958
 
 
7959
/* :315 */
 
7960
#line 6813 "./common.web"
6948
7961
 
6949
7962
if(doing_cmd_line||phase==2)
6950
7963
redirect_output();
6983
7996
}
6984
7997
 
6985
7998
 
 
7999
/* :264 */
 
8000
#line 6222 "./common.web"
6986
8001
;
6987
8002
}
6988
8003
}
6989
8004
 
 
8005
/* :253 */
 
8006
/* 256: */
 
8007
#line 6279 "./common.web"
6990
8008
 
6991
8009
 
6992
8010
SRTN
7002
8020
 
7003
8021
if(!IS_WHITE(*loc))
7004
8022
{
7005
 
if(*loc!=0133)
 
8023
if(*loc!='[')
7006
8024
{
7007
 
*pa++= 055;
 
8025
*pa++= '-';
7008
8026
*pa++= l;
7009
8027
 
7010
8028
WHILE()
7011
8029
{
7012
 
if(IS_WHITE(*loc)||*loc==0133)break;
7013
 
if(*loc==0174&&parsing_mode==INNER)
 
8030
if(IS_WHITE(*loc)||*loc=='[')break;
 
8031
if(*loc=='|'&&parsing_mode==INNER)
7014
8032
{
7015
8033
 
7016
8034
err0_print(ERR_C,OC("WARNING:  Code mode ended during \
7023
8041
}
7024
8042
 
7025
8043
 
7026
 
if(*loc==0133)
 
8044
if(*loc=='[')
7027
8045
{
7028
 
COPY_TO_ARG_BUFFER(040);
 
8046
COPY_TO_ARG_BUFFER(' ');
7029
8047
 
7030
8048
for(loc++;;)
7031
8049
{
7032
 
if(*loc==0135)
 
8050
if(*loc==']')
7033
8051
{
7034
8052
loc++;
7035
8053
break;
7046
8064
fin_language();
7047
8065
}
7048
8066
 
 
8067
/* :256 */
 
8068
/* 257: */
 
8069
#line 6341 "./common.web"
7049
8070
 
7050
8071
 
7051
8072
SRTN
7057
8078
 
7058
8079
switch(l)
7059
8080
{
7060
 
 
7061
 
case 0143
7062
 
 
 
8081
/* 10: */
 
8082
#line 95 "./typedefs.hweb"
 
8083
 
 
8084
case 'c'
 
8085
 
 
8086
/* :10 */
 
8087
#line 6352 "./common.web"
7063
8088
:
7064
8089
language= (Cpp?C_PLUS_PLUS:C);
7065
8090
break;
7066
8091
 
7067
 
 
7068
 
case 0162
7069
 
 
 
8092
/* 11: */
 
8093
#line 98 "./typedefs.hweb"
 
8094
 
 
8095
case 'r'
 
8096
 
 
8097
/* :11 */
 
8098
#line 6356 "./common.web"
7070
8099
:
7071
8100
if(!RAT_OK("Invalid @r command; language set to C"))language= C;
7072
8101
else language= (Fortran88?RATFOR_90:RATFOR);
7073
8102
break;
7074
8103
 
7075
 
 
7076
 
case 0156
7077
 
 
 
8104
/* 12: */
 
8105
#line 101 "./typedefs.hweb"
 
8106
 
 
8107
case 'n'
 
8108
 
 
8109
/* :12 */
 
8110
#line 6361 "./common.web"
7078
8111
:
7079
8112
language= (Fortran88?FORTRAN_90:FORTRAN);
7080
8113
break;
7081
8114
 
7082
 
 
7083
 
case 0166
7084
 
 
7085
 
 
7086
 
 
 
8115
/* 14: */
 
8116
#line 107 "./typedefs.hweb"
 
8117
 
 
8118
case 'v'
 
8119
 
 
8120
 
 
8121
 
 
8122
/* :14 */
 
8123
#line 6365 "./common.web"
7087
8124
:
7088
8125
language= LITERAL;
7089
8126
break;
7090
8127
 
7091
 
 
7092
 
case 0170
7093
 
 
 
8128
/* 13: */
 
8129
#line 104 "./typedefs.hweb"
 
8130
 
 
8131
case 'x'
 
8132
 
 
8133
/* :13 */
 
8134
#line 6369 "./common.web"
7094
8135
:
7095
8136
language= TEX;
7096
8137
break;
7104
8145
ini0_language();
7105
8146
}
7106
8147
 
 
8148
/* :257 */
 
8149
/* 258: */
 
8150
#line 6386 "./common.web"
7107
8151
 
7108
8152
 
7109
8153
SRTN
7161
8205
}
7162
8206
}
7163
8207
 
 
8208
/* :258 */
 
8209
/* 259: */
 
8210
#line 6444 "./common.web"
7164
8211
 
7165
8212
 
7166
8213
SRTN
7197
8244
out_file= params.outp_file[lan_num(out_language)];
7198
8245
}
7199
8246
 
 
8247
/* :259 */
 
8248
/* 260: */
 
8249
#line 6481 "./common.web"
7200
8250
 
7201
8251
 
7202
8252
SRTN
7203
8253
frz_params(VOID)
7204
8254
{
 
8255
/* :260 */
 
8256
/* 260: */
 
8257
#line 6489 "./common.web"
7205
8258
 
7206
8259
cont_char= XORD(in_escape);
7207
8260
free_90= BOOLEAN(Fortran88&&free_form_input);
7210
8263
if(!prn_semis&&free_Fortran&&auto_pseudo_semis)
7211
8264
prn_semis= YES;
7212
8265
 
 
8266
/* :260 */
 
8267
/* 260: */
 
8268
#line 6502 "./common.web"
7213
8269
 
7214
8270
if(program==tangle&&free_90)
7215
8271
switch(language)
7225
8281
 
7226
8282
}
7227
8283
 
 
8284
/* :260 */
 
8285
/* 261: */
 
8286
#line 6519 "./common.web"
7228
8287
 
7229
8288
 
7230
8289
int
7257
8316
return n;
7258
8317
}
7259
8318
 
 
8319
/* :261 */
 
8320
/* 273: */
 
8321
#line 7023 "./common.web"
7260
8322
 
7261
8323
 
7262
8324
SRTN
7273
8335
}
7274
8336
 
7275
8337
#if(HAVE_INFO)
 
8338
/* 274: */
 
8339
#line 7047 "./common.web"
7276
8340
 
7277
8341
{
7278
8342
outer_char temp[500],buf[500],*pmenus;
7302
8366
}
7303
8367
}
7304
8368
 
 
8369
/* :274 */
 
8370
#line 7039 "./common.web"
7305
8371
 
7306
8372
#endif 
7307
8373
 
7309
8375
}
7310
8376
 
7311
8377
 
 
8378
/* :273 */
 
8379
/* 280: */
 
8380
#line 7239 "./common.web"
7312
8381
 
7313
8382
 
7314
8383
SRTN
7319
8388
 
7320
8389
if(isdigit(*pa))
7321
8390
{
 
8391
/* 315: */
 
8392
#line 8468 "./common.web"
7322
8393
 
7323
8394
cant_negate(pa-2);
7324
8395
 
 
8396
/* :315 */
 
8397
#line 7249 "./common.web"
7325
8398
 
7326
8399
 
7327
8400
switch(*pa++)
7358
8431
case '&':
7359
8432
 
7360
8433
 
 
8434
/* 315: */
 
8435
#line 8468 "./common.web"
7361
8436
 
7362
8437
cant_negate(pa-2);
7363
8438
 
 
8439
/* :315 */
 
8440
#line 7285 "./common.web"
7364
8441
 
7365
8442
 
7366
8443
if(FORTRAN90_LIKE(language))
7412
8489
 
7413
8490
case 'g':
7414
8491
case 'G':
 
8492
/* 315: */
 
8493
#line 8468 "./common.web"
7415
8494
 
7416
8495
cant_negate(pa-2);
7417
8496
 
7418
 
 
7419
 
 
 
8497
/* :315 */
 
8498
#line 7336 "./common.web"
 
8499
 
 
8500
 
 
8501
/* 282: */
 
8502
#line 7395 "./common.web"
7420
8503
 
7421
8504
{
7422
8505
if(is_RATFOR_(Language))
7423
8506
{
7424
8507
if(!RAT_OK("'g' command ignored"))
7425
8508
break;
 
8509
/* 284: */
 
8510
#line 7436 "./common.web"
7426
8511
 
7427
8512
{
7428
8513
while(*pa)
7469
8554
}
7470
8555
}
7471
8556
 
 
8557
/* :284 */
 
8558
#line 7401 "./common.web"
7472
8559
;
7473
8560
}
7474
8561
else
7475
8562
bad_loption(Language);
7476
8563
}
7477
8564
 
 
8565
/* :282 */
 
8566
#line 7338 "./common.web"
7478
8567
 
7479
8568
return;
7480
8569
 
7481
8570
case 'k':
7482
8571
suppress_cmds= BOOLEAN(YES^not);
 
8572
/* 285: */
 
8573
#line 7469 "./common.web"
7483
8574
 
7484
8575
{
7485
8576
if(!*pa)
7489
8580
}
7490
8581
 
7491
8582
 
 
8583
/* :285 */
 
8584
#line 7343 "./common.web"
7492
8585
 
7493
8586
return;
7494
8587
 
7495
8588
case 'K':
7496
8589
suppress_cmds= BOOLEAN(NO^not);
 
8590
/* 285: */
 
8591
#line 7469 "./common.web"
7497
8592
 
7498
8593
{
7499
8594
if(!*pa)
7503
8598
}
7504
8599
 
7505
8600
 
 
8601
/* :285 */
 
8602
#line 7348 "./common.web"
7506
8603
 
7507
8604
return;
7508
8605
 
7512
8609
break;
7513
8610
 
7514
8611
case '{':
 
8612
/* 315: */
 
8613
#line 8468 "./common.web"
7515
8614
 
7516
8615
cant_negate(pa-2);
7517
8616
 
 
8617
/* :315 */
 
8618
#line 7357 "./common.web"
7518
8619
 
7519
8620
pa--;
7520
8621
set_filter(language);
7523
8624
case '\0':
7524
8625
 
7525
8626
 
 
8627
/* 315: */
 
8628
#line 8468 "./common.web"
7526
8629
 
7527
8630
cant_negate(pa-2);
7528
8631
 
 
8632
/* :315 */
 
8633
#line 7365 "./common.web"
7529
8634
 
7530
8635
ini_language(XORD(*LANGUAGE_CODE(Language)));
7531
8636
return;
7540
8645
spurious(pa);
7541
8646
}
7542
8647
 
 
8648
/* :280 */
 
8649
/* 290: */
 
8650
#line 7647 "./common.web"
7543
8651
 
7544
8652
 
7545
8653
SRTN
7583
8691
*p= XORD(*p);
7584
8692
}
7585
8693
 
 
8694
/* :290 */
 
8695
/* 292: */
 
8696
#line 7697 "./common.web"
7586
8697
 
7587
8698
 
7588
8699
SRTN
7603
8714
from_buffer= YES;
7604
8715
}
7605
8716
 
 
8717
/* :292 */
 
8718
/* 293: */
 
8719
#line 7718 "./common.web"
7606
8720
 
7607
8721
SRTN
7608
8722
undivert(VOID)
7615
8729
}
7616
8730
 
7617
8731
 
 
8732
/* :293 */
 
8733
/* 296: */
 
8734
#line 7766 "./common.web"
7618
8735
 
7619
8736
 
7620
8737
SRTN
7641
8758
SET_COLOR(ordinary);
7642
8759
}
7643
8760
 
 
8761
/* :296 */
 
8762
/* 297: */
 
8763
#line 7794 "./common.web"
7644
8764
 
7645
8765
 
7646
8766
SRTN
7666
8786
free_buf(&c_buf);
7667
8787
}
7668
8788
 
 
8789
/* :297 */
 
8790
/* 298: */
 
8791
#line 7820 "./common.web"
7669
8792
 
7670
8793
 
7671
8794
BUF_SIZE
7676
8799
}
7677
8800
 
7678
8801
 
 
8802
/* :298 */
 
8803
/* 299: */
 
8804
#line 7833 "./common.web"
7679
8805
 
7680
8806
 
7681
8807
SRTN
7707
8833
FREE(p->s[--p->n]);
7708
8834
}
7709
8835
 
 
8836
/* :299 */
 
8837
/* 301: */
 
8838
#line 7872 "./common.web"
7710
8839
 
7711
8840
 
7712
8841
outer_char*
7749
8878
}
7750
8879
 
7751
8880
 
 
8881
/* :301 */
 
8882
/* 303: */
 
8883
#line 7924 "./common.web"
7752
8884
 
7753
8885
 
7754
8886
SRTN
7767
8899
l= (language==NO_LANGUAGE)?GLOBAL_LANGUAGE:language;
7768
8900
else switch(*pa++)
7769
8901
{
 
8902
/* 15: */
 
8903
#line 118 "./typedefs.hweb"
7770
8904
 
7771
8905
case 'c'
7772
8906
 
 
8907
/* :15 */
 
8908
#line 7942 "./common.web"
7773
8909
:
7774
8910
l= lcase(C,'\0',C_PLUS_PLUS,'+',&pa);
7775
8911
break;
 
8912
/* 16: */
 
8913
#line 121 "./typedefs.hweb"
7776
8914
 
7777
8915
case 'r'
7778
8916
 
 
8917
/* :16 */
 
8918
#line 7945 "./common.web"
7779
8919
:
7780
8920
l= lcase(RATFOR,'7',RATFOR_90,'9',&pa);
7781
8921
break;
 
8922
/* 17: */
 
8923
#line 124 "./typedefs.hweb"
7782
8924
 
7783
8925
case 'n'
7784
8926
 
 
8927
/* :17 */
 
8928
#line 7948 "./common.web"
7785
8929
:
7786
8930
l= lcase(FORTRAN,'7',FORTRAN_90,'9',&pa);
7787
8931
break;
 
8932
/* 19: */
 
8933
#line 130 "./typedefs.hweb"
7788
8934
 
7789
8935
case 'v'
7790
8936
 
7791
8937
 
7792
8938
 
 
8939
/* :19 */
 
8940
#line 7951 "./common.web"
7793
8941
:
7794
8942
l= LITERAL;break;
 
8943
/* 18: */
 
8944
#line 127 "./typedefs.hweb"
7795
8945
 
7796
8946
case 'x'
7797
8947
 
 
8948
/* :18 */
 
8949
#line 7953 "./common.web"
7798
8950
:
7799
8951
l= TEX;break;
7800
8952
default:
7820
8972
}
7821
8973
}
7822
8974
 
 
8975
/* :303 */
 
8976
/* 304: */
 
8977
#line 7978 "./common.web"
7823
8978
 
7824
8979
 
7825
8980
LANGUAGE
7845
9000
return l0;
7846
9001
}
7847
9002
 
 
9003
/* :304 */
 
9004
/* 305: */
 
9005
#line 8006 "./common.web"
7848
9006
 
7849
9007
 
7850
9008
SRTN
7870
9028
}
7871
9029
 
7872
9030
 
 
9031
/* :305 */
 
9032
/* 310: */
 
9033
#line 8203 "./common.web"
7873
9034
 
7874
9035
 
7875
9036
SRTN
7923
9084
no_xref= BOOLEAN(!(prn_index||prn_modules));
7924
9085
}
7925
9086
 
 
9087
/* :310 */
 
9088
/* 313: */
 
9089
#line 8356 "./common.web"
7926
9090
 
7927
9091
 
7928
9092
SRTN
7963
9127
 
7964
9128
switch(c)
7965
9129
{
 
9130
/* 15: */
 
9131
#line 118 "./typedefs.hweb"
7966
9132
 
7967
9133
case 'c'
7968
9134
 
 
9135
/* :15 */
 
9136
#line 8396 "./common.web"
7969
9137
:
7970
9138
set_fname(lcase(C,'\0',C_PLUS_PLUS,'+',&pa),pname,YES);
7971
9139
break;
7972
9140
 
 
9141
/* 16: */
 
9142
#line 121 "./typedefs.hweb"
7973
9143
 
7974
9144
case 'r'
7975
9145
 
 
9146
/* :16 */
 
9147
#line 8400 "./common.web"
7976
9148
:
7977
9149
if(!RAT_OK("Redirection ignored"))break;
7978
9150
 
7979
9151
set_fname(lcase(RATFOR,'7',RATFOR_90,'9',&pa),pname,YES);
7980
9152
break;
7981
9153
 
 
9154
/* 17: */
 
9155
#line 124 "./typedefs.hweb"
7982
9156
 
7983
9157
case 'n'
7984
9158
 
 
9159
/* :17 */
 
9160
#line 8406 "./common.web"
7985
9161
:
7986
9162
set_fname(lcase(FORTRAN,'7',FORTRAN_90,'9',&pa),pname,YES);
7987
9163
break;
7988
9164
 
 
9165
/* 19: */
 
9166
#line 130 "./typedefs.hweb"
7989
9167
 
7990
9168
case 'v'
7991
9169
 
7992
9170
 
7993
9171
 
 
9172
/* :19 */
 
9173
#line 8410 "./common.web"
7994
9174
:
7995
9175
set_fname(LITERAL,pname,YES);
7996
9176
break;
7997
9177
 
 
9178
/* 18: */
 
9179
#line 127 "./typedefs.hweb"
7998
9180
 
7999
9181
case 'x'
8000
9182
 
 
9183
/* :18 */
 
9184
#line 8414 "./common.web"
8001
9185
:
8002
9186
set_fname(TEX,pname,YES);
8003
9187
break;
8021
9205
}
8022
9206
}
8023
9207
 
 
9208
/* :313 */
 
9209
/* 314: */
 
9210
#line 8440 "./common.web"
8024
9211
 
8025
9212
 
8026
9213
SRTN
8048
9235
}
8049
9236
 
8050
9237
 
 
9238
/* :314 */
 
9239
/* 316: */
 
9240
#line 8472 "./common.web"
8051
9241
 
8052
9242
 
8053
9243
SRTN
8062
9252
}
8063
9253
}
8064
9254
 
 
9255
/* :316 */
 
9256
/* 317: */
 
9257
#line 8487 "./common.web"
8065
9258
 
8066
9259
 
8067
9260
SRTN
8073
9266
err0_print(ERR_C,OC("Invalid language %s \"%s\""),-1-2,type,pa0);
8074
9267
}
8075
9268
 
 
9269
/* :317 */
 
9270
/* 318: */
 
9271
#line 8498 "./common.web"
8076
9272
 
8077
9273
 
8078
9274
SRTN
8084
9280
mark_harmless;
8085
9281
}
8086
9282
 
 
9283
/* :318 */
 
9284
/* 319: */
 
9285
#line 8510 "./common.web"
8087
9286
 
8088
9287
 
8089
9288
SRTN
8096
9295
should be one or more letters in set {%s}"),-1-2,option,letters);
8097
9296
}
8098
9297
 
 
9298
/* :319 */
 
9299
/* 320: */
 
9300
#line 8522 "./common.web"
8099
9301
 
8100
9302
 
8101
9303
SRTN
8115
9317
wrap_up();
8116
9318
}
8117
9319
 
 
9320
/* :320 */
 
9321
/* 322: */
 
9322
#line 8554 "./common.web"
8118
9323
 
8119
9324
 
8120
9325
SRTN
8124
9329
fatal(ERR_NULL,OC("!! Filename too long:  "),OC("%s."),(CONST outer_char*)pa);
8125
9330
}
8126
9331
 
 
9332
/* :322 */
 
9333
/* 323: */
 
9334
#line 8566 "./common.web"
8127
9335
 
8128
9336
 
8129
9337
SRTN
8134
9342
mark_harmless;
8135
9343
}
8136
9344
 
 
9345
/* :323 */
 
9346
/* 324: */
 
9347
#line 8578 "./common.web"
8137
9348
 
8138
9349
 
8139
9350
SRTN
8146
9357
err0_print(ERR_C,OC("WARNING:  Command-line language %s overridden in limbo by %s"),2,languages[lan_num(cmd_language)],languages[lan_num(language)]);
8147
9358
}
8148
9359
 
 
9360
/* :324 */
 
9361
/* 327: */
 
9362
#line 8636 "./common.web"
8149
9363
 
8150
9364
 
8151
9365
SRTN
8181
9395
}
8182
9396
}
8183
9397
 
 
9398
/* :327 */
 
9399
/* 329: */
 
9400
#line 8714 "./common.web"
8184
9401
 
8185
9402
 
8186
9403
unsigned
8219
9436
return n;
8220
9437
}
8221
9438
 
 
9439
/* :329 */
 
9440
/* 331: */
 
9441
#line 8768 "./common.web"
8222
9442
 
8223
9443
 
8224
9444
SRTN
8239
9459
switch(*p)
8240
9460
{
8241
9461
case interior_semi:
8242
 
*a1= 073;
 
9462
*a1= ';';
8243
9463
break;
8244
9464
 
8245
9465
case MACRO_ARGUMENT:
8246
 
*a1++= 0133;
8247
 
*a1++= 0133;
8248
 
*a1++= (ASCII)(060+*(++p));
8249
 
*a1++= 0135;
8250
 
*a1= 0135;
 
9466
*a1++= '[';
 
9467
*a1++= '[';
 
9468
*a1++= (ASCII)('0'+*(++p));
 
9469
*a1++= ']';
 
9470
*a1= ']';
8251
9471
break;
8252
9472
 
8253
9473
default:
8272
9492
n_out= FWRITE(atemp,n,file_ptr);
8273
9493
 
8274
9494
if(n_out!=1)
 
9495
/* 332: */
 
9496
#line 8825 "./common.web"
8275
9497
 
8276
9498
{
8277
9499
 
8278
9500
fatal(ERR_NULL,OC("! WRITE ERROR:  "),OC("nbytes = %u, %u items written\n%s"),(unsigned)n,(unsigned)n_out,strerror(errno));
8279
9501
}
8280
9502
 
 
9503
/* :332 */
 
9504
#line 8821 "./common.web"
8281
9505
 
8282
9506
}
8283
9507
 
 
9508
/* :331 */
 
9509
/* 333: */
 
9510
#line 8834 "./common.web"
8284
9511
 
8285
9512
 
8286
9513
#if !HAVE_STRERROR
8297
9524
 
8298
9525
#endif 
8299
9526
 
 
9527
/* :333 */
 
9528
/* 336: */
 
9529
#line 8885 "./common.web"
8300
9530
 
8301
9531
 
8302
9532
struct tm*
8309
9539
return localtime(&the_tm);
8310
9540
}
8311
9541
 
 
9542
/* :336 */
 
9543
/* 337: */
 
9544
#line 8898 "./common.web"
8312
9545
 
8313
9546
 
8314
9547
CONST outer_char*
8349
9582
}
8350
9583
#undef NTIME
8351
9584
 
 
9585
/* :337 */
 
9586
/* 339: */
 
9587
#line 8975 "./common.web"
8352
9588
 
8353
9589
 
8354
9590
#if TIMING
8362
9598
 
8363
9599
#endif 
8364
9600
 
 
9601
/* :339 */
 
9602
/* 340: */
 
9603
#line 8993 "./common.web"
8365
9604
 
8366
9605
 
8367
9606
#if TIMING
8403
9642
 
8404
9643
 
8405
9644
 
 
9645
/* :340 */
 
9646
/* 340: */
 
9647
#line 9040 "./common.web"
8406
9648
 
8407
9649
SET_COLOR(ordinary);
8408
9650
}
8409
9651
 
8410
9652
#endif 
8411
9653
 
 
9654
/* :340 */
 
9655
/* 342: */
 
9656
#line 9051 "./common.web"
8412
9657
 
8413
9658
 
8414
9659
SRTN
8423
9668
ini_style();
8424
9669
}
8425
9670
 
 
9671
/* :342 */
 
9672
/* 343: */
 
9673
#line 9067 "./common.web"
8426
9674
 
8427
9675
 
8428
9676
SRTN
8453
9701
SET_COLOR(ordinary);
8454
9702
}
8455
9703
 
 
9704
/* :343 */
 
9705
/* 344: */
 
9706
#line 9098 "./common.web"
8456
9707
 
8457
9708
 
8458
9709
SRTN
8471
9722
putchar('\n');
8472
9723
}
8473
9724
 
 
9725
/* :344 */
 
9726
/* 345: */
 
9727
#line 9117 "./common.web"
8474
9728
 
8475
9729
 
8476
9730
SRTN
8492
9746
fflush(stdout);
8493
9747
}
8494
9748
 
 
9749
/* :345 */
 
9750
/* 346: */
 
9751
#line 9139 "./common.web"
8495
9752
 
8496
9753
 
8497
9754
SRTN
8500
9757
if(msg_level<EVERYTHING)
8501
9758
return;
8502
9759
 
8503
 
if(loc[-1]==052)
 
9760
if(loc[-1]=='*')
8504
9761
{
8505
9762
if(err_happened)
8506
9763
{
8516
9773
UPDATE_TERMINAL;
8517
9774
}
8518
9775
 
 
9776
/* :346 */
 
9777
/* 347: */
 
9778
#line 9168 "./common.web"
8519
9779
 
8520
9780
 
8521
9781
int
8556
9816
return num_char;
8557
9817
}
8558
9818
 
 
9819
/* :347 */
 
9820
#line 60 "./common.web"
8559
9821
 
8560
9822
#endif 
8561
9823
 
8562
9824
 
8563
 
 
8564
 
 
8565
 
 
 
9825
#line 1 "./typedefs.hweb"
 
9826
 
 
9827
 
 
9828
#line 8 "./formats.hweb"
 
9829
 
 
9830
/* :2 */
 
9831
/* 200: */
 
9832
#line 4373 "./common.web"
8566
9833
 
8567
9834
SRTN
8568
9835
multi_chars FCN((c,n))
8573
9840
putchar(c);
8574
9841
}
8575
9842
 
 
9843
/* :200 */
 
9844
/* 241: */
 
9845
#line 5812 "./common.web"
8576
9846
 
8577
9847
void
8578
9848
seea(int n,char*s)
8580
9850
printf("Arg %i = \"%s\"\n",n,s);
8581
9851
}
8582
9852
 
 
9853
/* :241 */
 
9854
/* 244: */
 
9855
#line 5920 "./common.web"
8583
9856
 
8584
9857
outer_char*
8585
9858
get_arg FCN((result,s,ldelim,rdelim))
8649
9922
}
8650
9923
}
8651
9924
 
 
9925
/* :244 */
 
9926
/* 281: */
 
9927
#line 7384 "./common.web"
8652
9928
 
8653
9929
SRTN
8654
9930
spurious FCN((pa1))
8659
9935
puts("^");
8660
9936
}
8661
9937
 
 
9938
/* :281 */
 
9939
/* 349: */
 
9940
#line 9226 "./common.web"
8662
9941
 
8663
9942
 
8664
9943
SRTN
8722
10001
*pmp= mp;
8723
10002
}
8724
10003
 
 
10004
/* :349 */
8725
10005