Subversion Repositories tendra.SVN

Rev

Rev 2 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 7u83 1
/*
2
 * Automatically generated from the files:
3
 *	/u/g/release/Source/src/producers/common/parse/psyntax.sid
4
 * and
5
 *	/u/g/release/Source/src/producers/common/parse/psyntax.act
6
 * by:
7
 *	sid
8
 */
9
 
10
/* BEGINNING OF HEADER */
11
 
12
#define __SID_SPLIT
13
 
14
/*
15
    		 Crown Copyright (c) 1997, 1998
16
 
17
    This TenDRA(r) Computer Program is subject to Copyright
18
    owned by the United Kingdom Secretary of State for Defence
19
    acting through the Defence Evaluation and Research Agency
20
    (DERA).  It is made available to Recipients with a
21
    royalty-free licence for its use, reproduction, transfer
22
    to other parties and amendment for any purpose not excluding
23
    product development provided that any such use et cetera
24
    shall be deemed to be acceptance of the following conditions:-
25
 
26
        (1) Its Recipients shall ensure that this Notice is
27
        reproduced upon any copies or amended versions of it;
28
 
29
        (2) Any amended version of it shall be clearly marked to
30
        show both the nature of and the organisation responsible
31
        for the relevant amendment or amendments;
32
 
33
        (3) Its onward transfer from a recipient to another
34
        party shall be deemed to be that party's acceptance of
35
        these conditions;
36
 
37
        (4) DERA gives no warranty or assurance as to its
38
        quality or suitability for any purpose and DERA accepts
39
        no liability whatsoever in relation to any use to which
40
        it may be put.
41
*/
42
 
43
 
44
#include "config.h"
45
#include "c_types.h"
46
#include "exp_ops.h"
47
#include "hashid_ops.h"
48
#include "id_ops.h"
49
#include "tok_ops.h"
50
#include "type_ops.h"
51
#include "error.h"
52
#include "catalog.h"
53
#include "option.h"
54
#include "access.h"
55
#include "allocate.h"
56
#include "assign.h"
57
#include "basetype.h"
58
#include "cast.h"
59
#include "chktype.h"
60
#include "class.h"
61
#include "constant.h"
62
#include "construct.h"
63
#include "convert.h"
64
#include "declare.h"
65
#include "derive.h"
66
#include "exception.h"
67
#include "expression.h"
68
#include "function.h"
69
#include "hash.h"
70
#include "identifier.h"
71
#include "initialise.h"
72
#include "inttype.h"
73
#include "label.h"
74
#include "lex.h"
75
#include "literal.h"
76
#include "member.h"
77
#include "namespace.h"
78
#include "parse.h"
79
#include "pragma.h"
80
#include "predict.h"
81
#include "preproc.h"
82
#include "printf.h"
83
#include "redeclare.h"
84
#include "rewrite.h"
85
#include "statement.h"
86
#include "symbols.h"
87
#include "template.h"
88
#include "tokdef.h"
89
#include "token.h"
90
#include "typeid.h"
91
#include "variable.h"
92
 
93
 
94
/*
95
    COMPOUND TYPE ALIASES
96
 
97
    These are the aliases for the compound types used in the parser.
98
*/
99
 
100
typedef LIST ( IDENTIFIER ) SID_LIST_ID ;
101
 
102
 
103
/*
104
     DECLARE FUNCTIONS
105
 
106
     The function declarations are included at this point so that the
107
     type definitions are in scope.
108
*/
109
 
110
#include "psyntax.h"
111
extern void parse_tok_type PROTO_S ( ( TYPE * ) ) ;
112
extern void parse_mem_type PROTO_S ( ( TYPE * ) ) ;
113
extern void parse_operator PROTO_S ( ( IDENTIFIER * ) ) ;
114
 
115
 
116
/*
117
    COMPILATION MODE
118
 
119
    The output of sid is automatically generated.  Hence it is not
120
    necessarily appropriate to apply the same level of checking to this
121
    as to the rest of the program.  These pragmas describe the relaxations
122
    allowed for the sid output.
123
*/
124
 
125
#if FS_TENDRA
126
#pragma TenDRA begin
127
#pragma TenDRA variable analysis off
128
#ifndef OLD_PRODUCER
129
#pragma TenDRA unreachable code allow
130
#endif
131
#endif
132
 
133
 
134
 
135
/* BEGINNING OF STATIC VARIABLES */
136
 
137
int XI0;
138
 
139
/* BEGINNING OF FUNCTION DEFINITIONS */
140
 
141
void
142
XR403 PROTO_N ((XO402))
143
  PROTO_T (SID_LIST_ID *XO402)
144
{
145
    SID_LIST_ID XI402;
146
 
147
    if ((CURRENT_TERMINAL) == 354) {
148
	return;
149
    }
150
    {
151
	IDENTIFIER XI375;
152
	SID_LIST_ID XI405;
153
 
154
	XR399 (&XI375);
155
	{
156
	    switch (CURRENT_TERMINAL) {
157
	      case 42:
158
		{
159
		    ADVANCE_LEXER;
160
		    XR832 (&XI405);
161
		    if ((CURRENT_TERMINAL) == 354) {
162
			RESTORE_LEXER;
163
			goto XL1;
164
		    }
165
		}
166
		break;
167
	      default:
168
		{
169
		    {
170
 
171
    (XI405) = NULL_list ( IDENTIFIER ) ;
172
		    }
173
		}
174
		break;
175
	      case 354:
176
		RESTORE_LEXER;
177
		goto XL1;
178
	    }
179
	}
180
	{
181
 
182
    CONS_id ( (XI375), (XI405), (XI402) ) ;
183
	}
184
    }
185
    goto XL0;
186
  XL1:;
187
    SAVE_LEXER (354);
188
    return;
189
  XL0:;
190
    *XO402 = XI402;
191
}
192
 
193
void
194
XR505 PROTO_N ((XO377))
195
  PROTO_T (unsigned *XO377)
196
{
197
    unsigned XI377;
198
 
199
    switch (CURRENT_TERMINAL) {
200
      case 270:
201
	{
202
	    ADVANCE_LEXER;
203
	    {
204
 (XI377) = ( unsigned ) OPTION_OFF ; 
205
	    }
206
	}
207
	break;
208
      case 271:
209
	{
210
	    ADVANCE_LEXER;
211
	    {
212
 (XI377) = ( unsigned ) OPTION_ON ; 
213
	    }
214
	}
215
	break;
216
      case 330:
217
	{
218
	    ADVANCE_LEXER;
219
	    {
220
 (XI377) = ( unsigned ) OPTION_WARN ; 
221
	    }
222
	}
223
	break;
224
      case 354:
225
	return;
226
      default:
227
	goto XL1;
228
    }
229
    goto XL0;
230
  XL1:;
231
    SAVE_LEXER (354);
232
    return;
233
  XL0:;
234
    *XO377 = XI377;
235
}
236
 
237
void
238
XR732 PROTO_N ((XO445))
239
  PROTO_T (unsigned *XO445)
240
{
241
    unsigned XI445;
242
 
243
    if ((CURRENT_TERMINAL) == 354) {
244
	return;
245
    }
246
    {
247
	unsigned XI835;
248
 
249
	XR731 (&XI835);
250
	XR837 (&XI835, &XI445);
251
	if ((CURRENT_TERMINAL) == 354) {
252
	    RESTORE_LEXER;
253
	    goto XL1;
254
	}
255
    }
256
    goto XL0;
257
  XL1:;
258
    SAVE_LEXER (354);
259
    return;
260
  XL0:;
261
    *XO445 = XI445;
262
}
263
 
264
void
265
XR549 PROTO_N ((XO375))
266
  PROTO_T (IDENTIFIER *XO375)
267
{
268
    IDENTIFIER XI375;
269
 
270
    if ((CURRENT_TERMINAL) == 354) {
271
	return;
272
    }
273
    {
274
	switch (CURRENT_TERMINAL) {
275
	  case 250:
276
	    break;
277
	  default:
278
	    goto XL1;
279
	}
280
	ADVANCE_LEXER;
281
	{
282
 
283
    int t = crt_lex_token ;
284
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
285
	crt_lex_token = lex_identifier ;
286
    }
287
	}
288
	{
289
	    switch (CURRENT_TERMINAL) {
290
	      case 1:
291
		{
292
		    {
293
 
294
    XI375 = crt_token->pp_data.id.use ;
295
		    }
296
		    ADVANCE_LEXER;
297
		}
298
		break;
299
	      case 3:
300
		{
301
		    {
302
 
303
    XI375 = crt_token->pp_data.id.use ;
304
		    }
305
		    ADVANCE_LEXER;
306
		}
307
		break;
308
	      case 4:
309
		{
310
		    {
311
 
312
    XI375 = crt_token->pp_data.id.use ;
313
		    }
314
		    ADVANCE_LEXER;
315
		}
316
		break;
317
	      case 2:
318
		{
319
		    {
320
 
321
    XI375 = crt_token->pp_data.id.use ;
322
		    }
323
		    ADVANCE_LEXER;
324
		}
325
		break;
326
	      default:
327
		goto XL1;
328
	    }
329
	}
330
    }
331
    goto XL0;
332
  XL1:;
333
    SAVE_LEXER (354);
334
    return;
335
  XL0:;
336
    *XO375 = XI375;
337
}
338
 
339
void
340
XR456 PROTO_Z ()
341
{
342
    if ((CURRENT_TERMINAL) == 354) {
343
	return;
344
    }
345
    {
346
	TOKEN XI400;
347
	int XI397;
348
	IDENTIFIER XI409;
349
	IDENTIFIER XI444;
350
 
351
	switch (CURRENT_TERMINAL) {
352
	  case 311:
353
	    break;
354
	  default:
355
	    goto XL1;
356
	}
357
	ADVANCE_LEXER;
358
	XR396 (&XI400);
359
	if ((CURRENT_TERMINAL) == 354) {
360
	    RESTORE_LEXER;
361
	    goto XL1;
362
	}
363
	{
364
 
365
    int t = crt_lex_token ;
366
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
367
	if ( t != lex_tag_Hcap && !predict_operator () ) {
368
	    crt_lex_token = lex_identifier ;
369
	}
370
    }
371
	}
372
	{
373
	    {
374
		{
375
 
376
    (XI0) = predict_operator () ;
377
		}
378
		if (!XI0)
379
		    goto XL3;
380
		{
381
 
382
    (XI409) = DEREF_id ( hashid_id ( KEYWORD ( lex_zzzz ) ) ) ;
383
    parse_operator ( &(XI409) ) ;
384
		}
385
		{
386
 (XI397) = 0 ; 
387
		}
388
		goto XL2;
389
	    }
390
	    /*UNREACHED*/
391
	  XL3:;
392
	    switch (CURRENT_TERMINAL) {
393
	      case 1: case 2: case 3: case 4: case 307:
394
		{
395
		    XR398 (&XI397);
396
		    if ((CURRENT_TERMINAL) == 354) {
397
			RESTORE_LEXER;
398
			goto XL1;
399
		    }
400
		    {
401
 
402
    int t = crt_lex_token ;
403
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
404
	crt_lex_token = lex_identifier ;
405
    }
406
		    }
407
		    {
408
			switch (CURRENT_TERMINAL) {
409
			  case 1:
410
			    {
411
				{
412
 
413
    XI409 = crt_token->pp_data.id.use ;
414
				}
415
				ADVANCE_LEXER;
416
			    }
417
			    break;
418
			  case 3:
419
			    {
420
				{
421
 
422
    XI409 = crt_token->pp_data.id.use ;
423
				}
424
				ADVANCE_LEXER;
425
			    }
426
			    break;
427
			  case 4:
428
			    {
429
				{
430
 
431
    XI409 = crt_token->pp_data.id.use ;
432
				}
433
				ADVANCE_LEXER;
434
			    }
435
			    break;
436
			  case 2:
437
			    {
438
				{
439
 
440
    XI409 = crt_token->pp_data.id.use ;
441
				}
442
				ADVANCE_LEXER;
443
			    }
444
			    break;
445
			  default:
446
			    goto XL1;
447
			}
448
		    }
449
		}
450
		break;
451
	      default:
452
		goto XL1;
453
	    }
454
	  XL2:;
455
	}
456
	{
457
	    {
458
		switch (CURRENT_TERMINAL) {
459
		  case 51:
460
		    break;
461
		  default:
462
		    goto XL1;
463
		}
464
		ADVANCE_LEXER;
465
	    }
466
	}
467
	{
468
 
469
    int t = crt_lex_token ;
470
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
471
	crt_lex_token = lex_identifier ;
472
    }
473
	}
474
	{
475
	    switch (CURRENT_TERMINAL) {
476
	      case 59:
477
		{
478
		    ADVANCE_LEXER;
479
		    {
480
 
481
    HASHID nm = lookup_anon () ;
482
    (XI444) = DEREF_id ( hashid_id ( nm ) ) ;
483
    crt_id_qualifier = qual_none ;
484
    qual_namespace = NULL_nspace ;
485
		    }
486
		}
487
		break;
488
	      case 1: case 2: case 3: case 4:
489
		{
490
		    {
491
			switch (CURRENT_TERMINAL) {
492
			  case 1:
493
			    {
494
				{
495
 
496
    XI444 = crt_token->pp_data.id.use ;
497
				}
498
				ADVANCE_LEXER;
499
			    }
500
			    break;
501
			  case 3:
502
			    {
503
				{
504
 
505
    XI444 = crt_token->pp_data.id.use ;
506
				}
507
				ADVANCE_LEXER;
508
			    }
509
			    break;
510
			  case 4:
511
			    {
512
				{
513
 
514
    XI444 = crt_token->pp_data.id.use ;
515
				}
516
				ADVANCE_LEXER;
517
			    }
518
			    break;
519
			  case 2:
520
			    {
521
				{
522
 
523
    XI444 = crt_token->pp_data.id.use ;
524
				}
525
				ADVANCE_LEXER;
526
			    }
527
			    break;
528
			  default:
529
			    goto XL1;
530
			}
531
		    }
532
		}
533
		break;
534
	      default:
535
		{
536
		    XI444 = XI409;
537
		}
538
		break;
539
	    }
540
	}
541
	{
542
 
543
    IGNORE make_token_decl ( (XI400), (XI397), (XI409), (XI444) ) ;
544
	}
545
    }
546
    return;
547
  XL1:;
548
    SAVE_LEXER (354);
549
    return;
550
}
551
 
552
void
553
XR779 PROTO_N ((XI777, XO778))
554
  PROTO_T (IDENTIFIER XI777 X IDENTIFIER *XO778)
555
{
556
    IDENTIFIER XI778;
557
 
558
  XL2_779:;
559
    switch (CURRENT_TERMINAL) {
560
      case 46:
561
	{
562
	    IDENTIFIER XI472;
563
	    IDENTIFIER XI375;
564
 
565
	    ADVANCE_LEXER;
566
	    {
567
 
568
    int t = crt_lex_token ;
569
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
570
	crt_lex_token = lex_identifier ;
571
    }
572
	    }
573
	    {
574
		switch (CURRENT_TERMINAL) {
575
		  case 1:
576
		    {
577
			{
578
 
579
    XI472 = crt_token->pp_data.id.use ;
580
			}
581
			ADVANCE_LEXER;
582
		    }
583
		    break;
584
		  case 3:
585
		    {
586
			{
587
 
588
    XI472 = crt_token->pp_data.id.use ;
589
			}
590
			ADVANCE_LEXER;
591
		    }
592
		    break;
593
		  case 4:
594
		    {
595
			{
596
 
597
    XI472 = crt_token->pp_data.id.use ;
598
			}
599
			ADVANCE_LEXER;
600
		    }
601
		    break;
602
		  case 2:
603
		    {
604
			{
605
 
606
    XI472 = crt_token->pp_data.id.use ;
607
			}
608
			ADVANCE_LEXER;
609
		    }
610
		    break;
611
		  default:
612
		    goto XL1;
613
		}
614
	    }
615
	    {
616
 
617
    (XI375) = find_mem_token ( (XI777), (XI472) ) ;
618
	    }
619
	    XI777 = XI375;
620
	    goto XL2_779;
621
	}
622
	/*UNREACHED*/
623
      default:
624
	{
625
	    XI778 = XI777;
626
	}
627
	break;
628
      case 354:
629
	return;
630
    }
631
    goto XL0;
632
  XL1:;
633
    SAVE_LEXER (354);
634
    return;
635
  XL0:;
636
    *XO778 = XI778;
637
}
638
 
639
void
640
XR781 PROTO_N ((XI708))
641
  PROTO_T (int *XI708)
642
{
643
    switch (CURRENT_TERMINAL) {
644
      case 178:
645
	{
646
	    int XI377;
647
 
648
	    ADVANCE_LEXER;
649
	    XR739 (&XI377);
650
	    if ((CURRENT_TERMINAL) == 354) {
651
		RESTORE_LEXER;
652
		goto XL1;
653
	    }
654
	    {
655
 
656
    set_error_sev ( (*XI708), (XI377) ) ;
657
	    }
658
	}
659
	break;
660
      case 172: case 204: case 270: case 271: case 330:
661
	{
662
	    int XI377;
663
 
664
	    XR509 (&XI377);
665
	    if ((CURRENT_TERMINAL) == 354) {
666
		RESTORE_LEXER;
667
		goto XL1;
668
	    }
669
	    {
670
 
671
    set_error_sev ( (*XI708), (XI377) ) ;
672
	    }
673
	}
674
	break;
675
      case 354:
676
	return;
677
      default:
678
	goto XL1;
679
    }
680
    return;
681
  XL1:;
682
    SAVE_LEXER (354);
683
    return;
684
}
685
 
