4 #define YY_INT_ALIGNED short int
8 #define yy_create_buffer splitc__create_buffer
9 #define yy_delete_buffer splitc__delete_buffer
10 #define yy_scan_buffer splitc__scan_buffer
11 #define yy_scan_string splitc__scan_string
12 #define yy_scan_bytes splitc__scan_bytes
13 #define yy_init_buffer splitc__init_buffer
14 #define yy_flush_buffer splitc__flush_buffer
15 #define yy_load_buffer_state splitc__load_buffer_state
16 #define yy_switch_to_buffer splitc__switch_to_buffer
17 #define yypush_buffer_state splitc_push_buffer_state
18 #define yypop_buffer_state splitc_pop_buffer_state
19 #define yyensure_buffer_stack splitc_ensure_buffer_stack
20 #define yy_flex_debug splitc__flex_debug
21 #define yyin splitc_in
22 #define yyleng splitc_leng
23 #define yylex splitc_lex
24 #define yylineno splitc_lineno
25 #define yyout splitc_out
26 #define yyrestart splitc_restart
27 #define yytext splitc_text
28 #define yywrap splitc_wrap
29 #define yyalloc splitc_alloc
30 #define yyrealloc splitc_realloc
31 #define yyfree splitc_free
34 #define YY_FLEX_MAJOR_VERSION 2
35 #define YY_FLEX_MINOR_VERSION 6
36 #define YY_FLEX_SUBMINOR_VERSION 4
37 #if YY_FLEX_SUBMINOR_VERSION > 0
41 #ifdef yy_create_buffer
42 #define splitc__create_buffer_ALREADY_DEFINED
44 #define yy_create_buffer splitc__create_buffer
47 #ifdef yy_delete_buffer
48 #define splitc__delete_buffer_ALREADY_DEFINED
50 #define yy_delete_buffer splitc__delete_buffer
54 #define splitc__scan_buffer_ALREADY_DEFINED
56 #define yy_scan_buffer splitc__scan_buffer
60 #define splitc__scan_string_ALREADY_DEFINED
62 #define yy_scan_string splitc__scan_string
66 #define splitc__scan_bytes_ALREADY_DEFINED
68 #define yy_scan_bytes splitc__scan_bytes
72 #define splitc__init_buffer_ALREADY_DEFINED
74 #define yy_init_buffer splitc__init_buffer
77 #ifdef yy_flush_buffer
78 #define splitc__flush_buffer_ALREADY_DEFINED
80 #define yy_flush_buffer splitc__flush_buffer
83 #ifdef yy_load_buffer_state
84 #define splitc__load_buffer_state_ALREADY_DEFINED
86 #define yy_load_buffer_state splitc__load_buffer_state
89 #ifdef yy_switch_to_buffer
90 #define splitc__switch_to_buffer_ALREADY_DEFINED
92 #define yy_switch_to_buffer splitc__switch_to_buffer
95 #ifdef yypush_buffer_state
96 #define splitc_push_buffer_state_ALREADY_DEFINED
98 #define yypush_buffer_state splitc_push_buffer_state
101 #ifdef yypop_buffer_state
102 #define splitc_pop_buffer_state_ALREADY_DEFINED
104 #define yypop_buffer_state splitc_pop_buffer_state
107 #ifdef yyensure_buffer_stack
108 #define splitc_ensure_buffer_stack_ALREADY_DEFINED
110 #define yyensure_buffer_stack splitc_ensure_buffer_stack
114 #define splitc_lex_ALREADY_DEFINED
116 #define yylex splitc_lex
120 #define splitc_restart_ALREADY_DEFINED
122 #define yyrestart splitc_restart
126 #define splitc_lex_init_ALREADY_DEFINED
128 #define yylex_init splitc_lex_init
131 #ifdef yylex_init_extra
132 #define splitc_lex_init_extra_ALREADY_DEFINED
134 #define yylex_init_extra splitc_lex_init_extra
138 #define splitc_lex_destroy_ALREADY_DEFINED
140 #define yylex_destroy splitc_lex_destroy
144 #define splitc_get_debug_ALREADY_DEFINED
146 #define yyget_debug splitc_get_debug
150 #define splitc_set_debug_ALREADY_DEFINED
152 #define yyset_debug splitc_set_debug
156 #define splitc_get_extra_ALREADY_DEFINED
158 #define yyget_extra splitc_get_extra
162 #define splitc_set_extra_ALREADY_DEFINED
164 #define yyset_extra splitc_set_extra
168 #define splitc_get_in_ALREADY_DEFINED
170 #define yyget_in splitc_get_in
174 #define splitc_set_in_ALREADY_DEFINED
176 #define yyset_in splitc_set_in
180 #define splitc_get_out_ALREADY_DEFINED
182 #define yyget_out splitc_get_out
186 #define splitc_set_out_ALREADY_DEFINED
188 #define yyset_out splitc_set_out
192 #define splitc_get_leng_ALREADY_DEFINED
194 #define yyget_leng splitc_get_leng
198 #define splitc_get_text_ALREADY_DEFINED
200 #define yyget_text splitc_get_text
204 #define splitc_get_lineno_ALREADY_DEFINED
206 #define yyget_lineno splitc_get_lineno
210 #define splitc_set_lineno_ALREADY_DEFINED
212 #define yyset_lineno splitc_set_lineno
216 #define splitc_wrap_ALREADY_DEFINED
218 #define yywrap splitc_wrap
222 #define splitc_alloc_ALREADY_DEFINED
224 #define yyalloc splitc_alloc
228 #define splitc_realloc_ALREADY_DEFINED
230 #define yyrealloc splitc_realloc
234 #define splitc_free_ALREADY_DEFINED
236 #define yyfree splitc_free
240 #define splitc_text_ALREADY_DEFINED
242 #define yytext splitc_text
246 #define splitc_leng_ALREADY_DEFINED
248 #define yyleng splitc_leng
252 #define splitc_in_ALREADY_DEFINED
254 #define yyin splitc_in
258 #define splitc_out_ALREADY_DEFINED
260 #define yyout splitc_out
264 #define splitc__flex_debug_ALREADY_DEFINED
266 #define yy_flex_debug splitc__flex_debug
270 #define splitc_lineno_ALREADY_DEFINED
272 #define yylineno splitc_lineno
292 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
297 #ifndef __STDC_LIMIT_MACROS
298 #define __STDC_LIMIT_MACROS 1
301 #include <inttypes.h>
318 #define INT8_MIN (-128)
321 #define INT16_MIN (-32767-1)
324 #define INT32_MIN (-2147483647-1)
327 #define INT8_MAX (127)
330 #define INT16_MAX (32767)
333 #define INT32_MAX (2147483647)
336 #define UINT8_MAX (255U)
339 #define UINT16_MAX (65535U)
342 #define UINT32_MAX (4294967295U)
346 #define SIZE_MAX (~(size_t)0)
356 #define yyconst const
358 #if defined(__GNUC__) && __GNUC__ >= 3
359 #define yynoreturn __attribute__((__noreturn__))
370 #define YY_SC_TO_UI(c) ((YY_CHAR) (c))
376 #define BEGIN (yy_start) = 1 + 2 *
381 #define YY_START (((yy_start) - 1) / 2)
382 #define YYSTATE YY_START
384 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
386 #define YY_NEW_FILE yyrestart( yyin )
387 #define YY_END_OF_BUFFER_CHAR 0
396 #define YY_BUF_SIZE 32768
398 #define YY_BUF_SIZE 16384
404 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
406 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
407 #define YY_TYPEDEF_YY_BUFFER_STATE
411 #ifndef YY_TYPEDEF_YY_SIZE_T
412 #define YY_TYPEDEF_YY_SIZE_T
420 #define EOB_ACT_CONTINUE_SCAN 0
421 #define EOB_ACT_END_OF_FILE 1
422 #define EOB_ACT_LAST_MATCH 2
431 #define YY_LESS_LINENO(n) \
434 for ( yyl = n; yyl < yyleng; ++yyl )\
435 if ( yytext[yyl] == '\n' )\
438 #define YY_LINENO_REWIND_TO(dst) \
441 for ( p = yy_cp-1; p >= (dst); --p)\
451 int yyless_macro_arg = (n); \
452 YY_LESS_LINENO(yyless_macro_arg);\
453 *yy_cp = (yy_hold_char); \
454 YY_RESTORE_YY_MORE_OFFSET \
455 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
456 YY_DO_BEFORE_ACTION; \
459 #define unput(c) yyunput( c, (yytext_ptr) )
461 #ifndef YY_STRUCT_YY_BUFFER_STATE
462 #define YY_STRUCT_YY_BUFFER_STATE
509 #define YY_BUFFER_NEW 0
510 #define YY_BUFFER_NORMAL 1
521 #define YY_BUFFER_EOF_PENDING 2
537 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
538 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
543 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
571 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
581 #define yy_new_buffer yy_create_buffer
582 #define yy_set_interactive(is_interactive) \
584 if ( ! YY_CURRENT_BUFFER ){ \
585 yyensure_buffer_stack (); \
586 YY_CURRENT_BUFFER_LVALUE = \
587 yy_create_buffer( yyin, YY_BUF_SIZE ); \
589 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
591 #define yy_set_bol(at_bol) \
593 if ( ! YY_CURRENT_BUFFER ){\
594 yyensure_buffer_stack (); \
595 YY_CURRENT_BUFFER_LVALUE = \
596 yy_create_buffer( yyin, YY_BUF_SIZE ); \
598 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
600 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
616 #define yytext_ptr yytext
626 #define YY_DO_BEFORE_ACTION \
627 (yytext_ptr) = yy_bp; \
628 yyleng = (int) (yy_cp - yy_bp); \
629 (yy_hold_char) = *yy_cp; \
631 (yy_c_buf_p) = yy_cp;
632 #define YY_NUM_RULES 72
633 #define YY_END_OF_BUFFER 73
643 0, 0, 73, 71, 4, 3, 44, 71, 43, 47,
644 71, 57, 58, 41, 39, 60, 40, 61, 42, 14,
645 14, 51, 59, 34, 33, 35, 50, 70, 70, 55,
646 56, 49, 70, 70, 53, 48, 54, 52, 2, 30,
647 0, 0, 8, 0, 21, 45, 23, 0, 0, 19,
648 36, 17, 37, 18, 38, 0, 10, 0, 1, 20,
649 10, 13, 14, 0, 14, 14, 0, 14, 27, 31,
650 29, 32, 28, 70, 0, 0, 24, 70, 70, 70,
651 22, 46, 2, 2, 0, 6, 0, 0, 0, 0,
652 16, 0, 10, 11, 0, 0, 1, 1, 1, 0,
654 13, 13, 13, 0, 10, 14, 14, 14, 14, 0,
655 12, 25, 26, 0, 9, 0, 0, 0, 70, 70,
656 70, 70, 70, 70, 70, 0, 0, 0, 0, 0,
657 0, 10, 11, 0, 10, 13, 13, 13, 13, 14,
658 0, 12, 12, 0, 12, 12, 7, 0, 0, 0,
659 0, 70, 70, 70, 70, 70, 70, 70, 70, 0,
660 0, 0, 0, 0, 13, 0, 0, 12, 12, 0,
661 0, 10, 12, 12, 0, 0, 0, 0, 70, 63,
662 70, 70, 70, 70, 70, 70, 15, 0, 0, 0,
663 10, 0, 10, 10, 10, 0, 10, 0, 10, 12,
665 0, 0, 0, 0, 70, 70, 70, 70, 70, 70,
666 62, 0, 0, 0, 10, 0, 0, 10, 0, 0,
667 0, 0, 0, 0, 0, 5, 70, 70, 70, 70,
668 70, 0, 0, 10, 0, 10, 0, 0, 0, 0,
669 70, 70, 67, 70, 70, 0, 0, 0, 70, 70,
670 70, 70, 64, 0, 0, 0, 70, 70, 68, 69,
671 0, 0, 70, 70, 0, 70, 70, 65, 66, 0
676 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
677 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
678 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
679 1, 2, 4, 5, 6, 1, 7, 8, 9, 10,
680 11, 12, 13, 14, 15, 16, 17, 18, 19, 19,
681 19, 19, 19, 19, 19, 20, 20, 21, 22, 23,
682 24, 25, 26, 1, 27, 27, 27, 27, 28, 29,
683 30, 30, 30, 30, 30, 31, 30, 30, 30, 32,
684 30, 30, 30, 30, 33, 30, 30, 34, 30, 30,
685 35, 36, 37, 38, 39, 1, 40, 41, 27, 42,
687 43, 44, 45, 30, 46, 47, 30, 48, 49, 50,
688 51, 52, 53, 54, 55, 56, 57, 58, 30, 59,
689 30, 60, 61, 62, 63, 64, 1, 1, 1, 1,
690 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
691 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
692 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
693 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
694 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
695 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
696 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
698 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
699 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
700 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
701 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
702 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
708 1, 1, 2, 1, 3, 1, 1, 1, 4, 1,
709 1, 1, 1, 1, 1, 5, 1, 6, 6, 7,
710 1, 1, 1, 1, 1, 3, 7, 7, 7, 8,
711 9, 9, 10, 8, 1, 3, 1, 1, 8, 6,
712 6, 7, 7, 6, 8, 8, 8, 9, 8, 11,
713 8, 9, 8, 11, 8, 11, 10, 11, 11, 8,
719 0, 571, 575, 795, 795, 795, 41, 61, 547, 59,
720 534, 795, 795, 541, 55, 795, 56, 54, 65, 82,
721 69, 795, 795, 52, 540, 60, 795, 0, 81, 795,
722 795, 539, 60, 512, 795, 45, 795, 795, 520, 795,
723 498, 73, 795, 0, 795, 795, 795, 544, 86, 795,
724 795, 795, 795, 795, 795, 530, 128, 533, 88, 795,
725 65, 161, 0, 114, 107, 135, 527, 154, 516, 795,
726 795, 795, 500, 0, 90, 486, 795, 466, 145, 455,
727 795, 795, 476, 108, 462, 795, 103, 0, 0, 0,
728 795, 195, 71, 176, 493, 119, 117, 795, 466, 208,
730 201, 209, 203, 142, 230, 237, 126, 238, 219, 0,
731 240, 795, 795, 101, 795, 0, 492, 265, 449, 112,
732 426, 434, 431, 436, 431, 409, 177, 0, 0, 449,
733 223, 271, 795, 267, 285, 280, 283, 311, 293, 312,
734 141, 314, 317, 345, 153, 277, 795, 334, 0, 0,
735 0, 407, 402, 393, 384, 387, 389, 385, 370, 416,
736 407, 0, 0, 402, 340, 357, 366, 165, 795, 371,
737 374, 379, 378, 356, 387, 0, 0, 394, 339, 0,
738 328, 337, 332, 323, 321, 323, 795, 0, 0, 382,
739 399, 395, 413, 444, 202, 435, 450, 451, 470, 795,
741 350, 0, 0, 348, 311, 303, 294, 288, 292, 274,
742 0, 0, 303, 491, 490, 510, 419, 513, 519, 413,
743 523, 452, 0, 0, 298, 0, 265, 246, 252, 251,
744 227, 0, 451, 549, 530, 554, 498, 0, 270, 266,
745 211, 218, 224, 216, 183, 0, 0, 229, 177, 165,
746 173, 167, 0, 0, 0, 190, 147, 115, 0, 0,
747 0, 149, 116, 113, 140, 75, 57, 0, 0, 795,
748 602, 613, 619, 630, 639, 650, 661, 668, 675, 686,
749 692, 694, 696, 698, 701, 709, 715, 717, 721, 723,
750 725, 727, 729, 731, 733, 735, 739, 741, 743, 745,
752 747, 751, 753, 755, 757, 761, 763, 765, 769, 771,
753 773, 777, 779, 783, 787
758 270, 1, 270, 270, 270, 270, 270, 271, 270, 270,
759 272, 270, 270, 270, 270, 270, 270, 270, 270, 270,
760 20, 270, 270, 270, 270, 270, 270, 273, 273, 270,
761 270, 270, 273, 273, 270, 270, 270, 270, 274, 270,
762 270, 271, 270, 271, 270, 270, 270, 270, 275, 270,
763 270, 270, 270, 270, 270, 270, 270, 276, 277, 270,
764 57, 270, 21, 270, 270, 270, 278, 270, 270, 270,
765 270, 270, 270, 273, 279, 280, 270, 273, 273, 273,
766 270, 270, 274, 274, 270, 270, 270, 281, 282, 283,
767 270, 270, 270, 270, 276, 276, 277, 270, 277, 270,
769 270, 270, 270, 270, 270, 270, 270, 270, 270, 284,
770 285, 270, 270, 279, 270, 279, 270, 286, 273, 273,
771 273, 273, 273, 273, 273, 270, 270, 287, 288, 289,
772 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
773 284, 285, 270, 270, 270, 270, 270, 270, 290, 291,
774 292, 273, 273, 273, 273, 273, 273, 273, 273, 270,
775 270, 293, 294, 270, 270, 270, 270, 270, 270, 270,
776 270, 270, 270, 270, 270, 295, 296, 297, 273, 273,
777 273, 273, 273, 273, 273, 273, 270, 298, 299, 270,
778 270, 270, 270, 270, 194, 270, 270, 270, 270, 270,
780 270, 300, 301, 302, 273, 273, 273, 273, 273, 273,
781 273, 303, 270, 270, 270, 270, 270, 270, 270, 270,
782 270, 270, 304, 305, 306, 273, 273, 273, 273, 273,
783 273, 307, 270, 270, 270, 270, 270, 308, 270, 309,
784 273, 273, 273, 273, 273, 310, 311, 312, 273, 273,
785 273, 273, 273, 299, 313, 314, 273, 273, 273, 273,
786 305, 315, 273, 273, 270, 273, 273, 273, 273, 0,
787 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
788 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
789 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
791 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
792 270, 270, 270, 270, 270
797 4, 5, 6, 7, 8, 4, 9, 10, 11, 12,
798 13, 14, 15, 16, 17, 18, 19, 20, 21, 21,
799 22, 23, 24, 25, 26, 27, 28, 28, 28, 28,
800 29, 28, 28, 28, 30, 4, 31, 32, 33, 28,
801 28, 28, 28, 28, 28, 28, 28, 28, 28, 28,
802 28, 28, 28, 28, 34, 28, 28, 28, 28, 28,
803 35, 36, 37, 38, 40, 43, 46, 51, 81, 56,
804 53, 57, 57, 57, 69, 70, 58, 43, 52, 54,
805 55, 59, 47, 72, 73, 75, 63, 63, 60, 76,
806 98, 78, 100, 41, 115, 269, 44, 61, 79, 62,
808 62, 63, 270, 87, 87, 115, 82, 100, 44, 64,
809 83, 86, 65, 268, 66, 67, 133, 133, 88, 98,
810 127, 127, 61, 99, 64, 116, 104, 270, 104, 68,
811 96, 105, 105, 105, 64, 98, 116, 106, 66, 107,
812 67, 61, 89, 84, 90, 57, 57, 57, 147, 64,
813 61, 267, 99, 64, 266, 92, 93, 147, 93, 105,
814 105, 105, 64, 107, 264, 108, 153, 154, 64, 61,
815 92, 93, 166, 94, 94, 93, 61, 64, 62, 62,
816 63, 64, 109, 173, 120, 86, 107, 121, 64, 263,
817 122, 101, 166, 102, 161, 161, 64, 169, 147, 123,
819 174, 106, 124, 64, 133, 260, 133, 131, 103, 131,
820 107, 259, 132, 132, 132, 258, 61, 102, 61, 133,
821 134, 169, 134, 133, 61, 135, 135, 135, 64, 216,
822 64, 136, 257, 137, 61, 137, 64, 147, 253, 138,
823 132, 132, 132, 64, 216, 64, 64, 105, 105, 105,
824 136, 64, 61, 61, 252, 110, 139, 137, 93, 137,
825 93, 64, 251, 250, 64, 64, 140, 249, 140, 107,
826 143, 144, 145, 93, 147, 94, 94, 93, 147, 64,
827 64, 245, 148, 148, 135, 135, 135, 146, 132, 132,
828 132, 144, 244, 107, 243, 61, 145, 149, 61, 93,
830 242, 93, 135, 135, 135, 241, 147, 64, 61, 169,
831 64, 86, 137, 93, 93, 93, 94, 94, 93, 231,
832 64, 150, 64, 151, 168, 64, 61, 61, 93, 110,
833 94, 94, 93, 169, 230, 64, 137, 229, 64, 64,
834 165, 165, 147, 228, 143, 167, 145, 168, 227, 169,
835 226, 175, 175, 64, 64, 61, 147, 170, 147, 170,
836 171, 146, 172, 172, 172, 167, 211, 64, 210, 190,
837 145, 190, 209, 169, 191, 191, 191, 208, 192, 207,
838 192, 206, 64, 193, 193, 193, 171, 205, 172, 172,
839 172, 194, 194, 194, 195, 147, 172, 172, 172, 191,
841 191, 191, 147, 200, 201, 201, 196, 93, 200, 197,
842 86, 198, 193, 193, 193, 86, 191, 191, 191, 187,
843 186, 196, 93, 185, 94, 94, 199, 93, 195, 93,
844 193, 193, 193, 184, 183, 198, 218, 218, 218, 182,
845 196, 93, 93, 93, 94, 94, 93, 217, 181, 217,
846 180, 179, 218, 218, 218, 196, 93, 86, 94, 94,
847 93, 194, 194, 194, 160, 195, 195, 195, 234, 234,
848 234, 214, 215, 159, 215, 158, 157, 196, 196, 196,
849 219, 221, 220, 156, 155, 195, 214, 215, 152, 94,
850 94, 215, 196, 196, 196, 133, 133, 196, 222, 237,
852 147, 99, 220, 233, 96, 233, 220, 126, 234, 234,
853 234, 84, 196, 195, 125, 133, 133, 219, 93, 119,
854 93, 118, 235, 113, 235, 196, 220, 236, 236, 236,
855 218, 218, 218, 93, 195, 94, 94, 93, 195, 112,
856 196, 215, 110, 215, 96, 91, 196, 236, 236, 236,
857 196, 220, 86, 237, 85, 84, 215, 80, 94, 94,
858 215, 196, 77, 71, 50, 196, 234, 234, 234, 49,
859 45, 236, 236, 236, 270, 220, 39, 215, 270, 215,
860 270, 270, 215, 270, 215, 270, 270, 270, 270, 270,
861 270, 270, 215, 270, 94, 94, 215, 215, 270, 94,
863 94, 215, 42, 42, 42, 42, 42, 42, 42, 42,
864 42, 42, 42, 48, 48, 48, 48, 48, 48, 48,
865 48, 48, 48, 48, 74, 74, 74, 74, 74, 74,
866 83, 270, 83, 83, 83, 83, 83, 83, 83, 83,
867 83, 48, 48, 270, 48, 270, 270, 270, 48, 48,
868 95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
869 95, 97, 97, 97, 97, 97, 97, 97, 97, 97,
870 97, 97, 111, 111, 111, 114, 114, 114, 114, 114,
871 114, 114, 114, 114, 114, 114, 117, 117, 117, 117,
872 117, 117, 117, 117, 117, 117, 117, 128, 128, 129,
874 129, 130, 130, 141, 141, 142, 142, 142, 270, 142,
875 142, 117, 117, 270, 117, 270, 270, 270, 117, 117,
876 162, 162, 163, 163, 164, 270, 164, 164, 176, 176,
877 177, 177, 178, 178, 188, 188, 189, 189, 202, 202,
878 203, 203, 204, 270, 204, 204, 212, 212, 213, 213,
879 223, 223, 224, 224, 225, 270, 225, 225, 232, 232,
880 238, 238, 239, 239, 240, 270, 240, 240, 246, 246,
881 247, 247, 248, 270, 248, 248, 254, 254, 255, 255,
882 256, 270, 256, 256, 261, 261, 262, 270, 262, 262,
883 265, 270, 265, 265, 3, 270, 270, 270, 270, 270,
885 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
886 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
887 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
888 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
889 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
890 270, 270, 270, 270, 270, 270, 270, 270, 270
895 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
896 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
897 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
898 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
899 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
900 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
901 1, 1, 1, 1, 7, 8, 10, 15, 36, 18,
902 17, 18, 18, 18, 24, 24, 19, 42, 15, 17,
903 17, 19, 10, 26, 26, 29, 21, 21, 19, 29,
904 59, 33, 61, 7, 75, 267, 8, 20, 33, 20,
906 20, 20, 21, 49, 49, 114, 36, 61, 42, 20,
907 84, 87, 20, 266, 20, 20, 93, 93, 49, 97,
908 87, 87, 65, 59, 20, 75, 64, 21, 64, 20,
909 96, 64, 64, 64, 65, 96, 114, 65, 20, 65,
910 20, 107, 49, 84, 49, 57, 57, 57, 265, 65,
911 66, 264, 97, 107, 263, 57, 57, 262, 57, 104,
912 104, 104, 66, 65, 258, 66, 120, 120, 107, 68,
913 57, 57, 141, 57, 57, 57, 62, 66, 62, 62,
914 62, 68, 66, 145, 79, 127, 68, 79, 62, 257,
915 79, 62, 141, 62, 127, 127, 68, 168, 256, 79,
917 145, 68, 79, 62, 94, 252, 94, 92, 62, 92,
918 68, 251, 92, 92, 92, 250, 101, 62, 103, 94,
919 100, 168, 100, 94, 102, 100, 100, 100, 101, 195,
920 103, 101, 249, 101, 109, 103, 102, 248, 245, 102,
921 131, 131, 131, 101, 195, 103, 109, 105, 105, 105,
922 103, 102, 106, 108, 244, 111, 102, 101, 105, 103,
923 105, 109, 243, 242, 106, 108, 109, 241, 108, 106,
924 111, 111, 111, 105, 240, 105, 105, 105, 239, 106,
925 108, 231, 118, 118, 134, 134, 134, 111, 132, 132,
926 132, 111, 230, 106, 229, 136, 111, 118, 137, 132,
928 228, 132, 135, 135, 135, 227, 225, 136, 139, 146,
929 137, 213, 136, 135, 132, 135, 132, 132, 132, 210,
930 139, 118, 136, 118, 146, 137, 138, 140, 135, 142,
931 135, 135, 135, 146, 209, 139, 136, 208, 138, 140,
932 139, 138, 148, 207, 142, 142, 142, 143, 206, 143,
933 205, 148, 148, 138, 140, 165, 204, 144, 201, 144,
934 144, 142, 144, 144, 144, 142, 186, 165, 185, 166,
935 142, 166, 184, 143, 166, 166, 166, 183, 167, 182,
936 167, 181, 165, 167, 167, 167, 170, 179, 170, 170,
937 170, 171, 171, 171, 172, 175, 172, 172, 172, 190,
939 190, 190, 178, 174, 175, 175, 172, 172, 173, 172,
940 164, 172, 192, 192, 192, 161, 191, 191, 191, 160,
941 159, 172, 172, 158, 172, 172, 172, 191, 220, 191,
942 193, 193, 193, 157, 156, 172, 217, 217, 217, 155,
943 220, 193, 191, 193, 191, 191, 191, 196, 154, 196,
944 153, 152, 196, 196, 196, 220, 193, 130, 193, 193,
945 193, 194, 194, 194, 126, 197, 198, 222, 233, 233,
946 233, 194, 194, 125, 194, 124, 123, 197, 198, 222,
947 197, 198, 197, 122, 121, 199, 194, 194, 119, 194,
948 194, 194, 197, 198, 222, 197, 197, 199, 198, 222,
950 117, 99, 199, 214, 95, 214, 197, 85, 214, 214,
951 214, 83, 199, 237, 80, 199, 199, 199, 215, 78,
952 215, 76, 216, 73, 216, 237, 199, 216, 216, 216,
953 218, 218, 218, 215, 219, 215, 215, 215, 221, 69,
954 237, 218, 67, 218, 58, 56, 219, 235, 235, 235,
955 221, 219, 48, 221, 41, 39, 218, 34, 218, 218,
956 218, 219, 32, 25, 14, 221, 234, 234, 234, 11,
957 9, 236, 236, 236, 3, 219, 2, 234, 0, 234,
958 0, 0, 236, 0, 236, 0, 0, 0, 0, 0,
959 0, 0, 234, 0, 234, 234, 234, 236, 0, 236,
961 236, 236, 271, 271, 271, 271, 271, 271, 271, 271,
962 271, 271, 271, 272, 272, 272, 272, 272, 272, 272,
963 272, 272, 272, 272, 273, 273, 273, 273, 273, 273,
964 274, 0, 274, 274, 274, 274, 274, 274, 274, 274,
965 274, 275, 275, 0, 275, 0, 0, 0, 275, 275,
966 276, 276, 276, 276, 276, 276, 276, 276, 276, 276,
967 276, 277, 277, 277, 277, 277, 277, 277, 277, 277,
968 277, 277, 278, 278, 278, 279, 279, 279, 279, 279,
969 279, 279, 279, 279, 279, 279, 280, 280, 280, 280,
970 280, 280, 280, 280, 280, 280, 280, 281, 281, 282,
972 282, 283, 283, 284, 284, 285, 285, 285, 0, 285,
973 285, 286, 286, 0, 286, 0, 0, 0, 286, 286,
974 287, 287, 288, 288, 289, 0, 289, 289, 290, 290,
975 291, 291, 292, 292, 293, 293, 294, 294, 295, 295,
976 296, 296, 297, 0, 297, 297, 298, 298, 299, 299,
977 300, 300, 301, 301, 302, 0, 302, 302, 303, 303,
978 304, 304, 305, 305, 306, 0, 306, 306, 307, 307,
979 308, 308, 309, 0, 309, 309, 310, 310, 311, 311,
980 312, 0, 312, 312, 313, 313, 314, 0, 314, 314,
981 315, 0, 315, 315, 270, 270, 270, 270, 270, 270,
983 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
984 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
985 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
986 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
987 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
988 270, 270, 270, 270, 270, 270, 270, 270, 270
994 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
995 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
996 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
997 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, };
1008 #define REJECT reject_used_but_not_detected
1009 #define yymore() yymore_used_but_not_detected
1010 #define YY_MORE_ADJ 0
1011 #define YY_RESTORE_YY_MORE_OFFSET
1013 #line 1 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1065 #define YY_NO_INPUT 1
1066 #line 58 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1067 #ifdef HAVE_CONFIG_H
1068 #include "pips_config.h"
1091 #define YY_USER_ACTION update_csplit_file_offset_information();
1186 pips_debug(5,
"Likely memory leaks: %d\n", leaked);
1229 if(*cs==
'\n')
count++;
1239 #define TOKEN_UNDEFINED (-1)
1244 #define LEXER_RETURN(t) return(previous_keyword_token=t)
1264 for(i=2; i<=n && t==0; i++) {
1270 fprintf(stderr,
"Token \"%s\" identified as TK_NAMED_TYPE.\n",
1282 #define TK_TYPE_P(tk) \
1283 ((tk)==TK_CHAR || (tk)==TK_INT || \
1284 (tk)==TK_DOUBLE || (tk)==TK_FLOAT || (tk)==TK_COMPLEX || \
1285 (tk)==TK_ENUM || (tk)==TK_STRUCT || (tk)==TK_UNION || \
1286 (tk)==TK_SIGNED|| (tk)==TK_UNSIGNED|| (tk)==TK_LONG|| (tk)==TK_SHORT ||\
1293 pips_debug(1,
"Token \"%s\" is in fact assumed to be an identifier.\n",
1302 #line 1303 "<stdout>"
1304 #line 325 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1307 #line 1308 "<stdout>"
1311 #ifndef YY_NO_UNISTD_H
1319 #ifndef YY_EXTRA_TYPE
1320 #define YY_EXTRA_TYPE void *
1358 #ifndef YY_SKIP_YYWRAP
1360 extern "C" int yywrap (
void );
1362 extern int yywrap (
void );
1371 static void yy_flex_strncpy (
char *,
const char *,
int );
1374 #ifdef YY_NEED_STRLEN
1375 static int yy_flex_strlen (
const char * );
1380 static int yyinput (
void );
1382 static int input (
void );
1388 #ifndef YY_READ_BUF_SIZE
1391 #define YY_READ_BUF_SIZE 16384
1393 #define YY_READ_BUF_SIZE 8192
1402 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
1409 #define YY_INPUT(buf,result,max_size) \
1410 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1414 for ( n = 0; n < max_size && \
1415 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1416 buf[n] = (char) c; \
1418 buf[n++] = (char) c; \
1419 if ( c == EOF && ferror( yyin ) ) \
1420 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1426 while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
1428 if( errno != EINTR) \
1430 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1446 #define yyterminate() return YY_NULL
1450 #ifndef YY_START_STACK_INCR
1451 #define YY_START_STACK_INCR 25
1455 #ifndef YY_FATAL_ERROR
1456 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1465 #define YY_DECL_IS_OURS 1
1467 extern int yylex (
void);
1469 #define YY_DECL int yylex (void)
1475 #ifndef YY_USER_ACTION
1476 #define YY_USER_ACTION
1481 #define YY_BREAK break;
1484 #define YY_RULE_SETUP \
1486 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
1487 (yytext[yyleng - 1] == '\n'); \
1525 #line 334 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1528 #line 1529 "<stdout>"
1553 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
1555 yy_current_state = (
int)
yy_def[yy_current_state];
1556 if ( yy_current_state >= 271 )
1559 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + yy_c];
1562 while (
yy_base[yy_current_state] != 795 );
1578 for ( yyl = 0; yyl <
yyleng; ++yyl )
1579 if (
yytext[yyl] ==
'\n' )
1594 goto yy_find_action;
1599 #line 336 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1623 #line 356 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1642 else if( (n=strlen(
yytext))>=4) {
1643 int initial_C_line_number = -1;
1644 char include_file[n] ;
1645 int items = sscanf(
yytext+1,
"%d \"%[^\"]\"", &initial_C_line_number,include_file);
1665 #line 394 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1692 #line 418 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1707 #line 430 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1715 #line 434 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1729 #line 444 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1742 #line 453 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1754 #line 461 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1763 #line 466 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1772 #line 471 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1781 #line 476 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1790 #line 481 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1799 #line 486 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1808 #line 491 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1816 #line 495 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1824 #line 499 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1832 #line 503 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1840 #line 507 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1848 #line 511 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1856 #line 515 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1864 #line 519 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1872 #line 523 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1880 #line 527 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1888 #line 531 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1896 #line 535 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1904 #line 539 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1912 #line 543 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1920 #line 547 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1928 #line 551 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1936 #line 555 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1944 #line 559 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1952 #line 563 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1960 #line 567 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1968 #line 571 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1976 #line 575 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1984 #line 579 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
1992 #line 583 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2000 #line 587 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2008 #line 591 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2016 #line 595 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2024 #line 599 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2032 #line 603 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2040 #line 607 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2048 #line 611 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2056 #line 615 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2064 #line 619 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2072 #line 623 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2080 #line 627 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2088 #line 631 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2096 #line 635 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2104 #line 639 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2112 #line 643 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2120 #line 647 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2128 #line 651 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2137 #line 656 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2146 #line 661 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2154 #line 665 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2162 #line 669 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2170 #line 673 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2178 #line 677 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2186 #line 681 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2194 #line 685 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2202 #line 689 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2217 #line 700 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2230 #line 709 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2237 #line 712 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2244 #line 715 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2251 #line 718 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2258 #line 721 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2275 pips_debug(5,
"Temptative function name found: \"%s\"\n",
2279 pips_debug(5,
"Identifier \"%s\" ignored because of two previous identifiers \"%s\"\n",
2285 pips_debug(5,
"Identifier \"%s\" not ignored in spite of two previous identifiers \"%s\"\n",
2296 #
line 756
"/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2304 #line 760 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2308 pips_user_warning(
"Preprocessor directives must have disappeared thanks to the C preprocessor.\n"
2309 "Check the input code and/or modify the preprocessor options using environment variables PIPS_CPP.\n");
2317 #line 769 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
2320 #line 2321 "<stdout>"
2375 if ( yy_next_state )
2379 yy_current_state = yy_next_state;
2386 goto yy_find_action;
2439 goto yy_find_action;
2446 "fatal flex scanner internal error--no action found" );
2463 int number_to_move, i;
2468 "fatal flex scanner internal error--end of buffer missed" );
2494 for ( i = 0; i < number_to_move; ++i )
2495 *(dest++) = *(source++);
2508 while ( num_to_read <= 0 )
2514 int yy_c_buf_p_offset =
2521 if ( new_size <= 0 )
2537 "fatal error - scanner input buffer overflow" );
2581 YY_FATAL_ERROR(
"out of dynamic memory in yy_get_next_buffer()" );
2613 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
2615 yy_current_state = (
int)
yy_def[yy_current_state];
2616 if ( yy_current_state >= 271 )
2619 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + yy_c];
2622 return yy_current_state;
2641 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state )
2643 yy_current_state = (
int)
yy_def[yy_current_state];
2644 if ( yy_current_state >= 271 )
2647 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + yy_c];
2648 yy_is_jam = (yy_current_state == 270);
2650 return yy_is_jam ? 0 : yy_current_state;
2659 static int yyinput (
void)
2661 static int input (
void)
2910 if (new_buffer == NULL)
2972 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
2992 YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()" );
3069 for ( i = 0; i < _yybytes_len; ++i )
3070 buf[i] = yybytes[i];
3086 #ifndef YY_EXIT_FAILURE
3087 #define YY_EXIT_FAILURE 2
3092 fprintf( stderr,
"%s\n", msg );
3103 int yyless_macro_arg = (n); \
3104 YY_LESS_LINENO(yyless_macro_arg);\
3105 yytext[yyleng] = (yy_hold_char); \
3106 (yy_c_buf_p) = yytext + yyless_macro_arg; \
3107 (yy_hold_char) = *(yy_c_buf_p); \
3108 *(yy_c_buf_p) = '\0'; \
3109 yyleng = yyless_macro_arg; \
3251 static void yy_flex_strncpy (
char*
s1,
const char * s2,
int n )
3255 for ( i = 0; i < n; ++i )
3260 #ifdef YY_NEED_STRLEN
3261 static int yy_flex_strlen (
const char * s )
3264 for ( n = 0; s[n]; ++n )
3286 return realloc(ptr, size);
3289 void yyfree (
void * ptr )
3291 free( (
char *) ptr );
3294 #define YYTABLES_NAME "yytables"
3296 #line 769 "/home/fabien/NIGHT/prod/pips/src/Libs/preprocessor/lexer.l"
3310 "C %s near \"%s\" at line %d in file \"%s\":\n%s\n\n",
3317 " 1. check the legality of the source code with a production C compiler\n"
3318 " 2. see if the issue is linked to a non-standard C feature\n"
3319 " 3. see if the issue is a C feature unsupported by PIPS C parser\n"
3320 " 4. see if the source code can be rewritten differently.\n");
3323 int yywrap() {
return 1;}
void const char const char const int
bdt base
Current expression.
string get_splitc_input_file_name(void)
char * current_include_file_path
used to keep track of include level
string safe_read_nth_line(string fn, int n)
Assumes "fn" is the name of a text file, opens it, and returns its nth line (starting with 1) in a ne...
unsigned char flex_uint8_t
flex_uint8_t YY_CHAR
Begin user sect3.
static int current_line
Poor attempt at associating physical line numbers to statement.
void * memset(void *str, int c, size_t len)
memset.c – set an area of memory to a given value Copyright (C) 1991, 2003, 2009-2011 Free Software F...
#define pips_debug
these macros use the GNU extensions that allow variadic macros, including with an empty list.
#define pips_user_warning
#define pips_assert(what, predicate)
common macros, two flavors depending on NDEBUG
string concatenate(const char *,...)
Return the concatenation of the given strings.
#define string_undefined_p(s)
unsigned char flex_uint8_t
unsigned int flex_uint32_t
struct yy_buffer_state * YY_BUFFER_STATE
signed char flex_int8_t
C99 systems have <inttypes.h>.
unsigned short int flex_uint16_t
flex_uint8_t YY_CHAR
Begin user sect3.
void splitc_error(const char *)
#define csplit_parser_warning(...)
#define yy_load_buffer_state
#define YY_NEW_FILE
Special action meaning "start processing a new file".
size_t csplit_file_offset_beginning
static const flex_int16_t yy_accept[271]
static char yy_hold_char
yy_hold_char holds the character lost when yytext is formed.
size_t get_csplit_file_offset_beginning()
Get the file position in the file to split where the current function begins:
static yy_state_type yy_last_accepting_state
static void yynoreturn yy_fatal_error(const char *msg)
void update_csplit_file_offset_information()
Function called each time a token is read to trac file position information:
static const YY_CHAR yy_meta[65]
#define YY_EXTRA_TYPE
Special case for "unistd.h", since it is non-ANSI.
static int yy_start
whether we need to initialize
static const flex_int16_t yy_def[316]
static YY_BUFFER_STATE * yy_buffer_stack
Stack as an array.
static int lf_count(string s)
int get_user_current_beginning()
Get the current line number in the file to split from the user point of view (before preprocessor exp...
static int yy_get_next_buffer(void)
#define LEXER_RETURN(t)
This is going to be the previous token because LEXER_RETURN is not used in case the lexer handles eit...
static const flex_int16_t yy_chk[860]
static size_t yy_buffer_stack_max
capacity of stack.
static yy_state_type yy_try_NUL_trans(yy_state_type current_state)
#define yypush_buffer_state
static int bracket_depth
To track nesting in brackets.
static int previous_keyword_token
#define YY_RESTORE_YY_MORE_OFFSET
static int yy_did_buffer_switch_on_eof
start state number
static int yy_init_globals(void)
#define yyensure_buffer_stack
static int user_current_beginning
int get_csplit_current_beginning()
#define EOB_ACT_END_OF_FILE
#define yypop_buffer_state
#define YY_CURRENT_BUFFER_LVALUE
Same as previous macro, but useful when we know that the buffer stack is not NULL or when we need an ...
#define YY_START
Translate the current start state into a value that can be later handed to BEGIN to return to the sta...
static const flex_int16_t yy_nxt[860]
#define yy_switch_to_buffer
size_t current_csplit_file_offset
static const flex_int32_t yy_rule_can_match_eol[73]
Table of booleans, true if rule could match eol.
#define YY_CURRENT_BUFFER
We provide macros for accessing buffer states in case in the future we want to put the buffer states ...
#define INITIAL
To track file line number automatically:
#define YY_READ_BUF_SIZE
Amount of stuff to slurp up with each read.
int csplit_line_number
To be exported to the parser for splitting the preprocessed file.
#define YY_INPUT(buf, result, max_size)
Gets input and stuffs it into "buf".
static int is_c_preprocessor_keyword_typedef(char *id)
See if id is a keyword, a typedef or an identifier.
#define YY_STATE_EOF(state)
Action number for EOF rule of a given start state.
#define YY_END_OF_BUFFER_CHAR
void reset_csplit_current_beginning()
This function is called at the end of any top-level C construct:
#define YY_FATAL_ERROR(msg)
Report a fatal error.
#define yyterminate()
No semi-colon after return; correct usage is to write "yyterminate();" - we don't want an extra ';' a...
static void update_csplit_current_beginning()
If we encounter a possible function begin, just snapshot the position of the function beginning:
#define yywrap
Macros after this point can all be overridden by user definitions in section 1.
#define yy_create_buffer
A lexical scanner generated by flex.
#define YY_DO_BEFORE_ACTION
Done after the current pattern has been matched and before the corresponding action - sets up yytext.
int user_line_number
To be exported to the parser for error messages related to the user file.
#define EOB_ACT_LAST_MATCH
size_t get_current_csplit_file_offset()
Get the current file position in the file to split:
#define TOKEN_UNDEFINED
The lexer cannot handle the ambiguity between named types and variables without extra-help.
#define YY_BUFFER_EOF_PENDING
When an EOF's been seen but there's still some text to process then we mark the buffer as YY_EOF_PEND...
static yy_state_type yy_get_previous_state(void)
static const YY_CHAR yy_ec[256]
#define yylex_destroy
Accessor methods to globals.
static char * yy_c_buf_p
Points to current character in buffer.
#define EOB_ACT_CONTINUE_SCAN
static const flex_int16_t yy_base[316]
static size_t yy_buffer_stack_top
!YY_STRUCT_YY_BUFFER_STATE
#define YY_BUF_SIZE
Size of default input buffer.
enum gather_comment_state_t gather_comment_state_machine
Indeed it does not work since csplit_copy() is called from splitc.y when a function definition is fou...
#define YY_SC_TO_UI(c)
Promotes a possibly negative, possibly signed char to an integer in range [0..255] for use as an arra...
static int csplit_current_beginning
static char * yy_last_accepting_cpos
gather_comment_state_t
A state-machine to gather the trailing comments of a statement with an heuristic to decide if some co...
@ GATHER_COMMENT
We gather comments in the previous top-level construct.
@ GATHER_SPACES
We gather only spaces in the previous top-level construct.
@ PUT_IN_NEXT_TOP_LEVEL_CONSTRUCT
Normal mode: comments and spaces are associated to the top-level construct to encounter:
void reset_csplit_line_number()
Reinitialise global position numbers for a new file.
string get_preprocessor_nth_scope(int)
string csplit_current_function_name
to know if this is the declaration of a function or not, to distinguish between a static variable and...
int preprocessor_scope_number(void)
bool csplit_is_static_p
static int enum_counter = 0;
int csplit_is_function
to know if the variable is declared inside or outside a function
int csplit_is_external
splitc.c
string csplit_definite_function_signature
string preprocessor_current_initial_file_name
The digestion of a user file by PIPS begins here.
string get_preprocessor_current_scope(void)
string csplit_definite_function_name
int check_signature_balance(void)
string csplit_current_function_name2
_int is_c_keyword_typedef(char *)
This function checks if s is a C keyword or typedef name and returns the token number thanks to the h...
int fprintf()
test sc_min : ce test s'appelle par : programme fichier1.data fichier2.data ...
static int line
FLEX_SCANNER.
#define TK_STATIC_DIMENSION
int yy_n_chars
Number of characters read into yy_ch_buf, not including EOB characters.
int yy_bs_column
The column count.
int yy_buf_size
current position in input buffer
int yy_fill_buffer
Whether to try to fill the input buffer when we reach the end of it.
int yy_is_our_buffer
Whether we "own" the buffer - i.e., we know we created it, and can realloc() it to grow it,...
int yy_bs_lineno
The line count.
char * yy_buf_pos
input buffer
int yy_at_bol
Whether we're considered to be at the beginning of a line.
int yy_is_interactive
Whether this is an "interactive" input source; if so, and if we're using stdio for input,...
This struct is not used in this scanner, but its presence is necessary.