diff options
Diffstat (limited to 'Build/source/texk/web2c/hitexdir/hiparser.c')
-rw-r--r-- | Build/source/texk/web2c/hitexdir/hiparser.c | 2928 |
1 files changed, 1531 insertions, 1397 deletions
diff --git a/Build/source/texk/web2c/hitexdir/hiparser.c b/Build/source/texk/web2c/hitexdir/hiparser.c index 6a86da87893..bf68d1a1be7 100644 --- a/Build/source/texk/web2c/hitexdir/hiparser.c +++ b/Build/source/texk/web2c/hitexdir/hiparser.c @@ -69,7 +69,7 @@ /* First part of user prologue. */ #line 2 "parser.y" - #line 11139 "format.w" + #line 11628 "format.w" #include "hibasetypes.h" #include <string.h> @@ -79,9 +79,9 @@ #include "hiput.h" extern char**hfont_name; - /*375:*/ + /*390:*/ uint32_t definition_bits[0x100/32][32]= { - #line 8341 "format.w" + #line 8757 "format.w" {0}}; #define SET_DBIT(N,K) ((N)>0xFF?1:(definition_bits[N/32][K] |= (1<<((N)&(32-1))))) @@ -91,52 +91,52 @@ uint32_t definition_bits[0x100/32][32]= { RNG("Definition",(D).n,max_fixed[(D).k]+1,max_ref[(D).k]); #define REF(K,N) REF_RNG(K,N);if(!GET_DBIT(N,K)) \ QUIT("Reference %d to %s before definition",(N),definition_name[K]) - /*:375*/ /*379:*/ + /*:390*/ /*394:*/ #define DEF_REF(D,K,M,N) DEF(D,K,M);\ if ((int)(M)>max_default[K]) QUIT("Defining non default reference %d for %s",M,definition_name[K]); \ if ((int)(N)>max_fixed[K]) QUIT("Defining reference %d for %s by non fixed reference %d",M,definition_name[K],N); - /*:379*/ + /*:394*/ extern void hset_entry(Entry*e,uint16_t i,uint32_t size, uint32_t xsize,char*file_name); - /*445:*/ + /*462:*/ #ifdef DEBUG #define YYDEBUG 1 extern int yydebug; #else #define YYDEBUG 0 #endif - /*:445*/ + /*:462*/ extern int yylex(void); - /*371:*/ + /*386:*/ void hset_max(Kind k,int n) { - #line 8183 "format.w" + #line 8598 "format.w" DBG(DBGDEF,"Setting max %s to %d\n",definition_name[k],n); RNG("Maximum",n,max_fixed[k]+1,MAX_REF(k)); if(n>max_ref[k]) max_ref[k]= n; } - /*:371*/ /*382:*/ + /*:386*/ /*397:*/ void check_param_def(Ref*df) { - #line 8494 "format.w" + #line 8918 "format.w" if(df->k!=int_kind&&df->k!=dimen_kind&&df->k!=glue_kind) QUIT("Kind %s not allowed in parameter list",definition_name[df->k]); if(df->n<=max_fixed[df->k]||max_default[df->k]<df->n) QUIT("Parameter %d for %s not allowed in parameter list",df->n,definition_name[df->k]); } - /*:382*/ /*444:*/ + /*:397*/ /*461:*/ extern int yylineno; int yyerror(const char*msg) { - #line 9634 "format.w" + #line 10097 "format.w" QUIT(" in line %d %s",yylineno,msg); return 0; } - /*:444*/ + /*:461*/ @@ -241,136 +241,143 @@ enum yysymbol_kind_t YYSYMBOL_MID = 70, /* "mid" */ YYSYMBOL_LINK = 71, /* "link" */ YYSYMBOL_OUTLINE = 72, /* "outline" */ - YYSYMBOL_UNKNOWN = 73, /* "unknown" */ - YYSYMBOL_STREAM = 74, /* "stream" */ - YYSYMBOL_STREAMDEF = 75, /* "stream (definition)" */ - YYSYMBOL_FIRST = 76, /* "first" */ - YYSYMBOL_LAST = 77, /* "last" */ - YYSYMBOL_TOP = 78, /* "top" */ - YYSYMBOL_NOREFERENCE = 79, /* "*" */ - YYSYMBOL_PAGE = 80, /* "page" */ - YYSYMBOL_RANGE = 81, /* "range" */ - YYSYMBOL_DIRECTORY = 82, /* "directory" */ - YYSYMBOL_SECTION = 83, /* "entry" */ - YYSYMBOL_DEFINITIONS = 84, /* "definitions" */ - YYSYMBOL_MAX = 85, /* "max" */ - YYSYMBOL_PARAM = 86, /* "param" */ - YYSYMBOL_FONT = 87, /* "font" */ - YYSYMBOL_CONTENT = 88, /* "content" */ - YYSYMBOL_YYACCEPT = 89, /* $accept */ - YYSYMBOL_glyph = 90, /* glyph */ - YYSYMBOL_content_node = 91, /* content_node */ - YYSYMBOL_start = 92, /* start */ - YYSYMBOL_integer = 93, /* integer */ - YYSYMBOL_string = 94, /* string */ - YYSYMBOL_number = 95, /* number */ - YYSYMBOL_dimension = 96, /* dimension */ - YYSYMBOL_xdimen = 97, /* xdimen */ - YYSYMBOL_xdimen_node = 98, /* xdimen_node */ - YYSYMBOL_order = 99, /* order */ - YYSYMBOL_stretch = 100, /* stretch */ - YYSYMBOL_penalty = 101, /* penalty */ - YYSYMBOL_rule_dimension = 102, /* rule_dimension */ - YYSYMBOL_rule = 103, /* rule */ - YYSYMBOL_rule_node = 104, /* rule_node */ - YYSYMBOL_explicit = 105, /* explicit */ - YYSYMBOL_kern = 106, /* kern */ - YYSYMBOL_plus = 107, /* plus */ - YYSYMBOL_minus = 108, /* minus */ - YYSYMBOL_glue = 109, /* glue */ - YYSYMBOL_glue_node = 110, /* glue_node */ - YYSYMBOL_position = 111, /* position */ - YYSYMBOL_content_list = 112, /* content_list */ - YYSYMBOL_estimate = 113, /* estimate */ - YYSYMBOL_list = 114, /* list */ - YYSYMBOL_115_1 = 115, /* $@1 */ - YYSYMBOL_text = 116, /* text */ - YYSYMBOL_txt = 117, /* txt */ - YYSYMBOL_118_2 = 118, /* $@2 */ - YYSYMBOL_box_dimen = 119, /* box_dimen */ - YYSYMBOL_box_shift = 120, /* box_shift */ - YYSYMBOL_box_glue_set = 121, /* box_glue_set */ - YYSYMBOL_box = 122, /* box */ - YYSYMBOL_hbox_node = 123, /* hbox_node */ - YYSYMBOL_vbox_node = 124, /* vbox_node */ - YYSYMBOL_box_flex = 125, /* box_flex */ - YYSYMBOL_box_options = 126, /* box_options */ - YYSYMBOL_hxbox_node = 127, /* hxbox_node */ - YYSYMBOL_vbox_dimen = 128, /* vbox_dimen */ - YYSYMBOL_vxbox_node = 129, /* vxbox_node */ - YYSYMBOL_box_goal = 130, /* box_goal */ - YYSYMBOL_hpack = 131, /* hpack */ - YYSYMBOL_max_depth = 132, /* max_depth */ - YYSYMBOL_vpack = 133, /* vpack */ - YYSYMBOL_134_3 = 134, /* $@3 */ - YYSYMBOL_135_4 = 135, /* $@4 */ - YYSYMBOL_ltype = 136, /* ltype */ - YYSYMBOL_leaders = 137, /* leaders */ - YYSYMBOL_baseline = 138, /* baseline */ - YYSYMBOL_139_5 = 139, /* $@5 */ - YYSYMBOL_cc_list = 140, /* cc_list */ - YYSYMBOL_lig_cc = 141, /* lig_cc */ - YYSYMBOL_ref = 142, /* ref */ - YYSYMBOL_ligature = 143, /* ligature */ - YYSYMBOL_144_6 = 144, /* $@6 */ - YYSYMBOL_replace_count = 145, /* replace_count */ - YYSYMBOL_disc = 146, /* disc */ - YYSYMBOL_disc_node = 147, /* disc_node */ - YYSYMBOL_par_dimen = 148, /* par_dimen */ - YYSYMBOL_par = 149, /* par */ - YYSYMBOL_150_7 = 150, /* $@7 */ - YYSYMBOL_math = 151, /* math */ - YYSYMBOL_on_off = 152, /* on_off */ - YYSYMBOL_span_count = 153, /* span_count */ - YYSYMBOL_table = 154, /* table */ - YYSYMBOL_image_aspect = 155, /* image_aspect */ - YYSYMBOL_image_width = 156, /* image_width */ - YYSYMBOL_image_height = 157, /* image_height */ - YYSYMBOL_image_spec = 158, /* image_spec */ - YYSYMBOL_image = 159, /* image */ - YYSYMBOL_max_value = 160, /* max_value */ - YYSYMBOL_placement = 161, /* placement */ - YYSYMBOL_def_node = 162, /* def_node */ - YYSYMBOL_unknown_bytes = 163, /* unknown_bytes */ - YYSYMBOL_unknown_node = 164, /* unknown_node */ - YYSYMBOL_unknown_nodes = 165, /* unknown_nodes */ - YYSYMBOL_stream_link = 166, /* stream_link */ - YYSYMBOL_stream_split = 167, /* stream_split */ - YYSYMBOL_stream_info = 168, /* stream_info */ + YYSYMBOL_COLOR = 73, /* "color" */ + YYSYMBOL_UNKNOWN = 74, /* "unknown" */ + YYSYMBOL_STREAM = 75, /* "stream" */ + YYSYMBOL_STREAMDEF = 76, /* "stream (definition)" */ + YYSYMBOL_FIRST = 77, /* "first" */ + YYSYMBOL_LAST = 78, /* "last" */ + YYSYMBOL_TOP = 79, /* "top" */ + YYSYMBOL_NOREFERENCE = 80, /* "*" */ + YYSYMBOL_PAGE = 81, /* "page" */ + YYSYMBOL_RANGE = 82, /* "range" */ + YYSYMBOL_DIRECTORY = 83, /* "directory" */ + YYSYMBOL_SECTION = 84, /* "entry" */ + YYSYMBOL_DEFINITIONS = 85, /* "definitions" */ + YYSYMBOL_MAX = 86, /* "max" */ + YYSYMBOL_PARAM = 87, /* "param" */ + YYSYMBOL_FONT = 88, /* "font" */ + YYSYMBOL_CONTENT = 89, /* "content" */ + YYSYMBOL_YYACCEPT = 90, /* $accept */ + YYSYMBOL_glyph = 91, /* glyph */ + YYSYMBOL_content_node = 92, /* content_node */ + YYSYMBOL_start = 93, /* start */ + YYSYMBOL_integer = 94, /* integer */ + YYSYMBOL_string = 95, /* string */ + YYSYMBOL_number = 96, /* number */ + YYSYMBOL_dimension = 97, /* dimension */ + YYSYMBOL_xdimen = 98, /* xdimen */ + YYSYMBOL_xdimen_node = 99, /* xdimen_node */ + YYSYMBOL_order = 100, /* order */ + YYSYMBOL_stretch = 101, /* stretch */ + YYSYMBOL_penalty = 102, /* penalty */ + YYSYMBOL_rule_dimension = 103, /* rule_dimension */ + YYSYMBOL_rule = 104, /* rule */ + YYSYMBOL_rule_node = 105, /* rule_node */ + YYSYMBOL_explicit = 106, /* explicit */ + YYSYMBOL_kern = 107, /* kern */ + YYSYMBOL_plus = 108, /* plus */ + YYSYMBOL_minus = 109, /* minus */ + YYSYMBOL_glue = 110, /* glue */ + YYSYMBOL_glue_node = 111, /* glue_node */ + YYSYMBOL_position = 112, /* position */ + YYSYMBOL_content_list = 113, /* content_list */ + YYSYMBOL_estimate = 114, /* estimate */ + YYSYMBOL_list = 115, /* list */ + YYSYMBOL_116_1 = 116, /* $@1 */ + YYSYMBOL_text = 117, /* text */ + YYSYMBOL_txt = 118, /* txt */ + YYSYMBOL_119_2 = 119, /* $@2 */ + YYSYMBOL_box_dimen = 120, /* box_dimen */ + YYSYMBOL_box_shift = 121, /* box_shift */ + YYSYMBOL_box_glue_set = 122, /* box_glue_set */ + YYSYMBOL_box = 123, /* box */ + YYSYMBOL_hbox_node = 124, /* hbox_node */ + YYSYMBOL_vbox_node = 125, /* vbox_node */ + YYSYMBOL_box_flex = 126, /* box_flex */ + YYSYMBOL_box_options = 127, /* box_options */ + YYSYMBOL_hxbox_node = 128, /* hxbox_node */ + YYSYMBOL_vbox_dimen = 129, /* vbox_dimen */ + YYSYMBOL_vxbox_node = 130, /* vxbox_node */ + YYSYMBOL_box_goal = 131, /* box_goal */ + YYSYMBOL_hpack = 132, /* hpack */ + YYSYMBOL_max_depth = 133, /* max_depth */ + YYSYMBOL_vpack = 134, /* vpack */ + YYSYMBOL_135_3 = 135, /* $@3 */ + YYSYMBOL_136_4 = 136, /* $@4 */ + YYSYMBOL_ltype = 137, /* ltype */ + YYSYMBOL_leaders = 138, /* leaders */ + YYSYMBOL_baseline = 139, /* baseline */ + YYSYMBOL_140_5 = 140, /* $@5 */ + YYSYMBOL_cc_list = 141, /* cc_list */ + YYSYMBOL_lig_cc = 142, /* lig_cc */ + YYSYMBOL_ref = 143, /* ref */ + YYSYMBOL_ligature = 144, /* ligature */ + YYSYMBOL_145_6 = 145, /* $@6 */ + YYSYMBOL_replace_count = 146, /* replace_count */ + YYSYMBOL_disc = 147, /* disc */ + YYSYMBOL_disc_node = 148, /* disc_node */ + YYSYMBOL_par_dimen = 149, /* par_dimen */ + YYSYMBOL_par = 150, /* par */ + YYSYMBOL_151_7 = 151, /* $@7 */ + YYSYMBOL_math = 152, /* math */ + YYSYMBOL_on_off = 153, /* on_off */ + YYSYMBOL_span_count = 154, /* span_count */ + YYSYMBOL_table = 155, /* table */ + YYSYMBOL_image_aspect = 156, /* image_aspect */ + YYSYMBOL_image_width = 157, /* image_width */ + YYSYMBOL_image_height = 158, /* image_height */ + YYSYMBOL_image_spec = 159, /* image_spec */ + YYSYMBOL_image = 160, /* image */ + YYSYMBOL_max_value = 161, /* max_value */ + YYSYMBOL_placement = 162, /* placement */ + YYSYMBOL_def_node = 163, /* def_node */ + YYSYMBOL_color = 164, /* color */ + YYSYMBOL_color_pair = 165, /* color_pair */ + YYSYMBOL_color_unset = 166, /* color_unset */ + YYSYMBOL_color_tripple = 167, /* color_tripple */ + YYSYMBOL_color_set = 168, /* color_set */ YYSYMBOL_169_8 = 169, /* $@8 */ - YYSYMBOL_stream_type = 170, /* stream_type */ - YYSYMBOL_stream_def_node = 171, /* stream_def_node */ - YYSYMBOL_stream_ins_node = 172, /* stream_ins_node */ - YYSYMBOL_stream = 173, /* stream */ - YYSYMBOL_page_priority = 174, /* page_priority */ - YYSYMBOL_stream_def_list = 175, /* stream_def_list */ - YYSYMBOL_page = 176, /* page */ - YYSYMBOL_177_9 = 177, /* $@9 */ - YYSYMBOL_178_10 = 178, /* $@10 */ - YYSYMBOL_hint = 179, /* hint */ - YYSYMBOL_directory_section = 180, /* directory_section */ - YYSYMBOL_181_11 = 181, /* $@11 */ - YYSYMBOL_entry_list = 182, /* entry_list */ - YYSYMBOL_entry = 183, /* entry */ - YYSYMBOL_definition_section = 184, /* definition_section */ - YYSYMBOL_185_12 = 185, /* $@12 */ - YYSYMBOL_definition_list = 186, /* definition_list */ - YYSYMBOL_max_definitions = 187, /* max_definitions */ - YYSYMBOL_max_list = 188, /* max_list */ - YYSYMBOL_def_list = 189, /* def_list */ - YYSYMBOL_parameters = 190, /* parameters */ - YYSYMBOL_named_param_list = 191, /* named_param_list */ - YYSYMBOL_param_list = 192, /* param_list */ - YYSYMBOL_font = 193, /* font */ - YYSYMBOL_font_head = 194, /* font_head */ - YYSYMBOL_font_param_list = 195, /* font_param_list */ - YYSYMBOL_font_param = 196, /* font_param */ - YYSYMBOL_fref = 197, /* fref */ - YYSYMBOL_xdimen_ref = 198, /* xdimen_ref */ - YYSYMBOL_param_ref = 199, /* param_ref */ - YYSYMBOL_stream_ref = 200, /* stream_ref */ - YYSYMBOL_content_section = 201, /* content_section */ - YYSYMBOL_202_13 = 202 /* $@13 */ + YYSYMBOL_unknown_bytes = 170, /* unknown_bytes */ + YYSYMBOL_unknown_node = 171, /* unknown_node */ + YYSYMBOL_unknown_nodes = 172, /* unknown_nodes */ + YYSYMBOL_stream_link = 173, /* stream_link */ + YYSYMBOL_stream_split = 174, /* stream_split */ + YYSYMBOL_stream_info = 175, /* stream_info */ + YYSYMBOL_176_9 = 176, /* $@9 */ + YYSYMBOL_stream_type = 177, /* stream_type */ + YYSYMBOL_stream_def_node = 178, /* stream_def_node */ + YYSYMBOL_stream_ins_node = 179, /* stream_ins_node */ + YYSYMBOL_stream = 180, /* stream */ + YYSYMBOL_page_priority = 181, /* page_priority */ + YYSYMBOL_stream_def_list = 182, /* stream_def_list */ + YYSYMBOL_page = 183, /* page */ + YYSYMBOL_184_10 = 184, /* $@10 */ + YYSYMBOL_185_11 = 185, /* $@11 */ + YYSYMBOL_hint = 186, /* hint */ + YYSYMBOL_directory_section = 187, /* directory_section */ + YYSYMBOL_188_12 = 188, /* $@12 */ + YYSYMBOL_entry_list = 189, /* entry_list */ + YYSYMBOL_entry = 190, /* entry */ + YYSYMBOL_definition_section = 191, /* definition_section */ + YYSYMBOL_192_13 = 192, /* $@13 */ + YYSYMBOL_definition_list = 193, /* definition_list */ + YYSYMBOL_max_definitions = 194, /* max_definitions */ + YYSYMBOL_max_list = 195, /* max_list */ + YYSYMBOL_def_list = 196, /* def_list */ + YYSYMBOL_parameters = 197, /* parameters */ + YYSYMBOL_named_param_list = 198, /* named_param_list */ + YYSYMBOL_param_list = 199, /* param_list */ + YYSYMBOL_font = 200, /* font */ + YYSYMBOL_font_head = 201, /* font_head */ + YYSYMBOL_font_param_list = 202, /* font_param_list */ + YYSYMBOL_font_param = 203, /* font_param */ + YYSYMBOL_fref = 204, /* fref */ + YYSYMBOL_xdimen_ref = 205, /* xdimen_ref */ + YYSYMBOL_param_ref = 206, /* param_ref */ + YYSYMBOL_stream_ref = 207, /* stream_ref */ + YYSYMBOL_content_section = 208, /* content_section */ + YYSYMBOL_209_14 = 209 /* $@14 */ }; typedef enum yysymbol_kind_t yysymbol_kind_t; @@ -698,19 +705,19 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 720 +#define YYLAST 761 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 89 +#define YYNTOKENS 90 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 114 +#define YYNNTS 120 /* YYNRULES -- Number of rules. */ -#define YYNRULES 285 +#define YYNRULES 302 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 596 +#define YYNSTATES 638 /* YYMAXUTOK -- Last valid token kind. */ -#define YYMAXUTOK 343 +#define YYMAXUTOK 344 /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM @@ -758,42 +765,44 @@ static const yytype_int8 yytranslate[] = 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88 + 85, 86, 87, 88, 89 }; #if YYDEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_int16 yyrline[] = { - 0, 274, 274, 277, 280, 284, 284, 288, 292, 292, - 298, 300, 302, 304, 307, 310, 314, 317, 320, 323, - 327, 332, 334, 336, 338, 342, 346, 349, 353, 353, - 356, 362, 365, 367, 369, 372, 375, 379, 381, 384, - 386, 389, 392, 396, 402, 405, 406, 407, 410, 413, - 420, 419, 428, 428, 430, 433, 436, 439, 442, 445, - 448, 451, 451, 456, 460, 463, 467, 470, 473, 478, - 482, 485, 488, 488, 490, 494, 497, 501, 505, 506, - 511, 515, 518, 521, 524, 528, 532, 536, 538, 542, - 542, 547, 547, 553, 557, 557, 559, 561, 563, 565, - 568, 571, 574, 577, 581, 581, 590, 595, 595, 598, - 601, 604, 607, 607, 614, 618, 621, 625, 629, 632, - 637, 642, 644, 647, 650, 653, 653, 658, 662, 666, - 669, 672, 675, 678, 681, 685, 689, 691, 694, 698, - 702, 705, 708, 711, 715, 718, 722, 726, 728, 731, - 734, 737, 740, 744, 748, 752, 756, 761, 765, 769, - 776, 778, 780, 782, 785, 790, 795, 805, 808, 812, - 815, 817, 820, 820, 820, 820, 821, 823, 827, 829, - 832, 835, 835, 839, 841, 843, 845, 849, 855, 860, - 860, 862, 865, 868, 873, 876, 880, 880, 882, 884, - 882, 891, 894, 898, 900, 900, 903, 903, 904, 909, - 909, 916, 916, 918, 945, 945, 947, 950, 953, 956, - 959, 962, 965, 968, 971, 974, 977, 980, 983, 986, - 989, 992, 995, 1001, 1004, 1007, 1010, 1013, 1016, 1019, - 1022, 1025, 1028, 1031, 1034, 1037, 1040, 1045, 1048, 1051, - 1055, 1056, 1059, 1063, 1067, 1067, 1073, 1075, 1080, 1080, - 1083, 1086, 1089, 1092, 1095, 1098, 1101, 1104, 1108, 1112, - 1115, 1118, 1124, 1127, 1131, 1135, 1138, 1141, 1144, 1147, - 1150, 1153, 1156, 1160, 1167, 1167 + 0, 276, 276, 279, 282, 286, 286, 290, 294, 294, + 300, 302, 304, 306, 309, 312, 316, 319, 322, 325, + 329, 334, 336, 338, 340, 344, 348, 351, 355, 355, + 358, 364, 367, 369, 371, 374, 377, 381, 383, 386, + 388, 391, 394, 398, 404, 407, 408, 409, 412, 415, + 422, 421, 430, 430, 432, 435, 438, 441, 444, 447, + 450, 453, 453, 458, 462, 465, 469, 472, 475, 480, + 484, 487, 490, 490, 492, 496, 499, 503, 507, 508, + 513, 517, 520, 523, 526, 530, 534, 538, 540, 544, + 544, 549, 549, 555, 559, 559, 561, 563, 565, 567, + 570, 573, 576, 579, 583, 583, 592, 597, 597, 600, + 603, 606, 609, 609, 616, 620, 623, 627, 631, 634, + 639, 644, 646, 649, 652, 655, 655, 660, 664, 668, + 671, 674, 677, 680, 683, 687, 691, 693, 696, 700, + 704, 707, 710, 713, 717, 720, 724, 728, 730, 733, + 736, 739, 742, 746, 750, 754, 758, 763, 767, 771, + 778, 780, 782, 784, 787, 792, 796, 801, 811, 818, + 825, 829, 830, 833, 837, 838, 839, 842, 843, 845, + 845, 852, 856, 861, 864, 868, 871, 873, 876, 876, + 876, 876, 877, 879, 883, 885, 888, 891, 891, 895, + 897, 899, 901, 905, 911, 916, 916, 918, 921, 924, + 929, 932, 936, 936, 938, 940, 938, 947, 950, 954, + 956, 956, 959, 959, 960, 965, 965, 972, 972, 974, + 1007, 1007, 1009, 1012, 1015, 1018, 1021, 1024, 1027, 1030, + 1033, 1036, 1039, 1042, 1045, 1048, 1051, 1054, 1057, 1060, + 1066, 1069, 1072, 1075, 1078, 1081, 1084, 1087, 1090, 1093, + 1096, 1099, 1102, 1105, 1110, 1113, 1116, 1120, 1121, 1124, + 1128, 1132, 1132, 1138, 1140, 1145, 1145, 1148, 1151, 1154, + 1157, 1160, 1163, 1166, 1169, 1173, 1177, 1180, 1183, 1189, + 1192, 1196, 1200, 1203, 1206, 1209, 1212, 1215, 1218, 1221, + 1225, 1232, 1232 }; #endif @@ -822,9 +831,9 @@ static const char *const yytname[] = "\"center\"", "\"expand\"", "\"baseline\"", "\"ligature\"", "\"disc\"", "\"par\"", "\"math\"", "\"on\"", "\"off\"", "\"adjust\"", "\"table\"", "\"item\"", "\"image\"", "\"width\"", "\"height\"", "\"label\"", - "\"bot\"", "\"mid\"", "\"link\"", "\"outline\"", "\"unknown\"", - "\"stream\"", "\"stream (definition)\"", "\"first\"", "\"last\"", - "\"top\"", "\"*\"", "\"page\"", "\"range\"", "\"directory\"", + "\"bot\"", "\"mid\"", "\"link\"", "\"outline\"", "\"color\"", + "\"unknown\"", "\"stream\"", "\"stream (definition)\"", "\"first\"", + "\"last\"", "\"top\"", "\"*\"", "\"page\"", "\"range\"", "\"directory\"", "\"entry\"", "\"definitions\"", "\"max\"", "\"param\"", "\"font\"", "\"content\"", "$accept", "glyph", "content_node", "start", "integer", "string", "number", "dimension", "xdimen", "xdimen_node", "order", @@ -838,15 +847,16 @@ static const char *const yytname[] = "replace_count", "disc", "disc_node", "par_dimen", "par", "$@7", "math", "on_off", "span_count", "table", "image_aspect", "image_width", "image_height", "image_spec", "image", "max_value", "placement", - "def_node", "unknown_bytes", "unknown_node", "unknown_nodes", - "stream_link", "stream_split", "stream_info", "$@8", "stream_type", + "def_node", "color", "color_pair", "color_unset", "color_tripple", + "color_set", "$@8", "unknown_bytes", "unknown_node", "unknown_nodes", + "stream_link", "stream_split", "stream_info", "$@9", "stream_type", "stream_def_node", "stream_ins_node", "stream", "page_priority", - "stream_def_list", "page", "$@9", "$@10", "hint", "directory_section", - "$@11", "entry_list", "entry", "definition_section", "$@12", + "stream_def_list", "page", "$@10", "$@11", "hint", "directory_section", + "$@12", "entry_list", "entry", "definition_section", "$@13", "definition_list", "max_definitions", "max_list", "def_list", "parameters", "named_param_list", "param_list", "font", "font_head", "font_param_list", "font_param", "fref", "xdimen_ref", "param_ref", - "stream_ref", "content_section", "$@13", YY_NULLPTR + "stream_ref", "content_section", "$@14", YY_NULLPTR }; static const char * @@ -856,7 +866,7 @@ yysymbol_name (yysymbol_kind_t yysymbol) } #endif -#define YYPACT_NINF (-275) +#define YYPACT_NINF (-408) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) @@ -870,66 +880,70 @@ yysymbol_name (yysymbol_kind_t yysymbol) STATE-NUM. */ static const yytype_int16 yypact[] = { - 101, 25, 127, 133, 163, -275, 94, 139, -275, -275, - 93, -275, -275, 214, -275, 47, 151, -275, -275, 165, - -275, -275, -275, 114, -275, 159, 249, 259, 178, -275, - 174, -275, 9, -275, -275, 645, -275, -275, -275, -275, - -275, -275, -275, -275, 271, 320, -275, 252, 269, 269, - 269, 269, 269, 269, 269, 269, 269, 269, 269, 260, - 269, 269, 269, 275, 282, 103, 198, 287, 108, 250, - 213, 261, 261, 268, 261, 59, 57, 219, 213, 269, - 60, 213, 90, 78, 270, 63, 295, 316, 325, 269, - 269, -275, -275, 336, 352, 353, 354, 355, 356, 358, - 359, 360, 364, 366, 368, 372, 373, 374, 376, 377, - 378, 384, 338, 183, -275, 213, 261, 198, 271, 153, - 213, 394, 261, 269, 250, 392, 393, 271, 396, 271, - 131, 244, 398, 401, 399, -275, -275, -275, 412, 413, - 414, -275, -275, -275, -275, 220, -275, 153, 415, 416, - -275, 177, 420, 261, 397, 422, 424, 261, 268, 427, - 428, 261, 267, 430, 268, 351, 389, -275, 434, 261, - -275, 268, -275, 411, 192, 437, 438, -275, 439, 440, - 441, 442, 443, 444, 78, 446, 269, -275, 394, 447, - 219, -275, -275, 34, -275, 448, -275, -275, 78, 78, - -275, 396, 452, 267, 267, 455, -275, 456, 590, 457, - 459, 261, 462, 78, 463, 265, -275, -275, 219, 70, - -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, - -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, - -275, 465, 466, 467, 468, 470, 471, 472, 473, 474, - 475, 476, -275, 478, 479, 480, 210, -275, 481, -275, - -275, 482, 261, 485, 394, -275, -275, -275, 487, 488, - 489, -275, -275, -275, -275, -275, -275, -275, -275, -275, - 153, -275, -275, 269, -275, 490, -275, 329, 261, 432, - -275, -275, 261, 304, -275, -275, -275, 219, 219, 78, - -275, 397, 491, -275, 261, 268, -275, 261, 492, 213, - -275, -275, -275, 394, -275, -275, 394, -275, -275, -275, - 217, -275, -275, -275, 78, -275, -275, 78, -275, 78, - 78, 396, 493, -275, 58, 394, 78, 394, 78, -275, - -275, -275, 78, 78, -275, -275, -275, 494, -275, 381, - -275, -275, -275, 496, 495, 499, 78, 78, -275, -275, - -275, -275, 497, 500, -275, 78, 78, -275, -275, -275, - -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, - -275, -275, 501, 502, -275, -275, 504, -275, 503, -275, - 394, 394, -275, -275, -275, -275, 506, -275, 261, -275, - 136, -275, 261, -275, -275, 261, 261, 78, -275, -275, - -275, -275, -275, 432, 219, -275, 268, -275, 267, 261, - -275, 507, 510, 61, -275, -275, -275, 394, -275, -275, - 483, -275, 78, -275, -275, -275, 513, -275, 477, -275, - -275, -275, -275, -275, 334, 78, 78, -275, 302, 453, - -275, -275, 97, -275, -275, -275, 261, -275, 394, 515, - -275, -275, 394, -275, 516, 464, -275, 186, -275, -275, - 505, -275, -275, -275, -275, -275, -275, -275, -275, -275, - -275, 78, 78, 267, 78, -275, -275, -275, 153, -275, - -275, -275, -275, -275, 317, -275, -275, -275, 458, -275, - 313, -275, -275, -275, 535, -275, -275, -275, -275, 522, - 64, 394, -275, 261, -275, 250, 269, 269, 269, 269, - 269, 269, 269, 269, -275, -275, -275, 78, -275, 120, - -275, -275, -275, -275, -275, -275, -275, -275, -275, 459, - 322, -275, -275, -275, -275, -275, -275, 64, -275, 78, - -275, -275, 183, 271, 153, 250, 261, 269, 250, 392, - -275, -275, -275, -275, -275, 521, 394, 394, 524, 525, - 527, 261, 528, 529, 530, 531, 532, -275, 533, 394, - -275, -275, -275, -275, -275, -275, -275, -275, -275, 78, - -275, 394, 486, -275, 269, 45 + 86, -5, 111, 141, 144, -408, 72, 196, -408, -408, + 117, -408, -408, 207, -408, 121, 132, -408, -408, 145, + -408, -408, -408, 185, -408, 220, 241, 253, 181, -408, + 203, -408, 50, -408, -408, 685, -408, -408, -408, -408, + -408, -408, -408, -408, 261, 396, -408, 287, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, + 310, 299, 299, 299, 314, 331, 103, 227, 334, 186, + 319, 244, 166, 166, 324, 166, 54, 80, 146, 244, + 299, 75, 244, 78, 55, 282, 96, 272, 346, 66, + 372, 299, 299, -408, -408, 375, 376, 379, 380, 381, + 382, 383, 384, 385, 386, 388, 389, 391, 392, 393, + 394, 395, 397, 400, 401, 398, 157, -408, 244, 166, + 227, 261, 205, 244, 406, 166, 299, 319, 404, -408, + 405, 261, 407, 261, 38, 303, 408, 409, 410, -408, + -408, -408, 418, 419, 420, -408, -408, -408, -408, 337, + -408, 205, 422, 423, -408, 214, 424, 166, 403, 426, + 431, 166, 324, 432, 433, 166, 316, 434, 324, 354, + 402, -408, 437, 166, -408, 324, -408, 413, 291, 440, + 441, -408, 442, 444, 451, 452, 453, 456, 55, 458, + 299, -408, 406, 459, 146, -408, -408, 47, -408, 461, + -408, -408, 55, 55, -408, 407, 462, 316, 316, 463, + -408, 467, 630, 471, 454, 166, 475, 55, 476, 308, + 477, 481, -408, -408, 146, 58, -408, -408, -408, -408, + -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, + -408, -408, -408, -408, -408, -408, -408, -408, 486, 487, + 488, 490, 491, 493, 494, 495, 496, 498, 499, -408, + 501, 502, 503, 506, 240, -408, 507, -408, -408, 508, + 166, 509, 406, -408, -408, -408, 510, 511, 512, -408, + -408, -408, -408, -408, -408, -408, -408, -408, 205, -408, + -408, 299, -408, 513, -408, 353, 166, 479, -408, -408, + 166, 342, -408, -408, -408, 146, 146, 55, -408, 403, + 514, -408, 166, 324, -408, 166, 516, 244, -408, -408, + -408, 406, -408, -408, 406, -408, -408, -408, 190, -408, + -408, -408, 55, -408, -408, 55, -408, 55, 55, 407, + 517, -408, 65, 406, 55, 406, 55, -408, -408, -408, + 55, 55, -408, -408, -408, 518, -408, 457, -408, -408, + -408, 210, -408, -408, 519, 520, 55, 55, -408, -408, + -408, -408, 515, 521, -408, 55, 55, -408, -408, -408, + -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, + -408, 525, 506, 528, -408, 529, 523, -408, -408, 531, + -408, 532, -408, 406, 406, -408, -408, -408, -408, 533, + -408, 166, -408, 147, -408, 166, -408, -408, 166, 166, + 55, -408, -408, -408, -408, -408, 479, 146, -408, 324, + -408, 316, 166, -408, 535, 536, 79, -408, -408, -408, + 406, -408, -408, 522, -408, 55, -408, -408, -408, 537, + -408, 504, -408, -408, -408, -408, -408, 371, 55, 55, + -408, 258, 468, -408, 539, -408, 94, -408, -408, -408, + 166, -408, 406, 542, 236, 525, -408, -408, -408, -408, + -408, 406, -408, 543, 500, -408, 216, -408, -408, 534, + -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, + 55, 55, 316, 55, -408, -408, -408, 205, -408, -408, + -408, -408, -408, 292, -408, -408, -408, 483, -408, 296, + -408, -408, -408, -408, 575, -408, -408, -408, -408, 547, + 43, 406, -408, 549, -408, 330, 525, -408, -408, 166, + -408, 319, 299, 299, 299, 299, 299, 299, 299, 299, + -408, -408, -408, 55, -408, 112, -408, -408, -408, -408, + -408, -408, -408, -408, -408, 454, 307, -408, -408, -408, + -408, -408, -408, 43, -408, 55, 550, -408, 554, 555, + 556, 557, -408, -408, -408, 157, 261, 205, 319, 166, + 299, 319, 404, -408, -408, -408, -408, -408, 558, 406, + 559, -408, -408, -408, -408, 406, 562, 563, 564, 166, + 565, 566, 567, 568, 569, -408, 570, 283, 406, -408, + -408, -408, -408, -408, -408, -408, -408, -408, -408, 571, + 55, -408, -408, 406, 530, -408, 299, 64 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -937,100 +951,104 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_int16 yydefact[] = { - 0, 0, 0, 0, 0, 1, 0, 0, 204, 209, - 0, 203, 206, 0, 284, 0, 0, 211, 44, 0, - 205, 207, 214, 0, 45, 0, 0, 0, 4, 210, - 0, 212, 4, 285, 46, 0, 32, 72, 73, 95, - 94, 121, 189, 190, 0, 0, 213, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, 220, 225, + 0, 219, 222, 0, 301, 0, 0, 227, 44, 0, + 221, 223, 230, 0, 45, 0, 0, 0, 4, 226, + 0, 228, 4, 302, 46, 0, 32, 72, 73, 95, + 94, 121, 205, 206, 0, 0, 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, - 0, 0, 0, 64, 0, 87, 0, 0, 0, 0, - 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 8, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 111, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 33, 0, 0, 0, 47, 0, - 163, 0, 0, 0, 0, 6, 5, 26, 0, 0, - 0, 10, 11, 12, 29, 0, 28, 0, 0, 0, - 34, 0, 0, 19, 37, 0, 0, 0, 64, 0, - 0, 0, 0, 0, 64, 87, 0, 89, 0, 0, - 78, 64, 4, 0, 96, 0, 0, 104, 0, 0, - 112, 0, 115, 0, 119, 0, 122, 269, 0, 0, - 0, 136, 137, 47, 270, 0, 138, 254, 0, 0, - 44, 47, 0, 0, 0, 0, 140, 0, 47, 0, - 0, 148, 0, 0, 0, 0, 170, 271, 0, 0, - 208, 218, 227, 217, 222, 223, 221, 225, 226, 219, - 220, 224, 232, 159, 229, 230, 231, 228, 216, 215, - 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 112, 0, 0, 0, 0, 198, 0, 48, - 44, 0, 0, 0, 0, 161, 162, 160, 0, 0, - 0, 2, 7, 3, 27, 272, 282, 13, 15, 14, - 0, 31, 278, 0, 35, 0, 36, 0, 0, 39, - 42, 275, 0, 66, 70, 71, 65, 0, 0, 0, - 86, 37, 0, 91, 0, 64, 93, 0, 0, 0, - 97, 98, 99, 0, 103, 280, 0, 106, 281, 276, - 0, 114, 116, 277, 118, 120, 125, 0, 128, 0, - 0, 47, 0, 135, 47, 132, 0, 129, 0, 50, - 44, 139, 0, 0, 146, 141, 143, 0, 147, 150, - 279, 157, 158, 0, 176, 0, 0, 0, 188, 184, - 185, 186, 0, 0, 183, 0, 0, 235, 248, 238, - 234, 247, 236, 239, 237, 249, 240, 241, 242, 243, - 244, 167, 0, 194, 246, 250, 252, 245, 0, 233, - 0, 256, 164, 201, 202, 30, 0, 273, 17, 18, - 0, 38, 0, 41, 63, 0, 0, 0, 84, 82, - 83, 81, 85, 39, 0, 77, 64, 88, 0, 0, - 80, 0, 0, 0, 100, 101, 102, 0, 109, 110, - 0, 117, 0, 127, 124, 123, 0, 255, 0, 133, - 134, 130, 131, 44, 0, 0, 0, 142, 0, 152, - 165, 171, 0, 193, 191, 192, 0, 181, 0, 0, - 168, 195, 0, 251, 0, 0, 258, 0, 259, 274, - 0, 21, 22, 23, 24, 25, 40, 67, 68, 69, - 74, 0, 0, 0, 0, 79, 43, 283, 0, 105, - 107, 126, 253, 52, 61, 49, 144, 145, 152, 149, - 0, 153, 169, 172, 47, 173, 174, 177, 175, 0, - 0, 0, 166, 0, 257, 33, 0, 0, 0, 0, - 0, 0, 0, 0, 16, 76, 75, 0, 90, 0, - 51, 60, 58, 59, 55, 57, 56, 54, 53, 0, - 0, 154, 155, 151, 20, 179, 178, 0, 182, 0, - 199, 268, 0, 0, 0, 33, 0, 0, 33, 0, - 92, 113, 108, 62, 156, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 180, 0, 0, - 260, 265, 266, 261, 264, 262, 263, 267, 187, 0, - 196, 200, 0, 197, 0, 0 + 33, 0, 0, 0, 64, 0, 87, 0, 0, 0, + 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 9, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 111, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 33, 0, 179, + 0, 0, 47, 0, 163, 0, 0, 0, 0, 6, + 5, 26, 0, 0, 0, 10, 11, 12, 29, 0, + 28, 0, 0, 0, 34, 0, 0, 19, 37, 0, + 0, 0, 64, 0, 0, 0, 0, 0, 64, 87, + 0, 89, 0, 0, 78, 64, 4, 0, 96, 0, + 0, 104, 0, 0, 112, 0, 115, 0, 119, 0, + 122, 286, 0, 0, 0, 136, 137, 47, 287, 0, + 138, 271, 0, 0, 44, 47, 0, 0, 0, 0, + 140, 0, 47, 0, 0, 148, 0, 0, 0, 0, + 0, 0, 186, 288, 0, 0, 224, 234, 243, 233, + 238, 239, 237, 241, 242, 235, 236, 240, 248, 159, + 249, 245, 246, 247, 244, 232, 231, 44, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 112, + 0, 0, 0, 0, 0, 214, 0, 48, 44, 0, + 0, 0, 0, 161, 162, 160, 0, 0, 0, 2, + 7, 3, 27, 289, 299, 13, 15, 14, 0, 31, + 295, 0, 35, 0, 36, 0, 0, 39, 42, 292, + 0, 66, 70, 71, 65, 0, 0, 0, 86, 37, + 0, 91, 0, 64, 93, 0, 0, 0, 97, 98, + 99, 0, 103, 297, 0, 106, 298, 293, 0, 114, + 116, 294, 118, 120, 125, 0, 128, 0, 0, 47, + 0, 135, 47, 132, 0, 129, 0, 50, 44, 139, + 0, 0, 146, 141, 143, 0, 147, 150, 296, 157, + 158, 0, 182, 181, 192, 0, 0, 0, 204, 200, + 201, 202, 0, 0, 199, 0, 0, 252, 265, 255, + 251, 264, 253, 256, 254, 266, 257, 258, 259, 260, + 261, 0, 173, 0, 183, 0, 210, 263, 267, 269, + 262, 0, 250, 0, 273, 164, 217, 218, 30, 0, + 290, 17, 18, 0, 38, 0, 41, 63, 0, 0, + 0, 84, 82, 83, 81, 85, 39, 0, 77, 64, + 88, 0, 0, 80, 0, 0, 0, 100, 101, 102, + 0, 109, 110, 0, 117, 0, 127, 124, 123, 0, + 272, 0, 133, 134, 130, 131, 44, 0, 0, 0, + 142, 0, 152, 165, 0, 187, 0, 209, 207, 208, + 0, 197, 0, 0, 0, 173, 173, 177, 180, 184, + 211, 0, 268, 0, 0, 275, 0, 276, 291, 0, + 21, 22, 23, 24, 25, 40, 67, 68, 69, 74, + 0, 0, 0, 0, 79, 43, 300, 0, 105, 107, + 126, 270, 52, 61, 49, 144, 145, 152, 149, 0, + 153, 166, 185, 188, 47, 189, 190, 193, 191, 0, + 0, 0, 167, 0, 170, 0, 173, 173, 173, 0, + 274, 33, 0, 0, 0, 0, 0, 0, 0, 0, + 16, 76, 75, 0, 90, 0, 51, 60, 58, 59, + 55, 57, 56, 54, 53, 0, 0, 154, 155, 151, + 20, 195, 194, 0, 198, 0, 0, 172, 0, 0, + 0, 0, 178, 215, 285, 0, 0, 0, 33, 0, + 0, 33, 0, 92, 113, 108, 62, 156, 0, 0, + 0, 171, 176, 175, 174, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 196, 0, 0, 0, 277, + 282, 283, 278, 281, 279, 280, 284, 203, 169, 0, + 0, 168, 212, 216, 0, 213, 0, 0 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -275, -275, -58, -23, 115, -98, -106, 11, -67, -240, - -275, -274, -14, -109, -97, 226, -68, -13, 245, 132, - -102, -225, -148, 207, -82, -59, -275, -275, -275, -275, - 182, -20, -275, 498, -143, 235, -275, 379, -275, -275, - -275, -161, -275, 387, -275, -275, -275, -275, 433, 431, - -275, -275, -275, -45, -104, -275, -275, -100, 168, -275, - -275, -275, -275, 340, -275, -275, -275, -275, 65, -275, - -95, -275, -275, 180, -275, -275, -275, 20, -275, -275, - -275, -275, -22, -275, -275, -275, -275, -275, -275, -275, - -275, -275, -275, -275, -275, -275, -275, -275, -275, -275, - -275, -165, 119, -94, -275, -275, -275, -275, -108, -237, - -110, -275, -275, -275 + -408, -408, -83, -23, 88, -100, -123, -3, -65, -263, + -408, -233, -32, -104, -99, 242, -69, -26, 268, 152, + -119, -245, -163, 231, -102, -27, -408, -408, -408, -408, + 260, -52, -408, 538, -138, 262, -408, 411, -408, -408, + -408, -156, -408, 416, -408, -408, -408, -408, 464, 465, + -408, -408, -408, -43, -101, -408, -408, -98, 184, -408, + -408, -408, -408, 370, -408, -408, -408, -408, 77, -408, + -96, -408, -408, 193, 61, -407, -382, 206, -408, -408, + -408, -408, -408, 28, -408, -408, -408, -408, -28, -408, + -408, -408, -408, -408, -408, -408, -408, -408, -408, -408, + -408, -408, -408, -408, -408, -408, -408, -152, 142, -78, + -408, -408, -408, -408, -187, -249, -94, -408, -408, -408 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - 0, 134, 34, 201, 137, 93, 145, 153, 154, 363, - 475, 401, 138, 147, 148, 36, 182, 152, 289, 403, - 155, 174, 24, 25, 340, 202, 443, 494, 538, 539, - 158, 301, 407, 159, 37, 38, 414, 302, 39, 171, - 40, 299, 163, 167, 168, 305, 416, 313, 175, 178, - 316, 529, 430, 551, 181, 320, 184, 185, 41, 188, - 189, 432, 195, 196, 210, 205, 349, 449, 501, 213, - 214, 112, 268, 31, 354, 507, 452, 547, 548, 364, - 510, 365, 42, 43, 355, 462, 591, 258, 383, 567, - 2, 3, 12, 15, 21, 7, 13, 23, 17, 27, - 386, 261, 197, 198, 263, 264, 391, 468, 552, 190, - 199, 218, 11, 18 + 0, 138, 34, 205, 141, 95, 149, 157, 158, 373, + 494, 414, 142, 151, 152, 36, 186, 156, 297, 416, + 159, 178, 24, 25, 348, 206, 456, 513, 564, 565, + 162, 309, 420, 163, 37, 38, 427, 310, 39, 175, + 40, 307, 167, 171, 172, 313, 429, 321, 179, 182, + 324, 555, 443, 584, 185, 328, 188, 189, 41, 192, + 193, 445, 199, 200, 214, 209, 357, 462, 520, 217, + 218, 115, 276, 31, 535, 475, 476, 392, 393, 263, + 364, 527, 466, 573, 574, 374, 530, 375, 42, 43, + 365, 481, 633, 266, 396, 605, 2, 3, 12, 15, + 21, 7, 13, 23, 17, 27, 399, 269, 201, 202, + 271, 272, 404, 487, 585, 194, 203, 224, 11, 18 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1038,256 +1056,270 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 30, 151, 35, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 186, 127, 128, 129, 248, 253, - 246, 139, 247, 149, 254, 156, 209, 207, 332, 257, - 255, 262, 176, 179, 180, 183, 187, 194, 280, 390, - 259, 212, 342, 343, 217, 219, 260, 287, 172, 243, - 19, 20, 339, 162, 173, 336, 338, 408, 410, 193, - 409, 411, 208, 141, 259, 142, 32, 114, 143, 206, - 242, 114, 245, 172, 358, 249, 326, 63, 252, 146, - 330, 172, 157, 157, 284, 157, 488, 157, 150, 177, - 64, 427, 366, 172, 327, 200, 329, 114, 173, 71, - 32, 502, 71, 72, 1, 348, 285, 4, 357, 132, - 200, 260, 385, 133, 141, 114, 142, 28, 29, 143, - 331, 359, 360, 361, 356, 324, 241, 5, 476, 200, - 146, 477, 478, 177, 144, 169, 6, 165, 293, 335, - 337, 194, 10, 545, 166, 194, 359, 360, 361, 471, - 191, 192, 347, 561, 351, 472, 473, 474, 146, 141, - 562, 142, 32, 33, 143, 193, 436, 193, 292, 8, - 425, 395, 296, 194, 481, 334, 334, 482, 9, 144, - 307, 14, 400, 141, 114, 142, 48, 35, 143, 135, - 49, 136, 439, 283, 441, 193, 362, 50, 51, 52, - 265, 266, 489, 53, 135, 114, 136, 421, 516, 267, - 517, 518, 505, 519, 381, 520, 382, 16, 511, 141, - 114, 142, 172, 428, 143, 54, 114, 429, 240, 55, - 56, 57, 244, 277, 278, 279, 22, 513, 396, 58, - 412, 173, 521, 522, 310, 311, 312, 59, 26, 260, - 47, 523, 187, 187, 60, 44, 164, 484, 170, 113, - 61, 62, 45, 46, 422, 431, 126, 141, 433, 142, - 434, 435, 143, 388, 362, 362, 114, 440, 150, 442, - 91, 92, 130, 445, 446, 418, 549, 203, 204, 131, - 423, 146, 470, 173, 140, 493, 400, 454, 455, 400, - 400, 211, 114, 404, 269, 270, 458, 459, 141, 498, - 142, 161, 438, 143, 438, 417, 297, 298, 419, 141, - 542, 142, 527, 215, 143, 191, 192, 579, 141, 564, - 142, 216, 94, 143, 405, 406, 95, 32, 495, 589, - 220, 578, 239, 96, 97, 98, 398, 399, 479, 99, - 530, 531, 532, 533, 534, 535, 536, 537, 221, 222, - 223, 224, 225, 30, 226, 227, 228, 465, 467, 187, - 229, 100, 230, 491, 231, 101, 102, 103, 232, 233, - 234, 499, 235, 236, 237, 104, 496, 497, 105, 509, - 238, 362, 106, 506, 503, 107, 483, 172, 211, 256, - 108, 109, 259, 273, 173, 271, 110, 111, 272, 553, - 554, 555, 556, 557, 558, 559, 274, 275, 276, 281, - 282, 35, 525, 526, 286, 528, 290, 288, 291, 504, - 485, 294, 295, 543, 300, 362, 166, 304, 306, 173, - 309, 314, 315, 317, 318, 319, 321, 448, 323, 322, - 325, 328, 333, 574, 573, 569, 341, 570, 575, 344, - 345, 346, 32, 402, 576, 546, 350, 352, 560, 367, - 368, 369, 370, 543, 371, 372, 373, 374, 375, 376, - 377, 563, 378, 379, 380, 384, 387, 571, 173, 389, - 566, 392, 393, 394, 397, 415, 420, 437, 447, 146, - 450, 451, 546, 453, 284, 460, 457, 28, 461, 464, - 469, 486, 252, 456, 487, 490, 35, 492, 71, 512, - 500, 515, 514, 524, 550, 540, 544, 577, 580, 581, - 590, 582, 583, 584, 585, 586, 587, 588, 568, 424, - 65, 259, 572, 173, 362, 480, 413, 444, 426, 595, - 308, 456, 303, 251, 250, 353, 362, 66, 466, 67, - 68, 594, 69, 541, 70, 146, 463, 565, 592, 593, - 160, 508, 362, 0, 0, 0, 71, 72, 0, 73, - 74, 75, 76, 0, 0, 0, 77, 0, 0, 0, - 78, 79, 80, 81, 82, 65, 259, 83, 84, 85, - 86, 0, 0, 0, 0, 0, 87, 0, 88, 89, - 90, 0, 66, 0, 67, 68, 0, 69, 0, 70, - 0, 331, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 71, 72, 0, 73, 74, 75, 76, 0, 0, - 0, 77, 0, 0, 0, 78, 79, 80, 81, 82, - 65, 0, 83, 84, 85, 86, 0, 0, 0, 0, - 0, 87, 0, 88, 89, 90, 0, 66, 0, 67, - 68, 0, 69, 0, 70, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 71, 72, 0, 73, - 74, 75, 76, 0, 0, 0, 77, 0, 0, 0, - 78, 79, 80, 81, 82, 0, 0, 83, 84, 85, - 86, 0, 0, 0, 0, 0, 87, 0, 88, 89, - 90 + 30, 155, 35, 211, 255, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 190, 131, 132, + 133, 253, 166, 254, 143, 260, 153, 403, 160, 261, + 268, 265, 262, 270, 295, 180, 183, 184, 187, 191, + 198, 347, 421, 423, 216, 340, 221, 288, 223, 225, + 117, 350, 351, 267, 250, 177, 422, 424, 176, 213, + 197, 176, 368, 212, 344, 346, 150, 176, 536, 161, + 161, 267, 161, 117, 161, 249, 181, 252, 4, 440, + 256, 176, 117, 259, 376, 117, 145, 204, 146, 1, + 292, 147, 356, 537, 538, 268, 334, 32, 522, 32, + 338, 177, 210, 154, 507, 398, 72, 273, 274, 136, + 301, 5, 293, 137, 335, 248, 337, 275, 64, 150, + 72, 73, 181, 571, 19, 20, 204, 220, 204, 579, + 367, 355, 65, 169, 339, 369, 370, 371, 195, 196, + 170, 369, 370, 371, 6, 594, 366, 198, 150, 176, + 8, 198, 595, 117, 580, 581, 582, 9, 300, 173, + 490, 332, 304, 139, 500, 140, 491, 492, 493, 197, + 315, 197, 145, 413, 146, 343, 345, 147, 501, 342, + 342, 198, 495, 438, 408, 496, 497, 449, 28, 29, + 359, 35, 145, 117, 146, 508, 441, 147, 434, 10, + 442, 197, 372, 525, 247, 452, 14, 454, 251, 531, + 16, 145, 148, 146, 463, 48, 147, 464, 22, 49, + 145, 117, 146, 32, 33, 147, 50, 51, 52, 26, + 291, 148, 53, 139, 117, 140, 539, 268, 542, 533, + 543, 544, 534, 545, 394, 546, 395, 44, 409, 177, + 145, 117, 146, 47, 54, 147, 45, 46, 55, 56, + 57, 431, 191, 191, 145, 517, 146, 401, 58, 147, + 93, 94, 547, 548, 435, 503, 59, 60, 215, 117, + 425, 549, 372, 372, 61, 150, 575, 628, 489, 629, + 62, 63, 413, 512, 116, 413, 413, 417, 436, 207, + 208, 177, 145, 568, 146, 444, 117, 147, 446, 430, + 447, 448, 432, 145, 597, 146, 130, 453, 147, 455, + 451, 134, 451, 458, 459, 556, 557, 558, 559, 560, + 561, 562, 563, 533, 577, 168, 534, 174, 135, 468, + 469, 144, 618, 318, 319, 320, 553, 154, 472, 473, + 285, 286, 287, 219, 616, 630, 586, 587, 588, 589, + 590, 591, 592, 277, 278, 305, 306, 165, 195, 196, + 411, 412, 418, 419, 32, 514, 30, 502, 222, 226, + 484, 486, 227, 523, 191, 228, 229, 230, 231, 232, + 233, 234, 235, 498, 236, 237, 518, 238, 239, 240, + 241, 242, 246, 243, 372, 529, 244, 245, 96, 176, + 215, 264, 97, 267, 281, 279, 280, 177, 510, 98, + 99, 100, 282, 283, 284, 101, 289, 290, 294, 504, + 298, 515, 516, 296, 35, 299, 302, 303, 308, 526, + 170, 314, 317, 524, 322, 323, 325, 102, 326, 372, + 312, 103, 104, 105, 569, 327, 329, 32, 177, 330, + 331, 106, 333, 336, 107, 341, 349, 352, 108, 109, + 611, 353, 110, 551, 552, 354, 554, 111, 112, 358, + 360, 362, 596, 113, 114, 363, 607, 572, 608, 612, + 377, 378, 379, 613, 380, 381, 614, 382, 383, 384, + 385, 569, 386, 387, 150, 388, 389, 390, 177, 391, + 415, 397, 400, 402, 405, 406, 407, 410, 428, 609, + 433, 450, 460, 461, 467, 465, 593, 471, 474, 480, + 572, 470, 478, 479, 28, 519, 583, 488, 483, 505, + 506, 511, 35, 521, 292, 72, 532, 259, 599, 540, + 566, 570, 550, 606, 509, 576, 600, 541, 601, 602, + 603, 604, 610, 437, 615, 617, 619, 620, 621, 622, + 623, 624, 625, 626, 627, 631, 177, 426, 499, 457, + 66, 267, 372, 439, 150, 311, 316, 485, 257, 361, + 258, 470, 482, 637, 567, 372, 578, 67, 477, 68, + 69, 598, 70, 632, 71, 635, 636, 0, 528, 0, + 634, 164, 0, 0, 372, 0, 72, 73, 0, 74, + 75, 76, 77, 0, 0, 0, 78, 0, 0, 0, + 79, 80, 81, 82, 83, 66, 267, 84, 85, 86, + 87, 0, 0, 0, 0, 0, 88, 0, 89, 90, + 91, 92, 67, 0, 68, 69, 0, 70, 0, 71, + 0, 0, 339, 0, 0, 0, 0, 0, 0, 0, + 0, 72, 73, 0, 74, 75, 76, 77, 0, 0, + 0, 78, 0, 0, 0, 79, 80, 81, 82, 83, + 66, 0, 84, 85, 86, 87, 0, 0, 0, 0, + 0, 88, 0, 89, 90, 91, 92, 67, 0, 68, + 69, 0, 70, 0, 71, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 72, 73, 0, 74, + 75, 76, 77, 0, 0, 0, 78, 0, 0, 0, + 79, 80, 81, 82, 83, 0, 0, 84, 85, 86, + 87, 0, 0, 0, 0, 0, 88, 0, 89, 90, + 91, 92 }; static const yytype_int16 yycheck[] = { - 23, 69, 25, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 81, 60, 61, 62, 120, 123, - 118, 66, 119, 68, 124, 70, 85, 85, 193, 127, - 125, 129, 77, 78, 79, 80, 81, 82, 147, 264, - 6, 86, 203, 204, 89, 90, 128, 153, 3, 116, - 3, 4, 200, 73, 77, 198, 199, 297, 298, 82, - 297, 298, 85, 6, 6, 8, 3, 7, 11, 6, - 115, 7, 117, 3, 4, 120, 186, 68, 123, 68, - 190, 3, 71, 72, 151, 74, 25, 76, 28, 78, - 81, 316, 240, 3, 188, 32, 190, 7, 121, 41, - 3, 4, 41, 42, 3, 211, 151, 82, 218, 6, - 32, 193, 260, 10, 6, 7, 8, 3, 4, 11, - 86, 76, 77, 78, 218, 184, 115, 0, 402, 32, - 119, 405, 406, 122, 26, 78, 3, 78, 158, 198, - 199, 186, 3, 79, 85, 190, 76, 77, 78, 13, - 60, 61, 210, 33, 213, 19, 20, 21, 147, 6, - 40, 8, 3, 4, 11, 188, 331, 190, 157, 6, - 313, 280, 161, 218, 414, 198, 199, 414, 84, 26, - 169, 88, 288, 6, 7, 8, 12, 210, 11, 6, - 16, 8, 335, 16, 337, 218, 219, 23, 24, 25, - 69, 70, 427, 29, 6, 7, 8, 309, 22, 78, - 24, 25, 452, 27, 4, 29, 6, 3, 458, 6, - 7, 8, 3, 6, 11, 51, 7, 10, 113, 55, - 56, 57, 117, 13, 14, 15, 85, 462, 283, 65, - 299, 264, 56, 57, 52, 53, 54, 73, 83, 331, - 72, 65, 297, 298, 80, 6, 74, 418, 76, 7, - 86, 87, 3, 4, 309, 324, 6, 6, 327, 8, - 329, 330, 11, 262, 297, 298, 7, 336, 28, 338, - 9, 10, 7, 342, 343, 305, 511, 17, 18, 7, - 313, 280, 398, 316, 7, 443, 402, 356, 357, 405, - 406, 6, 7, 292, 60, 61, 365, 366, 6, 7, - 8, 43, 335, 11, 337, 304, 49, 50, 307, 6, - 7, 8, 483, 7, 11, 60, 61, 567, 6, 7, - 8, 6, 12, 11, 30, 31, 16, 3, 4, 579, - 4, 566, 4, 23, 24, 25, 17, 18, 407, 29, - 33, 34, 35, 36, 37, 38, 39, 40, 6, 6, - 6, 6, 6, 386, 6, 6, 6, 390, 391, 414, - 6, 51, 6, 432, 6, 55, 56, 57, 6, 6, - 6, 448, 6, 6, 6, 65, 445, 446, 68, 456, - 6, 414, 72, 452, 452, 75, 416, 3, 6, 6, - 80, 81, 6, 4, 427, 7, 86, 87, 7, 517, - 518, 519, 520, 521, 522, 523, 4, 4, 4, 4, - 4, 444, 481, 482, 4, 484, 4, 30, 4, 452, - 419, 4, 4, 500, 4, 458, 85, 48, 4, 462, - 29, 4, 4, 4, 4, 4, 4, 66, 4, 6, - 4, 4, 4, 557, 556, 553, 4, 554, 558, 4, - 4, 4, 3, 31, 559, 510, 4, 4, 527, 4, - 4, 4, 4, 540, 4, 4, 4, 4, 4, 4, - 4, 539, 4, 4, 4, 4, 4, 555, 511, 4, - 549, 4, 4, 4, 4, 4, 4, 4, 4, 488, - 4, 6, 547, 4, 571, 4, 6, 3, 6, 6, - 4, 4, 557, 16, 4, 32, 539, 4, 41, 4, - 67, 57, 6, 18, 513, 67, 4, 6, 4, 4, - 589, 4, 4, 4, 4, 4, 4, 4, 552, 313, - 5, 6, 555, 566, 567, 413, 301, 340, 313, 594, - 171, 16, 165, 122, 121, 215, 579, 22, 390, 24, - 25, 75, 27, 498, 29, 554, 386, 547, 591, 591, - 72, 452, 595, -1, -1, -1, 41, 42, -1, 44, + 23, 70, 25, 86, 123, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 82, 61, 62, + 63, 121, 74, 122, 67, 126, 69, 272, 71, 127, + 132, 131, 128, 133, 157, 78, 79, 80, 81, 82, + 83, 204, 305, 306, 87, 197, 89, 151, 91, 92, + 7, 207, 208, 6, 119, 78, 305, 306, 3, 86, + 83, 3, 4, 86, 202, 203, 69, 3, 475, 72, + 73, 6, 75, 7, 77, 118, 79, 120, 83, 324, + 123, 3, 7, 126, 247, 7, 6, 32, 8, 3, + 155, 11, 215, 475, 476, 197, 190, 3, 4, 3, + 194, 124, 6, 28, 25, 268, 41, 69, 70, 6, + 162, 0, 155, 10, 192, 118, 194, 79, 68, 122, + 41, 42, 125, 80, 3, 4, 32, 61, 32, 536, + 224, 214, 82, 79, 87, 77, 78, 79, 60, 61, + 86, 77, 78, 79, 3, 33, 224, 190, 151, 3, + 6, 194, 40, 7, 536, 537, 538, 85, 161, 79, + 13, 188, 165, 6, 427, 8, 19, 20, 21, 192, + 173, 194, 6, 296, 8, 202, 203, 11, 427, 202, + 203, 224, 415, 321, 288, 418, 419, 339, 3, 4, + 217, 214, 6, 7, 8, 440, 6, 11, 317, 3, + 10, 224, 225, 466, 116, 343, 89, 345, 120, 472, + 3, 6, 26, 8, 4, 12, 11, 7, 86, 16, + 6, 7, 8, 3, 4, 11, 23, 24, 25, 84, + 16, 26, 29, 6, 7, 8, 481, 339, 22, 3, + 24, 25, 6, 27, 4, 29, 6, 6, 291, 272, + 6, 7, 8, 72, 51, 11, 3, 4, 55, 56, + 57, 313, 305, 306, 6, 7, 8, 270, 65, 11, + 9, 10, 56, 57, 317, 431, 73, 74, 6, 7, + 307, 65, 305, 306, 81, 288, 531, 4, 411, 6, + 87, 88, 415, 456, 7, 418, 419, 300, 321, 17, + 18, 324, 6, 7, 8, 332, 7, 11, 335, 312, + 337, 338, 315, 6, 7, 8, 6, 344, 11, 346, + 343, 7, 345, 350, 351, 33, 34, 35, 36, 37, + 38, 39, 40, 3, 4, 75, 6, 77, 7, 366, + 367, 7, 605, 52, 53, 54, 502, 28, 375, 376, + 13, 14, 15, 7, 599, 618, 543, 544, 545, 546, + 547, 548, 549, 60, 61, 49, 50, 43, 60, 61, + 17, 18, 30, 31, 3, 4, 399, 429, 6, 4, + 403, 404, 6, 466, 427, 6, 6, 6, 6, 6, + 6, 6, 6, 420, 6, 6, 461, 6, 6, 6, + 6, 6, 4, 6, 427, 470, 6, 6, 12, 3, + 6, 6, 16, 6, 4, 7, 7, 440, 445, 23, + 24, 25, 4, 4, 4, 29, 4, 4, 4, 432, + 4, 458, 459, 30, 457, 4, 4, 4, 4, 466, + 86, 4, 29, 466, 4, 4, 4, 51, 4, 472, + 48, 55, 56, 57, 519, 4, 4, 3, 481, 6, + 4, 65, 4, 4, 68, 4, 4, 4, 72, 73, + 589, 4, 76, 500, 501, 4, 503, 81, 82, 4, + 4, 4, 565, 87, 88, 4, 586, 530, 587, 590, + 4, 4, 4, 591, 4, 4, 592, 4, 4, 4, + 4, 566, 4, 4, 507, 4, 4, 4, 531, 3, + 31, 4, 4, 4, 4, 4, 4, 4, 4, 588, + 4, 4, 4, 66, 4, 6, 553, 6, 3, 6, + 573, 16, 4, 4, 3, 67, 539, 4, 6, 4, + 4, 4, 565, 4, 609, 41, 4, 590, 575, 6, + 67, 4, 18, 585, 32, 6, 6, 57, 4, 4, + 4, 4, 588, 321, 6, 6, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 599, 309, 426, 348, + 5, 6, 605, 321, 587, 169, 175, 403, 124, 219, + 125, 16, 399, 636, 517, 618, 535, 22, 392, 24, + 25, 573, 27, 630, 29, 633, 76, -1, 466, -1, + 633, 73, -1, -1, 637, -1, 41, 42, -1, 44, 45, 46, 47, -1, -1, -1, 51, -1, -1, -1, 55, 56, 57, 58, 59, 5, 6, 62, 63, 64, 65, -1, -1, -1, -1, -1, 71, -1, 73, 74, - 75, -1, 22, -1, 24, 25, -1, 27, -1, 29, - -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, + 75, 76, 22, -1, 24, 25, -1, 27, -1, 29, + -1, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, 41, 42, -1, 44, 45, 46, 47, -1, -1, -1, 51, -1, -1, -1, 55, 56, 57, 58, 59, 5, -1, 62, 63, 64, 65, -1, -1, -1, -1, - -1, 71, -1, 73, 74, 75, -1, 22, -1, 24, + -1, 71, -1, 73, 74, 75, 76, 22, -1, 24, 25, -1, 27, -1, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 41, 42, -1, 44, 45, 46, 47, -1, -1, -1, 51, -1, -1, -1, 55, 56, 57, 58, 59, -1, -1, 62, 63, 64, 65, -1, -1, -1, -1, -1, 71, -1, 73, 74, - 75 + 75, 76 }; /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 3, 179, 180, 82, 0, 3, 184, 6, 84, - 3, 201, 181, 185, 88, 182, 3, 187, 202, 3, - 4, 183, 85, 186, 111, 112, 83, 188, 3, 4, - 92, 162, 3, 4, 91, 92, 104, 123, 124, 127, - 129, 147, 171, 172, 6, 3, 4, 72, 12, 16, + 0, 3, 186, 187, 83, 0, 3, 191, 6, 85, + 3, 208, 188, 192, 89, 189, 3, 194, 209, 3, + 4, 190, 86, 193, 112, 113, 84, 195, 3, 4, + 93, 163, 3, 4, 92, 93, 105, 124, 125, 128, + 130, 148, 178, 179, 6, 3, 4, 72, 12, 16, 23, 24, 25, 29, 51, 55, 56, 57, 65, 73, - 80, 86, 87, 68, 81, 5, 22, 24, 25, 27, - 29, 41, 42, 44, 45, 46, 47, 51, 55, 56, - 57, 58, 59, 62, 63, 64, 65, 71, 73, 74, - 75, 9, 10, 94, 12, 16, 23, 24, 25, 29, - 51, 55, 56, 57, 65, 68, 72, 75, 80, 81, - 86, 87, 160, 7, 7, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 6, 142, 142, 142, - 7, 7, 6, 10, 90, 6, 8, 93, 101, 142, - 7, 6, 8, 11, 26, 95, 96, 102, 103, 142, - 28, 105, 106, 96, 97, 109, 142, 96, 119, 122, - 122, 43, 120, 131, 119, 78, 85, 132, 133, 78, - 119, 128, 3, 92, 110, 137, 142, 96, 138, 142, - 142, 143, 105, 142, 145, 146, 97, 142, 148, 149, - 198, 60, 61, 92, 142, 151, 152, 191, 192, 199, - 32, 92, 114, 17, 18, 154, 6, 91, 92, 114, - 153, 6, 142, 158, 159, 7, 6, 142, 200, 142, - 4, 6, 6, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, - 93, 96, 142, 97, 93, 142, 94, 103, 109, 142, - 137, 138, 142, 143, 146, 159, 6, 94, 176, 6, - 113, 190, 94, 193, 194, 69, 70, 78, 161, 60, - 61, 7, 7, 4, 4, 4, 4, 13, 14, 15, - 102, 4, 4, 16, 97, 142, 4, 95, 30, 107, - 4, 4, 96, 120, 4, 4, 96, 49, 50, 130, - 4, 120, 126, 132, 48, 134, 4, 96, 126, 29, - 52, 53, 54, 136, 4, 4, 139, 4, 4, 4, - 144, 4, 6, 4, 114, 4, 199, 192, 4, 192, - 199, 86, 190, 4, 92, 114, 123, 114, 123, 111, - 113, 4, 130, 130, 4, 4, 4, 91, 95, 155, - 4, 114, 4, 152, 163, 173, 192, 199, 4, 76, - 77, 78, 92, 98, 168, 170, 111, 4, 4, 4, + 74, 81, 87, 88, 68, 82, 5, 22, 24, 25, + 27, 29, 41, 42, 44, 45, 46, 47, 51, 55, + 56, 57, 58, 59, 62, 63, 64, 65, 71, 73, + 74, 75, 76, 9, 10, 95, 12, 16, 23, 24, + 25, 29, 51, 55, 56, 57, 65, 68, 72, 73, + 76, 81, 82, 87, 88, 161, 7, 7, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 6, 143, 143, 143, 7, 7, 6, 10, 91, 6, + 8, 94, 102, 143, 7, 6, 8, 11, 26, 96, + 97, 103, 104, 143, 28, 106, 107, 97, 98, 110, + 143, 97, 120, 123, 123, 43, 121, 132, 120, 79, + 86, 133, 134, 79, 120, 129, 3, 93, 111, 138, + 143, 97, 139, 143, 143, 144, 106, 143, 146, 147, + 98, 143, 149, 150, 205, 60, 61, 93, 143, 152, + 153, 198, 199, 206, 32, 93, 115, 17, 18, 155, + 6, 92, 93, 115, 154, 6, 143, 159, 160, 7, + 61, 143, 6, 143, 207, 143, 4, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 4, 94, 97, 143, + 98, 94, 143, 95, 104, 110, 143, 138, 139, 143, + 144, 147, 160, 169, 6, 95, 183, 6, 114, 197, + 95, 200, 201, 69, 70, 79, 162, 60, 61, 7, + 7, 4, 4, 4, 4, 13, 14, 15, 103, 4, + 4, 16, 98, 143, 4, 96, 30, 108, 4, 4, + 97, 121, 4, 4, 97, 49, 50, 131, 4, 121, + 127, 133, 48, 135, 4, 97, 127, 29, 52, 53, + 54, 137, 4, 4, 140, 4, 4, 4, 145, 4, + 6, 4, 115, 4, 206, 199, 4, 199, 206, 87, + 197, 4, 93, 115, 124, 115, 124, 112, 114, 4, + 131, 131, 4, 4, 4, 92, 96, 156, 4, 115, + 4, 153, 4, 4, 170, 180, 199, 206, 4, 77, + 78, 79, 93, 99, 175, 177, 112, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 6, 177, 4, 111, 189, 4, 96, 4, - 110, 195, 4, 4, 4, 102, 142, 4, 17, 18, - 95, 100, 31, 108, 96, 30, 31, 121, 98, 198, - 98, 198, 114, 107, 125, 4, 135, 96, 120, 96, - 4, 109, 142, 92, 104, 123, 124, 110, 6, 10, - 141, 114, 150, 114, 114, 114, 190, 4, 92, 123, - 114, 123, 114, 115, 112, 114, 114, 4, 66, 156, - 4, 6, 165, 4, 114, 114, 16, 6, 114, 114, - 4, 6, 174, 162, 6, 92, 147, 92, 196, 4, - 95, 13, 19, 20, 21, 99, 100, 100, 100, 114, - 108, 98, 198, 120, 130, 96, 4, 4, 25, 110, - 32, 114, 4, 111, 116, 4, 114, 114, 7, 97, - 67, 157, 4, 91, 92, 98, 114, 164, 191, 97, - 169, 98, 4, 110, 6, 57, 22, 24, 25, 27, - 29, 56, 57, 65, 18, 114, 114, 130, 114, 140, - 33, 34, 35, 36, 37, 38, 39, 40, 117, 118, - 67, 157, 7, 97, 4, 79, 142, 166, 167, 110, - 96, 142, 197, 197, 197, 197, 197, 197, 197, 197, - 114, 33, 40, 91, 7, 166, 114, 178, 101, 94, - 103, 105, 106, 109, 143, 146, 159, 6, 110, 98, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 98, - 114, 175, 92, 171, 75, 142 + 4, 3, 167, 168, 4, 6, 184, 4, 112, 196, + 4, 97, 4, 111, 202, 4, 4, 4, 103, 143, + 4, 17, 18, 96, 101, 31, 109, 97, 30, 31, + 122, 99, 205, 99, 205, 115, 108, 126, 4, 136, + 97, 121, 97, 4, 110, 143, 93, 105, 124, 125, + 111, 6, 10, 142, 115, 151, 115, 115, 115, 197, + 4, 93, 124, 115, 124, 115, 116, 113, 115, 115, + 4, 66, 157, 4, 7, 6, 172, 4, 115, 115, + 16, 6, 115, 115, 3, 165, 166, 167, 4, 4, + 6, 181, 163, 6, 93, 148, 93, 203, 4, 96, + 13, 19, 20, 21, 100, 101, 101, 101, 115, 109, + 99, 205, 121, 131, 97, 4, 4, 25, 111, 32, + 115, 4, 112, 117, 4, 115, 115, 7, 98, 67, + 158, 4, 4, 92, 93, 99, 115, 171, 198, 98, + 176, 99, 4, 3, 6, 164, 165, 166, 166, 111, + 6, 57, 22, 24, 25, 27, 29, 56, 57, 65, + 18, 115, 115, 131, 115, 141, 33, 34, 35, 36, + 37, 38, 39, 40, 118, 119, 67, 158, 7, 98, + 4, 80, 143, 173, 174, 111, 6, 4, 164, 165, + 166, 166, 166, 97, 143, 204, 204, 204, 204, 204, + 204, 204, 204, 115, 33, 40, 92, 7, 173, 115, + 6, 4, 4, 4, 4, 185, 102, 95, 104, 106, + 107, 110, 144, 147, 160, 6, 111, 6, 99, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, + 99, 4, 115, 182, 93, 178, 76, 143 }; /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */ static const yytype_uint8 yyr1[] = { - 0, 89, 90, 91, 92, 93, 93, 90, 94, 94, - 95, 95, 95, 96, 96, 96, 97, 97, 97, 97, - 98, 99, 99, 99, 99, 100, 101, 91, 102, 102, - 103, 104, 91, 105, 105, 106, 91, 107, 107, 108, - 108, 109, 91, 110, 111, 112, 112, 113, 113, 114, - 115, 114, 116, 116, 117, 117, 117, 117, 117, 117, - 117, 118, 117, 119, 120, 120, 121, 121, 121, 122, - 123, 124, 91, 91, 125, 126, 126, 127, 128, 128, - 129, 130, 130, 130, 130, 131, 127, 132, 132, 134, - 133, 135, 133, 129, 91, 91, 136, 136, 136, 136, - 137, 137, 137, 91, 139, 138, 91, 140, 140, 141, - 141, 142, 144, 143, 91, 145, 145, 146, 146, 146, - 147, 91, 148, 149, 149, 150, 149, 149, 91, 151, - 151, 151, 151, 151, 151, 91, 152, 152, 151, 91, - 153, 91, 91, 91, 154, 154, 91, 155, 155, 156, - 156, 157, 157, 158, 158, 158, 158, 159, 91, 160, - 161, 161, 161, 161, 91, 91, 162, 162, 162, 91, - 163, 163, 164, 164, 164, 164, 165, 165, 166, 166, - 167, 169, 168, 170, 170, 170, 170, 171, 172, 91, - 91, 173, 173, 91, 174, 174, 175, 175, 177, 178, - 176, 91, 91, 179, 181, 180, 182, 182, 183, 185, - 184, 186, 186, 187, 188, 188, 160, 160, 160, 160, - 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, - 160, 160, 160, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, - 189, 189, 190, 191, 192, 192, 193, 194, 195, 195, - 196, 196, 196, 196, 196, 196, 196, 196, 197, 198, - 199, 200, 91, 91, 91, 91, 91, 91, 91, 91, - 91, 91, 91, 110, 202, 201 + 0, 90, 91, 92, 93, 94, 94, 91, 95, 95, + 96, 96, 96, 97, 97, 97, 98, 98, 98, 98, + 99, 100, 100, 100, 100, 101, 102, 92, 103, 103, + 104, 105, 92, 106, 106, 107, 92, 108, 108, 109, + 109, 110, 92, 111, 112, 113, 113, 114, 114, 115, + 116, 115, 117, 117, 118, 118, 118, 118, 118, 118, + 118, 119, 118, 120, 121, 121, 122, 122, 122, 123, + 124, 125, 92, 92, 126, 127, 127, 128, 129, 129, + 130, 131, 131, 131, 131, 132, 128, 133, 133, 135, + 134, 136, 134, 130, 92, 92, 137, 137, 137, 137, + 138, 138, 138, 92, 140, 139, 92, 141, 141, 142, + 142, 143, 145, 144, 92, 146, 146, 147, 147, 147, + 148, 92, 149, 150, 150, 151, 150, 150, 92, 152, + 152, 152, 152, 152, 152, 92, 153, 153, 152, 92, + 154, 92, 92, 92, 155, 155, 92, 156, 156, 157, + 157, 158, 158, 159, 159, 159, 159, 160, 92, 161, + 162, 162, 162, 162, 92, 92, 92, 163, 164, 164, + 164, 165, 165, 166, 167, 167, 167, 168, 168, 169, + 163, 92, 92, 163, 163, 92, 170, 170, 171, 171, + 171, 171, 172, 172, 173, 173, 174, 176, 175, 177, + 177, 177, 177, 178, 179, 92, 92, 180, 180, 92, + 181, 181, 182, 182, 184, 185, 183, 92, 92, 186, + 188, 187, 189, 189, 190, 192, 191, 193, 193, 194, + 195, 195, 161, 161, 161, 161, 161, 161, 161, 161, + 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, + 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, + 163, 163, 163, 163, 163, 163, 163, 196, 196, 197, + 198, 199, 199, 200, 201, 202, 202, 203, 203, 203, + 203, 203, 203, 203, 203, 204, 205, 206, 207, 92, + 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, + 111, 209, 208 }; /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */ @@ -1309,19 +1341,21 @@ static const yytype_int8 yyr2[] = 3, 3, 2, 3, 3, 4, 1, 1, 1, 4, 1, 4, 5, 4, 4, 4, 4, 1, 0, 2, 0, 2, 0, 4, 5, 5, 6, 2, 4, 2, - 1, 1, 1, 0, 5, 5, 7, 5, 6, 6, - 0, 2, 1, 1, 1, 1, 0, 2, 1, 1, - 3, 0, 4, 1, 1, 1, 1, 10, 4, 1, - 1, 2, 2, 5, 0, 1, 0, 2, 0, 0, - 10, 5, 5, 3, 0, 6, 0, 2, 5, 0, - 6, 0, 2, 4, 0, 4, 2, 2, 2, 2, + 1, 1, 1, 0, 5, 5, 6, 7, 6, 5, + 1, 4, 3, 0, 5, 5, 5, 2, 4, 0, + 6, 4, 4, 5, 6, 6, 0, 2, 1, 1, + 1, 1, 0, 2, 1, 1, 3, 0, 4, 1, + 1, 1, 1, 10, 4, 1, 1, 2, 2, 5, + 0, 1, 0, 2, 0, 0, 10, 5, 5, 3, + 0, 6, 0, 2, 5, 0, 6, 0, 2, 4, + 0, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 1, 2, 2, 4, 1, 3, 2, 4, 2, 2, - 5, 5, 5, 5, 5, 5, 5, 5, 1, 1, - 1, 1, 4, 5, 6, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 0, 5 + 5, 5, 5, 5, 5, 5, 5, 1, 2, 2, + 4, 1, 3, 2, 4, 2, 2, 5, 5, 5, + 5, 5, 5, 5, 5, 1, 1, 1, 1, 4, + 5, 6, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 0, 5 }; @@ -2055,1202 +2089,1210 @@ yyreduce: switch (yyn) { case 2: /* glyph: UNSIGNED REFERENCE */ -#line 274 "parser.y" +#line 276 "parser.y" { #line 421 "format.w" (yyval.c).c= (yyvsp[-1].u);REF(font_kind,(yyvsp[0].u));(yyval.c).f= (yyvsp[0].u);} -#line 2063 "parser.c" +#line 2097 "parser.c" break; case 3: /* content_node: start "glyph" glyph ">" */ -#line 277 "parser.y" +#line 279 "parser.y" { #line 422 "format.w" hput_tags((yyvsp[-3].u),hput_glyph(&((yyvsp[-1].c))));} -#line 2071 "parser.c" +#line 2105 "parser.c" break; case 4: /* start: "<" */ -#line 280 "parser.y" +#line 282 "parser.y" { #line 423 "format.w" HPUTNODE;(yyval.u)= (uint32_t)(hpos++-hstart);} -#line 2079 "parser.c" +#line 2113 "parser.c" break; case 6: /* integer: UNSIGNED */ -#line 284 "parser.y" +#line 286 "parser.y" { - #line 951 "format.w" + #line 953 "format.w" RNG("number",(yyvsp[0].u),0,0x7FFFFFFF);} -#line 2087 "parser.c" +#line 2121 "parser.c" break; case 7: /* glyph: CHARCODE REFERENCE */ -#line 288 "parser.y" +#line 290 "parser.y" { - #line 1093 "format.w" + #line 1095 "format.w" (yyval.c).c= (yyvsp[-1].u);REF(font_kind,(yyvsp[0].u));(yyval.c).f= (yyvsp[0].u);} -#line 2095 "parser.c" +#line 2129 "parser.c" break; case 9: /* string: CHARCODE */ -#line 292 "parser.y" +#line 294 "parser.y" { - #line 1198 "format.w" + #line 1200 "format.w" static char s[2]; RNG("String element",(yyvsp[0].u),0x20,0x7E); s[0]= (yyvsp[0].u);s[1]= 0;(yyval.s)= s;} -#line 2105 "parser.c" +#line 2139 "parser.c" break; case 10: /* number: UNSIGNED */ -#line 298 "parser.y" +#line 300 "parser.y" { - #line 1351 "format.w" + #line 1353 "format.w" (yyval.f)= (float64_t)(yyvsp[0].u);} -#line 2113 "parser.c" +#line 2147 "parser.c" break; case 11: /* number: SIGNED */ -#line 300 "parser.y" +#line 302 "parser.y" { - #line 1351 "format.w" + #line 1353 "format.w" (yyval.f)= (float64_t)(yyvsp[0].i);} -#line 2121 "parser.c" +#line 2155 "parser.c" break; case 13: /* dimension: number "pt" */ -#line 304 "parser.y" +#line 306 "parser.y" { - #line 1705 "format.w" + #line 1707 "format.w" (yyval.d)= ROUND((yyvsp[-1].f)*ONE);RNG("Dimension",(yyval.d),-MAX_DIMEN,MAX_DIMEN);} -#line 2129 "parser.c" +#line 2163 "parser.c" break; case 14: /* dimension: number "in" */ -#line 307 "parser.y" +#line 309 "parser.y" { - #line 1706 "format.w" + #line 1708 "format.w" (yyval.d)= ROUND((yyvsp[-1].f)*ONE*72.27);RNG("Dimension",(yyval.d),-MAX_DIMEN,MAX_DIMEN);} -#line 2137 "parser.c" +#line 2171 "parser.c" break; case 15: /* dimension: number "mm" */ -#line 310 "parser.y" +#line 312 "parser.y" { - #line 1707 "format.w" + #line 1709 "format.w" (yyval.d)= ROUND((yyvsp[-1].f)*ONE*(72.27/25.4));RNG("Dimension",(yyval.d),-MAX_DIMEN,MAX_DIMEN);} -#line 2145 "parser.c" +#line 2179 "parser.c" break; case 16: /* xdimen: dimension number "h" number "v" */ -#line 314 "parser.y" +#line 316 "parser.y" { - #line 1785 "format.w" + #line 1787 "format.w" (yyval.xd).w= (yyvsp[-4].d);(yyval.xd).h= (yyvsp[-3].f);(yyval.xd).v= (yyvsp[-1].f);} -#line 2153 "parser.c" +#line 2187 "parser.c" break; case 17: /* xdimen: dimension number "h" */ -#line 317 "parser.y" +#line 319 "parser.y" { - #line 1786 "format.w" + #line 1788 "format.w" (yyval.xd).w= (yyvsp[-2].d);(yyval.xd).h= (yyvsp[-1].f);(yyval.xd).v= 0.0;} -#line 2161 "parser.c" +#line 2195 "parser.c" break; case 18: /* xdimen: dimension number "v" */ -#line 320 "parser.y" +#line 322 "parser.y" { - #line 1787 "format.w" + #line 1789 "format.w" (yyval.xd).w= (yyvsp[-2].d);(yyval.xd).h= 0.0;(yyval.xd).v= (yyvsp[-1].f);} -#line 2169 "parser.c" +#line 2203 "parser.c" break; case 19: /* xdimen: dimension */ -#line 323 "parser.y" +#line 325 "parser.y" { - #line 1788 "format.w" + #line 1790 "format.w" (yyval.xd).w= (yyvsp[0].d);(yyval.xd).h= 0.0;(yyval.xd).v= 0.0;} -#line 2177 "parser.c" +#line 2211 "parser.c" break; case 20: /* xdimen_node: start "xdimen" xdimen ">" */ -#line 327 "parser.y" +#line 329 "parser.y" { - #line 1790 "format.w" + #line 1792 "format.w" hput_tags((yyvsp[-3].u),hput_xdimen(&((yyvsp[-1].xd))));} -#line 2185 "parser.c" +#line 2219 "parser.c" break; case 21: /* order: "pt" */ -#line 332 "parser.y" +#line 334 "parser.y" { - #line 1969 "format.w" + #line 1971 "format.w" (yyval.o)= normal_o;} -#line 2193 "parser.c" +#line 2227 "parser.c" break; case 22: /* order: "fil" */ -#line 334 "parser.y" +#line 336 "parser.y" { - #line 1969 "format.w" + #line 1971 "format.w" (yyval.o)= fil_o;} -#line 2201 "parser.c" +#line 2235 "parser.c" break; case 23: /* order: "fill" */ -#line 336 "parser.y" +#line 338 "parser.y" { - #line 1969 "format.w" + #line 1971 "format.w" (yyval.o)= fill_o;} -#line 2209 "parser.c" +#line 2243 "parser.c" break; case 24: /* order: "filll" */ -#line 338 "parser.y" +#line 340 "parser.y" { - #line 1969 "format.w" + #line 1971 "format.w" (yyval.o)= filll_o;} -#line 2217 "parser.c" +#line 2251 "parser.c" break; case 25: /* stretch: number order */ -#line 342 "parser.y" +#line 344 "parser.y" { - #line 1971 "format.w" + #line 1973 "format.w" (yyval.st).f= (yyvsp[-1].f);(yyval.st).o= (yyvsp[0].o);} -#line 2225 "parser.c" +#line 2259 "parser.c" break; case 26: /* penalty: integer */ -#line 346 "parser.y" +#line 348 "parser.y" { - #line 2025 "format.w" + #line 2027 "format.w" RNG("Penalty",(yyvsp[0].i),-20000,+20000);(yyval.i)= (yyvsp[0].i);} -#line 2233 "parser.c" +#line 2267 "parser.c" break; case 27: /* content_node: start "penalty" penalty ">" */ -#line 349 "parser.y" +#line 351 "parser.y" { - #line 2026 "format.w" + #line 2028 "format.w" hput_tags((yyvsp[-3].u),hput_int((yyvsp[-1].i)));} -#line 2241 "parser.c" +#line 2275 "parser.c" break; case 29: /* rule_dimension: "|" */ -#line 353 "parser.y" +#line 355 "parser.y" { - #line 2203 "format.w" + #line 2205 "format.w" (yyval.d)= RUNNING_DIMEN;} -#line 2249 "parser.c" +#line 2283 "parser.c" break; case 30: /* rule: rule_dimension rule_dimension rule_dimension */ -#line 357 "parser.y" +#line 359 "parser.y" { - #line 2205 "format.w" + #line 2207 "format.w" (yyval.r).h= (yyvsp[-2].d);(yyval.r).d= (yyvsp[-1].d);(yyval.r).w= (yyvsp[0].d); if((yyvsp[0].d)==RUNNING_DIMEN&&((yyvsp[-2].d)==RUNNING_DIMEN||(yyvsp[-1].d)==RUNNING_DIMEN)) QUIT("Incompatible running dimensions 0x%x 0x%x 0x%x",(yyvsp[-2].d),(yyvsp[-1].d),(yyvsp[0].d));} -#line 2259 "parser.c" +#line 2293 "parser.c" break; case 31: /* rule_node: start "rule" rule ">" */ -#line 362 "parser.y" +#line 364 "parser.y" { - #line 2208 "format.w" + #line 2210 "format.w" hput_tags((yyvsp[-3].u),hput_rule(&((yyvsp[-1].r))));} -#line 2267 "parser.c" +#line 2301 "parser.c" break; case 33: /* explicit: %empty */ -#line 367 "parser.y" +#line 369 "parser.y" { - #line 2316 "format.w" + #line 2318 "format.w" (yyval.b)= false;} -#line 2275 "parser.c" +#line 2309 "parser.c" break; case 34: /* explicit: "!" */ -#line 369 "parser.y" +#line 371 "parser.y" { - #line 2316 "format.w" + #line 2318 "format.w" (yyval.b)= true;} -#line 2283 "parser.c" +#line 2317 "parser.c" break; case 35: /* kern: explicit xdimen */ -#line 372 "parser.y" +#line 374 "parser.y" { - #line 2317 "format.w" + #line 2319 "format.w" (yyval.kt).x= (yyvsp[-1].b);(yyval.kt).d= (yyvsp[0].xd);} -#line 2291 "parser.c" +#line 2325 "parser.c" break; case 36: /* content_node: start "kern" kern ">" */ -#line 375 "parser.y" +#line 377 "parser.y" { - #line 2318 "format.w" + #line 2320 "format.w" hput_tags((yyvsp[-3].u),hput_kern(&((yyvsp[-1].kt))));} -#line 2299 "parser.c" +#line 2333 "parser.c" break; case 37: /* plus: %empty */ -#line 379 "parser.y" +#line 381 "parser.y" { - #line 2528 "format.w" + #line 2530 "format.w" (yyval.st).f= 0.0;(yyval.st).o= 0;} -#line 2307 "parser.c" +#line 2341 "parser.c" break; case 38: /* plus: "plus" stretch */ -#line 381 "parser.y" +#line 383 "parser.y" { - #line 2528 "format.w" + #line 2530 "format.w" (yyval.st)= (yyvsp[0].st);} -#line 2315 "parser.c" +#line 2349 "parser.c" break; case 39: /* minus: %empty */ -#line 384 "parser.y" +#line 386 "parser.y" { - #line 2529 "format.w" + #line 2531 "format.w" (yyval.st).f= 0.0;(yyval.st).o= 0;} -#line 2323 "parser.c" +#line 2357 "parser.c" break; case 40: /* minus: "minus" stretch */ -#line 386 "parser.y" +#line 388 "parser.y" { - #line 2529 "format.w" + #line 2531 "format.w" (yyval.st)= (yyvsp[0].st);} -#line 2331 "parser.c" +#line 2365 "parser.c" break; case 41: /* glue: xdimen plus minus */ -#line 389 "parser.y" +#line 391 "parser.y" { - #line 2530 "format.w" + #line 2532 "format.w" (yyval.g).w= (yyvsp[-2].xd);(yyval.g).p= (yyvsp[-1].st);(yyval.g).m= (yyvsp[0].st);} -#line 2339 "parser.c" +#line 2373 "parser.c" break; case 42: /* content_node: start "glue" glue ">" */ -#line 392 "parser.y" +#line 394 "parser.y" { - #line 2531 "format.w" + #line 2533 "format.w" if(ZERO_GLUE((yyvsp[-1].g))){HPUT8(zero_skip_no); hput_tags((yyvsp[-3].u),TAG(glue_kind,0));}else hput_tags((yyvsp[-3].u),hput_glue(&((yyvsp[-1].g))));} -#line 2348 "parser.c" +#line 2382 "parser.c" break; case 43: /* glue_node: start "glue" glue ">" */ -#line 397 "parser.y" +#line 399 "parser.y" { - #line 2534 "format.w" + #line 2536 "format.w" if(ZERO_GLUE((yyvsp[-1].g))){hpos--;(yyval.b)= false;} else{hput_tags((yyvsp[-3].u),hput_glue(&((yyvsp[-1].g))));(yyval.b)= true;}} -#line 2357 "parser.c" +#line 2391 "parser.c" break; case 44: /* position: %empty */ -#line 402 "parser.y" +#line 404 "parser.y" { - #line 2809 "format.w" + #line 2811 "format.w" (yyval.u)= hpos-hstart;} -#line 2365 "parser.c" +#line 2399 "parser.c" break; case 47: /* estimate: %empty */ -#line 407 "parser.y" +#line 409 "parser.y" { - #line 2812 "format.w" + #line 2814 "format.w" hpos+= 2;} -#line 2373 "parser.c" +#line 2407 "parser.c" break; case 48: /* estimate: UNSIGNED */ -#line 410 "parser.y" +#line 412 "parser.y" { - #line 2813 "format.w" + #line 2815 "format.w" hpos+= hsize_bytes((yyvsp[0].u))+1;} -#line 2381 "parser.c" +#line 2415 "parser.c" break; case 49: /* list: start estimate content_list ">" */ -#line 414 "parser.y" +#line 416 "parser.y" { - #line 2815 "format.w" + #line 2817 "format.w" (yyval.l).t= TAG(list_kind,b010);(yyval.l).p= (yyvsp[-1].u);(yyval.l).s= (hpos-hstart)-(yyvsp[-1].u); hput_tags((yyvsp[-3].u),hput_list((yyvsp[-3].u)+1,&((yyval.l))));} -#line 2390 "parser.c" +#line 2424 "parser.c" break; case 50: /* $@1: %empty */ -#line 420 "parser.y" +#line 422 "parser.y" { - #line 3229 "format.w" + #line 3231 "format.w" hpos+= 4;} -#line 2398 "parser.c" +#line 2432 "parser.c" break; case 51: /* list: TXT_START position $@1 text TXT_END */ -#line 424 "parser.y" +#line 426 "parser.y" { - #line 3231 "format.w" + #line 3233 "format.w" (yyval.l).t= TAG(list_kind,b110);(yyval.l).p= (yyvsp[-1].u);(yyval.l).s= (hpos-hstart)-(yyvsp[-1].u); hput_tags((yyvsp[-3].u),hput_list((yyvsp[-3].u)+1,&((yyval.l))));} -#line 2407 "parser.c" +#line 2441 "parser.c" break; case 54: /* txt: TXT_CC */ -#line 430 "parser.y" +#line 432 "parser.y" { - #line 3235 "format.w" + #line 3237 "format.w" hput_txt_cc((yyvsp[0].u));} -#line 2415 "parser.c" +#line 2449 "parser.c" break; case 55: /* txt: TXT_FONT */ -#line 433 "parser.y" +#line 435 "parser.y" { - #line 3236 "format.w" + #line 3238 "format.w" REF(font_kind,(yyvsp[0].u));hput_txt_font((yyvsp[0].u));} -#line 2423 "parser.c" +#line 2457 "parser.c" break; case 56: /* txt: TXT_GLOBAL */ -#line 436 "parser.y" +#line 438 "parser.y" { - #line 3237 "format.w" + #line 3239 "format.w" REF((yyvsp[0].rf).k,(yyvsp[0].rf).n);hput_txt_global(&((yyvsp[0].rf)));} -#line 2431 "parser.c" +#line 2465 "parser.c" break; case 57: /* txt: TXT_LOCAL */ -#line 439 "parser.y" +#line 441 "parser.y" { - #line 3238 "format.w" + #line 3240 "format.w" RNG("Font parameter",(yyvsp[0].u),0,11);hput_txt_local((yyvsp[0].u));} -#line 2439 "parser.c" +#line 2473 "parser.c" break; case 58: /* txt: TXT_FONT_GLUE */ -#line 442 "parser.y" +#line 444 "parser.y" { - #line 3239 "format.w" + #line 3241 "format.w" HPUTX(1);HPUT8(txt_glue);} -#line 2447 "parser.c" +#line 2481 "parser.c" break; case 59: /* txt: TXT_FONT_HYPHEN */ -#line 445 "parser.y" +#line 447 "parser.y" { - #line 3240 "format.w" + #line 3242 "format.w" HPUTX(1);HPUT8(txt_hyphen);} -#line 2455 "parser.c" +#line 2489 "parser.c" break; case 60: /* txt: TXT_IGNORE */ -#line 448 "parser.y" +#line 450 "parser.y" { - #line 3241 "format.w" + #line 3243 "format.w" HPUTX(1);HPUT8(txt_ignore);} -#line 2463 "parser.c" +#line 2497 "parser.c" break; case 61: /* $@2: %empty */ -#line 451 "parser.y" +#line 453 "parser.y" { - #line 3242 "format.w" + #line 3244 "format.w" HPUTX(1);HPUT8(txt_node);} -#line 2471 "parser.c" +#line 2505 "parser.c" break; case 63: /* box_dimen: dimension dimension dimension */ -#line 457 "parser.y" +#line 459 "parser.y" { - #line 3498 "format.w" + #line 3500 "format.w" (yyval.info)= hput_box_dimen((yyvsp[-2].d),(yyvsp[-1].d),(yyvsp[0].d));} -#line 2479 "parser.c" +#line 2513 "parser.c" break; case 64: /* box_shift: %empty */ -#line 460 "parser.y" +#line 462 "parser.y" { - #line 3499 "format.w" + #line 3501 "format.w" (yyval.info)= b000;} -#line 2487 "parser.c" +#line 2521 "parser.c" break; case 65: /* box_shift: "shifted" dimension */ -#line 463 "parser.y" +#line 465 "parser.y" { - #line 3500 "format.w" + #line 3502 "format.w" (yyval.info)= hput_box_shift((yyvsp[0].d));} -#line 2495 "parser.c" +#line 2529 "parser.c" break; case 66: /* box_glue_set: %empty */ -#line 467 "parser.y" +#line 469 "parser.y" { - #line 3502 "format.w" + #line 3504 "format.w" (yyval.info)= b000;} -#line 2503 "parser.c" +#line 2537 "parser.c" break; case 67: /* box_glue_set: "plus" stretch */ -#line 470 "parser.y" +#line 472 "parser.y" { - #line 3503 "format.w" + #line 3505 "format.w" (yyval.info)= hput_box_glue_set(+1,(yyvsp[0].st).f,(yyvsp[0].st).o);} -#line 2511 "parser.c" +#line 2545 "parser.c" break; case 68: /* box_glue_set: "minus" stretch */ -#line 473 "parser.y" +#line 475 "parser.y" { - #line 3504 "format.w" + #line 3506 "format.w" (yyval.info)= hput_box_glue_set(-1,(yyvsp[0].st).f,(yyvsp[0].st).o);} -#line 2519 "parser.c" +#line 2553 "parser.c" break; case 69: /* box: box_dimen box_shift box_glue_set list */ -#line 478 "parser.y" +#line 480 "parser.y" { - #line 3507 "format.w" + #line 3509 "format.w" (yyval.info)= (yyvsp[-3].info) |(yyvsp[-2].info) |(yyvsp[-1].info);} -#line 2527 "parser.c" +#line 2561 "parser.c" break; case 70: /* hbox_node: start "hbox" box ">" */ -#line 482 "parser.y" +#line 484 "parser.y" { - #line 3509 "format.w" + #line 3511 "format.w" hput_tags((yyvsp[-3].u),TAG(hbox_kind,(yyvsp[-1].info)));} -#line 2535 "parser.c" +#line 2569 "parser.c" break; case 71: /* vbox_node: start "vbox" box ">" */ -#line 485 "parser.y" +#line 487 "parser.y" { - #line 3510 "format.w" + #line 3512 "format.w" hput_tags((yyvsp[-3].u),TAG(vbox_kind,(yyvsp[-1].info)));} -#line 2543 "parser.c" +#line 2577 "parser.c" break; case 74: /* box_flex: plus minus */ -#line 490 "parser.y" +#line 492 "parser.y" { - #line 3706 "format.w" + #line 3708 "format.w" hput_stretch(&((yyvsp[-1].st)));hput_stretch(&((yyvsp[0].st)));} -#line 2551 "parser.c" +#line 2585 "parser.c" break; case 75: /* box_options: box_shift box_flex xdimen_ref list */ -#line 494 "parser.y" +#line 496 "parser.y" { - #line 3708 "format.w" + #line 3710 "format.w" (yyval.info)= (yyvsp[-3].info);} -#line 2559 "parser.c" +#line 2593 "parser.c" break; case 76: /* box_options: box_shift box_flex xdimen_node list */ -#line 497 "parser.y" +#line 499 "parser.y" { - #line 3709 "format.w" + #line 3711 "format.w" (yyval.info)= (yyvsp[-3].info) |b100;} -#line 2567 "parser.c" +#line 2601 "parser.c" break; case 77: /* hxbox_node: start "hset" box_dimen box_options ">" */ -#line 501 "parser.y" +#line 503 "parser.y" { - #line 3711 "format.w" + #line 3713 "format.w" hput_tags((yyvsp[-4].u),TAG(hset_kind,(yyvsp[-2].info) |(yyvsp[-1].info)));} -#line 2575 "parser.c" +#line 2609 "parser.c" break; case 79: /* vbox_dimen: "top" dimension dimension dimension */ -#line 507 "parser.y" +#line 509 "parser.y" { - #line 3715 "format.w" + #line 3717 "format.w" (yyval.info)= hput_box_dimen((yyvsp[-2].d),(yyvsp[-1].d)^0x40000000,(yyvsp[0].d));} -#line 2583 "parser.c" +#line 2617 "parser.c" break; case 80: /* vxbox_node: start "vset" vbox_dimen box_options ">" */ -#line 511 "parser.y" +#line 513 "parser.y" { - #line 3717 "format.w" + #line 3719 "format.w" hput_tags((yyvsp[-4].u),TAG(vset_kind,(yyvsp[-2].info) |(yyvsp[-1].info)));} -#line 2591 "parser.c" +#line 2625 "parser.c" break; case 81: /* box_goal: "to" xdimen_ref */ -#line 515 "parser.y" +#line 517 "parser.y" { - #line 3719 "format.w" + #line 3721 "format.w" (yyval.info)= b000;} -#line 2599 "parser.c" +#line 2633 "parser.c" break; case 82: /* box_goal: "add" xdimen_ref */ -#line 518 "parser.y" +#line 520 "parser.y" { - #line 3720 "format.w" + #line 3722 "format.w" (yyval.info)= b001;} -#line 2607 "parser.c" +#line 2641 "parser.c" break; case 83: /* box_goal: "to" xdimen_node */ -#line 521 "parser.y" +#line 523 "parser.y" { - #line 3721 "format.w" + #line 3723 "format.w" (yyval.info)= b100;} -#line 2615 "parser.c" +#line 2649 "parser.c" break; case 84: /* box_goal: "add" xdimen_node */ -#line 524 "parser.y" +#line 526 "parser.y" { - #line 3722 "format.w" + #line 3724 "format.w" (yyval.info)= b101;} -#line 2623 "parser.c" +#line 2657 "parser.c" break; case 85: /* hpack: box_shift box_goal list */ -#line 528 "parser.y" +#line 530 "parser.y" { - #line 3724 "format.w" + #line 3726 "format.w" (yyval.info)= (yyvsp[-1].info);} -#line 2631 "parser.c" +#line 2665 "parser.c" break; case 86: /* hxbox_node: start "hpack" hpack ">" */ -#line 532 "parser.y" +#line 534 "parser.y" { - #line 3726 "format.w" + #line 3728 "format.w" hput_tags((yyvsp[-3].u),TAG(hpack_kind,(yyvsp[-1].info)));} -#line 2639 "parser.c" +#line 2673 "parser.c" break; case 87: /* max_depth: %empty */ -#line 536 "parser.y" +#line 538 "parser.y" { - #line 3728 "format.w" + #line 3730 "format.w" (yyval.d)= MAX_DIMEN;} -#line 2647 "parser.c" +#line 2681 "parser.c" break; case 88: /* max_depth: "max" "depth" dimension */ -#line 538 "parser.y" +#line 540 "parser.y" { - #line 3728 "format.w" + #line 3730 "format.w" (yyval.d)= (yyvsp[0].d);} -#line 2655 "parser.c" +#line 2689 "parser.c" break; case 89: /* $@3: %empty */ -#line 542 "parser.y" +#line 544 "parser.y" { - #line 3730 "format.w" + #line 3732 "format.w" HPUT32((yyvsp[0].d));} -#line 2663 "parser.c" +#line 2697 "parser.c" break; case 90: /* vpack: max_depth $@3 box_shift box_goal list */ -#line 544 "parser.y" +#line 546 "parser.y" { - #line 3730 "format.w" + #line 3732 "format.w" (yyval.info)= (yyvsp[-2].info) |(yyvsp[-1].info);} -#line 2671 "parser.c" +#line 2705 "parser.c" break; case 91: /* $@4: %empty */ -#line 547 "parser.y" +#line 549 "parser.y" { - #line 3731 "format.w" + #line 3733 "format.w" HPUT32((yyvsp[0].d)^0x40000000);} -#line 2679 "parser.c" +#line 2713 "parser.c" break; case 92: /* vpack: "top" max_depth $@4 box_shift box_goal list */ -#line 549 "parser.y" +#line 551 "parser.y" { - #line 3731 "format.w" + #line 3733 "format.w" (yyval.info)= (yyvsp[-2].info) |(yyvsp[-1].info);} -#line 2687 "parser.c" +#line 2721 "parser.c" break; case 93: /* vxbox_node: start "vpack" vpack ">" */ -#line 553 "parser.y" +#line 555 "parser.y" { - #line 3733 "format.w" + #line 3735 "format.w" hput_tags((yyvsp[-3].u),TAG(vpack_kind,(yyvsp[-1].info)));} -#line 2695 "parser.c" +#line 2729 "parser.c" break; case 96: /* ltype: %empty */ -#line 559 "parser.y" +#line 561 "parser.y" { - #line 3847 "format.w" + #line 3849 "format.w" (yyval.info)= 1;} -#line 2703 "parser.c" +#line 2737 "parser.c" break; case 97: /* ltype: "align" */ -#line 561 "parser.y" +#line 563 "parser.y" { - #line 3847 "format.w" + #line 3849 "format.w" (yyval.info)= 1;} -#line 2711 "parser.c" +#line 2745 "parser.c" break; case 98: /* ltype: "center" */ -#line 563 "parser.y" +#line 565 "parser.y" { - #line 3847 "format.w" + #line 3849 "format.w" (yyval.info)= 2;} -#line 2719 "parser.c" +#line 2753 "parser.c" break; case 99: /* ltype: "expand" */ -#line 565 "parser.y" +#line 567 "parser.y" { - #line 3847 "format.w" + #line 3849 "format.w" (yyval.info)= 3;} -#line 2727 "parser.c" +#line 2761 "parser.c" break; case 100: /* leaders: glue_node ltype rule_node */ -#line 568 "parser.y" +#line 570 "parser.y" { - #line 3848 "format.w" + #line 3850 "format.w" if((yyvsp[-2].b))(yyval.info)= (yyvsp[-1].info) |b100;else (yyval.info)= (yyvsp[-1].info);} -#line 2735 "parser.c" +#line 2769 "parser.c" break; case 101: /* leaders: glue_node ltype hbox_node */ -#line 571 "parser.y" +#line 573 "parser.y" { - #line 3849 "format.w" + #line 3851 "format.w" if((yyvsp[-2].b))(yyval.info)= (yyvsp[-1].info) |b100;else (yyval.info)= (yyvsp[-1].info);} -#line 2743 "parser.c" +#line 2777 "parser.c" break; case 102: /* leaders: glue_node ltype vbox_node */ -#line 574 "parser.y" +#line 576 "parser.y" { - #line 3850 "format.w" + #line 3852 "format.w" if((yyvsp[-2].b))(yyval.info)= (yyvsp[-1].info) |b100;else (yyval.info)= (yyvsp[-1].info);} -#line 2751 "parser.c" +#line 2785 "parser.c" break; case 103: /* content_node: start "leaders" leaders ">" */ -#line 577 "parser.y" +#line 579 "parser.y" { - #line 3851 "format.w" + #line 3853 "format.w" hput_tags((yyvsp[-3].u),TAG(leaders_kind,(yyvsp[-1].info)));} -#line 2759 "parser.c" +#line 2793 "parser.c" break; case 104: /* $@5: %empty */ -#line 581 "parser.y" +#line 583 "parser.y" { - #line 3957 "format.w" + #line 3959 "format.w" if((yyvsp[0].d)!=0)HPUT32((yyvsp[0].d));} -#line 2767 "parser.c" +#line 2801 "parser.c" break; case 105: /* baseline: dimension $@5 glue_node glue_node */ -#line 584 "parser.y" +#line 586 "parser.y" { - #line 3958 "format.w" + #line 3960 "format.w" (yyval.info)= b000;if((yyvsp[-3].d)!=0)(yyval.info) |= b001; if((yyvsp[-1].b))(yyval.info) |= b100; if((yyvsp[0].b))(yyval.info) |= b010; } -#line 2778 "parser.c" +#line 2812 "parser.c" break; case 106: /* content_node: start "baseline" baseline ">" */ -#line 591 "parser.y" +#line 593 "parser.y" { - #line 3963 "format.w" + #line 3965 "format.w" if((yyvsp[-1].info)==b000)HPUT8(0);hput_tags((yyvsp[-3].u),TAG(baseline_kind,(yyvsp[-1].info)));} -#line 2786 "parser.c" +#line 2820 "parser.c" break; case 108: /* cc_list: cc_list TXT_CC */ -#line 595 "parser.y" +#line 597 "parser.y" { - #line 4046 "format.w" + #line 4048 "format.w" hput_utf8((yyvsp[0].u));} -#line 2794 "parser.c" +#line 2828 "parser.c" break; case 109: /* lig_cc: UNSIGNED */ -#line 598 "parser.y" +#line 600 "parser.y" { - #line 4047 "format.w" + #line 4049 "format.w" RNG("UTF-8 code",(yyvsp[0].u),0,0x1FFFFF);(yyval.u)= hpos-hstart;hput_utf8((yyvsp[0].u));} -#line 2802 "parser.c" +#line 2836 "parser.c" break; case 110: /* lig_cc: CHARCODE */ -#line 601 "parser.y" +#line 603 "parser.y" { - #line 4048 "format.w" + #line 4050 "format.w" (yyval.u)= hpos-hstart;hput_utf8((yyvsp[0].u));} -#line 2810 "parser.c" +#line 2844 "parser.c" break; case 111: /* ref: REFERENCE */ -#line 604 "parser.y" +#line 606 "parser.y" { - #line 4049 "format.w" + #line 4051 "format.w" HPUT8((yyvsp[0].u));(yyval.u)= (yyvsp[0].u);} -#line 2818 "parser.c" +#line 2852 "parser.c" break; case 112: /* $@6: %empty */ -#line 607 "parser.y" +#line 609 "parser.y" { - #line 4050 "format.w" + #line 4052 "format.w" REF(font_kind,(yyvsp[0].u));} -#line 2826 "parser.c" +#line 2860 "parser.c" break; case 113: /* ligature: ref $@6 lig_cc TXT_START cc_list TXT_END */ -#line 610 "parser.y" +#line 612 "parser.y" { - #line 4051 "format.w" + #line 4053 "format.w" (yyval.lg).f= (yyvsp[-5].u);(yyval.lg).l.p= (yyvsp[-3].u);(yyval.lg).l.s= (hpos-hstart)-(yyvsp[-3].u); RNG("Ligature size",(yyval.lg).l.s,0,255);} -#line 2835 "parser.c" +#line 2869 "parser.c" break; case 114: /* content_node: start "ligature" ligature ">" */ -#line 614 "parser.y" +#line 616 "parser.y" { - #line 4053 "format.w" + #line 4055 "format.w" hput_tags((yyvsp[-3].u),hput_ligature(&((yyvsp[-1].lg))));} -#line 2843 "parser.c" +#line 2877 "parser.c" break; case 115: /* replace_count: explicit */ -#line 618 "parser.y" +#line 620 "parser.y" { - #line 4163 "format.w" + #line 4165 "format.w" if((yyvsp[0].b)){(yyval.u)= 0x80;HPUT8(0x80);}else (yyval.u)= 0x00;} -#line 2851 "parser.c" +#line 2885 "parser.c" break; case 116: /* replace_count: explicit UNSIGNED */ -#line 621 "parser.y" +#line 623 "parser.y" { - #line 4164 "format.w" + #line 4166 "format.w" RNG("Replace count",(yyvsp[0].u),0,31); (yyval.u)= ((yyvsp[0].u)) |(((yyvsp[-1].b))?0x80:0x00);if((yyval.u)!=0)HPUT8((yyval.u));} -#line 2860 "parser.c" +#line 2894 "parser.c" break; case 117: /* disc: replace_count list list */ -#line 625 "parser.y" +#line 627 "parser.y" { - #line 4166 "format.w" + #line 4168 "format.w" (yyval.dc).r= (yyvsp[-2].u);(yyval.dc).p= (yyvsp[-1].l);(yyval.dc).q= (yyvsp[0].l); if((yyvsp[0].l).s==0){hpos= hpos-3;if((yyvsp[-1].l).s==0)hpos= hpos-3;}} -#line 2869 "parser.c" +#line 2903 "parser.c" break; case 118: /* disc: replace_count list */ -#line 629 "parser.y" +#line 631 "parser.y" { - #line 4168 "format.w" + #line 4170 "format.w" (yyval.dc).r= (yyvsp[-1].u);(yyval.dc).p= (yyvsp[0].l);if((yyvsp[0].l).s==0)hpos= hpos-3;(yyval.dc).q.s= 0;} -#line 2877 "parser.c" +#line 2911 "parser.c" break; case 119: /* disc: replace_count */ -#line 632 "parser.y" +#line 634 "parser.y" { - #line 4169 "format.w" + #line 4171 "format.w" (yyval.dc).r= (yyvsp[0].u);(yyval.dc).p.s= 0;(yyval.dc).q.s= 0;} -#line 2885 "parser.c" +#line 2919 "parser.c" break; case 120: /* disc_node: start "disc" disc ">" */ -#line 638 "parser.y" +#line 640 "parser.y" { - #line 4173 "format.w" + #line 4175 "format.w" hput_tags((yyvsp[-3].u),hput_disc(&((yyvsp[-1].dc))));} -#line 2893 "parser.c" +#line 2927 "parser.c" break; case 122: /* par_dimen: xdimen */ -#line 644 "parser.y" +#line 646 "parser.y" { - #line 4325 "format.w" + #line 4327 "format.w" hput_xdimen_node(&((yyvsp[0].xd)));} -#line 2901 "parser.c" +#line 2935 "parser.c" break; case 123: /* par: xdimen_ref param_ref list */ -#line 647 "parser.y" +#line 649 "parser.y" { - #line 4326 "format.w" + #line 4328 "format.w" (yyval.info)= b000;} -#line 2909 "parser.c" +#line 2943 "parser.c" break; case 124: /* par: xdimen_ref param_list list */ -#line 650 "parser.y" +#line 652 "parser.y" { - #line 4327 "format.w" + #line 4329 "format.w" (yyval.info)= b010;} -#line 2917 "parser.c" +#line 2951 "parser.c" break; case 125: /* $@7: %empty */ -#line 653 "parser.y" +#line 655 "parser.y" { - #line 4328 "format.w" + #line 4330 "format.w" hput_xdimen_node(&((yyvsp[-1].xd)));} -#line 2925 "parser.c" +#line 2959 "parser.c" break; case 126: /* par: xdimen param_ref $@7 list */ -#line 655 "parser.y" +#line 657 "parser.y" { - #line 4328 "format.w" + #line 4330 "format.w" (yyval.info)= b100;} -#line 2933 "parser.c" +#line 2967 "parser.c" break; case 127: /* par: par_dimen param_list list */ -#line 658 "parser.y" +#line 660 "parser.y" { - #line 4329 "format.w" + #line 4331 "format.w" (yyval.info)= b110;} -#line 2941 "parser.c" +#line 2975 "parser.c" break; case 128: /* content_node: start "par" par ">" */ -#line 662 "parser.y" +#line 664 "parser.y" { - #line 4331 "format.w" + #line 4333 "format.w" hput_tags((yyvsp[-3].u),TAG(par_kind,(yyvsp[-1].info)));} -#line 2949 "parser.c" +#line 2983 "parser.c" break; case 129: /* math: param_ref list */ -#line 666 "parser.y" +#line 668 "parser.y" { - #line 4397 "format.w" + #line 4399 "format.w" (yyval.info)= b000;} -#line 2957 "parser.c" +#line 2991 "parser.c" break; case 130: /* math: param_ref list hbox_node */ -#line 669 "parser.y" +#line 671 "parser.y" { - #line 4398 "format.w" + #line 4400 "format.w" (yyval.info)= b001;} -#line 2965 "parser.c" +#line 2999 "parser.c" break; case 131: /* math: param_ref hbox_node list */ -#line 672 "parser.y" +#line 674 "parser.y" { - #line 4399 "format.w" + #line 4401 "format.w" (yyval.info)= b010;} -#line 2973 "parser.c" +#line 3007 "parser.c" break; case 132: /* math: param_list list */ -#line 675 "parser.y" +#line 677 "parser.y" { - #line 4400 "format.w" + #line 4402 "format.w" (yyval.info)= b100;} -#line 2981 "parser.c" +#line 3015 "parser.c" break; case 133: /* math: param_list list hbox_node */ -#line 678 "parser.y" +#line 680 "parser.y" { - #line 4401 "format.w" + #line 4403 "format.w" (yyval.info)= b101;} -#line 2989 "parser.c" +#line 3023 "parser.c" break; case 134: /* math: param_list hbox_node list */ -#line 681 "parser.y" +#line 683 "parser.y" { - #line 4402 "format.w" + #line 4404 "format.w" (yyval.info)= b110;} -#line 2997 "parser.c" +#line 3031 "parser.c" break; case 135: /* content_node: start "math" math ">" */ -#line 685 "parser.y" +#line 687 "parser.y" { - #line 4404 "format.w" + #line 4406 "format.w" hput_tags((yyvsp[-3].u),TAG(math_kind,(yyvsp[-1].info)));} -#line 3005 "parser.c" +#line 3039 "parser.c" break; case 136: /* on_off: "on" */ -#line 689 "parser.y" +#line 691 "parser.y" { - #line 4454 "format.w" + #line 4456 "format.w" (yyval.i)= 1;} -#line 3013 "parser.c" +#line 3047 "parser.c" break; case 137: /* on_off: "off" */ -#line 691 "parser.y" +#line 693 "parser.y" { - #line 4454 "format.w" + #line 4456 "format.w" (yyval.i)= 0;} -#line 3021 "parser.c" +#line 3055 "parser.c" break; case 138: /* math: on_off */ -#line 694 "parser.y" +#line 696 "parser.y" { - #line 4455 "format.w" + #line 4457 "format.w" (yyval.info)= b011 |((yyvsp[0].i)<<2);} -#line 3029 "parser.c" +#line 3063 "parser.c" break; case 139: /* content_node: start "adjust" list ">" */ -#line 698 "parser.y" +#line 700 "parser.y" { - #line 4486 "format.w" + #line 4488 "format.w" hput_tags((yyvsp[-3].u),TAG(adjust_kind,1));} -#line 3037 "parser.c" +#line 3071 "parser.c" break; case 140: /* span_count: UNSIGNED */ -#line 702 "parser.y" +#line 704 "parser.y" { - #line 4585 "format.w" + #line 4587 "format.w" (yyval.info)= hput_span_count((yyvsp[0].u));} -#line 3045 "parser.c" +#line 3079 "parser.c" break; case 141: /* content_node: start "item" content_node ">" */ -#line 705 "parser.y" +#line 707 "parser.y" { - #line 4586 "format.w" + #line 4588 "format.w" hput_tags((yyvsp[-3].u),TAG(item_kind,1));} -#line 3053 "parser.c" +#line 3087 "parser.c" break; case 142: /* content_node: start "item" span_count content_node ">" */ -#line 708 "parser.y" +#line 710 "parser.y" { - #line 4587 "format.w" + #line 4589 "format.w" hput_tags((yyvsp[-4].u),TAG(item_kind,(yyvsp[-2].info)));} -#line 3061 "parser.c" +#line 3095 "parser.c" break; case 143: /* content_node: start "item" list ">" */ -#line 711 "parser.y" +#line 713 "parser.y" { - #line 4588 "format.w" + #line 4590 "format.w" hput_tags((yyvsp[-3].u),TAG(item_kind,b000));} -#line 3069 "parser.c" +#line 3103 "parser.c" break; case 144: /* table: "h" box_goal list list */ -#line 715 "parser.y" +#line 717 "parser.y" { - #line 4590 "format.w" + #line 4592 "format.w" (yyval.info)= (yyvsp[-2].info);} -#line 3077 "parser.c" +#line 3111 "parser.c" break; case 145: /* table: "v" box_goal list list */ -#line 718 "parser.y" +#line 720 "parser.y" { - #line 4591 "format.w" + #line 4593 "format.w" (yyval.info)= (yyvsp[-2].info) |b010;} -#line 3085 "parser.c" +#line 3119 "parser.c" break; case 146: /* content_node: start "table" table ">" */ -#line 722 "parser.y" +#line 724 "parser.y" { - #line 4593 "format.w" + #line 4595 "format.w" hput_tags((yyvsp[-3].u),TAG(table_kind,(yyvsp[-1].info)));} -#line 3093 "parser.c" +#line 3127 "parser.c" break; case 147: /* image_aspect: number */ -#line 726 "parser.y" +#line 728 "parser.y" { - #line 4731 "format.w" + #line 4733 "format.w" (yyval.f)= (yyvsp[0].f);} -#line 3101 "parser.c" +#line 3135 "parser.c" break; case 148: /* image_aspect: %empty */ -#line 728 "parser.y" +#line 730 "parser.y" { - #line 4731 "format.w" + #line 4733 "format.w" (yyval.f)= 0.0;} -#line 3109 "parser.c" +#line 3143 "parser.c" break; case 149: /* image_width: "width" xdimen */ -#line 731 "parser.y" +#line 733 "parser.y" { - #line 4732 "format.w" + #line 4734 "format.w" (yyval.xd)= (yyvsp[0].xd);} -#line 3117 "parser.c" +#line 3151 "parser.c" break; case 150: /* image_width: %empty */ -#line 734 "parser.y" +#line 736 "parser.y" { - #line 4733 "format.w" + #line 4735 "format.w" (yyval.xd)= xdimen_defaults[zero_xdimen_no];} -#line 3125 "parser.c" +#line 3159 "parser.c" break; case 151: /* image_height: "height" xdimen */ -#line 737 "parser.y" +#line 739 "parser.y" { - #line 4734 "format.w" + #line 4736 "format.w" (yyval.xd)= (yyvsp[0].xd);} -#line 3133 "parser.c" +#line 3167 "parser.c" break; case 152: /* image_height: %empty */ -#line 740 "parser.y" +#line 742 "parser.y" { - #line 4735 "format.w" + #line 4737 "format.w" (yyval.xd)= xdimen_defaults[zero_xdimen_no];} -#line 3141 "parser.c" +#line 3175 "parser.c" break; case 153: /* image_spec: UNSIGNED image_aspect image_width image_height */ -#line 745 "parser.y" +#line 747 "parser.y" { - #line 4738 "format.w" + #line 4740 "format.w" (yyval.info)= hput_image_spec((yyvsp[-3].u),(yyvsp[-2].f),0,&((yyvsp[-1].xd)),0,&((yyvsp[0].xd)));} -#line 3149 "parser.c" +#line 3183 "parser.c" break; case 154: /* image_spec: UNSIGNED image_aspect "width" REFERENCE image_height */ -#line 749 "parser.y" +#line 751 "parser.y" { - #line 4740 "format.w" + #line 4742 "format.w" (yyval.info)= hput_image_spec((yyvsp[-4].u),(yyvsp[-3].f),(yyvsp[-1].u),NULL,0,&((yyvsp[0].xd)));} -#line 3157 "parser.c" +#line 3191 "parser.c" break; case 155: /* image_spec: UNSIGNED image_aspect image_width "height" REFERENCE */ -#line 753 "parser.y" +#line 755 "parser.y" { - #line 4742 "format.w" + #line 4744 "format.w" (yyval.info)= hput_image_spec((yyvsp[-4].u),(yyvsp[-3].f),0,&((yyvsp[-2].xd)),(yyvsp[0].u),NULL);} -#line 3165 "parser.c" +#line 3199 "parser.c" break; case 156: /* image_spec: UNSIGNED image_aspect "width" REFERENCE "height" REFERENCE */ -#line 757 "parser.y" +#line 759 "parser.y" { - #line 4744 "format.w" + #line 4746 "format.w" (yyval.info)= hput_image_spec((yyvsp[-5].u),(yyvsp[-4].f),(yyvsp[-2].u),NULL,(yyvsp[0].u),NULL);} -#line 3173 "parser.c" +#line 3207 "parser.c" break; case 157: /* image: image_spec list */ -#line 761 "parser.y" +#line 763 "parser.y" { - #line 4746 "format.w" + #line 4748 "format.w" (yyval.info)= (yyvsp[-1].info);} -#line 3181 "parser.c" +#line 3215 "parser.c" break; case 158: /* content_node: start "image" image ">" */ -#line 765 "parser.y" +#line 767 "parser.y" { - #line 4748 "format.w" + #line 4750 "format.w" hput_tags((yyvsp[-3].u),TAG(image_kind,(yyvsp[-1].info)));} -#line 3189 "parser.c" +#line 3223 "parser.c" break; case 159: /* max_value: "outline" UNSIGNED */ -#line 769 "parser.y" +#line 771 "parser.y" { - #line 5373 "format.w" + #line 5383 "format.w" max_outline= (yyvsp[0].u); RNG("max outline",max_outline,0,0xFFFF); DBG(DBGDEF |DBGLABEL,"Setting max outline to %d\n",max_outline); } -#line 3200 "parser.c" +#line 3234 "parser.c" break; case 160: /* placement: "top" */ -#line 776 "parser.y" +#line 778 "parser.y" { - #line 5465 "format.w" + #line 5476 "format.w" (yyval.i)= LABEL_TOP;} -#line 3208 "parser.c" +#line 3242 "parser.c" break; case 161: /* placement: "bot" */ -#line 778 "parser.y" +#line 780 "parser.y" { - #line 5465 "format.w" + #line 5476 "format.w" (yyval.i)= LABEL_BOT;} -#line 3216 "parser.c" +#line 3250 "parser.c" break; case 162: /* placement: "mid" */ -#line 780 "parser.y" +#line 782 "parser.y" { - #line 5465 "format.w" + #line 5476 "format.w" (yyval.i)= LABEL_MID;} -#line 3224 "parser.c" +#line 3258 "parser.c" break; case 163: /* placement: %empty */ -#line 782 "parser.y" +#line 784 "parser.y" { - #line 5465 "format.w" + #line 5476 "format.w" (yyval.i)= LABEL_MID;} -#line 3232 "parser.c" +#line 3266 "parser.c" break; case 164: /* content_node: "<" "label" REFERENCE placement ">" */ -#line 786 "parser.y" +#line 788 "parser.y" { - #line 5467 "format.w" + #line 5478 "format.w" hset_label((yyvsp[-2].u),(yyvsp[-1].i));} -#line 3240 "parser.c" +#line 3274 "parser.c" break; case 165: /* content_node: start "link" REFERENCE on_off ">" */ -#line 791 "parser.y" +#line 793 "parser.y" +{ + #line 5767 "format.w" + hput_tags((yyvsp[-4].u),hput_link((yyvsp[-2].u),(yyvsp[-1].i)?1:0xFF,(yyvsp[-1].i)));} +#line 3282 "parser.c" + break; + + case 166: /* content_node: start "link" REFERENCE on_off REFERENCE ">" */ +#line 797 "parser.y" { - #line 5725 "format.w" - hput_tags((yyvsp[-4].u),hput_link((yyvsp[-2].u),(yyvsp[-1].i)));} -#line 3248 "parser.c" + #line 5769 "format.w" + hput_tags((yyvsp[-5].u),hput_link((yyvsp[-3].u),(yyvsp[-1].u),(yyvsp[-2].i)));} +#line 3290 "parser.c" break; - case 166: /* def_node: "<" "outline" REFERENCE integer position list ">" */ -#line 795 "parser.y" + case 167: /* def_node: "<" "outline" REFERENCE integer position list ">" */ +#line 801 "parser.y" { - #line 5855 "format.w" + #line 5901 "format.w" static int outline_no= -1; (yyval.rf).k= outline_kind;(yyval.rf).n= (yyvsp[-4].u); @@ -3258,263 +3300,346 @@ yyreduce: outline_no++; hset_outline(outline_no,(yyvsp[-4].u),(yyvsp[-3].i),(yyvsp[-2].u)); } -#line 3262 "parser.c" +#line 3304 "parser.c" + break; + + case 168: /* color: "<" UNSIGNED UNSIGNED UNSIGNED UNSIGNED ">" */ +#line 812 "parser.y" +{ + #line 6191 "format.w" + RNG("red",(yyvsp[-4].u),0,0xFF);RNG("green",(yyvsp[-3].u),0,0xFF); + RNG("blue",(yyvsp[-2].u),0,0xFF);RNG("alpha",(yyvsp[-1].u),0,0xFF); + colors_n[colors_i++]= ((yyvsp[-4].u)<<24) |((yyvsp[-3].u)<<16) |((yyvsp[-2].u)<<8) |(yyvsp[-1].u); + } +#line 3315 "parser.c" + break; + + case 169: /* color: "<" UNSIGNED UNSIGNED UNSIGNED ">" */ +#line 819 "parser.y" +{ + #line 6196 "format.w" + RNG("red",(yyvsp[-3].u),0,0xFF);RNG("green",(yyvsp[-2].u),0,0xFF); + RNG("blue",(yyvsp[-1].u),0,0xFF); + colors_n[colors_i++]= ((yyvsp[-3].u)<<24) |((yyvsp[-2].u)<<16) |((yyvsp[-1].u)<<8) |0xFF; + } +#line 3326 "parser.c" + break; + + case 170: /* color: UNSIGNED */ +#line 825 "parser.y" + { + #line 6200 "format.w" + colors_n[colors_i++]= (yyvsp[0].u);} +#line 3334 "parser.c" + break; + + case 172: /* color_pair: "<" color ">" */ +#line 830 "parser.y" + { + #line 6210 "format.w" + colors_n[colors_i++]= 0;} +#line 3342 "parser.c" + break; + + case 173: /* color_unset: %empty */ +#line 833 "parser.y" + { + #line 6211 "format.w" + colors_i+= 2;} +#line 3350 "parser.c" + break; + + case 179: /* $@8: %empty */ +#line 845 "parser.y" + { + #line 6241 "format.w" + HPUT8(6);color_init();} +#line 3358 "parser.c" break; - case 167: /* def_node: start "unknown" UNSIGNED UNSIGNED ">" */ -#line 805 "parser.y" + case 180: /* def_node: start "color" ref $@8 color_set ">" */ +#line 848 "parser.y" +{ + #line 6242 "format.w" + DEF((yyval.rf),color_kind,(yyvsp[-3].u));hput_color_def((yyvsp[-5].u),(yyvsp[-3].u));} +#line 3366 "parser.c" + break; + + case 181: /* content_node: start "color" ref ">" */ +#line 853 "parser.y" +{ + #line 6296 "format.w" + REF_RNG(color_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(color_kind,b000));} +#line 3374 "parser.c" + break; + + case 182: /* content_node: start "color" "off" ">" */ +#line 857 "parser.y" +{ + #line 6298 "format.w" + HPUT8(0xFF);hput_tags((yyvsp[-3].u),TAG(color_kind,b000));} +#line 3382 "parser.c" + break; + + case 183: /* def_node: start "unknown" UNSIGNED UNSIGNED ">" */ +#line 861 "parser.y" { - #line 6013 "format.w" + #line 6426 "format.w" hput_tags((yyvsp[-4].u),hput_unknown_def((yyvsp[-2].u),(yyvsp[-1].u),0));} -#line 3270 "parser.c" +#line 3390 "parser.c" break; - case 168: /* def_node: start "unknown" UNSIGNED UNSIGNED UNSIGNED ">" */ -#line 808 "parser.y" + case 184: /* def_node: start "unknown" UNSIGNED UNSIGNED UNSIGNED ">" */ +#line 864 "parser.y" { - #line 6014 "format.w" + #line 6427 "format.w" hput_tags((yyvsp[-5].u),hput_unknown_def((yyvsp[-3].u),(yyvsp[-2].u),(yyvsp[-1].u)));} -#line 3278 "parser.c" +#line 3398 "parser.c" break; - case 169: /* content_node: start "unknown" UNSIGNED unknown_bytes unknown_nodes ">" */ -#line 812 "parser.y" + case 185: /* content_node: start "unknown" UNSIGNED unknown_bytes unknown_nodes ">" */ +#line 868 "parser.y" { - #line 6026 "format.w" + #line 6439 "format.w" hput_tags((yyvsp[-5].u),hput_unknown((yyvsp[-5].u),(yyvsp[-3].u),(yyvsp[-2].u),(yyvsp[-1].u)));} -#line 3286 "parser.c" +#line 3406 "parser.c" break; - case 170: /* unknown_bytes: %empty */ -#line 815 "parser.y" + case 186: /* unknown_bytes: %empty */ +#line 871 "parser.y" { - #line 6027 "format.w" + #line 6440 "format.w" (yyval.u)= 0;} -#line 3294 "parser.c" +#line 3414 "parser.c" break; - case 171: /* unknown_bytes: unknown_bytes UNSIGNED */ -#line 817 "parser.y" + case 187: /* unknown_bytes: unknown_bytes UNSIGNED */ +#line 873 "parser.y" { - #line 6027 "format.w" + #line 6440 "format.w" RNG("byte",(yyvsp[0].u),0,0xFF);HPUT8((yyvsp[0].u));(yyval.u)= (yyvsp[-1].u)+1;} -#line 3302 "parser.c" +#line 3422 "parser.c" break; - case 176: /* unknown_nodes: %empty */ -#line 821 "parser.y" + case 192: /* unknown_nodes: %empty */ +#line 877 "parser.y" { - #line 6029 "format.w" + #line 6442 "format.w" (yyval.u)= 0;} -#line 3310 "parser.c" +#line 3430 "parser.c" break; - case 177: /* unknown_nodes: unknown_nodes unknown_node */ -#line 823 "parser.y" + case 193: /* unknown_nodes: unknown_nodes unknown_node */ +#line 879 "parser.y" { - #line 6029 "format.w" + #line 6442 "format.w" RNG("unknown subnodes",(yyvsp[-1].u),0,3);(yyval.u)= (yyvsp[-1].u)+1;} -#line 3318 "parser.c" +#line 3438 "parser.c" break; - case 178: /* stream_link: ref */ -#line 827 "parser.y" + case 194: /* stream_link: ref */ +#line 883 "parser.y" { - #line 6464 "format.w" + #line 6877 "format.w" REF_RNG(stream_kind,(yyvsp[0].u));} -#line 3326 "parser.c" +#line 3446 "parser.c" break; - case 179: /* stream_link: "*" */ -#line 829 "parser.y" + case 195: /* stream_link: "*" */ +#line 885 "parser.y" { - #line 6464 "format.w" + #line 6877 "format.w" HPUT8(255);} -#line 3334 "parser.c" +#line 3454 "parser.c" break; - case 180: /* stream_split: stream_link stream_link UNSIGNED */ -#line 832 "parser.y" + case 196: /* stream_split: stream_link stream_link UNSIGNED */ +#line 888 "parser.y" { - #line 6465 "format.w" + #line 6878 "format.w" RNG("split ratio",(yyvsp[0].u),0,1000);HPUT16((yyvsp[0].u));} -#line 3342 "parser.c" +#line 3462 "parser.c" break; - case 181: /* $@8: %empty */ -#line 835 "parser.y" + case 197: /* $@9: %empty */ +#line 891 "parser.y" { - #line 6466 "format.w" + #line 6879 "format.w" RNG("magnification factor",(yyvsp[0].u),0,1000);HPUT16((yyvsp[0].u));} -#line 3350 "parser.c" +#line 3470 "parser.c" break; - case 183: /* stream_type: stream_info */ -#line 839 "parser.y" + case 199: /* stream_type: stream_info */ +#line 895 "parser.y" { - #line 6468 "format.w" + #line 6881 "format.w" (yyval.info)= 0;} -#line 3358 "parser.c" +#line 3478 "parser.c" break; - case 184: /* stream_type: "first" */ -#line 841 "parser.y" + case 200: /* stream_type: "first" */ +#line 897 "parser.y" { - #line 6468 "format.w" + #line 6881 "format.w" (yyval.info)= 1;} -#line 3366 "parser.c" +#line 3486 "parser.c" break; - case 185: /* stream_type: "last" */ -#line 843 "parser.y" + case 201: /* stream_type: "last" */ +#line 899 "parser.y" { - #line 6468 "format.w" + #line 6881 "format.w" (yyval.info)= 2;} -#line 3374 "parser.c" +#line 3494 "parser.c" break; - case 186: /* stream_type: "top" */ -#line 845 "parser.y" + case 202: /* stream_type: "top" */ +#line 901 "parser.y" { - #line 6468 "format.w" + #line 6881 "format.w" (yyval.info)= 3;} -#line 3382 "parser.c" +#line 3502 "parser.c" break; - case 187: /* stream_def_node: start "stream (definition)" ref stream_type list xdimen_node glue_node list glue_node ">" */ -#line 851 "parser.y" + case 203: /* stream_def_node: start "stream (definition)" ref stream_type list xdimen_node glue_node list glue_node ">" */ +#line 907 "parser.y" { - #line 6472 "format.w" + #line 6885 "format.w" DEF((yyval.rf),stream_kind,(yyvsp[-7].u));hput_tags((yyvsp[-9].u),TAG(stream_kind,(yyvsp[-6].info) |b100));} -#line 3390 "parser.c" +#line 3510 "parser.c" break; - case 188: /* stream_ins_node: start "stream (definition)" ref ">" */ -#line 856 "parser.y" + case 204: /* stream_ins_node: start "stream (definition)" ref ">" */ +#line 912 "parser.y" { - #line 6475 "format.w" + #line 6888 "format.w" RNG("Stream insertion",(yyvsp[-1].u),0,max_ref[stream_kind]);hput_tags((yyvsp[-3].u),TAG(stream_kind,b100));} -#line 3398 "parser.c" +#line 3518 "parser.c" break; - case 191: /* stream: param_list list */ -#line 862 "parser.y" + case 207: /* stream: param_list list */ +#line 918 "parser.y" { - #line 6570 "format.w" + #line 6983 "format.w" (yyval.info)= b010;} -#line 3406 "parser.c" +#line 3526 "parser.c" break; - case 192: /* stream: param_ref list */ -#line 865 "parser.y" + case 208: /* stream: param_ref list */ +#line 921 "parser.y" { - #line 6571 "format.w" + #line 6984 "format.w" (yyval.info)= b000;} -#line 3414 "parser.c" +#line 3534 "parser.c" break; - case 193: /* content_node: start "stream" stream_ref stream ">" */ -#line 869 "parser.y" + case 209: /* content_node: start "stream" stream_ref stream ">" */ +#line 925 "parser.y" { - #line 6573 "format.w" + #line 6986 "format.w" hput_tags((yyvsp[-4].u),TAG(stream_kind,(yyvsp[-1].info)));} -#line 3422 "parser.c" +#line 3542 "parser.c" break; - case 194: /* page_priority: %empty */ -#line 873 "parser.y" + case 210: /* page_priority: %empty */ +#line 929 "parser.y" { - #line 6676 "format.w" + #line 7089 "format.w" HPUT8(1);} -#line 3430 "parser.c" +#line 3550 "parser.c" break; - case 195: /* page_priority: UNSIGNED */ -#line 876 "parser.y" + case 211: /* page_priority: UNSIGNED */ +#line 932 "parser.y" { - #line 6677 "format.w" + #line 7090 "format.w" RNG("page priority",(yyvsp[0].u),0,255);HPUT8((yyvsp[0].u));} -#line 3438 "parser.c" +#line 3558 "parser.c" break; - case 198: /* $@9: %empty */ -#line 882 "parser.y" + case 214: /* $@10: %empty */ +#line 938 "parser.y" { - #line 6681 "format.w" + #line 7094 "format.w" hput_string((yyvsp[0].s));} -#line 3446 "parser.c" +#line 3566 "parser.c" break; - case 199: /* $@10: %empty */ -#line 884 "parser.y" + case 215: /* $@11: %empty */ +#line 940 "parser.y" { - #line 6681 "format.w" + #line 7094 "format.w" HPUT32((yyvsp[0].d));} -#line 3454 "parser.c" +#line 3574 "parser.c" break; - case 201: /* content_node: "<" "range" REFERENCE "on" ">" */ -#line 891 "parser.y" + case 217: /* content_node: "<" "range" REFERENCE "on" ">" */ +#line 947 "parser.y" { - #line 6794 "format.w" + #line 7207 "format.w" REF(page_kind,(yyvsp[-2].u));hput_range((yyvsp[-2].u),true);} -#line 3462 "parser.c" +#line 3582 "parser.c" break; - case 202: /* content_node: "<" "range" REFERENCE "off" ">" */ -#line 894 "parser.y" + case 218: /* content_node: "<" "range" REFERENCE "off" ">" */ +#line 950 "parser.y" { - #line 6795 "format.w" + #line 7208 "format.w" REF(page_kind,(yyvsp[-2].u));hput_range((yyvsp[-2].u),false);} -#line 3470 "parser.c" +#line 3590 "parser.c" break; - case 204: /* $@11: %empty */ -#line 900 "parser.y" + case 220: /* $@12: %empty */ +#line 956 "parser.y" { - #line 7493 "format.w" + #line 7906 "format.w" new_directory((yyvsp[0].u)+1);new_output_buffers();} -#line 3478 "parser.c" +#line 3598 "parser.c" break; - case 208: /* entry: "<" "entry" UNSIGNED string ">" */ -#line 905 "parser.y" + case 224: /* entry: "<" "entry" UNSIGNED string ">" */ +#line 961 "parser.y" { - #line 7496 "format.w" + #line 7909 "format.w" RNG("Section number",(yyvsp[-2].u),3,max_section_no);hset_entry(&(dir[(yyvsp[-2].u)]),(yyvsp[-2].u),0,0,(yyvsp[-1].s));} -#line 3486 "parser.c" +#line 3606 "parser.c" break; - case 209: /* $@12: %empty */ -#line 909 "parser.y" + case 225: /* $@13: %empty */ +#line 965 "parser.y" { - #line 8039 "format.w" + #line 8453 "format.w" hput_definitions_start();} -#line 3494 "parser.c" +#line 3614 "parser.c" break; - case 210: /* definition_section: "<" "definitions" $@12 max_definitions definition_list ">" */ -#line 913 "parser.y" + case 226: /* definition_section: "<" "definitions" $@13 max_definitions definition_list ">" */ +#line 969 "parser.y" { - #line 8041 "format.w" + #line 8455 "format.w" hput_definitions_end();} -#line 3502 "parser.c" +#line 3622 "parser.c" break; - case 213: /* max_definitions: "<" "max" max_list ">" */ -#line 919 "parser.y" + case 229: /* max_definitions: "<" "max" max_list ">" */ +#line 975 "parser.y" { - #line 8157 "format.w" + #line 8571 "format.w" /*253:*/ if(max_ref[label_kind]>=0) ALLOCATE(labels,max_ref[label_kind]+1,Label); /*:253*/ /*274:*/ if(max_outline>=0) ALLOCATE(outlines,max_outline+1,Outline); - /*:274*/ /*310:*/ + /*:274*/ /*290:*/ + {int i; + for(i= 0;i<sizeof(ColorSet)/4;i++) + colors_0[i]= color_defaults[0][i]; + } + /*:290*/ /*325:*/ ALLOCATE(page_on,max_ref[page_kind]+1,int); ALLOCATE(range_pos,2*(max_ref[range_kind]+1),RangePos); - /*:310*/ /*376:*/ + /*:325*/ /*391:*/ definition_bits[0][list_kind]= (1<<(MAX_LIST_DEFAULT+1))-1; definition_bits[0][param_kind]= (1<<(MAX_LIST_DEFAULT+1))-1; definition_bits[0][int_kind]= (1<<(MAX_INT_DEFAULT+1))-1; @@ -3525,536 +3650,545 @@ yyreduce: definition_bits[0][page_kind]= (1<<(MAX_PAGE_DEFAULT+1))-1; definition_bits[0][stream_kind]= (1<<(MAX_STREAM_DEFAULT+1))-1; definition_bits[0][range_kind]= (1<<(MAX_RANGE_DEFAULT+1))-1; - /*:376*/ /*391:*/ + definition_bits[0][color_kind]= (1<<(MAX_COLOR_DEFAULT+1))-1; + /*:391*/ /*406:*/ ALLOCATE(hfont_name,max_ref[font_kind]+1,char*); - /*:391*/hput_max_definitions();} -#line 3532 "parser.c" + /*:406*/hput_max_definitions();} +#line 3658 "parser.c" break; - case 216: /* max_value: "font" UNSIGNED */ -#line 947 "parser.y" + case 232: /* max_value: "font" UNSIGNED */ +#line 1009 "parser.y" { - #line 8161 "format.w" + #line 8575 "format.w" hset_max(font_kind,(yyvsp[0].u));} -#line 3540 "parser.c" +#line 3666 "parser.c" break; - case 217: /* max_value: "int" UNSIGNED */ -#line 950 "parser.y" + case 233: /* max_value: "int" UNSIGNED */ +#line 1012 "parser.y" { - #line 8162 "format.w" + #line 8576 "format.w" hset_max(int_kind,(yyvsp[0].u));} -#line 3548 "parser.c" +#line 3674 "parser.c" break; - case 218: /* max_value: "dimen" UNSIGNED */ -#line 953 "parser.y" + case 234: /* max_value: "dimen" UNSIGNED */ +#line 1015 "parser.y" { - #line 8163 "format.w" + #line 8577 "format.w" hset_max(dimen_kind,(yyvsp[0].u));} -#line 3556 "parser.c" +#line 3682 "parser.c" break; - case 219: /* max_value: "ligature" UNSIGNED */ -#line 956 "parser.y" + case 235: /* max_value: "ligature" UNSIGNED */ +#line 1018 "parser.y" { - #line 8164 "format.w" + #line 8578 "format.w" hset_max(ligature_kind,(yyvsp[0].u));} -#line 3564 "parser.c" +#line 3690 "parser.c" break; - case 220: /* max_value: "disc" UNSIGNED */ -#line 959 "parser.y" + case 236: /* max_value: "disc" UNSIGNED */ +#line 1021 "parser.y" { - #line 8165 "format.w" + #line 8579 "format.w" hset_max(disc_kind,(yyvsp[0].u));} -#line 3572 "parser.c" +#line 3698 "parser.c" break; - case 221: /* max_value: "glue" UNSIGNED */ -#line 962 "parser.y" + case 237: /* max_value: "glue" UNSIGNED */ +#line 1024 "parser.y" { - #line 8166 "format.w" + #line 8580 "format.w" hset_max(glue_kind,(yyvsp[0].u));} -#line 3580 "parser.c" +#line 3706 "parser.c" break; - case 222: /* max_value: "language" UNSIGNED */ -#line 965 "parser.y" + case 238: /* max_value: "language" UNSIGNED */ +#line 1027 "parser.y" { - #line 8167 "format.w" + #line 8581 "format.w" hset_max(language_kind,(yyvsp[0].u));} -#line 3588 "parser.c" +#line 3714 "parser.c" break; - case 223: /* max_value: "rule" UNSIGNED */ -#line 968 "parser.y" + case 239: /* max_value: "rule" UNSIGNED */ +#line 1030 "parser.y" { - #line 8168 "format.w" + #line 8582 "format.w" hset_max(rule_kind,(yyvsp[0].u));} -#line 3596 "parser.c" +#line 3722 "parser.c" break; - case 224: /* max_value: "image" UNSIGNED */ -#line 971 "parser.y" + case 240: /* max_value: "image" UNSIGNED */ +#line 1033 "parser.y" { - #line 8169 "format.w" + #line 8583 "format.w" hset_max(image_kind,(yyvsp[0].u));} -#line 3604 "parser.c" +#line 3730 "parser.c" break; - case 225: /* max_value: "leaders" UNSIGNED */ -#line 974 "parser.y" + case 241: /* max_value: "leaders" UNSIGNED */ +#line 1036 "parser.y" { - #line 8170 "format.w" + #line 8584 "format.w" hset_max(leaders_kind,(yyvsp[0].u));} -#line 3612 "parser.c" +#line 3738 "parser.c" break; - case 226: /* max_value: "baseline" UNSIGNED */ -#line 977 "parser.y" + case 242: /* max_value: "baseline" UNSIGNED */ +#line 1039 "parser.y" { - #line 8171 "format.w" + #line 8585 "format.w" hset_max(baseline_kind,(yyvsp[0].u));} -#line 3620 "parser.c" +#line 3746 "parser.c" break; - case 227: /* max_value: "xdimen" UNSIGNED */ -#line 980 "parser.y" + case 243: /* max_value: "xdimen" UNSIGNED */ +#line 1042 "parser.y" { - #line 8172 "format.w" + #line 8586 "format.w" hset_max(xdimen_kind,(yyvsp[0].u));} -#line 3628 "parser.c" +#line 3754 "parser.c" break; - case 228: /* max_value: "param" UNSIGNED */ -#line 983 "parser.y" + case 244: /* max_value: "param" UNSIGNED */ +#line 1045 "parser.y" { - #line 8173 "format.w" + #line 8587 "format.w" hset_max(param_kind,(yyvsp[0].u));} -#line 3636 "parser.c" +#line 3762 "parser.c" break; - case 229: /* max_value: "stream (definition)" UNSIGNED */ -#line 986 "parser.y" + case 245: /* max_value: "stream (definition)" UNSIGNED */ +#line 1048 "parser.y" { - #line 8174 "format.w" + #line 8588 "format.w" hset_max(stream_kind,(yyvsp[0].u));} -#line 3644 "parser.c" +#line 3770 "parser.c" break; - case 230: /* max_value: "page" UNSIGNED */ -#line 989 "parser.y" + case 246: /* max_value: "page" UNSIGNED */ +#line 1051 "parser.y" { - #line 8175 "format.w" + #line 8589 "format.w" hset_max(page_kind,(yyvsp[0].u));} -#line 3652 "parser.c" +#line 3778 "parser.c" break; - case 231: /* max_value: "range" UNSIGNED */ -#line 992 "parser.y" + case 247: /* max_value: "range" UNSIGNED */ +#line 1054 "parser.y" { - #line 8176 "format.w" + #line 8590 "format.w" hset_max(range_kind,(yyvsp[0].u));} -#line 3660 "parser.c" +#line 3786 "parser.c" break; - case 232: /* max_value: "label" UNSIGNED */ -#line 995 "parser.y" + case 248: /* max_value: "label" UNSIGNED */ +#line 1057 "parser.y" { - #line 8177 "format.w" + #line 8591 "format.w" hset_max(label_kind,(yyvsp[0].u));} -#line 3668 "parser.c" +#line 3794 "parser.c" break; - case 233: /* def_node: start "font" ref font ">" */ -#line 1001 "parser.y" + case 249: /* max_value: "color" UNSIGNED */ +#line 1060 "parser.y" { - #line 8377 "format.w" + #line 8592 "format.w" + hset_max(color_kind,(yyvsp[0].u));} +#line 3802 "parser.c" + break; + + case 250: /* def_node: start "font" ref font ">" */ +#line 1066 "parser.y" + { + #line 8794 "format.w" DEF((yyval.rf),font_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),(yyvsp[-1].info));} -#line 3676 "parser.c" +#line 3810 "parser.c" break; - case 234: /* def_node: start "int" ref integer ">" */ -#line 1004 "parser.y" + case 251: /* def_node: start "int" ref integer ">" */ +#line 1069 "parser.y" { - #line 8378 "format.w" + #line 8795 "format.w" DEF((yyval.rf),int_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_int((yyvsp[-1].i)));} -#line 3684 "parser.c" +#line 3818 "parser.c" break; - case 235: /* def_node: start "dimen" ref dimension ">" */ -#line 1007 "parser.y" + case 252: /* def_node: start "dimen" ref dimension ">" */ +#line 1072 "parser.y" { - #line 8379 "format.w" + #line 8796 "format.w" DEF((yyval.rf),dimen_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_dimen((yyvsp[-1].d)));} -#line 3692 "parser.c" +#line 3826 "parser.c" break; - case 236: /* def_node: start "language" ref string ">" */ -#line 1010 "parser.y" + case 253: /* def_node: start "language" ref string ">" */ +#line 1075 "parser.y" { - #line 8380 "format.w" + #line 8797 "format.w" DEF((yyval.rf),language_kind,(yyvsp[-2].u));hput_string((yyvsp[-1].s));hput_tags((yyvsp[-4].u),TAG(language_kind,0));} -#line 3700 "parser.c" +#line 3834 "parser.c" break; - case 237: /* def_node: start "glue" ref glue ">" */ -#line 1013 "parser.y" + case 254: /* def_node: start "glue" ref glue ">" */ +#line 1078 "parser.y" { - #line 8381 "format.w" + #line 8798 "format.w" DEF((yyval.rf),glue_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_glue(&((yyvsp[-1].g))));} -#line 3708 "parser.c" +#line 3842 "parser.c" break; - case 238: /* def_node: start "xdimen" ref xdimen ">" */ -#line 1016 "parser.y" + case 255: /* def_node: start "xdimen" ref xdimen ">" */ +#line 1081 "parser.y" { - #line 8382 "format.w" + #line 8799 "format.w" DEF((yyval.rf),xdimen_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_xdimen(&((yyvsp[-1].xd))));} -#line 3716 "parser.c" +#line 3850 "parser.c" break; - case 239: /* def_node: start "rule" ref rule ">" */ -#line 1019 "parser.y" + case 256: /* def_node: start "rule" ref rule ">" */ +#line 1084 "parser.y" { - #line 8383 "format.w" + #line 8800 "format.w" DEF((yyval.rf),rule_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_rule(&((yyvsp[-1].r))));} -#line 3724 "parser.c" +#line 3858 "parser.c" break; - case 240: /* def_node: start "leaders" ref leaders ">" */ -#line 1022 "parser.y" + case 257: /* def_node: start "leaders" ref leaders ">" */ +#line 1087 "parser.y" { - #line 8384 "format.w" + #line 8801 "format.w" DEF((yyval.rf),leaders_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(leaders_kind,(yyvsp[-1].info)));} -#line 3732 "parser.c" +#line 3866 "parser.c" break; - case 241: /* def_node: start "baseline" ref baseline ">" */ -#line 1025 "parser.y" + case 258: /* def_node: start "baseline" ref baseline ">" */ +#line 1090 "parser.y" { - #line 8385 "format.w" + #line 8802 "format.w" DEF((yyval.rf),baseline_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(baseline_kind,(yyvsp[-1].info)));} -#line 3740 "parser.c" +#line 3874 "parser.c" break; - case 242: /* def_node: start "ligature" ref ligature ">" */ -#line 1028 "parser.y" + case 259: /* def_node: start "ligature" ref ligature ">" */ +#line 1093 "parser.y" { - #line 8386 "format.w" + #line 8803 "format.w" DEF((yyval.rf),ligature_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_ligature(&((yyvsp[-1].lg))));} -#line 3748 "parser.c" +#line 3882 "parser.c" break; - case 243: /* def_node: start "disc" ref disc ">" */ -#line 1031 "parser.y" + case 260: /* def_node: start "disc" ref disc ">" */ +#line 1096 "parser.y" { - #line 8387 "format.w" + #line 8804 "format.w" DEF((yyval.rf),disc_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_disc(&((yyvsp[-1].dc))));} -#line 3756 "parser.c" +#line 3890 "parser.c" break; - case 244: /* def_node: start "image" ref image ">" */ -#line 1034 "parser.y" + case 261: /* def_node: start "image" ref image ">" */ +#line 1099 "parser.y" { - #line 8388 "format.w" + #line 8805 "format.w" DEF((yyval.rf),image_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(image_kind,(yyvsp[-1].info)));} -#line 3764 "parser.c" +#line 3898 "parser.c" break; - case 245: /* def_node: start "param" ref parameters ">" */ -#line 1037 "parser.y" + case 262: /* def_node: start "param" ref parameters ">" */ +#line 1102 "parser.y" { - #line 8389 "format.w" + #line 8806 "format.w" DEF((yyval.rf),param_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_list((yyvsp[-4].u)+2,&((yyvsp[-1].l))));} -#line 3772 "parser.c" +#line 3906 "parser.c" break; - case 246: /* def_node: start "page" ref page ">" */ -#line 1040 "parser.y" + case 263: /* def_node: start "page" ref page ">" */ +#line 1105 "parser.y" { - #line 8390 "format.w" + #line 8807 "format.w" DEF((yyval.rf),page_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(page_kind,0));} -#line 3780 "parser.c" +#line 3914 "parser.c" break; - case 247: /* def_node: start "int" ref ref ">" */ -#line 1045 "parser.y" + case 264: /* def_node: start "int" ref ref ">" */ +#line 1110 "parser.y" { - #line 8409 "format.w" + #line 8826 "format.w" DEF_REF((yyval.rf),int_kind,(yyvsp[-2].u),(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(int_kind,0));} -#line 3788 "parser.c" +#line 3922 "parser.c" break; - case 248: /* def_node: start "dimen" ref ref ">" */ -#line 1048 "parser.y" + case 265: /* def_node: start "dimen" ref ref ">" */ +#line 1113 "parser.y" { - #line 8410 "format.w" + #line 8827 "format.w" DEF_REF((yyval.rf),dimen_kind,(yyvsp[-2].u),(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(dimen_kind,0));} -#line 3796 "parser.c" +#line 3930 "parser.c" break; - case 249: /* def_node: start "glue" ref ref ">" */ -#line 1051 "parser.y" + case 266: /* def_node: start "glue" ref ref ">" */ +#line 1116 "parser.y" { - #line 8411 "format.w" + #line 8828 "format.w" DEF_REF((yyval.rf),glue_kind,(yyvsp[-2].u),(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(glue_kind,0));} -#line 3804 "parser.c" +#line 3938 "parser.c" break; - case 251: /* def_list: def_list def_node */ -#line 1056 "parser.y" + case 268: /* def_list: def_list def_node */ +#line 1121 "parser.y" { - #line 8527 "format.w" + #line 8951 "format.w" check_param_def(&((yyvsp[0].rf)));} -#line 3812 "parser.c" +#line 3946 "parser.c" break; - case 252: /* parameters: estimate def_list */ -#line 1059 "parser.y" + case 269: /* parameters: estimate def_list */ +#line 1124 "parser.y" { - #line 8528 "format.w" + #line 8952 "format.w" (yyval.l).p= (yyvsp[0].u);(yyval.l).t= TAG(param_kind,b001);(yyval.l).s= (hpos-hstart)-(yyvsp[0].u);} -#line 3820 "parser.c" +#line 3954 "parser.c" break; - case 253: /* named_param_list: start "param" parameters ">" */ -#line 1064 "parser.y" + case 270: /* named_param_list: start "param" parameters ">" */ +#line 1129 "parser.y" { - #line 8541 "format.w" + #line 8965 "format.w" hput_tags((yyvsp[-3].u),hput_list((yyvsp[-3].u)+1,&((yyvsp[-1].l))));} -#line 3828 "parser.c" +#line 3962 "parser.c" break; - case 255: /* param_list: start parameters ">" */ -#line 1068 "parser.y" + case 272: /* param_list: start parameters ">" */ +#line 1133 "parser.y" { - #line 8543 "format.w" + #line 8967 "format.w" hput_tags((yyvsp[-2].u),hput_list((yyvsp[-2].u)+1,&((yyvsp[-1].l))));} -#line 3836 "parser.c" +#line 3970 "parser.c" break; - case 257: /* font_head: string dimension UNSIGNED UNSIGNED */ -#line 1076 "parser.y" + case 274: /* font_head: string dimension UNSIGNED UNSIGNED */ +#line 1141 "parser.y" { - #line 8689 "format.w" + #line 9113 "format.w" uint8_t f= (yyvsp[-4].u);SET_DBIT(f,font_kind);hfont_name[f]= strdup((yyvsp[-3].s));(yyval.info)= hput_font_head(f,hfont_name[f],(yyvsp[-2].d),(yyvsp[-1].u),(yyvsp[0].u));} -#line 3844 "parser.c" +#line 3978 "parser.c" break; - case 260: /* font_param: start "penalty" fref penalty ">" */ -#line 1083 "parser.y" + case 277: /* font_param: start "penalty" fref penalty ">" */ +#line 1148 "parser.y" { - #line 8694 "format.w" + #line 9118 "format.w" hput_tags((yyvsp[-4].u),hput_int((yyvsp[-1].i)));} -#line 3852 "parser.c" +#line 3986 "parser.c" break; - case 261: /* font_param: start "kern" fref kern ">" */ -#line 1086 "parser.y" + case 278: /* font_param: start "kern" fref kern ">" */ +#line 1151 "parser.y" { - #line 8695 "format.w" + #line 9119 "format.w" hput_tags((yyvsp[-4].u),hput_kern(&((yyvsp[-1].kt))));} -#line 3860 "parser.c" +#line 3994 "parser.c" break; - case 262: /* font_param: start "ligature" fref ligature ">" */ -#line 1089 "parser.y" + case 279: /* font_param: start "ligature" fref ligature ">" */ +#line 1154 "parser.y" { - #line 8696 "format.w" + #line 9120 "format.w" hput_tags((yyvsp[-4].u),hput_ligature(&((yyvsp[-1].lg))));} -#line 3868 "parser.c" +#line 4002 "parser.c" break; - case 263: /* font_param: start "disc" fref disc ">" */ -#line 1092 "parser.y" + case 280: /* font_param: start "disc" fref disc ">" */ +#line 1157 "parser.y" { - #line 8697 "format.w" + #line 9121 "format.w" hput_tags((yyvsp[-4].u),hput_disc(&((yyvsp[-1].dc))));} -#line 3876 "parser.c" +#line 4010 "parser.c" break; - case 264: /* font_param: start "glue" fref glue ">" */ -#line 1095 "parser.y" + case 281: /* font_param: start "glue" fref glue ">" */ +#line 1160 "parser.y" { - #line 8698 "format.w" + #line 9122 "format.w" hput_tags((yyvsp[-4].u),hput_glue(&((yyvsp[-1].g))));} -#line 3884 "parser.c" +#line 4018 "parser.c" break; - case 265: /* font_param: start "language" fref string ">" */ -#line 1098 "parser.y" + case 282: /* font_param: start "language" fref string ">" */ +#line 1163 "parser.y" { - #line 8699 "format.w" + #line 9123 "format.w" hput_string((yyvsp[-1].s));hput_tags((yyvsp[-4].u),TAG(language_kind,0));} -#line 3892 "parser.c" +#line 4026 "parser.c" break; - case 266: /* font_param: start "rule" fref rule ">" */ -#line 1101 "parser.y" + case 283: /* font_param: start "rule" fref rule ">" */ +#line 1166 "parser.y" { - #line 8700 "format.w" + #line 9124 "format.w" hput_tags((yyvsp[-4].u),hput_rule(&((yyvsp[-1].r))));} -#line 3900 "parser.c" +#line 4034 "parser.c" break; - case 267: /* font_param: start "image" fref image ">" */ -#line 1104 "parser.y" + case 284: /* font_param: start "image" fref image ">" */ +#line 1169 "parser.y" { - #line 8701 "format.w" + #line 9125 "format.w" hput_tags((yyvsp[-4].u),TAG(image_kind,(yyvsp[-1].info)));} -#line 3908 "parser.c" +#line 4042 "parser.c" break; - case 268: /* fref: ref */ -#line 1108 "parser.y" + case 285: /* fref: ref */ +#line 1173 "parser.y" { - #line 8703 "format.w" + #line 9127 "format.w" RNG("Font parameter",(yyvsp[0].u),0,MAX_FONT_PARAMS);} -#line 3916 "parser.c" +#line 4050 "parser.c" break; - case 269: /* xdimen_ref: ref */ -#line 1112 "parser.y" + case 286: /* xdimen_ref: ref */ +#line 1177 "parser.y" { - #line 8780 "format.w" + #line 9204 "format.w" REF(xdimen_kind,(yyvsp[0].u));} -#line 3924 "parser.c" +#line 4058 "parser.c" break; - case 270: /* param_ref: ref */ -#line 1115 "parser.y" + case 287: /* param_ref: ref */ +#line 1180 "parser.y" { - #line 8781 "format.w" + #line 9205 "format.w" REF(param_kind,(yyvsp[0].u));} -#line 3932 "parser.c" +#line 4066 "parser.c" break; - case 271: /* stream_ref: ref */ -#line 1118 "parser.y" + case 288: /* stream_ref: ref */ +#line 1183 "parser.y" { - #line 8782 "format.w" + #line 9206 "format.w" REF_RNG(stream_kind,(yyvsp[0].u));} -#line 3940 "parser.c" +#line 4074 "parser.c" break; - case 272: /* content_node: start "penalty" ref ">" */ -#line 1124 "parser.y" + case 289: /* content_node: start "penalty" ref ">" */ +#line 1189 "parser.y" { - #line 8786 "format.w" + #line 9210 "format.w" REF(penalty_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(penalty_kind,0));} -#line 3948 "parser.c" +#line 4082 "parser.c" break; - case 273: /* content_node: start "kern" explicit ref ">" */ -#line 1128 "parser.y" + case 290: /* content_node: start "kern" explicit ref ">" */ +#line 1193 "parser.y" { - #line 8788 "format.w" + #line 9212 "format.w" REF(dimen_kind,(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(kern_kind,((yyvsp[-2].b))?b100:b000));} -#line 3956 "parser.c" +#line 4090 "parser.c" break; - case 274: /* content_node: start "kern" explicit "xdimen" ref ">" */ -#line 1132 "parser.y" + case 291: /* content_node: start "kern" explicit "xdimen" ref ">" */ +#line 1197 "parser.y" { - #line 8790 "format.w" + #line 9214 "format.w" REF(xdimen_kind,(yyvsp[-1].u));hput_tags((yyvsp[-5].u),TAG(kern_kind,((yyvsp[-3].b))?b101:b001));} -#line 3964 "parser.c" +#line 4098 "parser.c" break; - case 275: /* content_node: start "glue" ref ">" */ -#line 1135 "parser.y" + case 292: /* content_node: start "glue" ref ">" */ +#line 1200 "parser.y" { - #line 8791 "format.w" + #line 9215 "format.w" REF(glue_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(glue_kind,0));} -#line 3972 "parser.c" +#line 4106 "parser.c" break; - case 276: /* content_node: start "ligature" ref ">" */ -#line 1138 "parser.y" + case 293: /* content_node: start "ligature" ref ">" */ +#line 1203 "parser.y" { - #line 8792 "format.w" + #line 9216 "format.w" REF(ligature_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(ligature_kind,0));} -#line 3980 "parser.c" +#line 4114 "parser.c" break; - case 277: /* content_node: start "disc" ref ">" */ -#line 1141 "parser.y" + case 294: /* content_node: start "disc" ref ">" */ +#line 1206 "parser.y" { - #line 8793 "format.w" + #line 9217 "format.w" REF(disc_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(disc_kind,0));} -#line 3988 "parser.c" +#line 4122 "parser.c" break; - case 278: /* content_node: start "rule" ref ">" */ -#line 1144 "parser.y" + case 295: /* content_node: start "rule" ref ">" */ +#line 1209 "parser.y" { - #line 8794 "format.w" + #line 9218 "format.w" REF(rule_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(rule_kind,0));} -#line 3996 "parser.c" +#line 4130 "parser.c" break; - case 279: /* content_node: start "image" ref ">" */ -#line 1147 "parser.y" + case 296: /* content_node: start "image" ref ">" */ +#line 1212 "parser.y" { - #line 8795 "format.w" + #line 9219 "format.w" REF(image_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(image_kind,0));} -#line 4004 "parser.c" +#line 4138 "parser.c" break; - case 280: /* content_node: start "leaders" ref ">" */ -#line 1150 "parser.y" + case 297: /* content_node: start "leaders" ref ">" */ +#line 1215 "parser.y" { - #line 8796 "format.w" + #line 9220 "format.w" REF(leaders_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(leaders_kind,0));} -#line 4012 "parser.c" +#line 4146 "parser.c" break; - case 281: /* content_node: start "baseline" ref ">" */ -#line 1153 "parser.y" + case 298: /* content_node: start "baseline" ref ">" */ +#line 1218 "parser.y" { - #line 8797 "format.w" + #line 9221 "format.w" REF(baseline_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(baseline_kind,0));} -#line 4020 "parser.c" +#line 4154 "parser.c" break; - case 282: /* content_node: start "language" REFERENCE ">" */ -#line 1156 "parser.y" + case 299: /* content_node: start "language" REFERENCE ">" */ +#line 1221 "parser.y" { - #line 8798 "format.w" + #line 9222 "format.w" REF(language_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),hput_language((yyvsp[-1].u)));} -#line 4028 "parser.c" +#line 4162 "parser.c" break; - case 283: /* glue_node: start "glue" ref ">" */ -#line 1160 "parser.y" + case 300: /* glue_node: start "glue" ref ">" */ +#line 1225 "parser.y" { - #line 8800 "format.w" + #line 9224 "format.w" REF(glue_kind,(yyvsp[-1].u)); if((yyvsp[-1].u)==zero_skip_no){hpos= hpos-2;(yyval.b)= false;} else{hput_tags((yyvsp[-3].u),TAG(glue_kind,0));(yyval.b)= true;}} -#line 4038 "parser.c" +#line 4172 "parser.c" break; - case 284: /* $@13: %empty */ -#line 1167 "parser.y" + case 301: /* $@14: %empty */ +#line 1232 "parser.y" { - #line 9247 "format.w" + #line 9710 "format.w" hput_content_start();} -#line 4046 "parser.c" +#line 4180 "parser.c" break; - case 285: /* content_section: "<" "content" $@13 content_list ">" */ -#line 1170 "parser.y" + case 302: /* content_section: "<" "content" $@14 content_list ">" */ +#line 1235 "parser.y" { - #line 9248 "format.w" + #line 9711 "format.w" hput_content_end();hput_range_defs();hput_label_defs();} -#line 4054 "parser.c" +#line 4188 "parser.c" break; -#line 4058 "parser.c" +#line 4192 "parser.c" default: break; } @@ -4278,6 +4412,6 @@ yyreturnlab: return yyresult; } -#line 1174 "parser.y" +#line 1239 "parser.y" - /*:534*/ + /*:553*/ |