686
void
687
XR782 PROTO_Z ()
688
{
689
    switch (CURRENT_TERMINAL) {
690
      case 261:
691
	{
692
	    IDENTIFIER XI375;
693
 
694
	    ADVANCE_LEXER;
695
	    switch (CURRENT_TERMINAL) {
696
	      case 212:
697
		break;
698
	      default:
699
		goto XL1;
700
	    }
701
	    ADVANCE_LEXER;
702
	    {
703
 
704
    int t = crt_lex_token ;
705
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
706
	crt_lex_token = lex_identifier ;
707
    }
708
	    }
709
	    {
710
		switch (CURRENT_TERMINAL) {
711
		  case 1:
712
		    {
713
			{
714
 
715
    XI375 = crt_token->pp_data.id.use ;
716
			}
717
			ADVANCE_LEXER;
718
		    }
719
		    break;
720
		  case 3:
721
		    {
722
			{
723
 
724
    XI375 = crt_token->pp_data.id.use ;
725
			}
726
			ADVANCE_LEXER;
727
		    }
728
		    break;
729
		  case 4:
730
		    {
731
			{
732
 
733
    XI375 = crt_token->pp_data.id.use ;
734
			}
735
			ADVANCE_LEXER;
736
		    }
737
		    break;
738
		  case 2:
739
		    {
740
			{
741
 
742
    XI375 = crt_token->pp_data.id.use ;
743
			}
744
			ADVANCE_LEXER;
745
		    }
746
		    break;
747
		  default:
748
		    goto XL1;
749
		}
750
	    }
751
	    {
752
 
753
    begin_option ( (XI375) ) ;
754
	    }
755
	}
756
	break;
757
      default:
758
	{
759
	    IDENTIFIER XI375;
760
 
761
	    {
762
 
763
    (XI375) = NULL_id ;
764
    crt_id_qualifier = qual_none ;
765
    qual_namespace = NULL_nspace ;
766
	    }
767
	    {
768
 
769
    begin_option ( (XI375) ) ;
770
	    }
771
	}
772
	break;
773
      case 354:
774
	return;
775
    }
776
    return;
777
  XL1:;
778
    SAVE_LEXER (354);
779
    return;
780
}
781
 
782
void
783
XR783 PROTO_Z ()
784
{
785
    switch (CURRENT_TERMINAL) {
786
      case 210:
787
	{
788
	    ADVANCE_LEXER;
789
	    {
790
 
791
    IGNORE end_decl_block ( NULL_id, 1 ) ;
792
	    }
793
	}
794
	break;
795
      case 1: case 2: case 3: case 4:
796
	{
797
	    IDENTIFIER XI375;
798
 
799
	    {
800
 
801
    int t = crt_lex_token ;
802
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
803
	crt_lex_token = lex_identifier ;
804
    }
805
	    }
806
	    {
807
		switch (CURRENT_TERMINAL) {
808
		  case 1:
809
		    {
810
			{
811
 
812
    XI375 = crt_token->pp_data.id.use ;
813
			}
814
			ADVANCE_LEXER;
815
		    }
816
		    break;
817
		  case 3:
818
		    {
819
			{
820
 
821
    XI375 = crt_token->pp_data.id.use ;
822
			}
823
			ADVANCE_LEXER;
824
		    }
825
		    break;
826
		  case 4:
827
		    {
828
			{
829
 
830
    XI375 = crt_token->pp_data.id.use ;
831
			}
832
			ADVANCE_LEXER;
833
		    }
834
		    break;
835
		  case 2:
836
		    {
837
			{
838
 
839
    XI375 = crt_token->pp_data.id.use ;
840
			}
841
			ADVANCE_LEXER;
842
		    }
843
		    break;
844
		  default:
845
		    goto XL1;
846
		}
847
	    }
848
	    switch (CURRENT_TERMINAL) {
849
	      case 181:
850
		break;
851
	      default:
852
		goto XL1;
853
	    }
854
	    ADVANCE_LEXER;
855
	    {
856
 
857
    begin_decl_block ( (XI375) ) ;
858
	    }
859
	}
860
	break;
861
      case 354:
862
	return;
863
      default:
864
	goto XL1;
865
    }
866
    return;
867
  XL1:;
868
    SAVE_LEXER (354);
869
    return;
870
}
871
 
872
void
873
XR784 PROTO_N ((XO708))
874
  PROTO_T (int *XO708)
875
{
876
    int XI708;
877
 
878
    switch (CURRENT_TERMINAL) {
879
      case 196:
880
	{
881
	    ADVANCE_LEXER;
882
	    {
883
 (XI708) = OPT_decl_cond ; 
884
	    }
885
	}
886
	break;
887
      case 256:
888
	{
889
	    ADVANCE_LEXER;
890
	    {
891
 (XI708) = OPT_cond_lvalue ; 
892
	    }
893
	}
894
	break;
895
      case 354:
896
	return;
897
      default:
898
	goto XL1;
899
    }
900
    goto XL0;
901
  XL1:;
902
    SAVE_LEXER (354);
903
    return;
904
  XL0:;
905
    *XO708 = XI708;
906
}
907
 
908
void
909
XR785 PROTO_N ((XO708))
910
  PROTO_T (int *XO708)
911
{
912
    int XI708;
913
 
914
    switch (CURRENT_TERMINAL) {
915
      case 182:
916
	{
917
	    ADVANCE_LEXER;
918
	    switch (CURRENT_TERMINAL) {
919
	      case 110:
920
		break;
921
	      default:
922
		goto XL1;
923
	    }
924
	    ADVANCE_LEXER;
925
	    switch (CURRENT_TERMINAL) {
926
	      case 312:
927
		break;
928
	      default:
929
		goto XL1;
930
	    }
931
	    ADVANCE_LEXER;
932
	    {
933
 (XI708) = OPT_bitf_type ; 
934
	    }
935
	}
936
	break;
937
      case 42:
938
	{
939
	    ADVANCE_LEXER;
940
	    {
941
 (XI708) = OPT_comma_extra ; 
942
	    }
943
	}
944
	break;
945
      case 257:
946
	{
947
	    ADVANCE_LEXER;
948
	    switch (CURRENT_TERMINAL) {
949
	      case 200:
950
		break;
951
	      default:
952
		goto XL1;
953
	    }
954
	    ADVANCE_LEXER;
955
	    {
956
 (XI708) = OPT_macro_redef ; 
957
	    }
958
	}
959
	break;
960
      case 77:
961
	{
962
	    ADVANCE_LEXER;
963
	    XR838 (&XI708);
964
	    if ((CURRENT_TERMINAL) == 354) {
965
		RESTORE_LEXER;
966
		goto XL1;
967
	    }
968
	}
969
	break;
970
      case 312:
971
	{
972
	    ADVANCE_LEXER;
973
	    switch (CURRENT_TERMINAL) {
974
	      case 200:
975
		break;
976
	      default:
977
		goto XL1;
978
	    }
979
	    ADVANCE_LEXER;
980
	    {
981
 (XI708) = OPT_type_redef ; 
982
	    }
983
	}
984
	break;
985
      case 47: case 209:
986
	{
987
	    {
988
		switch (CURRENT_TERMINAL) {
989
		  case 47:
990
		    {
991
			ADVANCE_LEXER;
992
		    }
993
		    break;
994
		  case 209:
995
		    {
996
			ADVANCE_LEXER;
997
		    }
998
		    break;
999
		  default:
1000
		    goto XL1;
1001
		}
1002
	    }
1003
	    {
1004
 (XI708) = OPT_ellipsis_extra ; 
1005
	    }
1006
	}
1007
	break;
1008
      case 354:
1009
	return;
1010
      default:
1011
	goto XL1;
1012
    }
1013
    goto XL0;
1014
  XL1:;
1015
    SAVE_LEXER (354);
1016
    return;
1017
  XL0:;
1018
    *XO708 = XI708;
1019
}
1020
 
1021
void
1022
XR786 PROTO_N ((XO708))
1023
  PROTO_T (int *XO708)
1024
{
1025
    int XI708;
1026
 
1027
    switch (CURRENT_TERMINAL) {
1028
      case 178:
1029
	{
1030
	    ADVANCE_LEXER;
1031
	    {
1032
		switch (CURRENT_TERMINAL) {
1033
		  case 47:
1034
		    {
1035
			ADVANCE_LEXER;
1036
		    }
1037
		    break;
1038
		  case 209:
1039
		    {
1040
			ADVANCE_LEXER;
1041
		    }
1042
		    break;
1043
		  default:
1044
		    goto XL1;
1045
		}
1046
	    }
1047
	    {
1048
 (XI708) = OPT_ellipsis_ident ; 
1049
	    }
1050
	}
1051
	break;
1052
      case 47: case 209:
1053
	{
1054
	    {
1055
		switch (CURRENT_TERMINAL) {
1056
		  case 47:
1057
		    {
1058
			ADVANCE_LEXER;
1059
		    }
1060
		    break;
1061
		  case 209:
1062
		    {
1063
			ADVANCE_LEXER;
1064
		    }
1065
		    break;
1066
		  default:
1067
		    goto XL1;
1068
		}
1069
	    }
1070
	    {
1071
 (XI708) = OPT_ellipsis_ident ; 
1072
	    }
1073
	}
1074
	break;
1075
      case 354:
1076
	return;
1077
      default:
1078
	goto XL1;
1079
    }
1080
    goto XL0;
1081
  XL1:;
1082
    SAVE_LEXER (354);
1083
    return;
1084
  XL0:;
1085
    *XO708 = XI708;
1086
}
1087
 
1088
void
1089
XR787 PROTO_N ((XO708))
1090
  PROTO_T (int *XO708)
1091
{
1092
    int XI708;
1093
 
1094
    switch (CURRENT_TERMINAL) {
1095
      case 110:
1096
	{
1097
	    ADVANCE_LEXER;
1098
	    switch (CURRENT_TERMINAL) {
1099
	      case 312:
1100
		break;
1101
	      default:
1102
		goto XL1;
1103
	    }
1104
	    ADVANCE_LEXER;
1105
	    XR712 (&XI708);
1106
	    if ((CURRENT_TERMINAL) == 354) {
1107
		RESTORE_LEXER;
1108
		goto XL1;
1109
	    }
1110
	}
1111
	break;
1112
      case 311:
1113
	{
1114
	    ADVANCE_LEXER;
1115
	    switch (CURRENT_TERMINAL) {
1116
	      case 200:
1117
		break;
1118
	      default:
1119
		goto XL1;
1120
	    }
1121
	    ADVANCE_LEXER;
1122
	    {
1123
 (XI708) = OPT_func_token_undef ; 
1124
	    }
1125
	}
1126
	break;
1127
      case 354:
1128
	return;
1129
      default:
1130
	goto XL1;
1131
    }
1132
    goto XL0;
1133
  XL1:;
1134
    SAVE_LEXER (354);
1135
    return;
1136
  XL0:;
1137
    *XO708 = XI708;
1138
}
1139
 
1140
void
1141
XR716 PROTO_N ((XO377, XO473))
1142
  PROTO_T (unsigned *XO377 X unsigned *XO473)
1143
{
1144
    unsigned XI377;
1145
    unsigned XI473;
1146
 
1147
    switch (CURRENT_TERMINAL) {
1148
      case 204:
1149
	{
1150
	    ADVANCE_LEXER;
1151
	    {
1152
 (XI377) = ( unsigned ) OPTION_ON ; 
1153
	    }
1154
	    {
1155
 (XI473) = ( unsigned ) OPTION_ON ; 
1156
	    }
1157
	}
1158
	break;
1159
      case 65: case 172: case 330:
1160
	{
1161
	    unsigned XI409;
1162
	    unsigned XI444;
1163
 
1164
	    {
1165
		switch (CURRENT_TERMINAL) {
1166
		  case 65:
1167
		    {
1168
			ADVANCE_LEXER;
1169
			switch (CURRENT_TERMINAL) {
1170
			  case 234:
1171
			    break;
1172
			  default:
1173
			    goto XL1;
1174
			}
1175
			ADVANCE_LEXER;
1176
			switch (CURRENT_TERMINAL) {
1177
			  case 39:
1178
			    break;
1179
			  default:
1180
			    goto XL1;
1181
			}
1182
			ADVANCE_LEXER;
1183
			{
1184
 (XI409) = ( unsigned ) OPTION_ON ; 
1185
			}
1186
		    }
1187
		    break;
1188
		  default:
1189
		    {
1190
			{
1191
 (XI409) = ( unsigned ) OPTION_OFF ; 
1192
			}
1193
		    }
1194
		    break;
1195
		}
1196
	    }
1197
	    {
1198
		switch (CURRENT_TERMINAL) {
1199
		  case 172:
1200
		    {
1201
			ADVANCE_LEXER;
1202
			{
1203
 (XI444) = ( unsigned ) OPTION_OFF ; 
1204
			}
1205
		    }
1206
		    break;
1207
		  case 330:
1208
		    {
1209
			ADVANCE_LEXER;
1210
			{
1211
 (XI444) = ( unsigned ) OPTION_WARN ; 
1212
			}
1213
		    }
1214
		    break;
1215
		  default:
1216
		    goto XL1;
1217
		}
1218
	    }
1219
	    XI377 = XI444;
1220
	    XI473 = XI409;
1221
	}
1222
	break;
1223
      case 354:
1224
	return;
1225
      default:
1226
	goto XL1;
1227
    }
1228
    goto XL0;
1229
  XL1:;
1230
    SAVE_LEXER (354);
1231
    return;
1232
  XL0:;
1233
    *XO377 = XI377;
1234
    *XO473 = XI473;
1235
}
1236
 
1237
void
1238
XR788 PROTO_N ((XO708))
1239
  PROTO_T (int *XO708)
1240
{
1241
    int XI708;
1242
 
1243
    switch (CURRENT_TERMINAL) {
1244
      case 246:
1245
	{
1246
	    ADVANCE_LEXER;
1247
	    switch (CURRENT_TERMINAL) {
1248
	      case 196:
1249
		break;
1250
	      default:
1251
		goto XL1;
1252
	    }
1253
	    ADVANCE_LEXER;
1254
	    {
1255
 (XI708) = OPT_interf_incompat ; 
1256
	    }
1257
	}
1258
	break;
1259
      case 253:
1260
	{
1261
	    ADVANCE_LEXER;
1262
	    {
1263
 (XI708) = OPT_link_incompat ; 
1264
	    }
1265
	}
1266
	break;
1267
      case 259:
1268
	{
1269
	    ADVANCE_LEXER;
1270
	    switch (CURRENT_TERMINAL) {
1271
	      case 196:
1272
		break;
1273
	      default:
1274
		goto XL1;
1275
	    }
1276
	    ADVANCE_LEXER;
1277
	    {
1278
 (XI708) = OPT_member_incompat ; 
1279
	    }
1280
	}
1281
	break;
1282
      case 283:
1283
	{
1284
	    ADVANCE_LEXER;
1285
	    switch (CURRENT_TERMINAL) {
1286
	      case 227:
1287
		break;
1288
	      default:
1289
		goto XL1;
1290
	    }
1291
	    ADVANCE_LEXER;
1292
	    switch (CURRENT_TERMINAL) {
1293
	      case 175:
1294
		break;
1295
	      default:
1296
		goto XL1;
1297
	    }
1298
	    ADVANCE_LEXER;
1299
	    {
1300
 (XI708) = OPT_func_incompat ; 
1301
	    }
1302
	}
1303
	break;
1304
      case 312:
1305
	{
1306
	    ADVANCE_LEXER;
1307
	    switch (CURRENT_TERMINAL) {
1308
	      case 286:
1309
		break;
1310
	      default:
1311
		goto XL1;
1312
	    }
1313
	    ADVANCE_LEXER;
1314
	    {
1315
 (XI708) = OPT_type_qual_incompat ; 
1316
	    }
1317
	}
1318
	break;
1319
      case 123:
1320
	{
1321
	    ADVANCE_LEXER;
1322
	    switch (CURRENT_TERMINAL) {
1323
	      case 113:
1324
		break;
1325
	      default:
1326
		goto XL1;
1327
	    }
1328
	    ADVANCE_LEXER;
1329
	    {
1330
 (XI708) = OPT_func_ret_void ; 
1331
	    }
1332
	}
1333
	break;
1334
      case 354:
1335
	return;
1336
      default:
1337
	goto XL1;
1338
    }
1339
    goto XL0;
1340
  XL1:;
1341
    SAVE_LEXER (354);
1342
    return;
1343
  XL0:;
1344
    *XO708 = XI708;
1345
}
1346
 
1347
void
1348
XR789 PROTO_N ((XO708))
1349
  PROTO_T (int *XO708)
1350
{
1351
    int XI708;
1352
 
1353
    switch (CURRENT_TERMINAL) {
1354
      case 202:
1355
	{
1356
	    ADVANCE_LEXER;
1357
	    switch (CURRENT_TERMINAL) {
1358
	      case 169:
1359
		break;
1360
	      default:
1361
		goto XL1;
1362
	    }
1363
	    ADVANCE_LEXER;
1364
	    {
1365
		{
1366
		    switch (CURRENT_TERMINAL) {
1367
		      case 51:
1368
			break;
1369
		      default:
1370
			goto XL1;
1371
		    }
1372
		    ADVANCE_LEXER;
1373
		}
1374
	    }
1375
	    {
1376
 (XI708) = OPT_ppdir_indent_dir ; 
1377
	    }
1378
	}
1379
	break;
1380
      case 51:
1381
	{
1382
	    {
1383
		{
1384
		    switch (CURRENT_TERMINAL) {
1385
		      case 51:
1386
			break;
1387
		      default:
1388
			goto XL1;
1389
		    }
1390
		    ADVANCE_LEXER;
1391
		}
1392
	    }
1393
	    switch (CURRENT_TERMINAL) {
1394
	      case 202:
1395
		break;
1396
	      default:
1397
		goto XL1;
1398
	    }
1399
	    ADVANCE_LEXER;
1400
	    {
1401
 (XI708) = OPT_ppdir_indent ; 
1402
	    }
1403
	}
1404
	break;
1405
      case 354:
1406
	return;
1407
      default:
1408
	goto XL1;
1409
    }
1410
    goto XL0;
1411
  XL1:;
1412
    SAVE_LEXER (354);
1413
    return;
1414
  XL0:;
1415
    *XO708 = XI708;
1416
}
1417
 
1418
void
1419
XR790 PROTO_N ((XO708))
1420
  PROTO_T (int *XO708)
1421
{
1422
    int XI708;
1423
 
1424
    switch (CURRENT_TERMINAL) {
1425
      case 202:
1426
	{
1427
	    ADVANCE_LEXER;
1428
	    switch (CURRENT_TERMINAL) {
1429
	      case 44:
1430
		break;
1431
	      default:
1432
		goto XL1;
1433
	    }
1434
	    ADVANCE_LEXER;
1435
	    switch (CURRENT_TERMINAL) {
1436
	      case 264:
1437
		break;
1438
	      default:
1439
		goto XL1;
1440
	    }
1441
	    ADVANCE_LEXER;
1442
	    switch (CURRENT_TERMINAL) {
1443
	      case 169:
1444
		break;
1445
	      default:
1446
		goto XL1;
1447
	    }
1448
	    ADVANCE_LEXER;
1449
	    switch (CURRENT_TERMINAL) {
1450
	      case 230:
1451
		break;
1452
	      default:
1453
		goto XL1;
1454
	    }
1455
	    ADVANCE_LEXER;
1456
	    {
1457
 (XI708) = OPT_ppdir_id ; 
1458
	    }
1459
	}
1460
	break;
1461
      case 220:
1462
	{
1463
	    ADVANCE_LEXER;
1464
	    switch (CURRENT_TERMINAL) {
1465
	      case 196:
1466
		break;
1467
	      default:
1468
		goto XL1;
1469
	    }
1470
	    ADVANCE_LEXER;
1471
	    {
1472
 (XI708) = OPT_decl_none ; 
1473
	    }
1474
	}
1475
	break;
1476
      case 230:
1477
	{
1478
	    ADVANCE_LEXER;
1479
	    switch (CURRENT_TERMINAL) {
1480
	      case 169:
1481
		break;
1482
	      default:
1483
		goto XL1;
1484
	    }
1485
	    ADVANCE_LEXER;
1486
	    {
1487
		{
1488
		    switch (CURRENT_TERMINAL) {
1489
		      case 51:
1490
			break;
1491
		      default:
1492
			goto XL1;
1493
		    }
1494
		    ADVANCE_LEXER;
1495
		}
1496
	    }
1497
	    {
1498
 (XI708) = OPT_hash_ident ; 
1499
	    }
1500
	}
1501
	break;
1502
      case 264:
1503
	{
1504
	    ADVANCE_LEXER;
1505
	    switch (CURRENT_TERMINAL) {
1506
	      case 169:
1507
		break;
1508
	      default:
1509
		goto XL1;
1510
	    }
1511
	    ADVANCE_LEXER;
1512
	    switch (CURRENT_TERMINAL) {
1513
	      case 223:
1514
		break;
1515
	      default:
1516
		goto XL1;
1517
	    }
1518
	    ADVANCE_LEXER;
1519
	    switch (CURRENT_TERMINAL) {
1520
	      case 210:
1521
		break;
1522
	      default:
1523
		goto XL1;
1524
	    }
1525
	    ADVANCE_LEXER;
1526
	    {
1527
 (XI708) = OPT_eof_nline ; 
1528
	    }
1529
	}
1530
	break;
1531
      case 311:
1532
	{
1533
	    ADVANCE_LEXER;
1534
	    switch (CURRENT_TERMINAL) {
1535
	      case 200:
1536
		break;
1537
	      default:
1538
		goto XL1;
1539
	    }
1540
	    ADVANCE_LEXER;
1541
	    {
1542
 (XI708) = OPT_token_undef ; 
1543
	    }
1544
	}
1545
	break;
1546
      case 354:
1547
	return;
1548
      default:
1549
	goto XL1;
1550
    }
1551
    goto XL0;
1552
  XL1:;
1553
    SAVE_LEXER (354);
1554
    return;
1555
  XL0:;
1556
    *XO708 = XI708;
1557
}
1558
 
1559
void
1560
XR791 PROTO_N ((XO708))
1561
  PROTO_T (int *XO708)
1562
{
1563
    int XI708;
1564
 
1565
    switch (CURRENT_TERMINAL) {
1566
      case 65:
1567
	{
1568
	    ADVANCE_LEXER;
1569
	    switch (CURRENT_TERMINAL) {
1570
	      case 331:
1571
		break;
1572
	      default:
1573
		goto XL1;
1574
	    }
1575
	    ADVANCE_LEXER;
1576
	    switch (CURRENT_TERMINAL) {
1577
	      case 39:
1578
		break;
1579
	      default:
1580
		goto XL1;
1581
	    }
1582
	    ADVANCE_LEXER;
1583
	    {
1584
 (XI708) = OPT_func_weak ; 
1585
	    }
1586
	}
1587
	break;
1588
      default:
1589
	{
1590
	    {
1591
 (XI708) = OPT_func_proto ; 
1592
	    }
1593
	}
1594
	break;
1595
      case 354:
1596
	return;
1597
    }
1598
    goto XL0;
1599
  XL1:;
1600
    SAVE_LEXER (354);
1601
    return;
1602
  XL0:;
1603
    *XO708 = XI708;
1604
}
1605
 
1606
void
1607
XR792 PROTO_N ((XO708))
1608
  PROTO_T (int *XO708)
1609
{
1610
    int XI708;
1611
 
1612
    switch (CURRENT_TERMINAL) {
1613
      case 202:
1614
	{
1615
	    ADVANCE_LEXER;
1616
	    {
1617
 (XI708) = OPT_ppdir_unknown ; 
1618
	    }
1619
	}
1620
	break;
1621
      case 215:
1622
	{
1623
	    ADVANCE_LEXER;
1624
	    {
1625
 (XI708) = OPT_escape_unknown ; 
1626
	    }
1627
	}
1628
	break;
1629
      case 277:
1630
	{
1631
	    ADVANCE_LEXER;
1632
	    {
1633
 (XI708) = OPT_pragma_unknown ; 
1634
	    }
1635
	}
1636
	break;
1637
      case 118:
1638
	{
1639
	    ADVANCE_LEXER;
1640
	    switch (CURRENT_TERMINAL) {
1641
	      case 44:
1642
		break;
1643
	      default:
1644
		goto XL1;
1645
	    }
1646
	    ADVANCE_LEXER;
1647
	    switch (CURRENT_TERMINAL) {
1648
	      case 121:
1649
		break;
1650
	      default:
1651
		goto XL1;
1652
	    }
1653
	    ADVANCE_LEXER;
1654
	    {
1655
 (XI708) = OPT_decl_struct_anon ; 
1656
	    }
1657
	}
1658
	break;
1659
      case 354:
1660
	return;
1661
      default:
1662
	goto XL1;
1663
    }
1664
    goto XL0;
1665
  XL1:;
1666
    SAVE_LEXER (354);
1667
    return;
1668
  XL0:;
1669
    *XO708 = XI708;
1670
}
1671
 
1672
void
1673
XR793 PROTO_N ((XO708))
1674
  PROTO_T (int *XO708)
1675
{
1676
    int XI708;
1677
 
1678
    switch (CURRENT_TERMINAL) {
1679
      case 244:
1680
	{
1681
	    ADVANCE_LEXER;
1682
	    switch (CURRENT_TERMINAL) {
1683
	      case 174:
1684
		break;
1685
	      default:
1686
		goto XL1;
1687
	    }
1688
	    ADVANCE_LEXER;
1689
	    {
1690
 (XI708) = OPT_init_aggregate ; 
1691
	    }
1692
	}
1693
	break;
1694
      case 118:
1695
	{
1696
	    ADVANCE_LEXER;
1697
	    switch (CURRENT_TERMINAL) {
1698
	      case 44:
1699
		break;
1700
	      default:
1701
		goto XL1;
1702
	    }
1703
	    ADVANCE_LEXER;
1704
	    switch (CURRENT_TERMINAL) {
1705
	      case 121:
1706
		break;
1707
	      default:
1708
		goto XL1;
1709
	    }
1710
	    ADVANCE_LEXER;
1711
	    switch (CURRENT_TERMINAL) {
1712
	      case 174:
1713
		break;
1714
	      default:
1715
		goto XL1;
1716
	    }
1717
	    ADVANCE_LEXER;
1718
	    {
1719
 (XI708) = OPT_complete_struct ; 
1720
	    }
1721
	}
1722
	break;
1723
      case 354:
1724
	return;
1725
      default:
1726
	goto XL1;
1727
    }
1728
    goto XL0;
1729
  XL1:;
1730
    SAVE_LEXER (354);
1731
    return;
1732
  XL0:;
1733
    *XO708 = XI708;
1734
}
1735
 
1736
void
1737
XR794 PROTO_N ((XO708))
1738
  PROTO_T (int *XO708)
1739
{
1740
    int XI708;
1741
 
1742
    switch (CURRENT_TERMINAL) {
1743
      case 134:
1744
	{
1745
	    ADVANCE_LEXER;
1746
	    switch (CURRENT_TERMINAL) {
1747
	      case 147:
1748
		break;
1749
	      default:
1750
		goto XL1;
1751
	    }
1752
	    ADVANCE_LEXER;
1753
	    {
1754
 (XI708) = OPT_templ_export ; 
1755
	    }
1756
	}
1757
	break;
1758
      case 227:
1759
	{
1760
	    ADVANCE_LEXER;
1761
	    switch (CURRENT_TERMINAL) {
1762
	      case 196:
1763
		break;
1764
	      default:
1765
		goto XL1;
1766
	    }
1767
	    ADVANCE_LEXER;
1768
	    {
1769
 (XI708) = OPT_func_impl ; 
1770
	    }
1771
	}
1772
	break;
1773
      case 354:
1774
	return;
1775
      default:
1776
	goto XL1;
1777
    }
1778
    goto XL0;
1779
  XL1:;
1780
    SAVE_LEXER (354);
1781
    return;
1782
  XL0:;
1783
    *XO708 = XI708;
1784
}
1785
 
1786
void
1787
XR408 PROTO_N ((XI406, XO402))
1788
  PROTO_T (SID_LIST_ID XI406 X SID_LIST_ID *XO402)
1789
{
1790
    SID_LIST_ID XI402;
1791
 
1792
    if ((CURRENT_TERMINAL) == 354) {
1793
	return;
1794
    }
1795
    {
1796
	IDENTIFIER XI409;
1797
	SID_LIST_ID XI405;
1798
 
1799
	XR407 (XI406, &XI409);
1800
	{
1801
	    switch (CURRENT_TERMINAL) {
1802
	      case 42:
1803
		{
1804
		    ADVANCE_LEXER;
1805
		    XR833 (&XI406, &XI405);
1806
		    if ((CURRENT_TERMINAL) == 354) {
1807
			RESTORE_LEXER;
1808
			goto XL1;
1809
		    }
1810
		}
1811
		break;
1812
	      default:
1813
		{
1814
		    {
1815
 
1816
    (XI405) = NULL_list ( IDENTIFIER ) ;
1817
		    }
1818
		}
1819
		break;
1820
	      case 354:
1821
		RESTORE_LEXER;
1822
		goto XL1;
1823
	    }
1824
	}
1825
	{
1826
 
1827
    CONS_id ( (XI409), (XI405), (XI402) ) ;
1828
	}
1829
    }
1830
    goto XL0;
1831
  XL1:;
1832
    SAVE_LEXER (354);
1833
    return;
1834
  XL0:;
1835
    *XO402 = XI402;
1836
}
1837
 
1838
void
1839
XR795 PROTO_N ((XO708))
1840
  PROTO_T (int *XO708)
1841
{
1842
    int XI708;
1843
 
1844
    switch (CURRENT_TERMINAL) {
1845
      case 141:
1846
	{
1847
	    ADVANCE_LEXER;
1848
	    switch (CURRENT_TERMINAL) {
1849
	      case 174:
1850
		break;
1851
	      default:
1852
		goto XL1;
1853
	    }
1854
	    ADVANCE_LEXER;
1855
	    {
1856
 (XI708) = OPT_int_operator ; 
1857
	    }
1858
	}
1859
	break;
1860
      case 273:
1861
	{
1862
	    ADVANCE_LEXER;
1863
	    switch (CURRENT_TERMINAL) {
1864
	      case 174:
1865
		break;
1866
	      default:
1867
		goto XL1;
1868
	    }
1869
	    ADVANCE_LEXER;
1870
	    {
1871
 (XI708) = OPT_int_overflow ; 
1872
	    }
1873
	}
1874
	break;
1875
      case 354:
1876
	return;
1877
      default:
1878
	goto XL1;
1879
    }
1880
    goto XL0;
1881
  XL1:;
1882
    SAVE_LEXER (354);
1883
    return;
1884
  XL0:;
1885
    *XO708 = XI708;
1886
}
1887
 
1888
void
1889
XR796 PROTO_N ((XO708))
1890
  PROTO_T (int *XO708)
1891
{
1892
    int XI708;
1893
 
1894
    switch (CURRENT_TERMINAL) {
1895
      case 174:
1896
	{
1897
	    ADVANCE_LEXER;
1898
	    {
1899
 (XI708) = OPT_variable ; 
1900
	    }
1901
	}
1902
	break;
1903
      case 229:
1904
	{
1905
	    ADVANCE_LEXER;
1906
	    switch (CURRENT_TERMINAL) {
1907
	      case 174:
1908
		break;
1909
	      default:
1910
		goto XL1;
1911
	    }
1912
	    ADVANCE_LEXER;
1913
	    {
1914
 (XI708) = OPT_decl_hide ; 
1915
	    }
1916
	}
1917
	break;
1918
      case 354:
1919
	return;
1920
      default:
1921
	goto XL1;
1922
    }
1923
    goto XL0;
1924
  XL1:;
1925
    SAVE_LEXER (354);
1926
    return;
1927
  XL0:;
1928
    *XO708 = XI708;
1929
}
1930
 
1931
void
1932
XR715 PROTO_N ((XO708, XO714))
1933
  PROTO_T (int *XO708 X int *XO714)
1934
{
1935
    int XI708;
1936
    int XI714;
1937
 
1938
    switch (CURRENT_TERMINAL) {
1939
      case 179:
1940
	{
1941
	    ADVANCE_LEXER;
1942
	    {
1943
 
1944
    (XI708) = OPT_ppdir_assert ;
1945
    (XI714) = OPT_ppdir_assert_ignore ;
1946
	    }
1947
	}
1948
	break;
1949
      case 223:
1950
	{
1951
	    ADVANCE_LEXER;
1952
	    {
1953
 
1954
    (XI708) = OPT_ppdir_file ;
1955
    (XI714) = OPT_ppdir_file_ignore ;
1956
	    }
1957
	}
1958
	break;
1959
      case 230:
1960
	{
1961
	    ADVANCE_LEXER;
1962
	    {
1963
 
1964
    (XI708) = OPT_ppdir_ident ;
1965
    (XI714) = OPT_ppdir_ident_ignore ;
1966
	    }
1967
	}
1968
	break;
1969
      case 237:
1970
	{
1971
	    ADVANCE_LEXER;
1972
	    {
1973
 
1974
    (XI708) = OPT_ppdir_import ;
1975
    (XI714) = OPT_ppdir_import_ignore ;
1976
	    }
1977
	}
1978
	break;
1979
      case 240:
1980
	{
1981
	    ADVANCE_LEXER;
1982
	    {
1983
 
1984
    (XI708) = OPT_ppdir_import ;
1985
    (XI714) = OPT_ppdir_import_ignore ;
1986
	    }
1987
	}
1988
	break;
1989
      case 316:
1990
	{
1991
	    ADVANCE_LEXER;
1992
	    {
1993
 
1994
    (XI708) = OPT_ppdir_unassert ;
1995
    (XI714) = OPT_ppdir_unassert_ignore ;
1996
	    }
1997
	}
1998
	break;
1999
      case 330:
2000
	{
2001
	    ADVANCE_LEXER;
2002
	    {
2003
 
2004
    (XI708) = OPT_ppdir_warning ;
2005
    (XI714) = OPT_ppdir_warning_ignore ;
2006
	    }
2007
	}
2008
	break;
2009
      case 331:
2010
	{
2011
	    ADVANCE_LEXER;
2012
	    {
2013
 
2014
    (XI708) = OPT_ppdir_weak ;
2015
    (XI714) = OPT_ppdir_weak_ignore ;
2016
	    }
2017
	}
2018
	break;
2019
      case 354:
2020
	return;
2021
      default:
2022
	goto XL1;
2023
    }
2024
    goto XL0;
2025
  XL1:;
2026
    SAVE_LEXER (354);
2027
    return;
2028
  XL0:;
2029
    *XO708 = XI708;
2030
    *XO714 = XI714;
2031
}
2032
 
2033
void
2034
XR797 PROTO_Z ()
2035
{
2036
    switch (CURRENT_TERMINAL) {
2037
      case 274:
2038
	{
2039
	    unsigned XI473;
2040
	    unsigned XI377;
2041
	    int XI708;
2042
	    int XI714;
2043
 
2044
	    ADVANCE_LEXER;
2045
	    switch (CURRENT_TERMINAL) {
2046
	      case 293:
2047
		break;
2048
	      default:
2049
		goto XL1;
2050
	    }
2051
	    ADVANCE_LEXER;
2052
	    XR725 (&XI473);
2053
	    XR506 (&XI377);
2054
	    if ((CURRENT_TERMINAL) == 354) {
2055
		RESTORE_LEXER;
2056
		goto XL1;
2057
	    }
2058
	    {
2059
 (XI708) = OPT_overload_dep ; 
2060
	    }
2061
	    {
2062
 (XI714) = OPT_overload_strict ; 
2063
	    }
2064
	    {
2065
 
2066
    set_option ( (XI708), (XI377) ) ;
2067
	    }
2068
	    {
2069
 
2070
    set_option ( (XI714), (XI473) ) ;
2071
	    }
2072
	}
2073
	break;
2074
      case 196: case 256:
2075
	{
2076
	    int XI708;
2077
	    unsigned XI377;
2078
 
2079
	    XR784 (&XI708);
2080
	    XR506 (&XI377);
2081
	    if ((CURRENT_TERMINAL) == 354) {
2082
		RESTORE_LEXER;
2083
		goto XL1;
2084
	    }
2085
	    {
2086
 
2087
    set_option ( (XI708), (XI377) ) ;
2088
	    }
2089
	}
2090
	break;
2091
      case 354:
2092
	return;
2093
      default:
2094
	goto XL1;
2095
    }
2096
    return;
2097
  XL1:;
2098
    SAVE_LEXER (354);
2099
    return;
2100
}
2101
 
2102
void
2103
XR721 PROTO_N ((XO473))
2104
  PROTO_T (unsigned *XO473)
2105
{
2106
    unsigned XI473;
2107
 
2108
    switch (CURRENT_TERMINAL) {
2109
      case 220:
2110
	{
2111
	    ADVANCE_LEXER;
2112
	    {
2113
 (XI473) = ( unsigned ) OPTION_OFF ; 
2114
	    }
2115
	}
2116
	break;
2117
      case 247:
2118
	{
2119
	    ADVANCE_LEXER;
2120
	    {
2121
 (XI473) = ( unsigned ) OPTION_ON ; 
2122
	    }
2123
	}
2124
	break;
2125
      case 354:
2126
	return;
2127
      default:
2128
	goto XL1;
2129
    }
2130
    goto XL0;
2131
  XL1:;
2132
    SAVE_LEXER (354);
2133
    return;
2134
  XL0:;
2135
    *XO473 = XI473;
2136
}
2137
 
2138
void
2139
XR798 PROTO_Z ()
2140
{
2141
    switch (CURRENT_TERMINAL) {
2142
      case 178:
2143
	{
2144
	    int XI708;
2145
	    unsigned XI377;
2146
 
2147
	    ADVANCE_LEXER;
2148
	    switch (CURRENT_TERMINAL) {
2149
	      case 257:
2150
		break;
2151
	      default:
2152
		goto XL1;
2153
	    }
2154
	    ADVANCE_LEXER;
2155
	    switch (CURRENT_TERMINAL) {
2156
	      case 175:
2157
		break;
2158
	      default:
2159
		goto XL1;
2160
	    }
2161
	    ADVANCE_LEXER;
2162
	    {
2163
 (XI708) = OPT_macro_arg_dir ; 
2164
	    }
2165
	    XR506 (&XI377);
2166
	    if ((CURRENT_TERMINAL) == 354) {
2167
		RESTORE_LEXER;
2168
		goto XL1;
2169
	    }
2170
	    {
2171
 
2172
    set_option ( (XI708), (XI377) ) ;
2173
	    }
2174
	}
2175
	break;
2176
      case 179: case 223: case 230: case 237: case 240:
2177
      case 316: case 330: case 331:
2178
	{
2179
	    int XI708;
2180
	    int XI714;
2181
	    unsigned XI377;
2182
	    unsigned XI473;
2183
 
2184
	    XR715 (&XI708, &XI714);
2185
	    XR716 (&XI377, &XI473);
2186
	    if ((CURRENT_TERMINAL) == 354) {
2187
		RESTORE_LEXER;
2188
		goto XL1;
2189
	    }
2190
	    {
2191
 
2192
    set_option ( (XI708), (XI377) ) ;
2193
	    }
2194
	    {
2195
 
2196
    set_option ( (XI714), (XI473) ) ;
2197
	    }
2198
	}
2199
	break;
2200
      case 354:
2201
	return;
2202
      default:
2203
	goto XL1;
2204
    }
2205
    return;
2206
  XL1:;
2207
    SAVE_LEXER (354);
2208
    return;
2209
}
2210
 
2211
void
2212
XR799 PROTO_Z ()
2213
{
2214
    switch (CURRENT_TERMINAL) {
2215
      case 227:
2216
	{
2217
	    int XI708;
2218
	    unsigned XI377;
2219
 
2220
	    ADVANCE_LEXER;
2221
	    switch (CURRENT_TERMINAL) {
2222
	      case 253:
2223
		break;
2224
	      default:
2225
		goto XL1;
2226
	    }
2227
	    ADVANCE_LEXER;
2228
	    {
2229
 (XI708) = OPT_func_linkage ; 
2230
	    }
2231
	    XR505 (&XI377);
2232
	    if ((CURRENT_TERMINAL) == 354) {
2233
		RESTORE_LEXER;
2234
		goto XL1;
2235
	    }
2236
	    {
2237
 
2238
    set_option ( (XI708), (XI377) ) ;
2239
	    }
2240
	}
2241
	break;
2242
      case 253:
2243
	{
2244
	    EXP XI377;
2245
	    DECL_SPEC XI409;
2246
 
2247
	    ADVANCE_LEXER;
2248
	    {
2249
		switch (CURRENT_TERMINAL) {
2250
		  case 19:
2251
		    {
2252
			{
2253
 
2254
    XI377 = crt_token->pp_data.exp ;
2255
			}
2256
			ADVANCE_LEXER;
2257
		    }
2258
		    break;
2259
		  case 20:
2260
		    {
2261
			{
2262
 
2263
    XI377 = crt_token->pp_data.exp ;
2264
			}
2265
			ADVANCE_LEXER;
2266
		    }
2267
		    break;
2268
		  default:
2269
		    goto XL1;
2270
		}
2271
	    }
2272
	    {
2273
 
2274
    (XI409) = find_linkage ( (XI377) ) ;
2275
	    }
2276
	    {
2277
 
2278
    set_link_opt ( (XI409) ) ;
2279
	    }
2280
	}
2281
	break;
2282
      case 124: case 328:
2283
	{
2284
	    int XI708;
2285
	    unsigned XI377;
2286
 
2287
	    {
2288
		switch (CURRENT_TERMINAL) {
2289
		  case 124:
2290
		    {
2291
			ADVANCE_LEXER;
2292
		    }
2293
		    break;
2294
		  case 328:
2295
		    {
2296
			ADVANCE_LEXER;
2297
		    }
2298
		    break;
2299
		  default:
2300
		    goto XL1;
2301
		}
2302
	    }
2303
	    {
2304
 (XI708) = OPT_decl_volatile ; 
2305
	    }
2306
	    {
2307
 (XI377) = ( unsigned ) OPTION_ON ; 
2308
	    }
2309
	    {
2310
 
2311
    set_option ( (XI708), (XI377) ) ;
2312
	    }
2313
	}
2314
	break;
2315
      case 354:
2316
	return;
2317
      default:
2318
	goto XL1;
2319
    }
2320
    return;
2321
  XL1:;
2322
    SAVE_LEXER (354);
2323
    return;
2324
}
2325
 
2326
void
2327
XR800 PROTO_Z ()
2328
{
2329
    switch (CURRENT_TERMINAL) {
2330
      case 193:
2331
	{
2332
	    int XI708;
2333
	    unsigned XI377;
2334
 
2335
	    ADVANCE_LEXER;
2336
	    {
2337
 (XI708) = OPT_const_cond ; 
2338
	    }
2339
	    XR506 (&XI377);
2340
	    if ((CURRENT_TERMINAL) == 354) {
2341
		RESTORE_LEXER;
2342
		goto XL1;
2343
	    }
2344
	    {
2345
 
2346
    set_option ( (XI708), (XI377) ) ;
2347
	    }
2348
	}
2349
	break;
2350
      case 253:
2351
	{
2352
	    unsigned XI377;
2353
	    int XI708;
2354
 
2355
	    ADVANCE_LEXER;
2356
	    XR721 (&XI377);
2357
	    if ((CURRENT_TERMINAL) == 354) {
2358
		RESTORE_LEXER;
2359
		goto XL1;
2360
	    }
2361
	    {
2362
 (XI708) = OPT_const_internal ; 
2363
	    }
2364
	    {
2365
 
2366
    set_option ( (XI708), (XI377) ) ;
2367
	    }
2368
	}
2369
	break;
2370
      case 354:
2371
	return;
2372
      default:
2373
	goto XL1;
2374
    }
2375
    return;
2376
  XL1:;
2377
    SAVE_LEXER (354);
2378
    return;
2379
}
2380
 
2381
void
2382
XR801 PROTO_Z ()
2383
{
2384
    switch (CURRENT_TERMINAL) {
2385
      case 223:
2386
	{
2387
	    int XI708;
2388
	    unsigned XI377;
2389
 
2390
	    ADVANCE_LEXER;
2391
	    switch (CURRENT_TERMINAL) {
2392
	      case 239:
2393
		break;
2394
	      default:
2395
		goto XL1;
2396
	    }
2397
	    ADVANCE_LEXER;
2398
	    {
2399
 (XI708) = OPT_include_full ; 
2400
	    }
2401
	    XR506 (&XI377);
2402
	    if ((CURRENT_TERMINAL) == 354) {
2403
		RESTORE_LEXER;
2404
		goto XL1;
2405
	    }
2406
	    {
2407
 
2408
    set_option ( (XI708), (XI377) ) ;
2409
	    }
2410
	}
2411
	break;
2412
      case 118: case 244:
2413
	{
2414
	    int XI708;
2415
	    unsigned XI377;
2416
 
2417
	    XR793 (&XI708);
2418
	    XR505 (&XI377);
2419
	    if ((CURRENT_TERMINAL) == 354) {
2420
		RESTORE_LEXER;
2421
		goto XL1;
2422
	    }
2423
	    {
2424
 
2425
    set_option ( (XI708), (XI377) ) ;
2426
	    }
2427
	}
2428
	break;
2429
      case 354:
2430
	return;
2431
      default:
2432
	goto XL1;
2433
    }
2434
    return;
2435
  XL1:;
2436
    SAVE_LEXER (354);
2437
    return;
2438
}
2439
 
2440
void
2441
XR802 PROTO_Z ()
2442
{
2443
    switch (CURRENT_TERMINAL) {
2444
      case 110: case 311:
2445
	{
2446
	    int XI708;
2447
	    unsigned XI377;
2448
 
2449
	    XR787 (&XI708);
2450
	    XR506 (&XI377);
2451
	    if ((CURRENT_TERMINAL) == 354) {
2452
		RESTORE_LEXER;
2453
		goto XL1;
2454
	    }
2455
	    {
2456
 
2457
    set_option ( (XI708), (XI377) ) ;
2458
	    }
2459
	}
2460
	break;
2461
      case 134: case 227:
2462
	{
2463
	    int XI708;
2464
	    unsigned XI377;
2465
 
2466
	    XR794 (&XI708);
2467
	    XR505 (&XI377);
2468
	    if ((CURRENT_TERMINAL) == 354) {
2469
		RESTORE_LEXER;
2470
		goto XL1;
2471
	    }
2472
	    {
2473
 
2474
    set_option ( (XI708), (XI377) ) ;
2475
	    }
2476
	}
2477
	break;
2478
      case 354:
2479
	return;
2480
      default:
2481
	goto XL1;
2482
    }
2483
    return;
2484
  XL1:;
2485
    SAVE_LEXER (354);
2486
    return;
2487
}
2488
 
2489
void
2490
XR803 PROTO_Z ()
2491
{
2492
    switch (CURRENT_TERMINAL) {
2493
      case 220:
2494
	{
2495
	    int XI708;
2496
	    unsigned XI377;
2497
 
2498
	    ADVANCE_LEXER;
2499
	    switch (CURRENT_TERMINAL) {
2500
	      case 253:
2501
		break;
2502
	      default:
2503
		goto XL1;
2504
	    }
2505
	    ADVANCE_LEXER;
2506
	    {
2507
 (XI708) = OPT_decl_unify ; 
2508
	    }
2509
	    XR505 (&XI377);
2510
	    if ((CURRENT_TERMINAL) == 354) {
2511
		RESTORE_LEXER;
2512
		goto XL1;
2513
	    }
2514
	    {
2515
 
2516
    set_option ( (XI708), (XI377) ) ;
2517
	    }
2518
	}
2519
	break;
2520
      case 241:
2521
	{
2522
	    int XI708;
2523
	    unsigned XI377;
2524
 
2525
	    ADVANCE_LEXER;
2526
	    switch (CURRENT_TERMINAL) {
2527
	      case 303:
2528
		break;
2529
	      default:
2530
		goto XL1;
2531
	    }
2532
	    ADVANCE_LEXER;
2533
	    switch (CURRENT_TERMINAL) {
2534
	      case 254:
2535
		break;
2536
	      default:
2537
		goto XL1;
2538
	    }
2539
	    ADVANCE_LEXER;
2540
	    {
2541
 (XI708) = OPT_concat_string ; 
2542
	    }
2543
	    XR506 (&XI377);
2544
	    if ((CURRENT_TERMINAL) == 354) {
2545
		RESTORE_LEXER;
2546
		goto XL1;
2547
	    }
2548
	    {
2549
 
2550
    set_option ( (XI708), (XI377) ) ;
2551
	    }
2552
	}
2553
	break;
2554
      case 354:
2555
	return;
2556
      default:
2557
	goto XL1;
2558
    }
2559
    return;
2560
  XL1:;
2561
    SAVE_LEXER (354);
2562
    return;
2563
}
2564
 
2565
void
2566
XR804 PROTO_Z ()
2567
{
2568
    switch (CURRENT_TERMINAL) {
2569
      case 244:
2570
	{
2571
	    int XI708;
2572
	    unsigned XI377;
2573
 
2574
	    ADVANCE_LEXER;
2575
	    {
2576
 (XI708) = OPT_init_dynamic ; 
2577
	    }
2578
	    XR506 (&XI377);
2579
	    if ((CURRENT_TERMINAL) == 354) {
2580
		RESTORE_LEXER;
2581
		goto XL1;
2582
	    }
2583
	    {
2584
 
2585
    set_option ( (XI708), (XI377) ) ;
2586
	    }
2587
	}
2588
	break;
2589
      case 174: case 229:
2590
	{
2591
	    int XI708;
2592
	    unsigned XI377;
2593
 
2594
	    XR796 (&XI708);
2595
	    XR505 (&XI377);
2596
	    if ((CURRENT_TERMINAL) == 354) {
2597
		RESTORE_LEXER;
2598
		goto XL1;
2599
	    }
2600
	    {
2601
 
2602
    set_option ( (XI708), (XI377) ) ;
2603
	    }
2604
	}
2605
	break;
2606
      case 354:
2607
	return;
2608
      default:
2609
	goto XL1;
2610
    }
2611
    return;
2612
  XL1:;
2613
    SAVE_LEXER (354);
2614
    return;
2615
}
2616
 
2617
void
2618
XR709 PROTO_N ((XO708))
2619
  PROTO_T (int *XO708)
2620
{
2621
    int XI708;
2622
 
2623
    switch (CURRENT_TERMINAL) {
2624
      case 65:
2625
	{
2626
	    ADVANCE_LEXER;
2627
	    XR841 (&XI708);
2628
	    if ((CURRENT_TERMINAL) == 354) {
2629
		RESTORE_LEXER;
2630
		goto XL1;
2631
	    }
2632
	}
2633
	break;
2634
      default:
2635
	{
2636
	    {
2637
 (XI708) = OPT_conv ; 
2638
	    }
2639
	}
2640
	break;
2641
      case 354:
2642
	return;
2643
    }
2644
    goto XL0;
2645
  XL1:;
2646
    SAVE_LEXER (354);
2647
    return;
2648
  XL0:;
2649
    *XO708 = XI708;
2650
}
2651
 
2652
void
2653
XR805 PROTO_Z ()
2654
{
2655
    switch (CURRENT_TERMINAL) {
2656
      case 257:
2657
	{
2658
	    int XI708;
2659
	    unsigned XI377;
2660
 
2661
	    ADVANCE_LEXER;
2662
	    switch (CURRENT_TERMINAL) {
2663
	      case 213:
2664
		break;
2665
	      default:
2666
		goto XL1;
2667
	    }
2668
	    ADVANCE_LEXER;
2669
	    {
2670
 (XI708) = OPT_macro_weak ; 
2671
	    }
2672
	    XR506 (&XI377);
2673
	    if ((CURRENT_TERMINAL) == 354) {
2674
		RESTORE_LEXER;
2675
		goto XL1;
2676
	    }
2677
	    {
2678
 
2679
    set_option ( (XI708), (XI377) ) ;
2680
	    }
2681
	}
2682
	break;
2683
      case 284:
2684
	{
2685
	    int XI708;
2686
	    unsigned XI377;
2687
 
2688
	    ADVANCE_LEXER;
2689
	    switch (CURRENT_TERMINAL) {
2690
	      case 174:
2691
		break;
2692
	      default:
2693
		goto XL1;
2694
	    }
2695
	    ADVANCE_LEXER;
2696
	    {
2697
 (XI708) = OPT_weak ; 
2698
	    }
2699
	    XR505 (&XI377);
2700
	    if ((CURRENT_TERMINAL) == 354) {
2701
		RESTORE_LEXER;
2702
		goto XL1;
2703
	    }
2704
	    {
2705
 
2706
    set_option ( (XI708), (XI377) ) ;
2707
	    }
2708
	}
2709
	break;
2710
      case 354:
2711
	return;
2712
      default:
2713
	goto XL1;
2714
    }
2715
    return;
2716
  XL1:;
2717
    SAVE_LEXER (354);
2718
    return;
2719
}
2720
 
2721
void
2722
parse_preproc PROTO_N ((XO397))
2723
  PROTO_T (int *XO397)
2724
{
2725
    int XI397;
2726
 
2727
    if ((CURRENT_TERMINAL) == 354) {
2728
	return;
2729
    }
2730
    {
2731
	XR771 ();
2732
	if ((CURRENT_TERMINAL) == 354) {
2733
	    RESTORE_LEXER;
2734
	    goto XL1;
2735
	}
2736
	{
2737
 (XI397) = lex_ignore_token ; 
2738
	}
2739
    }
2740
    goto XL0;
2741
  XL1:;
2742
    {
2743
	{
2744
 (XI397) = lex_hash_Hpragma ; 
2745
	}
2746
    }
2747
  XL0:;
2748
    *XO397 = XI397;
2749
}
2750
 
2751
void
2752
XR806 PROTO_Z ()
2753
{
2754
    switch (CURRENT_TERMINAL) {
2755
      case 212:
2756
	{
2757
	    IDENTIFIER XI375;
2758
	    unsigned XI377;
2759
 
2760
	    ADVANCE_LEXER;
2761
	    {
2762
 
2763
    int t = crt_lex_token ;
2764
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
2765
	crt_lex_token = lex_identifier ;
2766
    }
2767
	    }
2768
	    {
2769
		switch (CURRENT_TERMINAL) {
2770
		  case 1:
2771
		    {
2772
			{
2773
 
2774
    XI375 = crt_token->pp_data.id.use ;
2775
			}
2776
			ADVANCE_LEXER;
2777
		    }
2778
		    break;
2779
		  case 3:
2780
		    {
2781
			{
2782
 
2783
    XI375 = crt_token->pp_data.id.use ;
2784
			}
2785
			ADVANCE_LEXER;
2786
		    }
2787
		    break;
2788
		  case 4:
2789
		    {
2790
			{
2791
 
2792
    XI375 = crt_token->pp_data.id.use ;
2793
			}
2794
			ADVANCE_LEXER;
2795
		    }
2796
		    break;
2797
		  case 2:
2798
		    {
2799
			{
2800
 
2801
    XI375 = crt_token->pp_data.id.use ;
2802
			}
2803
			ADVANCE_LEXER;
2804
		    }
2805
		    break;
2806
		  default:
2807
		    goto XL1;
2808
		}
2809
	    }
2810
	    {
2811
		switch (CURRENT_TERMINAL) {
2812
		  case 292:
2813
		    {
2814
			ADVANCE_LEXER;
2815
			XR506 (&XI377);
2816
			if ((CURRENT_TERMINAL) == 354) {
2817
			    RESTORE_LEXER;
2818
			    goto XL1;
2819
			}
2820
		    }
2821
		    break;
2822
		  default:
2823
		    {
2824
			{
2825
 (XI377) = ( unsigned ) OPTION_ON ; 
2826
			}
2827
		    }
2828
		    break;
2829
		}
2830
	    }
2831
	    {
2832
 
2833
    use_option ( (XI375), (XI377) ) ;
2834
	    }
2835
	}
2836
	break;
2837
      case 214:
2838
	{
2839
	    int XI708;
2840
 
2841
	    XR757 (&XI708);
2842
	    if ((CURRENT_TERMINAL) == 354) {
2843
		RESTORE_LEXER;
2844
		goto XL1;
2845
	    }
2846
	    {
2847
 
2848
    if ( (XI708) >= 0 ) {
2849
	no_error_args = 1 ;
2850
	report ( crt_loc, make_error ( (XI708) ) ) ;
2851
	no_error_args = 0 ;
2852
    }
2853
	    }
2854
	}
2855
	break;
2856
      case 354:
2857
	return;
2858
      default:
2859
	goto XL1;
2860
    }
2861
    return;
2862
  XL1:;
2863
    SAVE_LEXER (354);
2864
    return;
2865
}
2866
 
2867
void
2868
XR807 PROTO_Z ()
2869
{
2870
    switch (CURRENT_TERMINAL) {
2871
      case 214:
2872
	{
2873
	    int XI708;
2874
	    EXP XI377;
2875
 
2876
	    ADVANCE_LEXER;
2877
	    switch (CURRENT_TERMINAL) {
2878
	      case 251:
2879
		break;
2880
	      default:
2881
		goto XL1;
2882
	    }
2883
	    ADVANCE_LEXER;
2884
	    {
2885
 (XI708) = OPT_VAL_maximum_error ; 
2886
	    }
2887
	    {
2888
		{
2889
		    switch (CURRENT_TERMINAL) {
2890
		      case 21:
2891
			{
2892
 
2893
    XI377 = crt_token->pp_data.exp ;
2894
			}
2895
			break;
2896
		      default:
2897
			goto XL1;
2898
		    }
2899
		    ADVANCE_LEXER;
2900
		}
2901
	    }
2902
	    {
2903
 
2904
    set_value ( (XI708), (XI377), ( unsigned long ) 0 ) ;
2905
	    }
2906
	}
2907
	break;
2908
      case 261:
2909
	{
2910
	    EXP XI377;
2911
	    unsigned XI473;
2912
	    int XI708;
2913
	    int XI714;
2914
 
2915
	    ADVANCE_LEXER;
2916
	    switch (CURRENT_TERMINAL) {
2917
	      case 251:
2918
		break;
2919
	      default:
2920
		goto XL1;
2921
	    }
2922
	    ADVANCE_LEXER;
2923
	    {
2924
		{
2925
		    switch (CURRENT_TERMINAL) {
2926
		      case 21:
2927
			{
2928
 
2929
    XI377 = crt_token->pp_data.exp ;
2930
			}
2931
			break;
2932
		      default:
2933
			goto XL1;
2934
		    }
2935
		    ADVANCE_LEXER;
2936
		}
2937
	    }
2938
	    XR508 (&XI473);
2939
	    if ((CURRENT_TERMINAL) == 354) {
2940
		RESTORE_LEXER;
2941
		goto XL1;
2942
	    }
2943
	    {
2944
 (XI708) = OPT_VAL_name_limit ; 
2945
	    }
2946
	    {
2947
 (XI714) = OPT_name_limit ; 
2948
	    }
2949
	    {
2950
 
2951
    set_value ( (XI708), (XI377), ( unsigned long ) 0 ) ;
2952
	    }
2953
	    {
2954
 
2955
    set_option ( (XI714), (XI473) ) ;
2956
	    }
2957
	}
2958
	break;
2959
      case 354:
2960
	return;
2961
      default:
2962
	goto XL1;
2963
    }
2964
    return;
2965
  XL1:;
2966
    SAVE_LEXER (354);
2967
    return;
2968
}
2969
 
2970
void
2971
parse_tendra PROTO_N ((XO397))
2972
  PROTO_T (int *XO397)
2973
{
2974
    int XI397;
2975
 
2976
    switch (CURRENT_TERMINAL) {
2977
      case 168:
2978
	{
2979
	    ADVANCE_LEXER;
2980
	    XR814 ();
2981
	    if ((CURRENT_TERMINAL) == 354) {
2982
		RESTORE_LEXER;
2983
		goto XL1;
2984
	    }
2985
	    {
2986
 (XI397) = lex_hash_Hpragma ; 
2987
	    }
2988
	}
2989
	break;
2990
      case 173:
2991
	{
2992
	    int XI708;
2993
	    unsigned XI377;
2994
 
2995
	    ADVANCE_LEXER;
2996
	    switch (CURRENT_TERMINAL) {
2997
	      case 274:
2998
		break;
2999
	      default:
3000
		goto XL1;
3001
	    }
3002
	    ADVANCE_LEXER;
3003
	    switch (CURRENT_TERMINAL) {
3004
	      case 293:
3005
		break;
3006
	      default:
3007
		goto XL1;
3008
	    }
3009
	    ADVANCE_LEXER;
3010
	    {
3011
 (XI708) = OPT_overload_ambig ; 
3012
	    }
3013
	    XR506 (&XI377);
3014
	    if ((CURRENT_TERMINAL) == 354) {
3015
		RESTORE_LEXER;
3016
		goto XL1;
3017
	    }
3018
	    {
3019
 
3020
    set_option ( (XI708), (XI377) ) ;
3021
	    }
3022
	    {
3023
 (XI397) = lex_hash_Hpragma ; 
3024
	    }
3025
	}
3026
	break;
3027
      case 175:
3028
	{
3029
	    TYPE XI822;
3030
 
3031
	    ADVANCE_LEXER;
3032
	    {
3033
 
3034
    rescan_pragma ( lex_as ) ;
3035
    RESCAN_LEXER ;
3036
	    }
3037
	    {
3038
 
3039
    (XI822) = type_error ;
3040
    parse_tok_type ( &(XI822) ) ;
3041
    object_type ( (XI822), null_tag ) ;
3042
	    }
3043
	    switch (CURRENT_TERMINAL) {
3044
	      case 178:
3045
		break;
3046
	      default:
3047
		goto XL1;
3048
	    }
3049
	    ADVANCE_LEXER;
3050
	    XR811 (&XI822);
3051
	    if ((CURRENT_TERMINAL) == 354) {
3052
		RESTORE_LEXER;
3053
		goto XL1;
3054
	    }
3055
	    {
3056
 (XI397) = lex_hash_Hpragma ; 
3057
	    }
3058
	}
3059
	break;
3060
      case 180:
3061
	{
3062
	    int XI708;
3063
	    unsigned XI377;
3064
 
3065
	    ADVANCE_LEXER;
3066
	    switch (CURRENT_TERMINAL) {
3067
	      case 178:
3068
		break;
3069
	      default:
3070
		goto XL1;
3071
	    }
3072
	    ADVANCE_LEXER;
3073
	    switch (CURRENT_TERMINAL) {
3074
	      case 127:
3075
		break;
3076
	      default:
3077
		goto XL1;
3078
	    }
3079
	    ADVANCE_LEXER;
3080
	    {
3081
 (XI708) = OPT_bool_assign ; 
3082
	    }
3083
	    XR506 (&XI377);
3084
	    if ((CURRENT_TERMINAL) == 354) {
3085
		RESTORE_LEXER;
3086
		goto XL1;
3087
	    }
3088
	    {
3089
 
3090
    set_option ( (XI708), (XI377) ) ;
3091
	    }
3092
	    {
3093
 (XI397) = lex_hash_Hpragma ; 
3094
	    }
3095
	}
3096
	break;
3097
      case 181:
3098
	{
3099
	    ADVANCE_LEXER;
3100
	    XR782 ();
3101
	    if ((CURRENT_TERMINAL) == 354) {
3102
		RESTORE_LEXER;
3103
		goto XL1;
3104
	    }
3105
	    {
3106
 (XI397) = lex_hash_Hpragma ; 
3107
	    }
3108
	}
3109
	break;
3110
      case 182:
3111
	{
3112
	    int XI708;
3113
	    unsigned XI377;
3114
 
3115
	    ADVANCE_LEXER;
3116
	    switch (CURRENT_TERMINAL) {
3117
	      case 273:
3118
		break;
3119
	      default:
3120
		goto XL1;
3121
	    }
3122
	    ADVANCE_LEXER;
3123
	    {
3124
 (XI708) = OPT_bitf_overflow ; 
3125
	    }
3126
	    XR506 (&XI377);
3127
	    if ((CURRENT_TERMINAL) == 354) {
3128
		RESTORE_LEXER;
3129
		goto XL1;
3130
	    }
3131
	    {
3132
 
3133
    set_option ( (XI708), (XI377) ) ;
3134
	    }
3135
	    {
3136
 (XI397) = lex_hash_Hpragma ; 
3137
	    }
3138
	}
3139
	break;
3140
      case 183:
3141
	{
3142
	    int XI708;
3143
	    unsigned XI377;
3144
 
3145
	    ADVANCE_LEXER;
3146
	    switch (CURRENT_TERMINAL) {
3147
	      case 227:
3148
		break;
3149
	      default:
3150
		goto XL1;
3151
	    }
3152
	    ADVANCE_LEXER;
3153
	    switch (CURRENT_TERMINAL) {
3154
	      case 117:
3155
		break;
3156
	      default:
3157
		goto XL1;
3158
	    }
3159
	    ADVANCE_LEXER;
3160
	    {
3161
 (XI708) = OPT_func_block ; 
3162
	    }
3163
	    XR506 (&XI377);
3164
	    if ((CURRENT_TERMINAL) == 354) {
3165
		RESTORE_LEXER;
3166
		goto XL1;
3167
	    }
3168
	    {
3169
 
3170
    set_option ( (XI708), (XI377) ) ;
3171
	    }
3172
	    {
3173
 (XI397) = lex_hash_Hpragma ; 
3174
	    }
3175
	}
3176
	break;
3177
      case 184:
3178
	{
3179
	    IDENTIFIER XI375;
3180
	    TYPE XI823;
3181
 
3182
	    ADVANCE_LEXER;
3183
	    {
3184
 
3185
    int t = crt_lex_token ;
3186
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
3187
	crt_lex_token = lex_identifier ;
3188
    }
3189
	    }
3190
	    {
3191
 
3192
    crt_templ_qualifier = 0 ;
3193
	    }
3194
	    {
3195
		switch (CURRENT_TERMINAL) {
3196
		  case 1:
3197
		    {
3198
			{
3199
 
3200
    XI375 = crt_token->pp_data.id.use ;
3201
			}
3202
			ADVANCE_LEXER;
3203
		    }
3204
		    break;
3205
		  case 3:
3206
		    {
3207
			{
3208
 
3209
    XI375 = crt_token->pp_data.id.use ;
3210
			}
3211
			ADVANCE_LEXER;
3212
		    }
3213
		    break;
3214
		  case 4:
3215
		    {
3216
			{
3217
 
3218
    XI375 = crt_token->pp_data.id.use ;
3219
			}
3220
			ADVANCE_LEXER;
3221
		    }
3222
		    break;
3223
		  case 2:
3224
		    {
3225
			{
3226
 
3227
    XI375 = crt_token->pp_data.id.use ;
3228
			}
3229
			ADVANCE_LEXER;
3230
		    }
3231
		    break;
3232
		  default:
3233
		    goto XL1;
3234
		}
3235
	    }
3236
	    {
3237
 (XI823) = type_bottom ; 
3238
	    }
3239
	    {
3240
 
3241
    typedef_special ( (XI375), (XI823) ) ;
3242
	    }
3243
	    {
3244
 (XI397) = lex_hash_Hpragma ; 
3245
	    }
3246
	}
3247
	break;
3248
      case 128:
3249
	{
3250
	    int XI708;
3251
	    unsigned XI377;
3252
 
3253
	    ADVANCE_LEXER;
3254
	    switch (CURRENT_TERMINAL) {
3255
	      case 171:
3256
		break;
3257
	      default:
3258
		goto XL1;
3259
	    }
3260
	    ADVANCE_LEXER;
3261
	    {
3262
 (XI708) = OPT_wall ; 
3263
	    }
3264
	    XR506 (&XI377);
3265
	    if ((CURRENT_TERMINAL) == 354) {
3266
		RESTORE_LEXER;
3267
		goto XL1;
3268
	    }
3269
	    {
3270
 
3271
    set_option ( (XI708), (XI377) ) ;
3272
	    }
3273
	    {
3274
 (XI397) = lex_hash_Hpragma ; 
3275
	    }
3276
	}
3277
	break;
3278
      case 186:
3279
	{
3280
	    ADVANCE_LEXER;
3281
	    XR815 ();
3282
	    if ((CURRENT_TERMINAL) == 354) {
3283
		RESTORE_LEXER;
3284
		goto XL1;
3285
	    }
3286
	    {
3287
 (XI397) = lex_hash_Hpragma ; 
3288
	    }
3289
	}
3290
	break;
3291
      case 190:
3292
	{
3293
	    ADVANCE_LEXER;
3294
	    XR816 ();
3295
	    if ((CURRENT_TERMINAL) == 354) {
3296
		RESTORE_LEXER;
3297
		goto XL1;
3298
	    }
3299
	    {
3300
 (XI397) = lex_hash_Hpragma ; 
3301
	    }
3302
	}
3303
	break;
3304
      case 191:
3305
	{
3306
	    ADVANCE_LEXER;
3307
	    XR801 ();
3308
	    if ((CURRENT_TERMINAL) == 354) {
3309
		RESTORE_LEXER;
3310
		goto XL1;
3311
	    }
3312
	    {
3313
 (XI397) = lex_hash_Hpragma ; 
3314
	    }
3315
	}
3316
	break;
3317
      case 192:
3318
	{
3319
	    IDENTIFIER XI375;
3320
 
3321
	    ADVANCE_LEXER;
3322
	    switch (CURRENT_TERMINAL) {
3323
	      case 282:
3324
		break;
3325
	      default:
3326
		goto XL1;
3327
	    }
3328
	    ADVANCE_LEXER;
3329
	    {
3330
 
3331
    int t = crt_lex_token ;
3332
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
3333
	crt_lex_token = lex_identifier ;
3334
    }
3335
	    }
3336
	    {
3337
		switch (CURRENT_TERMINAL) {
3338
		  case 1:
3339
		    {
3340
			{
3341
 
3342
    XI375 = crt_token->pp_data.id.use ;
3343
			}
3344
			ADVANCE_LEXER;
3345
		    }
3346
		    break;
3347
		  case 3:
3348
		    {
3349
			{
3350
 
3351
    XI375 = crt_token->pp_data.id.use ;
3352
			}
3353
			ADVANCE_LEXER;
3354
		    }
3355
		    break;
3356
		  case 4:
3357
		    {
3358
			{
3359
 
3360
    XI375 = crt_token->pp_data.id.use ;
3361
			}
3362
			ADVANCE_LEXER;
3363
		    }
3364
		    break;
3365
		  case 2:
3366
		    {
3367
			{
3368
 
3369
    XI375 = crt_token->pp_data.id.use ;
3370
			}
3371
			ADVANCE_LEXER;
3372
		    }
3373
		    break;
3374
		  default:
3375
		    goto XL1;
3376
		}
3377
	    }
3378
	    {
3379
 
3380
    compute_promote_type ( (XI375) ) ;
3381
	    }
3382
	    {
3383
 (XI397) = lex_hash_Hpragma ; 
3384
	    }
3385
	}
3386
	break;
3387
      case 193:
3388
	{
3389
	    ADVANCE_LEXER;
3390
	    XR797 ();
3391
	    if ((CURRENT_TERMINAL) == 354) {
3392
		RESTORE_LEXER;
3393
		goto XL1;
3394
	    }
3395
	    {
3396
 (XI397) = lex_hash_Hpragma ; 
3397
	    }
3398
	}
3399
	break;
3400
      case 98:
3401
	{
3402
	    ADVANCE_LEXER;
3403
	    XR800 ();
3404
	    if ((CURRENT_TERMINAL) == 354) {
3405
		RESTORE_LEXER;
3406
		goto XL1;
3407
	    }
3408
	    {
3409
 (XI397) = lex_hash_Hpragma ; 
3410
	    }
3411
	}
3412
	break;
3413
      case 194:
3414
	{
3415
	    ADVANCE_LEXER;
3416
	    XR818 ();
3417
	    if ((CURRENT_TERMINAL) == 354) {
3418
		RESTORE_LEXER;
3419
		goto XL1;
3420
	    }
3421
	    {
3422
 (XI397) = lex_hash_Hpragma ; 
3423
	    }
3424
	}
3425
	break;
3426
      case 196:
3427
	{
3428
	    ADVANCE_LEXER;
3429
	    switch (CURRENT_TERMINAL) {
3430
	      case 183:
3431
		break;
3432
	      default:
3433
		goto XL1;
3434
	    }
3435
	    ADVANCE_LEXER;
3436
	    XR783 ();
3437
	    if ((CURRENT_TERMINAL) == 354) {
3438
		RESTORE_LEXER;
3439
		goto XL1;
3440
	    }
3441
	    {
3442
 (XI397) = lex_hash_Hpragma ; 
3443
	    }
3444
	}
3445
	break;
3446
      case 197:
3447
	{
3448
	    int XI473;
3449
 
3450
	    ADVANCE_LEXER;
3451
	    {
3452
 (XI473) = lex_define ; 
3453
	    }
3454
	    {
3455
 
3456
    int t = crt_lex_token ;
3457
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
3458
	if ( t != lex_tag_Hcap && !predict_operator () ) {
3459
	    crt_lex_token = lex_identifier ;
3460
	}
3461
    }
3462
	    }
3463
	    XR478 (&XI473);
3464
	    if ((CURRENT_TERMINAL) == 354) {
3465
		RESTORE_LEXER;
3466
		goto XL1;
3467
	    }
3468
	    {
3469
 (XI397) = lex_hash_Hpragma ; 
3470
	    }
3471
	}
3472
	break;
3473
      case 202:
3474
	{
3475
	    ADVANCE_LEXER;
3476
	    XR798 ();
3477
	    if ((CURRENT_TERMINAL) == 354) {
3478
		RESTORE_LEXER;
3479
		goto XL1;
3480
	    }
3481
	    {
3482
 (XI397) = lex_hash_Hpragma ; 
3483
	    }
3484
	}
3485
	break;
3486
      case 203:
3487
	{
3488
	    IDENTIFIER XI766;
3489
	    IDENTIFIER XI375;
3490
 
3491
	    ADVANCE_LEXER;
3492
	    {
3493
 
3494
    int t = crt_lex_token ;
3495
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
3496
	crt_lex_token = lex_identifier ;
3497
    }
3498
	    }
3499
	    {
3500
		switch (CURRENT_TERMINAL) {
3501
		  case 1:
3502
		    {
3503
			{
3504
 
3505
    XI766 = crt_token->pp_data.id.use ;
3506
			}
3507
			ADVANCE_LEXER;
3508
		    }
3509
		    break;
3510
		  case 3:
3511
		    {
3512
			{
3513
 
3514
    XI766 = crt_token->pp_data.id.use ;
3515
			}
3516
			ADVANCE_LEXER;
3517
		    }
3518
		    break;
3519
		  case 4:
3520
		    {
3521
			{
3522
 
3523
    XI766 = crt_token->pp_data.id.use ;
3524
			}
3525
			ADVANCE_LEXER;
3526
		    }
3527
		    break;
3528
		  case 2:
3529
		    {
3530
			{
3531
 
3532
    XI766 = crt_token->pp_data.id.use ;
3533
			}
3534
			ADVANCE_LEXER;
3535
		    }
3536
		    break;
3537
		  default:
3538
		    goto XL1;
3539
		}
3540
	    }
3541
	    switch (CURRENT_TERMINAL) {
3542
	      case 324:
3543
		break;
3544
	      default:
3545
		goto XL1;
3546
	    }
3547
	    ADVANCE_LEXER;
3548
	    switch (CURRENT_TERMINAL) {
3549
	      case 212:
3550
		break;
3551
	      default:
3552
		goto XL1;
3553
	    }
3554
	    ADVANCE_LEXER;
3555
	    {
3556
 
3557
    int t = crt_lex_token ;
3558
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
3559
	crt_lex_token = lex_identifier ;
3560
    }
3561
	    }
3562
	    {
3563
		switch (CURRENT_TERMINAL) {
3564
		  case 1:
3565
		    {
3566
			{
3567
 
3568
    XI375 = crt_token->pp_data.id.use ;
3569
			}
3570
			ADVANCE_LEXER;
3571
		    }
3572
		    break;
3573
		  case 3:
3574
		    {
3575
			{
3576
 
3577
    XI375 = crt_token->pp_data.id.use ;
3578
			}
3579
			ADVANCE_LEXER;
3580
		    }
3581
		    break;
3582
		  case 4:
3583
		    {
3584
			{
3585
 
3586
    XI375 = crt_token->pp_data.id.use ;
3587
			}
3588
			ADVANCE_LEXER;
3589
		    }
3590
		    break;
3591
		  case 2:
3592
		    {
3593
			{
3594
 
3595
    XI375 = crt_token->pp_data.id.use ;
3596
			}
3597
			ADVANCE_LEXER;
3598
		    }
3599
		    break;
3600
		  default:
3601
		    goto XL1;
3602
		}
3603
	    }
3604
	    {
3605
 
3606
    directory_option ( (XI766), (XI375) ) ;
3607
	    }
3608
	    {
3609
 (XI397) = lex_hash_Hpragma ; 
3610
	    }
3611
	}
3612
	break;
3613
      case 205:
3614
	{
3615
	    ADVANCE_LEXER;
3616
	    XR826 (&XI397);
3617
	    if ((CURRENT_TERMINAL) == 354) {
3618
		RESTORE_LEXER;
3619
		goto XL1;
3620
	    }
3621
	}
3622
	break;
3623
      case 206:
3624
	{
3625
	    int XI708;
3626
	    unsigned XI377;
3627
 
3628
	    ADVANCE_LEXER;
3629
	    switch (CURRENT_TERMINAL) {
3630
	      case 178:
3631
		break;
3632
	      default:
3633
		goto XL1;
3634
	    }
3635
	    ADVANCE_LEXER;
3636
	    switch (CURRENT_TERMINAL) {
3637
	      case 230:
3638
		break;
3639
	      default:
3640
		goto XL1;
3641
	    }
3642
	    ADVANCE_LEXER;
3643
	    {
3644
 (XI708) = OPT_dollar_ident ; 
3645
	    }
3646
	    XR506 (&XI377);
3647
	    if ((CURRENT_TERMINAL) == 354) {
3648
		RESTORE_LEXER;
3649
		goto XL1;
3650
	    }
3651
	    {
3652
 
3653
    set_option ( (XI708), (XI377) ) ;
3654
	    }
3655
	    {
3656
 (XI397) = lex_hash_Hpragma ; 
3657
	    }
3658
	}
3659
	break;
3660
      case 210:
3661
	{
3662
	    ADVANCE_LEXER;
3663
	    {
3664
 
3665
    end_option ( 1 ) ;
3666
	    }
3667
	    {
3668
 (XI397) = lex_hash_Hpragma ; 
3669
	    }
3670
	}
3671
	break;
3672
      case 104:
3673
	{
3674
	    int XI708;
3675
	    unsigned XI377;
3676
 
3677
	    ADVANCE_LEXER;
3678
	    switch (CURRENT_TERMINAL) {
3679
	      case 119:
3680
		break;
3681
	      default:
3682
		goto XL1;
3683
	    }
3684
	    ADVANCE_LEXER;
3685
	    switch (CURRENT_TERMINAL) {
3686
	      case 174:
3687
		break;
3688
	      default:
3689
		goto XL1;
3690
	    }
3691
	    ADVANCE_LEXER;
3692
	    {
3693
 (XI708) = OPT_enum_switch ; 
3694
	    }
3695
	    XR505 (&XI377);
3696
	    if ((CURRENT_TERMINAL) == 354) {
3697
		RESTORE_LEXER;
3698
		goto XL1;
3699
	    }
3700
	    {
3701
 
3702
    set_option ( (XI708), (XI377) ) ;
3703
	    }
3704
	    {
3705
 (XI397) = lex_hash_Hpragma ; 
3706
	    }
3707
	}
3708
	break;
3709
      case 215:
3710
	{
3711
	    EXP XI409;
3712
	    EXP XI444;
3713
 
3714
	    ADVANCE_LEXER;
3715
	    {
3716
		switch (CURRENT_TERMINAL) {
3717
		  case 17:
3718
		    {
3719
			{
3720
 
3721
    XI409 = crt_token->pp_data.exp ;
3722
			}
3723
			ADVANCE_LEXER;
3724
		    }
3725
		    break;
3726
		  case 18:
3727
		    {
3728
			{
3729
 
3730
    XI409 = crt_token->pp_data.exp ;
3731
			}
3732
			ADVANCE_LEXER;
3733
		    }
3734
		    break;
3735
		  default:
3736
		    goto XL1;
3737
		}
3738
	    }
3739
	    XR753 (&XI444);
3740
	    if ((CURRENT_TERMINAL) == 354) {
3741
		RESTORE_LEXER;
3742
		goto XL1;
3743
	    }
3744
	    {
3745
 
3746
    set_escape ( (XI409), (XI444) ) ;
3747
	    }
3748
	    {
3749
 (XI397) = lex_hash_Hpragma ; 
3750
	    }
3751
	}
3752
	break;
3753
      case 216:
3754
	{
3755
	    ADVANCE_LEXER;
3756
	    {
3757
 (XI397) = lex_exhaustive ; 
3758
	    }
3759
	}
3760
	break;
3761
      case 133:
3762
	{
3763
	    unsigned XI445;
3764
	    unsigned XI377;
3765
	    int XI708;
3766
	    int XI714;
3767
 
3768
	    ADVANCE_LEXER;
3769
	    switch (CURRENT_TERMINAL) {
3770
	      case 185:
3771
		break;
3772
	      default:
3773
		goto XL1;
3774
	    }
3775
	    ADVANCE_LEXER;
3776
	    XR741 (&XI445);
3777
	    XR506 (&XI377);
3778
	    if ((CURRENT_TERMINAL) == 354) {
3779
		RESTORE_LEXER;
3780
		goto XL1;
3781
	    }
3782
	    {
3783
 (XI708) = OPT_cast_explicit ; 
3784
	    }
3785
	    {
3786
 (XI714) = OPT_VAL_cast_explicit ; 
3787
	    }
3788
	    {
3789
 
3790
    set_option ( (XI708), (XI377) ) ;
3791
	    }
3792
	    {
3793
 
3794
    set_value ( (XI714), NULL_exp, ( unsigned long ) (XI445) ) ;
3795
	    }
3796
	    {
3797
 (XI397) = lex_hash_Hpragma ; 
3798
	    }
3799
	}
3800
	break;
3801
      case 220:
3802
	{
3803
	    ADVANCE_LEXER;
3804
	    XR799 ();
3805
	    if ((CURRENT_TERMINAL) == 354) {
3806
		RESTORE_LEXER;
3807
		goto XL1;
3808
	    }
3809
	    {
3810
 (XI397) = lex_hash_Hpragma ; 
3811
	    }
3812
	}
3813
	break;
3814
      case 221:
3815
	{
3816
	    int XI708;
3817
	    unsigned XI377;
3818
 
3819
	    ADVANCE_LEXER;
3820
	    XR785 (&XI708);
3821
	    XR506 (&XI377);
3822
	    if ((CURRENT_TERMINAL) == 354) {
3823
		RESTORE_LEXER;
3824
		goto XL1;
3825
	    }
3826
	    {
3827
 
3828
    set_option ( (XI708), (XI377) ) ;
3829
	    }
3830
	    {
3831
 (XI397) = lex_hash_Hpragma ; 
3832
	    }
3833
	}
3834
	break;
3835
      case 222:
3836
	{
3837
	    int XI708;
3838
	    unsigned XI377;
3839
 
3840
	    ADVANCE_LEXER;
3841
	    switch (CURRENT_TERMINAL) {
3842
	      case 248:
3843
		break;
3844
	      default:
3845
		goto XL1;
3846
	    }
3847
	    ADVANCE_LEXER;
3848
	    switch (CURRENT_TERMINAL) {
3849
	      case 96:
3850
		break;
3851
	      default:
3852
		goto XL1;
3853
	    }
3854
	    ADVANCE_LEXER;
3855
	    {
3856
 (XI708) = OPT_case_fall ; 
3857
	    }
3858
	    XR506 (&XI377);
3859
	    if ((CURRENT_TERMINAL) == 354) {
3860
		RESTORE_LEXER;
3861
		goto XL1;
3862
	    }
3863
	    {
3864
 
3865
    set_option ( (XI708), (XI377) ) ;
3866
	    }
3867
	    {
3868
 (XI397) = lex_hash_Hpragma ; 
3869
	    }
3870
	}
3871
	break;
3872
      case 107:
3873
	{
3874
	    int XI708;
3875
	    unsigned XI377;
3876
 
3877
	    ADVANCE_LEXER;
3878
	    switch (CURRENT_TERMINAL) {
3879
	      case 244:
3880
		break;
3881
	      default:
3882
		goto XL1;
3883
	    }
3884
	    ADVANCE_LEXER;
3885
	    switch (CURRENT_TERMINAL) {
3886
	      case 183:
3887
		break;
3888
	      default:
3889
		goto XL1;
3890
	    }
3891
	    ADVANCE_LEXER;
3892
	    {
3893
 (XI708) = OPT_for_scope ; 
3894
	    }
3895
	    XR505 (&XI377);
3896
	    if ((CURRENT_TERMINAL) == 354) {
3897
		RESTORE_LEXER;
3898
		goto XL1;
3899
	    }
3900
	    {
3901
 
3902
    set_option ( (XI708), (XI377) ) ;
3903
	    }
3904
	    {
3905
 (XI397) = lex_hash_Hpragma ; 
3906
	    }
3907
	}
3908
	break;
3909
      case 225:
3910
	{
3911
	    int XI708;
3912
	    unsigned XI377;
3913
 
3914
	    ADVANCE_LEXER;
3915
	    switch (CURRENT_TERMINAL) {
3916
	      case 104:
3917
		break;
3918
	      default:
3919
		goto XL1;
3920
	    }
3921
	    ADVANCE_LEXER;
3922
	    switch (CURRENT_TERMINAL) {
3923
	      case 196:
3924
		break;
3925
	      default:
3926
		goto XL1;
3927
	    }
3928
	    ADVANCE_LEXER;
3929
	    {
3930
 (XI708) = OPT_enum_decl ; 
3931
	    }
3932
	    XR506 (&XI377);
3933
	    if ((CURRENT_TERMINAL) == 354) {
3934
		RESTORE_LEXER;
3935
		goto XL1;
3936
	    }
3937
	    {
3938
 
3939
    set_option ( (XI708), (XI377) ) ;
3940
	    }
3941
	    {
3942
 (XI397) = lex_hash_Hpragma ; 
3943
	    }
3944
	}
3945
	break;
3946
      case 227:
3947
	{
3948
	    int XI708;
3949
	    unsigned XI377;
3950
 
3951
	    ADVANCE_LEXER;
3952
	    switch (CURRENT_TERMINAL) {
3953
	      case 275:
3954
		break;
3955
	      default:
3956
		goto XL1;
3957
	    }
3958
	    ADVANCE_LEXER;
3959
	    switch (CURRENT_TERMINAL) {
3960
	      case 178:
3961
		break;
3962
	      default:
3963
		goto XL1;
3964
	    }
3965
	    ADVANCE_LEXER;
3966
	    switch (CURRENT_TERMINAL) {
3967
	      case 275:
3968
		break;
3969
	      default:
3970
		goto XL1;
3971
	    }
3972
	    ADVANCE_LEXER;
3973
	    {
3974
 (XI708) = OPT_conv_ptr_func ; 
3975
	    }
3976
	    XR506 (&XI377);
3977
	    if ((CURRENT_TERMINAL) == 354) {
3978
		RESTORE_LEXER;
3979
		goto XL1;
3980
	    }
3981
	    {
3982
 
3983
    set_option ( (XI708), (XI377) ) ;
3984
	    }
3985
	    {
3986
 (XI397) = lex_hash_Hpragma ; 
3987
	    }
3988
	}
3989
	break;
3990
      case 230:
3991
	{
3992
	    int XI708;
3993
	    unsigned XI377;
3994
 
3995
	    ADVANCE_LEXER;
3996
	    XR786 (&XI708);
3997
	    XR506 (&XI377);
3998
	    if ((CURRENT_TERMINAL) == 354) {
3999
		RESTORE_LEXER;
4000
		goto XL1;
4001
	    }
4002
	    {
4003
 
4004
    set_option ( (XI708), (XI377) ) ;
4005
	    }
4006
	    {
4007
 (XI397) = lex_hash_Hpragma ; 
4008
	    }
4009
	}
4010
	break;
4011
      case 234:
4012
	{
4013
	    int XI708;
4014
	    unsigned XI377;
4015
 
4016
	    ADVANCE_LEXER;
4017
	    switch (CURRENT_TERMINAL) {
4018
	      case 118:
4019
		break;
4020
	      default:
4021
		goto XL1;
4022
	    }
4023
	    ADVANCE_LEXER;
4024
	    switch (CURRENT_TERMINAL) {
4025
	      case 44:
4026
		break;
4027
	      default:
4028
		goto XL1;
4029
	    }
4030
	    ADVANCE_LEXER;
4031
	    switch (CURRENT_TERMINAL) {
4032
	      case 121:
4033
		break;
4034
	      default:
4035
		goto XL1;
4036
	    }
4037
	    ADVANCE_LEXER;
4038
	    switch (CURRENT_TERMINAL) {
4039
	      case 44:
4040
		break;
4041
	      default:
4042
		goto XL1;
4043
	    }
4044
	    ADVANCE_LEXER;
4045
	    switch (CURRENT_TERMINAL) {
4046
	      case 104:
4047
		break;
4048
	      default:
4049
		goto XL1;
4050
	    }
4051
	    ADVANCE_LEXER;
4052
	    switch (CURRENT_TERMINAL) {
4053
	      case 306:
4054
		break;
4055
	      default:
4056
		goto XL1;
4057
	    }
4058
	    ADVANCE_LEXER;
4059
	    {
4060
 (XI708) = OPT_type_tag_ignore ; 
4061
	    }
4062
	    XR505 (&XI377);
4063
	    if ((CURRENT_TERMINAL) == 354) {
4064
		RESTORE_LEXER;
4065
		goto XL1;
4066
	    }
4067
	    {
4068
 
4069
    set_option ( (XI708), (XI377) ) ;
4070
	    }
4071
	    {
4072
 (XI397) = lex_hash_Hpragma ; 
4073
	    }
4074
	}
4075
	break;
4076
      case 236:
4077
	{
4078
	    ADVANCE_LEXER;
4079
	    XR802 ();
4080
	    if ((CURRENT_TERMINAL) == 354) {
4081
		RESTORE_LEXER;
4082
		goto XL1;
4083
	    }
4084
	    {
4085
 (XI397) = lex_hash_Hpragma ; 
4086
	    }
4087
	}
4088
	break;
4089
      case 239:
4090
	{
4091
	    int XI708;
4092
	    EXP XI377;
4093
 
4094
	    ADVANCE_LEXER;
4095
	    switch (CURRENT_TERMINAL) {
4096
	      case 201:
4097
		break;
4098
	      default:
4099
		goto XL1;
4100
	    }
4101
	    ADVANCE_LEXER;
4102
	    {
4103
 (XI708) = OPT_VAL_include_depth ; 
4104
	    }
4105
	    {
4106
		{
4107
		    switch (CURRENT_TERMINAL) {
4108
		      case 21:
4109
			{
4110
 
4111
    XI377 = crt_token->pp_data.exp ;
4112
			}
4113
			break;
4114
		      default:
4115
			goto XL1;
4116
		    }
4117
		    ADVANCE_LEXER;
4118
		}
4119
	    }
4120
	    {
4121
 
4122
    set_value ( (XI708), (XI377), ( unsigned long ) 0 ) ;
4123
	    }
4124
	    {
4125
 (XI397) = lex_hash_Hpragma ; 
4126
	    }
4127
	}
4128
	break;
4129
      case 241:
4130
	{
4131
	    int XI708;
4132
	    unsigned XI377;
4133
 
4134
	    ADVANCE_LEXER;
4135
	    XR788 (&XI708);
4136
	    XR506 (&XI377);
4137
	    if ((CURRENT_TERMINAL) == 354) {
4138
		RESTORE_LEXER;
4139
		goto XL1;
4140
	    }
4141
	    {
4142
 
4143
    set_option ( (XI708), (XI377) ) ;
4144
	    }
4145
	    {
4146
 (XI397) = lex_hash_Hpragma ; 
4147
	    }
4148
	}
4149
	break;
4150
      case 242:
4151
	{
4152
	    int XI708;
4153
	    unsigned XI377;
4154
 
4155
	    ADVANCE_LEXER;
4156
	    switch (CURRENT_TERMINAL) {
4157
	      case 312:
4158
		break;
4159
	      default:
4160
		goto XL1;
4161
	    }
4162
	    ADVANCE_LEXER;
4163
	    switch (CURRENT_TERMINAL) {
4164
	      case 178:
4165
		break;
4166
	      default:
4167
		goto XL1;
4168
	    }
4169
	    ADVANCE_LEXER;
4170
	    switch (CURRENT_TERMINAL) {
4171
	      case 267:
4172
		break;
4173
	      default:
4174
		goto XL1;
4175
	    }
4176
	    ADVANCE_LEXER;
4177
	    switch (CURRENT_TERMINAL) {
4178
	      case 312:
4179
		break;
4180
	      default:
4181
		goto XL1;
4182
	    }
4183
	    ADVANCE_LEXER;
4184
	    {
4185
 (XI708) = OPT_type_obj_incompl ; 
4186
	    }
4187
	    XR506 (&XI377);
4188
	    if ((CURRENT_TERMINAL) == 354) {
4189
		RESTORE_LEXER;
4190
		goto XL1;
4191
	    }
4192
	    {
4193
 
4194
    set_option ( (XI708), (XI377) ) ;
4195
	    }
4196
	    {
4197
 (XI397) = lex_hash_Hpragma ; 
4198
	    }
4199
	}
4200
	break;
4201
      case 243:
4202
	{
4203
	    int XI708;
4204
	    unsigned XI377;
4205
 
4206
	    ADVANCE_LEXER;
4207
	    XR789 (&XI708);
4208
	    XR506 (&XI377);
4209
	    if ((CURRENT_TERMINAL) == 354) {
4210
		RESTORE_LEXER;
4211
		goto XL1;
4212
	    }
4213
	    {
4214
 
4215
    set_option ( (XI708), (XI377) ) ;
4216
	    }
4217
	    {
4218
 (XI397) = lex_hash_Hpragma ; 
4219
	    }
4220
	}
4221
	break;
4222
      case 244:
4223
	{
4224
	    ADVANCE_LEXER;
4225
	    XR817 ();
4226
	    if ((CURRENT_TERMINAL) == 354) {
4227
		RESTORE_LEXER;
4228
		goto XL1;
4229
	    }
4230
	    {
4231
 (XI397) = lex_hash_Hpragma ; 
4232
	    }
4233
	}
4234
	break;
4235
      case 137:
4236
	{
4237
	    unsigned XI377;
4238
	    int XI708;
4239
 
4240
	    ADVANCE_LEXER;
4241
	    switch (CURRENT_TERMINAL) {
4242
	      case 253:
4243
		break;
4244
	      default:
4245
		goto XL1;
4246
	    }
4247
	    ADVANCE_LEXER;
4248
	    XR721 (&XI377);
4249
	    if ((CURRENT_TERMINAL) == 354) {
4250
		RESTORE_LEXER;
4251
		goto XL1;
4252
	    }
4253
	    {
4254
 (XI708) = OPT_inline_internal ; 
4255
	    }
4256
	    {
4257
 
4258
    set_option ( (XI708), (XI377) ) ;
4259
	    }
4260
	    {
4261
 (XI397) = lex_hash_Hpragma ; 
4262
	    }
4263
	}
4264
	break;
4265
      case 245:
4266
	{
4267
	    ADVANCE_LEXER;
4268
	    XR819 ();
4269
	    if ((CURRENT_TERMINAL) == 354) {
4270
		RESTORE_LEXER;
4271
		goto XL1;
4272
	    }
4273
	    {
4274
 (XI397) = lex_hash_Hpragma ; 
4275
	    }
4276
	}
4277
	break;
4278
      case 246:
4279
	{
4280
	    int XI473;
4281
 
4282
	    ADVANCE_LEXER;
4283
	    {
4284
 (XI473) = crt_interface ; 
4285
	    }
4286
	    {
4287
 
4288
    int t = crt_lex_token ;
4289
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
4290
	if ( t != lex_tag_Hcap && !predict_operator () ) {
4291
	    crt_lex_token = lex_identifier ;
4292
	}
4293
    }
4294
	    }
4295
	    XR478 (&XI473);
4296
	    if ((CURRENT_TERMINAL) == 354) {
4297
		RESTORE_LEXER;
4298
		goto XL1;
4299
	    }
4300
	    {
4301
 (XI397) = lex_hash_Hpragma ; 
4302
	    }
4303
	}
4304
	break;
4305
      case 253:
4306
	{
4307
	    unsigned XI377;
4308
	    unsigned XI473;
4309
	    int XI708;
4310
	    int XI714;
4311
 
4312
	    ADVANCE_LEXER;
4313
	    switch (CURRENT_TERMINAL) {
4314
	      case 293:
4315
		break;
4316
	      default:
4317
		goto XL1;
4318
	    }
4319
	    ADVANCE_LEXER;
4320
	    switch (CURRENT_TERMINAL) {
4321
	      case 41:
4322
		break;
4323
	      default:
4324
		goto XL1;
4325
	    }
4326
	    ADVANCE_LEXER;
4327
	    XR722 (&XI377, &XI473);
4328
	    if ((CURRENT_TERMINAL) == 354) {
4329
		RESTORE_LEXER;
4330
		goto XL1;
4331
	    }
4332
	    {
4333
 (XI708) = OPT_link_resolve ; 
4334
	    }
4335
	    {
4336
 (XI714) = OPT_link_internal ; 
4337
	    }
4338
	    {
4339
 
4340
    set_option ( (XI708), (XI377) ) ;
4341
	    }
4342
	    {
4343
 
4344
    set_option ( (XI714), (XI473) ) ;
4345
	    }
4346
	    {
4347
 (XI397) = lex_hash_Hpragma ; 
4348
	    }
4349
	}
4350
	break;
4351
      case 255:
4352
	{
4353
	    int XI708;
4354
	    unsigned XI377;
4355
 
4356
	    ADVANCE_LEXER;
4357
	    switch (CURRENT_TERMINAL) {
4358
	      case 312:
4359
		break;
4360
	      default:
4361
		goto XL1;
4362
	    }
4363
	    ADVANCE_LEXER;
4364
	    {
4365
 (XI708) = OPT_longlong ; 
4366
	    }
4367
	    XR506 (&XI377);
4368
	    if ((CURRENT_TERMINAL) == 354) {
4369
		RESTORE_LEXER;
4370
		goto XL1;
4371
	    }
4372
	    {
4373
 
4374
    set_option ( (XI708), (XI377) ) ;
4375
	    }
4376
	    {
4377
 (XI397) = lex_hash_Hpragma ; 
4378
	    }
4379
	}
4380
	break;
4381
      case 263:
4382
	{
4383
	    int XI708;
4384
	    unsigned XI377;
4385
 
4386
	    ADVANCE_LEXER;
4387
	    switch (CURRENT_TERMINAL) {
4388
	      case 189:
4389
		break;
4390
	      default:
4391
		goto XL1;
4392
	    }
4393
	    ADVANCE_LEXER;
4394
	    switch (CURRENT_TERMINAL) {
4395
	      case 174:
4396
		break;
4397
	      default:
4398
		goto XL1;
4399
	    }
4400
	    ADVANCE_LEXER;
4401
	    {
4402
 (XI708) = OPT_nest_comment ; 
4403
	    }
4404
	    XR505 (&XI377);
4405
	    if ((CURRENT_TERMINAL) == 354) {
4406
		RESTORE_LEXER;
4407
		goto XL1;
4408
	    }
4409
	    {
4410
 
4411
    set_option ( (XI708), (XI377) ) ;
4412
	    }
4413
	    {
4414
 (XI397) = lex_hash_Hpragma ; 
4415
	    }
4416
	}
4417
	break;
4418
      case 265:
4419
	{
4420
	    int XI708;
4421
	    unsigned XI377;
4422
 
4423
	    ADVANCE_LEXER;
4424
	    XR790 (&XI708);
4425
	    XR506 (&XI377);
4426
	    if ((CURRENT_TERMINAL) == 354) {
4427
		RESTORE_LEXER;
4428
		goto XL1;
4429
	    }
4430
	    {
4431
 
4432
    set_option ( (XI708), (XI377) ) ;
4433
	    }
4434
	    {
4435
 (XI397) = lex_hash_Hpragma ; 
4436
	    }
4437
	}
4438
	break;
4439
      case 266:
4440
	{
4441
	    int XI473;
4442
 
4443
	    ADVANCE_LEXER;
4444
	    {
4445
 (XI473) = lex_no_Hdef ; 
4446
	    }
4447
	    {
4448
 
4449
    int t = crt_lex_token ;
4450
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
4451
	if ( t != lex_tag_Hcap && !predict_operator () ) {
4452
	    crt_lex_token = lex_identifier ;
4453
	}
4454
    }
4455
	    }
4456
	    XR478 (&XI473);
4457
	    if ((CURRENT_TERMINAL) == 354) {
4458
		RESTORE_LEXER;
4459
		goto XL1;
4460
	    }
4461
	    {
4462
 (XI397) = lex_hash_Hpragma ; 
4463
	    }
4464
	}
4465
	break;
4466
      case 141:
4467
	{
4468
	    int XI708;
4469
	    unsigned XI377;
4470
 
4471
	    ADVANCE_LEXER;
4472
	    switch (CURRENT_TERMINAL) {
4473
	      case 278:
4474
		break;
4475
	      default:
4476
		goto XL1;
4477
	    }
4478
	    ADVANCE_LEXER;
4479
	    switch (CURRENT_TERMINAL) {
4480
	      case 174:
4481
		break;
4482
	      default:
4483
		goto XL1;
4484
	    }
4485
	    ADVANCE_LEXER;
4486
	    {
4487
 (XI708) = OPT_paren ; 
4488
	    }
4489
	    XR505 (&XI377);
4490
	    if ((CURRENT_TERMINAL) == 354) {
4491
		RESTORE_LEXER;
4492
		goto XL1;
4493
	    }
4494
	    {
4495
 
4496
    set_option ( (XI708), (XI377) ) ;
4497
	    }
4498
	    {
4499
 (XI397) = lex_hash_Hpragma ; 
4500
	    }
4501
	}
4502
	break;
4503
      case 272:
4504
	{
4505
	    ADVANCE_LEXER;
4506
	    XR809 ();
4507
	    if ((CURRENT_TERMINAL) == 354) {
4508
		RESTORE_LEXER;
4509
		goto XL1;
4510
	    }
4511
	    {
4512
 (XI397) = lex_hash_Hpragma ; 
4513
	    }
4514
	}
4515
	break;
4516
      case 274:
4517
	{
4518
	    int XI708;
4519
	    unsigned XI377;
4520
 
4521
	    ADVANCE_LEXER;
4522
	    switch (CURRENT_TERMINAL) {
4523
	      case 293:
4524
		break;
4525
	      default:
4526
		goto XL1;
4527
	    }
4528
	    ADVANCE_LEXER;
4529
	    {
4530
 (XI708) = OPT_overload_res ; 
4531
	    }
4532
	    XR506 (&XI377);
4533
	    if ((CURRENT_TERMINAL) == 354) {
4534
		RESTORE_LEXER;
4535
		goto XL1;
4536
	    }
4537
	    {
4538
 
4539
    set_option ( (XI708), (XI377) ) ;
4540
	    }
4541
	    {
4542
 (XI397) = lex_hash_Hpragma ; 
4543
	    }
4544
	}
4545
	break;
4546
      case 275:
4547
	{
4548
	    int XI708;
4549
	    unsigned XI377;
4550
 
4551
	    ADVANCE_LEXER;
4552
	    switch (CURRENT_TERMINAL) {
4553
	      case 141:
4554
		break;
4555
	      default:
4556
		goto XL1;
4557
	    }
4558
	    ADVANCE_LEXER;
4559
	    switch (CURRENT_TERMINAL) {
4560
	      case 174:
4561
		break;
4562
	      default:
4563
		goto XL1;
4564
	    }
4565
	    ADVANCE_LEXER;
4566
	    {
4567
 (XI708) = OPT_ptr_operator ; 
4568
	    }
4569
	    XR505 (&XI377);
4570
	    if ((CURRENT_TERMINAL) == 354) {
4571
		RESTORE_LEXER;
4572
		goto XL1;
4573
	    }
4574
	    {
4575
 
4576
    set_option ( (XI708), (XI377) ) ;
4577
	    }
4578
	    {
4579
 (XI397) = lex_hash_Hpragma ; 
4580
	    }
4581
	}
4582
	break;
4583
      case 276:
4584
	{
4585
	    int XI409;
4586
 
4587
	    ADVANCE_LEXER;
4588
	    {
4589
 
4590
    rescan_pragma ( lex_unknown ) ;
4591
    RESCAN_LEXER ;
4592
	    }
4593
	    {
4594
 (XI409) = lex_postpone ; 
4595
	    }
4596
	    XR495 (XI409);
4597
	    if ((CURRENT_TERMINAL) == 354) {
4598
		RESTORE_LEXER;
4599
		goto XL1;
4600
	    }
4601
	    {
4602
 (XI397) = lex_hash_Hpragma ; 
4603
	    }
4604
	}
4605
	break;
4606
      case 279:
4607
	{
4608
	    ADVANCE_LEXER;
4609
	    XR810 ();
4610
	    if ((CURRENT_TERMINAL) == 354) {
4611
		RESTORE_LEXER;
4612
		goto XL1;
4613
	    }
4614
	    {
4615
 (XI397) = lex_hash_Hpragma ; 
4616
	    }
4617
	}
4618
	break;
4619
      case 283:
4620
	{
4621
	    TYPE XI824;
4622
	    TYPE XI448;
4623
 
4624
	    ADVANCE_LEXER;
4625
	    {
4626
 
4627
    rescan_pragma ( lex_unknown ) ;
4628
    RESCAN_LEXER ;
4629
	    }
4630
	    {
4631
 
4632
    (XI824) = type_error ;
4633
    parse_tok_type ( &(XI824) ) ;
4634
    object_type ( (XI824), null_tag ) ;
4635
	    }
4636
	    switch (CURRENT_TERMINAL) {
4637
	      case 41:
4638
		break;
4639
	      default:
4640
		goto XL1;
4641
	    }
4642
	    ADVANCE_LEXER;
4643
	    {
4644
 
4645
    (XI448) = type_error ;
4646
    parse_tok_type ( &(XI448) ) ;
4647
    object_type ( (XI448), null_tag ) ;
4648
	    }
4649
	    {
4650
 
4651
    set_promote_type ( (XI824), (XI448), ntype_ellipsis ) ;
4652
	    }
4653
	    {
4654
 (XI397) = lex_hash_Hpragma ; 
4655
	    }
4656
	}
4657
	break;
4658
      case 284:
4659
	{
4660
	    int XI708;
4661
	    unsigned XI377;
4662
 
4663
	    ADVANCE_LEXER;
4664
	    XR791 (&XI708);
4665
	    XR506 (&XI377);
4666
	    if ((CURRENT_TERMINAL) == 354) {
4667
		RESTORE_LEXER;
4668
		goto XL1;
4669
	    }
4670
	    {
4671
 
4672
    set_option ( (XI708), (XI377) ) ;
4673
	    }
4674
	    {
4675
 (XI397) = lex_hash_Hpragma ; 
4676
	    }
4677
	}
4678
	break;
4679
      case 290:
4680
	{
4681
	    int XI473;
4682
 
4683
	    ADVANCE_LEXER;
4684
	    {
4685
 (XI473) = lex_ignore ; 
4686
	    }
4687
	    {
4688
 
4689
    int t = crt_lex_token ;
4690
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
4691
	if ( t != lex_tag_Hcap && !predict_operator () ) {
4692
	    crt_lex_token = lex_identifier ;
4693
	}
4694
    }
4695
	    }
4696
	    XR478 (&XI473);
4697
	    if ((CURRENT_TERMINAL) == 354) {
4698
		RESTORE_LEXER;
4699
		goto XL1;
4700
	    }
4701
	    {
4702
 (XI397) = lex_hash_Hpragma ; 
4703
	    }
4704
	}
4705
	break;
4706
      case 294:
4707
	{
4708
	    int XI708;
4709
	    unsigned XI377;
4710
 
4711
	    ADVANCE_LEXER;
4712
	    switch (CURRENT_TERMINAL) {
4713
	      case 311:
4714
		break;
4715
	      default:
4716
		goto XL1;
4717
	    }
4718
	    ADVANCE_LEXER;
4719
	    switch (CURRENT_TERMINAL) {
4720
	      case 178:
4721
		break;
4722
	      default:
4723
		goto XL1;
4724
	    }
4725
	    ADVANCE_LEXER;
4726
	    switch (CURRENT_TERMINAL) {
4727
	      case 98:
4728
		break;
4729
	      default:
4730
		goto XL1;
4731
	    }
4732
	    ADVANCE_LEXER;
4733
	    {
4734
 (XI708) = OPT_token_const ; 
4735
	    }
4736
	    XR506 (&XI377);
4737
	    if ((CURRENT_TERMINAL) == 354) {
4738
		RESTORE_LEXER;
4739
		goto XL1;
4740
	    }
4741
	    {
4742
 
4743
    set_option ( (XI708), (XI377) ) ;
4744
	    }
4745
	    {
4746
 (XI397) = lex_hash_Hpragma ; 
4747
	    }
4748
	}
4749
	break;
4750
      case 77:
4751
	{
4752
	    ADVANCE_LEXER;
4753
	    {
4754
 (XI397) = lex_hash_Hpragma ; 
4755
	    }
4756
	}
4757
	break;
4758
      case 297:
4759
	{
4760
	    ADVANCE_LEXER;
4761
	    XR827 (&XI397);
4762
	    if ((CURRENT_TERMINAL) == 354) {
4763
		RESTORE_LEXER;
4764
		goto XL1;
4765
	    }
4766
	}
4767
	break;
4768
      case 305:
4769
	{
4770
	    ADVANCE_LEXER;
4771
	    switch (CURRENT_TERMINAL) {
4772
	      case 117:
4773
		break;
4774
	      default:
4775
		goto XL1;
4776
	    }
4777
	    ADVANCE_LEXER;
4778
	    {
4779
 
4780
    rescan_pragma ( lex_unknown ) ;
4781
    RESCAN_LEXER ;
4782
	    }
4783
	    XR497 ();
4784
	    if ((CURRENT_TERMINAL) == 354) {
4785
		RESTORE_LEXER;
4786
		goto XL1;
4787
	    }
4788
	    {
4789
 (XI397) = lex_hash_Hpragma ; 
4790
	    }
4791
	}
4792
	break;
4793
      case 309:
4794
	{
4795
	    int XI708;
4796
	    unsigned XI377;
4797
 
4798
	    ADVANCE_LEXER;
4799
	    switch (CURRENT_TERMINAL) {
4800
	      case 169:
4801
		break;
4802
	      default:
4803
		goto XL1;
4804
	    }
4805
	    ADVANCE_LEXER;
4806
	    switch (CURRENT_TERMINAL) {
4807
	      case 202:
4808
		break;
4809
	      default:
4810
		goto XL1;
4811
	    }
4812
	    ADVANCE_LEXER;
4813
	    {
4814
 (XI708) = OPT_ppdir_text ; 
4815
	    }
4816
	    XR506 (&XI377);
4817
	    if ((CURRENT_TERMINAL) == 354) {
4818
		RESTORE_LEXER;
4819
		goto XL1;
4820
	    }
4821
	    {
4822
 
4823
    set_option ( (XI708), (XI377) ) ;
4824
	    }
4825
	    {
4826
 (XI397) = lex_hash_Hpragma ; 
4827
	    }
4828
	}
4829
	break;
4830
      case 148:
4831
	{
4832
	    int XI708;
4833
	    unsigned XI377;
4834
 
4835
	    ADVANCE_LEXER;
4836
	    switch (CURRENT_TERMINAL) {
4837
	      case 256:
4838
		break;
4839
	      default:
4840
		goto XL1;
4841
	    }
4842
	    ADVANCE_LEXER;
4843
	    {
4844
 (XI708) = OPT_this_lvalue ; 
4845
	    }
4846
	    XR506 (&XI377);
4847
	    if ((CURRENT_TERMINAL) == 354) {
4848
		RESTORE_LEXER;
4849
		goto XL1;
4850
	    }
4851
	    {
4852
 
4853
    set_option ( (XI708), (XI377) ) ;
4854
	    }
4855
	    {
4856
 (XI397) = lex_hash_Hpragma ; 
4857
	    }
4858
	}
4859
	break;
4860
      case 149:
4861
	{
4862
	    int XI708;
4863
	    unsigned XI377;
4864
 
4865
	    ADVANCE_LEXER;
4866
	    switch (CURRENT_TERMINAL) {
4867
	      case 174:
4868
		break;
4869
	      default:
4870
		goto XL1;
4871
	    }
4872
	    ADVANCE_LEXER;
4873
	    {
4874
 (XI708) = OPT_throw_bad ; 
4875
	    }
4876
	    XR505 (&XI377);
4877
	    if ((CURRENT_TERMINAL) == 354) {
4878
		RESTORE_LEXER;
4879
		goto XL1;
4880
	    }
4881
	    {
4882
 
4883
    set_option ( (XI708), (XI377) ) ;
4884
	    }
4885
	    {
4886
 (XI397) = lex_hash_Hpragma ; 
4887
	    }
4888
	}
4889
	break;
4890
      case 312:
4891
	{
4892
	    IDENTIFIER XI375;
4893
	    TYPE XI825;
4894
 
4895
	    ADVANCE_LEXER;
4896
	    {
4897
 
4898
    int t = crt_lex_token ;
4899
    if ( t >= FIRST_KEYWORD && t <= LAST_KEYWORD ) {
4900
	crt_lex_token = lex_identifier ;
4901
    }
4902
	    }
4903
	    {
4904
 
4905
    crt_templ_qualifier = 0 ;
4906
	    }
4907
	    {
4908
		switch (CURRENT_TERMINAL) {
4909
		  case 1:
4910
		    {
4911
			{
4912
 
4913
    XI375 = crt_token->pp_data.id.use ;
4914
			}
4915
			ADVANCE_LEXER;
4916
		    }
4917
		    break;
4918
		  case 3:
4919
		    {
4920
			{
4921
 
4922
    XI375 = crt_token->pp_data.id.use ;
4923
			}
4924
			ADVANCE_LEXER;
4925
		    }
4926
		    break;
4927
		  case 4:
4928
		    {
4929
			{
4930
 
4931
    XI375 = crt_token->pp_data.id.use ;
4932
			}
4933
			ADVANCE_LEXER;
4934
		    }
4935
		    break;
4936
		  case 2:
4937
		    {
4938
			{
4939
 
4940
    XI375 = crt_token->pp_data.id.use ;
4941
			}
4942
			ADVANCE_LEXER;
4943
		    }
4944
		    break;
4945
		  default:
4946
		    goto XL1;
4947
		}
4948
	    }
4949
	    switch (CURRENT_TERMINAL) {
4950
	      case 107:
4951
		break;
4952
	      default:
4953
		goto XL1;
4954
	    }
4955
	    ADVANCE_LEXER;
4956
	    {
4957
		switch (CURRENT_TERMINAL) {
4958
		  case 184:
4959
		    {
4960
			ADVANCE_LEXER;
4961
			{
4962
 (XI825) = type_bottom ; 
4963
			}
4964
		    }
4965
		    break;
4966
		  case 285:
4967
		    {
4968
			ADVANCE_LEXER;
4969
			{
4970
 (XI825) = type_ptrdiff_t ; 
4971
			}
4972
		    }
4973
		    break;
4974
		  case 298:
4975
		    {
4976
			ADVANCE_LEXER;
4977
			{
4978
 (XI825) = type_size_t ; 
4979
			}
4980
		    }
4981
		    break;
4982
		  case 156:
4983
		    {
4984
			ADVANCE_LEXER;
4985
			{
4986
 (XI825) = type_wchar_t ; 
4987
			}
4988
		    }
4989
		    break;
4990
		  case 47: case 209:
4991
		    {
4992
			{
4993
			    switch (CURRENT_TERMINAL) {
4994
			      case 47:
4995
				{
4996
				    ADVANCE_LEXER;
4997
				}
4998
				break;
4999
			      case 209:
5000
				{
5001
				    ADVANCE_LEXER;
5002
				}
5003
				break;
5004
			      default:
5005
				goto XL1;
5006
			    }
5007
			}
5008
			XR858 (&XI825);
5009
			if ((CURRENT_TERMINAL) == 354) {
5010
			    RESTORE_LEXER;
5011
			    goto XL1;
5012
			}
5013
		    }
5014
		    break;
5015
		  default:
5016
		    goto XL1;
5017
		}
5018
	    }
5019
	    {
5020
 
5021
    typedef_special ( (XI375), (XI825) ) ;
5022
	    }
5023
	    {
5024
 (XI397) = lex_hash_Hpragma ; 
5025
	    }
5026
	}
5027
	break;
5028
      case 315:
5029
	{
5030
	    int XI708;
5031
	    unsigned XI377;
5032
 
5033
	    ADVANCE_LEXER;
5034
	    XR792 (&XI708);
5035
	    XR506 (&XI377);
5036
	    if ((CURRENT_TERMINAL) == 354) {
5037
		RESTORE_LEXER;
5038
		goto XL1;
5039
	    }
5040
	    {
5041
 
5042
    set_option ( (XI708), (XI377) ) ;
5043
	    }
5044
	    {
5045
 (XI397) = lex_hash_Hpragma ; 
5046
	    }
5047
	}
5048
	break;
5049
      case 317:
5050
	{
5051
	    ADVANCE_LEXER;
5052
	    XR820 ();
5053
	    if ((CURRENT_TERMINAL) == 354) {
5054
		RESTORE_LEXER;
5055
		goto XL1;
5056
	    }
5057
	    {
5058
 (XI397) = lex_hash_Hpragma ; 
5059
	    }
5060
	}
5061
	break;
5062
      case 318:
5063
	{
5064
	    ADVANCE_LEXER;
5065
	    XR803 ();
5066
	    if ((CURRENT_TERMINAL) == 354) {
5067
		RESTORE_LEXER;
5068
		goto XL1;
5069
	    }
5070
	    {
5071
 (XI397) = lex_hash_Hpragma ; 
5072
	    }
5073
	}
5074
	break;
5075
      case 320:
5076
	{
5077
	    int XI708;
5078
	    unsigned XI377;
5079
 
5080
	    ADVANCE_LEXER;
5081
	    switch (CURRENT_TERMINAL) {
5082
	      case 287:
5083
		break;
5084
	      default:
5085
		goto XL1;
5086
	    }
5087
	    ADVANCE_LEXER;
5088
	    {
5089
 (XI708) = OPT_unmatched ; 
5090
	    }
5091
	    XR506 (&XI377);
5092
	    if ((CURRENT_TERMINAL) == 354) {
5093
		RESTORE_LEXER;
5094
		goto XL1;
5095
	    }
5096
	    {
5097
 
5098
    set_option ( (XI708), (XI377) ) ;
5099
	    }
5100
	    {
5101
 (XI397) = lex_hash_Hpragma ; 
5102
	    }
5103
	}
5104
	break;
5105
      case 321:
5106
	{
5107
	    int XI409;
5108
 
5109
	    ADVANCE_LEXER;
5110
	    {
5111
 
5112
    rescan_pragma ( lex_unknown ) ;
5113
    RESCAN_LEXER ;
5114
	    }
5115
	    {
5116
 (XI409) = lex_unpostpone ; 
5117
	    }
5118
	    XR495 (XI409);
5119
	    if ((CURRENT_TERMINAL) == 354) {
5120
		RESTORE_LEXER;
5121
		goto XL1;
5122
	    }
5123
	    {
5124
 (XI397) = lex_hash_Hpragma ; 
5125
	    }
5126
	}
5127
	break;
5128
      case 322:
5129
	{
5130
	    int XI708;
5131
	    unsigned XI377;
5132
 
5133
	    ADVANCE_LEXER;
5134
	    switch (CURRENT_TERMINAL) {
5135
	      case 188:
5136
		break;
5137
	      default:
5138
		goto XL1;
5139
	    }
5140
	    ADVANCE_LEXER;
5141
	    {
5142
 (XI708) = OPT_reached ; 
5143
	    }
5144
	    XR506 (&XI377);
5145
	    if ((CURRENT_TERMINAL) == 354) {
5146
		RESTORE_LEXER;
5147
		goto XL1;
5148
	    }
5149
	    {
5150
 
5151
    set_option ( (XI708), (XI377) ) ;
5152
	    }
5153
	    {
5154
 (XI397) = lex_hash_Hpragma ; 
5155
	    }
5156
	}
5157
	break;
5158
      case 324:
5159
	{
5160
	    ADVANCE_LEXER;
5161
	    XR806 ();
5162
	    if ((CURRENT_TERMINAL) == 354) {
5163
		RESTORE_LEXER;
5164
		goto XL1;
5165
	    }
5166
	    {
5167
 (XI397) = lex_hash_Hpragma ; 
5168
	    }
5169
	}
5170
	break;
5171
      case 326:
5172
	{
5173
	    ADVANCE_LEXER;
5174
	    XR804 ();
5175
	    if ((CURRENT_TERMINAL) == 354) {
5176
		RESTORE_LEXER;
5177
		goto XL1;
5178
	    }
5179
	    {
5180
 (XI397) = lex_hash_Hpragma ; 
5181
	    }
5182
	}
5183
	break;
5184
      case 331:
5185
	{
5186
	    ADVANCE_LEXER;
5187
	    XR805 ();
5188
	    if ((CURRENT_TERMINAL) == 354) {
5189
		RESTORE_LEXER;
5190
		goto XL1;
5191
	    }
5192
	    {
5193
 (XI397) = lex_hash_Hpragma ; 
5194
	    }
5195
	}
5196
	break;
5197
      case 332:
5198
	{
5199
	    int XI708;
5200
	    unsigned XI377;
5201
 
5202
	    ADVANCE_LEXER;
5203
	    switch (CURRENT_TERMINAL) {
5204
	      case 303:
5205
		break;
5206
	      default:
5207
		goto XL1;
5208
	    }
5209
	    ADVANCE_LEXER;
5210
	    switch (CURRENT_TERMINAL) {
5211
	      case 254:
5212
		break;
5213
	      default:
5214
		goto XL1;
5215
	    }
5216
	    ADVANCE_LEXER;
5217
	    {
5218
 (XI708) = OPT_const_string ; 
5219
	    }
5220
	    XR506 (&XI377);
5221
	    if ((CURRENT_TERMINAL) == 354) {
5222
		RESTORE_LEXER;
5223
		goto XL1;
5224
	    }
5225
	    {
5226
 
5227
    set_option ( (XI708), (XI377) ) ;
5228
	    }
5229
	    {
5230
 (XI397) = lex_hash_Hpragma ; 
5231
	    }
5232
	}
5233
	break;
5234
      case 214:
5235
	{
5236
	    int XI708;
5237
 
5238
	    XR757 (&XI708);
5239
	    XR781 (&XI708);
5240
	    if ((CURRENT_TERMINAL) == 354) {
5241
		RESTORE_LEXER;
5242
		goto XL1;
5243
	    }
5244
	    {
5245
 (XI397) = lex_hash_Hpragma ; 
5246
	    }
5247
	}
5248
	break;
5249
      case 250:
5250
	{
5251
	    IDENTIFIER XI375;
5252
	    int XI821;
5253
 
5254
	    XR549 (&XI375);
5255
	    switch (CURRENT_TERMINAL) {
5256
	      case 107:
5257
		break;
5258
	      case 354:
5259
		RESTORE_LEXER;
5260
		goto XL1;
5261
	      default:
5262
		goto XL1;
5263
	    }
5264
	    ADVANCE_LEXER;
5265
	    XR550 (&XI821);
5266
	    if ((CURRENT_TERMINAL) == 354) {
5267
		RESTORE_LEXER;
5268
		goto XL1;
5269
	    }
5270
	    {
5271
 
5272
    define_keyword ( (XI375), (XI821) ) ;
5273
	    }
5274
	    {
5275
 (XI397) = lex_hash_Hpragma ; 
5276
	    }
5277
	}
5278
	break;
5279
      case 259:
5280
	{
5281
	    XR482 ();
5282
	    if ((CURRENT_TERMINAL) == 354) {
5283
		RESTORE_LEXER;
5284
		goto XL1;
5285
	    }
5286
	    {
5287
 (XI397) = lex_hash_Hpragma ; 
5288
	    }
5289
	}
5290
	break;
5291
      case 311:
5292
	{
5293
	    XR456 ();
5294
	    if ((CURRENT_TERMINAL) == 354) {
5295
		RESTORE_LEXER;
5296
		goto XL1;
5297
	    }
5298
	    {
5299
 (XI397) = lex_hash_Hpragma ; 
5300
	    }
5301
	}
5302
	break;
5303
      case 354:
5304
	return;
5305
      default:
5306
	goto XL1;
5307
    }
5308
    goto XL0;
5309
  XL1:;
5310
    {
5311
	{
5312
 
5313
    /* Syntax errors */
5314
    ERROR err = ERR_lex_parse ( crt_token ) ;
5315
    report ( crt_loc, err ) ;
5316
    have_syntax_error = 1 ;
5317
	}
5318
	{
5319
 (XI397) = lex_hash_Hpragma ; 
5320
	}
5321
    }
5322
  XL0:;
5323
    *XO397 = XI397;
5324
}
5325
 
5326
/* END OF FILE */