summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/hitexdir/hiparser.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/web2c/hitexdir/hiparser.c')
-rw-r--r--Build/source/texk/web2c/hitexdir/hiparser.c3123
1 files changed, 1600 insertions, 1523 deletions
diff --git a/Build/source/texk/web2c/hitexdir/hiparser.c b/Build/source/texk/web2c/hitexdir/hiparser.c
index bd18ec32c92..75fa0a92ab5 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 10780 "format.w"
+ #line 11081 "format.w"
#include "hibasetypes.h"
#include <string.h>
@@ -79,9 +79,9 @@
#include "hiput.h"
extern char**hfont_name;
- /*366:*/
+ /*375:*/
uint32_t definition_bits[0x100/32][32]= {
- #line 8078 "format.w"
+ #line 8284 "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])
- /*:366*/ /*370:*/
+ /*:375*/ /*379:*/
#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);
- /*:370*/
+ /*:379*/
extern void hset_entry(Entry*e,uint16_t i,uint32_t size,
uint32_t xsize,char*file_name);
- /*433:*/
+ /*445:*/
#ifdef DEBUG
#define YYDEBUG 1
extern int yydebug;
#else
#define YYDEBUG 0
#endif
- /*:433*/
+ /*:445*/
extern int yylex(void);
- /*362:*/
+ /*371:*/
void hset_max(Kind k,int n)
{
- #line 7921 "format.w"
+ #line 8126 "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;
}
- /*:362*/ /*373:*/
+ /*:371*/ /*382:*/
void check_param_def(Ref*df)
{
- #line 8227 "format.w"
+ #line 8437 "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]);
}
- /*:373*/ /*432:*/
+ /*:382*/ /*444:*/
extern int yylineno;
int yyerror(const char*msg)
{
- #line 9351 "format.w"
+ #line 9577 "format.w"
QUIT(" in line %d %s",yylineno,msg);
return 0;
}
- /*:432*/
+ /*:444*/
@@ -241,130 +241,136 @@ enum yysymbol_kind_t
YYSYMBOL_MID = 70, /* "mid" */
YYSYMBOL_LINK = 71, /* "link" */
YYSYMBOL_OUTLINE = 72, /* "outline" */
- YYSYMBOL_STREAM = 73, /* "stream" */
- YYSYMBOL_STREAMDEF = 74, /* "stream (definition)" */
- YYSYMBOL_FIRST = 75, /* "first" */
- YYSYMBOL_LAST = 76, /* "last" */
- YYSYMBOL_TOP = 77, /* "top" */
- YYSYMBOL_NOREFERENCE = 78, /* "*" */
- YYSYMBOL_PAGE = 79, /* "page" */
- YYSYMBOL_RANGE = 80, /* "range" */
- YYSYMBOL_DIRECTORY = 81, /* "directory" */
- YYSYMBOL_SECTION = 82, /* "entry" */
- YYSYMBOL_DEFINITIONS = 83, /* "definitions" */
- YYSYMBOL_MAX = 84, /* "max" */
- YYSYMBOL_PARAM = 85, /* "param" */
- YYSYMBOL_FONT = 86, /* "font" */
- YYSYMBOL_CONTENT = 87, /* "content" */
- YYSYMBOL_YYACCEPT = 88, /* $accept */
- YYSYMBOL_glyph = 89, /* glyph */
- YYSYMBOL_content_node = 90, /* content_node */
- YYSYMBOL_start = 91, /* start */
- YYSYMBOL_integer = 92, /* integer */
- YYSYMBOL_string = 93, /* string */
- YYSYMBOL_number = 94, /* number */
- YYSYMBOL_dimension = 95, /* dimension */
- YYSYMBOL_xdimen = 96, /* xdimen */
- YYSYMBOL_xdimen_node = 97, /* xdimen_node */
- YYSYMBOL_order = 98, /* order */
- YYSYMBOL_stretch = 99, /* stretch */
- YYSYMBOL_penalty = 100, /* penalty */
- YYSYMBOL_rule_dimension = 101, /* rule_dimension */
- YYSYMBOL_rule = 102, /* rule */
- YYSYMBOL_rule_node = 103, /* rule_node */
- YYSYMBOL_explicit = 104, /* explicit */
- YYSYMBOL_kern = 105, /* kern */
- YYSYMBOL_plus = 106, /* plus */
- YYSYMBOL_minus = 107, /* minus */
- YYSYMBOL_glue = 108, /* glue */
- YYSYMBOL_glue_node = 109, /* glue_node */
- YYSYMBOL_position = 110, /* position */
- YYSYMBOL_content_list = 111, /* content_list */
- YYSYMBOL_estimate = 112, /* estimate */
- YYSYMBOL_list = 113, /* list */
- YYSYMBOL_114_1 = 114, /* $@1 */
- YYSYMBOL_text = 115, /* text */
- YYSYMBOL_txt = 116, /* txt */
- YYSYMBOL_117_2 = 117, /* $@2 */
- YYSYMBOL_box_dimen = 118, /* box_dimen */
- YYSYMBOL_box_shift = 119, /* box_shift */
- YYSYMBOL_box_glue_set = 120, /* box_glue_set */
- YYSYMBOL_box = 121, /* box */
- YYSYMBOL_hbox_node = 122, /* hbox_node */
- YYSYMBOL_vbox_node = 123, /* vbox_node */
- YYSYMBOL_box_flex = 124, /* box_flex */
- YYSYMBOL_xbox = 125, /* xbox */
- YYSYMBOL_box_goal = 126, /* box_goal */
- YYSYMBOL_hpack = 127, /* hpack */
- YYSYMBOL_vpack = 128, /* vpack */
- YYSYMBOL_129_3 = 129, /* $@3 */
- YYSYMBOL_vxbox_node = 130, /* vxbox_node */
- YYSYMBOL_hxbox_node = 131, /* hxbox_node */
- YYSYMBOL_ltype = 132, /* ltype */
- YYSYMBOL_leaders = 133, /* leaders */
- YYSYMBOL_baseline = 134, /* baseline */
+ 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_cc_list = 136, /* cc_list */
- YYSYMBOL_lig_cc = 137, /* lig_cc */
- YYSYMBOL_ref = 138, /* ref */
- YYSYMBOL_ligature = 139, /* ligature */
- YYSYMBOL_140_5 = 140, /* $@5 */
- YYSYMBOL_replace_count = 141, /* replace_count */
- YYSYMBOL_disc = 142, /* disc */
- YYSYMBOL_disc_node = 143, /* disc_node */
- YYSYMBOL_par_dimen = 144, /* par_dimen */
- YYSYMBOL_par = 145, /* par */
- YYSYMBOL_146_6 = 146, /* $@6 */
- YYSYMBOL_math = 147, /* math */
- YYSYMBOL_on_off = 148, /* on_off */
- YYSYMBOL_span_count = 149, /* span_count */
- YYSYMBOL_table = 150, /* table */
- YYSYMBOL_image_aspect = 151, /* image_aspect */
- YYSYMBOL_image_width = 152, /* image_width */
- YYSYMBOL_image_height = 153, /* image_height */
- YYSYMBOL_image_spec = 154, /* image_spec */
- YYSYMBOL_image = 155, /* image */
- YYSYMBOL_max_value = 156, /* max_value */
- YYSYMBOL_placement = 157, /* placement */
- YYSYMBOL_def_node = 158, /* def_node */
- YYSYMBOL_stream_link = 159, /* stream_link */
- YYSYMBOL_stream_split = 160, /* stream_split */
- YYSYMBOL_stream_info = 161, /* stream_info */
- YYSYMBOL_162_7 = 162, /* $@7 */
- YYSYMBOL_stream_type = 163, /* stream_type */
- YYSYMBOL_stream_def_node = 164, /* stream_def_node */
- YYSYMBOL_stream_ins_node = 165, /* stream_ins_node */
- YYSYMBOL_stream = 166, /* stream */
- YYSYMBOL_page_priority = 167, /* page_priority */
- YYSYMBOL_stream_def_list = 168, /* stream_def_list */
- YYSYMBOL_page = 169, /* page */
- YYSYMBOL_170_8 = 170, /* $@8 */
- YYSYMBOL_171_9 = 171, /* $@9 */
- YYSYMBOL_hint = 172, /* hint */
- YYSYMBOL_directory_section = 173, /* directory_section */
- YYSYMBOL_174_10 = 174, /* $@10 */
- YYSYMBOL_entry_list = 175, /* entry_list */
- YYSYMBOL_entry = 176, /* entry */
- YYSYMBOL_definition_section = 177, /* definition_section */
- YYSYMBOL_178_11 = 178, /* $@11 */
- YYSYMBOL_definition_list = 179, /* definition_list */
- YYSYMBOL_max_definitions = 180, /* max_definitions */
- YYSYMBOL_max_list = 181, /* max_list */
- YYSYMBOL_def_list = 182, /* def_list */
- YYSYMBOL_parameters = 183, /* parameters */
- YYSYMBOL_empty_param_list = 184, /* empty_param_list */
- YYSYMBOL_non_empty_param_list = 185, /* non_empty_param_list */
- YYSYMBOL_186_12 = 186, /* $@12 */
- YYSYMBOL_font = 187, /* font */
- YYSYMBOL_font_head = 188, /* font_head */
- YYSYMBOL_font_param_list = 189, /* font_param_list */
- YYSYMBOL_font_param = 190, /* font_param */
- YYSYMBOL_fref = 191, /* fref */
- YYSYMBOL_xdimen_ref = 192, /* xdimen_ref */
- YYSYMBOL_param_ref = 193, /* param_ref */
- YYSYMBOL_stream_ref = 194, /* stream_ref */
- YYSYMBOL_content_section = 195, /* content_section */
- YYSYMBOL_196_13 = 196 /* $@13 */
+ 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_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 */
};
typedef enum yysymbol_kind_t yysymbol_kind_t;
@@ -692,19 +698,19 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 5
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 642
+#define YYLAST 720
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 88
+#define YYNTOKENS 89
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 109
+#define YYNNTS 114
/* YYNRULES -- Number of rules. */
-#define YYNRULES 274
+#define YYNRULES 285
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 576
+#define YYNSTATES 596
/* YYMAXUTOK -- Last valid token kind. */
-#define YYMAXUTOK 342
+#define YYMAXUTOK 343
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
@@ -752,41 +758,42 @@ 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
+ 85, 86, 87, 88
};
#if YYDEBUG
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_int16 yyrline[] =
{
- 0, 268, 268, 271, 274, 278, 278, 282, 286, 286,
- 292, 294, 296, 298, 301, 304, 308, 311, 314, 317,
- 321, 326, 328, 330, 332, 336, 340, 343, 347, 347,
- 350, 356, 359, 361, 363, 366, 369, 373, 375, 378,
- 380, 383, 386, 390, 396, 399, 400, 401, 404, 407,
- 414, 413, 422, 422, 424, 427, 430, 433, 436, 439,
- 442, 445, 445, 450, 454, 457, 461, 464, 467, 472,
- 476, 479, 482, 482, 484, 487, 490, 494, 497, 500,
- 503, 507, 510, 510, 516, 519, 524, 527, 531, 531,
- 533, 535, 537, 539, 542, 545, 548, 551, 555, 555,
- 564, 569, 569, 572, 575, 578, 581, 581, 588, 592,
- 595, 599, 603, 606, 611, 616, 618, 621, 624, 627,
- 630, 630, 635, 638, 642, 646, 649, 652, 655, 658,
- 661, 664, 667, 670, 674, 678, 680, 683, 687, 691,
- 694, 697, 700, 704, 707, 711, 715, 717, 720, 723,
- 726, 729, 733, 737, 741, 745, 750, 754, 758, 765,
- 767, 769, 771, 774, 779, 784, 794, 796, 799, 802,
- 802, 806, 808, 810, 812, 816, 822, 827, 827, 829,
- 832, 835, 838, 843, 846, 850, 850, 852, 854, 852,
- 861, 864, 868, 870, 870, 873, 873, 874, 879, 879,
- 886, 886, 888, 913, 913, 915, 918, 921, 924, 927,
- 930, 933, 936, 939, 942, 945, 948, 951, 954, 957,
- 960, 963, 969, 972, 975, 978, 981, 984, 987, 990,
- 993, 996, 999, 1002, 1005, 1008, 1013, 1016, 1019, 1023,
- 1024, 1027, 1031, 1034, 1034, 1042, 1044, 1049, 1049, 1052,
- 1055, 1058, 1061, 1064, 1067, 1070, 1073, 1077, 1081, 1084,
- 1087, 1093, 1096, 1100, 1104, 1107, 1110, 1113, 1116, 1119,
- 1122, 1125, 1129, 1136, 1136
+ 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
};
#endif
@@ -815,29 +822,31 @@ 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\"", "\"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", "stretch", "penalty", "rule_dimension",
- "rule", "rule_node", "explicit", "kern", "plus", "minus", "glue",
- "glue_node", "position", "content_list", "estimate", "list", "$@1",
- "text", "txt", "$@2", "box_dimen", "box_shift", "box_glue_set", "box",
- "hbox_node", "vbox_node", "box_flex", "xbox", "box_goal", "hpack",
- "vpack", "$@3", "vxbox_node", "hxbox_node", "ltype", "leaders",
- "baseline", "$@4", "cc_list", "lig_cc", "ref", "ligature", "$@5",
- "replace_count", "disc", "disc_node", "par_dimen", "par", "$@6", "math",
+ "\"bot\"", "\"mid\"", "\"link\"", "\"outline\"", "\"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",
+ "stretch", "penalty", "rule_dimension", "rule", "rule_node", "explicit",
+ "kern", "plus", "minus", "glue", "glue_node", "position", "content_list",
+ "estimate", "list", "$@1", "text", "txt", "$@2", "box_dimen",
+ "box_shift", "box_glue_set", "box", "hbox_node", "vbox_node", "box_flex",
+ "box_options", "hxbox_node", "vbox_dimen", "vxbox_node", "box_goal",
+ "hpack", "max_depth", "vpack", "$@3", "$@4", "ltype", "leaders",
+ "baseline", "$@5", "cc_list", "lig_cc", "ref", "ligature", "$@6",
+ "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", "stream_link", "stream_split", "stream_info", "$@7",
- "stream_type", "stream_def_node", "stream_ins_node", "stream",
- "page_priority", "stream_def_list", "page", "$@8", "$@9", "hint",
- "directory_section", "$@10", "entry_list", "entry", "definition_section",
- "$@11", "definition_list", "max_definitions", "max_list", "def_list",
- "parameters", "empty_param_list", "non_empty_param_list", "$@12", "font",
- "font_head", "font_param_list", "font_param", "fref", "xdimen_ref",
- "param_ref", "stream_ref", "content_section", "$@13", YY_NULLPTR
+ "def_node", "unknown_bytes", "unknown_node", "unknown_nodes",
+ "stream_link", "stream_split", "stream_info", "$@8", "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",
+ "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
};
static const char *
@@ -847,7 +856,7 @@ yysymbol_name (yysymbol_kind_t yysymbol)
}
#endif
-#define YYPACT_NINF (-242)
+#define YYPACT_NINF (-275)
#define yypact_value_is_default(Yyn) \
((Yyn) == YYPACT_NINF)
@@ -861,64 +870,66 @@ yysymbol_name (yysymbol_kind_t yysymbol)
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 55, 10, 108, 129, 135, -242, 81, 170, -242, -242,
- 104, -242, -242, 191, -242, 209, 113, -242, -242, 140,
- -242, -242, -242, 216, -242, 227, 220, 238, 177, -242,
- 59, -242, -2, -242, -242, 568, -242, -242, -242, -242,
- -242, -242, -242, -242, 280, 391, -242, 252, 255, 255,
- 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
- 255, 255, 257, 260, 75, 278, 264, 175, 246, 217,
- 164, 164, 256, 164, 256, 164, 110, 217, 255, 70,
- 217, 88, 94, 167, 87, 300, 286, 255, 255, -242,
- -242, 299, 310, 313, 321, 339, 341, 343, 344, 345,
- 349, 352, 353, 354, 355, 356, 357, 358, 359, 360,
- 342, 115, -242, 217, 164, 278, 280, 181, 217, 364,
- 164, 255, 246, 362, 280, 363, 280, 90, 254, 365,
- 366, 367, -242, -242, -242, 370, 371, 377, -242, -242,
- -242, -242, 297, -242, 181, 379, 382, -242, 198, 383,
- 164, 361, 384, 386, 164, 256, 389, 392, 164, 275,
- 393, 256, 394, 315, 397, 400, -242, 380, 269, 402,
- 404, -242, 406, 407, 408, 409, 411, 415, 94, 418,
- 255, -242, -242, 419, 255, -242, -242, -242, -242, 420,
- -242, 94, 94, -242, 363, 421, 275, 275, 422, -242,
- 423, 513, 427, 430, 164, 434, 94, 436, 277, -242,
- 255, 76, -242, -242, -242, -242, -242, -242, -242, -242,
- -242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
- -242, -242, -242, 437, 441, 445, 446, 447, 448, 449,
- 450, 453, 454, 457, -242, 458, 463, 464, -242, 465,
- -242, -242, 468, 164, 469, 364, -242, -242, -242, 470,
- 471, 474, -242, -242, -242, -242, -242, -242, -242, -242,
- -242, 181, -242, -242, 255, -242, 475, -242, 322, 164,
- 455, -242, -242, 164, 311, -242, -242, -242, 110, 110,
- 94, -242, 361, -242, 433, -242, -242, 217, -242, -242,
- -242, 364, -242, -242, 364, -242, -242, -242, 193, -242,
- -242, -242, 94, -242, -242, 94, -242, 94, 94, -242,
- 45, 364, 94, 94, 51, 364, 94, -242, -242, -242,
- 94, 94, -242, -242, -242, 480, -242, 304, -242, -242,
- -242, 481, 483, 94, 94, -242, -242, -242, -242, 472,
- 485, -242, 94, 94, -242, -242, -242, -242, -242, -242,
- -242, -242, -242, -242, -242, -242, -242, -242, 487, -242,
- -242, 486, -242, 489, -242, 364, 364, -242, -242, -242,
- -242, 493, -242, 164, -242, 197, -242, 164, -242, -242,
- 164, 164, 94, -242, -242, -242, -242, -242, 455, 110,
- 164, 494, 495, 154, -242, -242, -242, 364, -242, -242,
- 473, -242, 94, 46, -242, 94, -242, 94, -242, -242,
- 459, -242, -242, 364, 94, -242, -242, -242, 340, 94,
- 94, -242, 240, 435, -242, -242, -242, 94, -242, 164,
- -242, 364, 497, -242, 364, -242, 498, 451, -242, 77,
- -242, -242, 488, -242, -242, -242, -242, -242, -242, -242,
- -242, -242, -242, 94, 94, -242, -242, -242, 181, -242,
- -242, -242, -242, -242, 363, -242, -242, -242, 200, -242,
- -242, -242, 440, -242, 250, -242, -242, 505, 47, 364,
- -242, 164, -242, 246, 255, 255, 255, 255, 255, 255,
- 255, 255, -242, -242, -242, 275, 107, 506, -242, -242,
- -242, -242, -242, -242, -242, -242, -242, 430, 262, -242,
- -242, -242, -242, -242, -242, 47, -242, 94, -242, -242,
- 115, 280, 181, 246, 164, 255, 246, 362, 94, -242,
- -242, -242, -242, -242, 507, 364, 364, 508, 510, 511,
- 164, 512, 516, 517, 521, 522, -242, -242, 523, 364,
- -242, -242, -242, -242, -242, -242, -242, -242, -242, 94,
- -242, 364, 443, -242, 255, 86
+ 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
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -926,96 +937,100 @@ static const yytype_int16 yypact[] =
means the default is an error. */
static const yytype_int16 yydefact[] =
{
- 0, 0, 0, 0, 0, 1, 0, 0, 193, 198,
- 0, 192, 195, 0, 273, 0, 0, 200, 44, 0,
- 194, 196, 203, 0, 45, 0, 0, 0, 4, 199,
- 0, 201, 4, 274, 46, 0, 32, 72, 73, 88,
- 89, 115, 177, 178, 0, 0, 202, 0, 0, 0,
+ 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, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 33, 0,
- 0, 0, 64, 0, 64, 0, 0, 0, 0, 33,
- 0, 44, 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, 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, 105, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 33, 0, 0, 47, 0, 162, 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, 0, 0, 0, 0, 4, 0, 90, 0,
- 0, 98, 0, 0, 106, 0, 109, 0, 113, 0,
- 116, 258, 44, 0, 44, 135, 136, 242, 259, 0,
- 137, 0, 0, 44, 47, 0, 0, 0, 0, 139,
- 0, 47, 0, 0, 147, 0, 0, 0, 0, 260,
- 44, 0, 197, 207, 216, 206, 211, 212, 210, 214,
- 215, 208, 209, 213, 221, 158, 218, 219, 220, 217,
- 205, 204, 44, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 106, 0, 0, 0, 187, 0,
- 48, 44, 0, 0, 0, 0, 160, 161, 159, 0,
- 0, 0, 2, 7, 3, 27, 261, 271, 13, 15,
- 14, 0, 31, 267, 0, 35, 0, 36, 0, 0,
- 39, 42, 264, 0, 66, 70, 71, 65, 0, 0,
- 0, 87, 37, 86, 0, 85, 84, 0, 91, 92,
- 93, 0, 97, 269, 0, 100, 270, 265, 0, 108,
- 110, 266, 112, 114, 120, 0, 124, 0, 0, 134,
- 47, 128, 0, 0, 47, 125, 0, 50, 44, 138,
- 0, 0, 145, 140, 142, 0, 146, 149, 268, 156,
- 157, 0, 0, 0, 0, 176, 172, 173, 174, 0,
- 0, 171, 0, 0, 224, 237, 227, 223, 236, 225,
- 228, 226, 238, 229, 230, 231, 232, 233, 183, 235,
- 239, 241, 234, 0, 222, 0, 245, 163, 190, 191,
- 30, 0, 262, 17, 18, 0, 38, 0, 41, 63,
- 0, 0, 0, 80, 78, 79, 77, 81, 39, 0,
- 0, 0, 0, 0, 94, 95, 96, 0, 103, 104,
- 0, 111, 0, 47, 123, 0, 119, 0, 117, 243,
- 0, 129, 130, 131, 0, 126, 127, 44, 0, 0,
- 0, 141, 0, 151, 164, 182, 179, 0, 181, 0,
- 169, 0, 0, 184, 0, 240, 0, 0, 247, 0,
- 248, 263, 0, 21, 22, 23, 24, 25, 40, 67,
- 68, 69, 74, 0, 0, 82, 43, 272, 0, 99,
- 101, 121, 122, 118, 47, 132, 133, 52, 61, 49,
- 143, 144, 151, 148, 0, 152, 180, 0, 0, 0,
- 165, 0, 246, 33, 0, 0, 0, 0, 0, 0,
- 0, 0, 16, 76, 75, 0, 0, 0, 51, 60,
- 58, 59, 55, 57, 56, 54, 53, 0, 0, 153,
- 154, 150, 20, 167, 166, 0, 170, 0, 188, 257,
- 0, 0, 0, 33, 0, 0, 33, 0, 0, 107,
- 102, 244, 62, 155, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 83, 168, 0, 0,
- 249, 254, 255, 250, 253, 251, 252, 256, 175, 0,
- 185, 189, 0, 186, 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
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -242, -242, -83, -23, 100, -87, -86, -8, -54, -233,
- -242, -137, -19, -94, -96, 229, -51, -5, 239, 134,
- -99, -217, 28, 205, -95, -35, -242, -242, -242, -242,
- 127, -33, -242, 476, -147, 242, -242, 466, -169, -242,
- -242, -242, -242, -242, -242, 425, 426, -242, -242, -242,
- -45, -103, -242, -242, -97, 174, -242, -242, -242, -242,
- 331, -242, -242, -242, -242, 63, -242, -100, -242, -242,
- 179, 26, -242, -242, -242, -242, -18, -242, -242, -242,
- -242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
- -242, -242, -242, -242, -242, 82, -110, -188, -242, -242,
- -242, -242, -242, -166, -241, -73, -242, -242, -242
+ -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
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
- 0, 131, 34, 194, 134, 91, 142, 150, 151, 350,
- 457, 386, 135, 144, 145, 36, 176, 149, 280, 388,
- 152, 168, 187, 25, 328, 195, 427, 478, 516, 517,
- 155, 159, 392, 156, 37, 38, 399, 162, 290, 160,
- 164, 505, 39, 40, 301, 169, 172, 304, 506, 410,
- 529, 175, 308, 178, 179, 41, 182, 183, 412, 189,
- 190, 203, 198, 337, 433, 485, 206, 207, 110, 259,
- 31, 525, 526, 351, 488, 352, 42, 43, 342, 444,
- 571, 249, 368, 546, 2, 3, 12, 15, 21, 7,
- 13, 23, 17, 27, 371, 252, 191, 323, 474, 254,
- 255, 376, 450, 530, 184, 192, 210, 11, 18
+ 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
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
@@ -1023,237 +1038,256 @@ static const yytype_int16 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 30, 200, 35, 113, 114, 115, 116, 117, 118, 119,
- 120, 121, 122, 123, 124, 125, 126, 148, 245, 240,
- 136, 239, 146, 247, 153, 246, 180, 330, 331, 238,
- 251, 170, 173, 174, 177, 181, 188, 248, 375, 253,
- 205, 163, 209, 211, 322, 326, 24, 394, 396, 202,
- 271, 250, 250, 167, 112, 393, 395, 250, 1, 143,
- 235, 201, 154, 154, 278, 154, 62, 154, 234, 171,
- 237, 48, 315, 241, 317, 49, 244, 112, 63, 166,
- 345, 129, 50, 51, 52, 130, 70, 407, 53, 166,
- 32, 4, 70, 199, 275, 112, 167, 166, 147, 494,
- 343, 495, 496, 276, 497, 233, 498, 314, 5, 143,
- 54, 318, 171, 166, 55, 56, 57, 112, 336, 193,
- 335, 132, 284, 133, 58, 523, 193, 415, 292, 417,
- 419, 419, 6, 499, 500, 188, 143, 344, 59, 188,
- 539, 8, 501, 312, 60, 61, 283, 540, 185, 186,
- 287, 346, 347, 348, 405, 437, 321, 325, 464, 256,
- 257, 346, 347, 348, 9, 188, 463, 258, 320, 324,
- 138, 339, 139, 10, 421, 140, 424, 380, 425, 468,
- 35, 138, 112, 139, 196, 197, 140, 138, 349, 139,
- 469, 14, 140, 385, 16, 70, 71, 22, 401, 408,
- 161, 141, 161, 409, 138, 112, 139, 141, 489, 140,
- 453, 232, 19, 20, 274, 236, 454, 455, 456, 28,
- 29, 327, 26, 138, 112, 139, 44, 491, 140, 381,
- 32, 33, 167, 508, 509, 510, 511, 512, 513, 514,
- 515, 45, 46, 181, 181, 373, 138, 482, 139, 47,
- 458, 140, 402, 459, 460, 397, 138, 520, 139, 111,
- 353, 140, 112, 143, 127, 349, 349, 128, 138, 543,
- 139, 137, 527, 140, 147, 389, 475, 411, 403, 370,
- 414, 167, 416, 418, 132, 112, 133, 422, 423, 89,
- 90, 426, 413, 208, 413, 429, 430, 452, 420, 158,
- 324, 385, 420, 212, 385, 385, 204, 112, 436, 438,
- 268, 269, 270, 559, 260, 261, 213, 441, 442, 214,
- 413, 298, 299, 300, 288, 289, 569, 215, 558, 531,
- 532, 533, 534, 535, 536, 537, 538, 185, 186, 383,
- 384, 390, 391, 32, 479, 216, 231, 217, 30, 218,
- 219, 220, 447, 449, 181, 221, 24, 461, 222, 223,
- 224, 225, 226, 227, 228, 229, 230, 166, 204, 250,
- 432, 264, 262, 263, 265, 266, 349, 471, 483, 251,
- 472, 267, 473, 272, 167, 487, 273, 277, 281, 476,
- 282, 279, 465, 285, 480, 481, 286, 291, 293, 294,
- 420, 295, 486, 92, 296, 35, 302, 93, 303, 297,
- 305, 306, 307, 309, 94, 95, 96, 310, 349, 311,
- 97, 167, 313, 316, 319, 329, 332, 333, 503, 504,
- 521, 334, 553, 32, 542, 552, 549, 555, 338, 554,
- 340, 354, 98, 524, 548, 355, 99, 100, 101, 356,
- 357, 358, 359, 360, 361, 477, 102, 362, 363, 103,
- 143, 364, 365, 104, 521, 105, 167, 366, 367, 369,
- 106, 107, 372, 374, 377, 378, 108, 109, 379, 382,
- 524, 400, 550, 528, 431, 434, 387, 435, 439, 28,
- 244, 440, 545, 443, 35, 446, 275, 451, 466, 467,
- 70, 490, 484, 556, 492, 470, 502, 518, 493, 522,
- 541, 547, 560, 557, 561, 562, 563, 574, 64, 250,
- 564, 565, 167, 349, 143, 566, 567, 568, 551, 575,
- 404, 398, 462, 428, 570, 65, 349, 66, 67, 341,
- 68, 165, 69, 406, 242, 519, 243, 157, 572, 448,
- 445, 544, 349, 573, 70, 71, 507, 72, 73, 74,
- 75, 0, 0, 0, 76, 0, 0, 0, 77, 78,
- 79, 80, 81, 64, 0, 82, 83, 84, 85, 0,
- 0, 0, 0, 0, 86, 0, 87, 88, 0, 0,
- 65, 0, 66, 67, 0, 68, 0, 69, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 70,
- 71, 0, 72, 73, 74, 75, 0, 0, 0, 76,
- 0, 0, 0, 77, 78, 79, 80, 81, 0, 0,
- 82, 83, 84, 85, 0, 0, 0, 0, 0, 86,
- 0, 87, 88
+ 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
};
static const yytype_int16 yycheck[] =
{
- 23, 84, 25, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 68, 121, 118,
- 65, 117, 67, 123, 69, 122, 80, 196, 197, 116,
- 125, 76, 77, 78, 79, 80, 81, 124, 255, 126,
- 85, 74, 87, 88, 191, 192, 18, 288, 289, 84,
- 144, 6, 6, 76, 7, 288, 289, 6, 3, 67,
- 114, 84, 70, 71, 150, 73, 68, 75, 113, 77,
- 115, 12, 182, 118, 184, 16, 121, 7, 80, 3,
- 4, 6, 23, 24, 25, 10, 41, 304, 29, 3,
- 3, 81, 41, 6, 148, 7, 119, 3, 28, 22,
- 210, 24, 25, 148, 27, 113, 29, 180, 0, 117,
- 51, 184, 120, 3, 55, 56, 57, 7, 204, 32,
- 203, 6, 155, 8, 65, 78, 32, 315, 161, 317,
- 85, 85, 3, 56, 57, 180, 144, 210, 79, 184,
- 33, 6, 65, 178, 85, 86, 154, 40, 60, 61,
- 158, 75, 76, 77, 301, 343, 191, 192, 399, 69,
- 70, 75, 76, 77, 83, 210, 399, 77, 191, 192,
- 6, 206, 8, 3, 321, 11, 323, 271, 325, 25,
- 203, 6, 7, 8, 17, 18, 11, 6, 211, 8,
- 407, 87, 11, 279, 3, 41, 42, 84, 297, 6,
- 73, 26, 75, 10, 6, 7, 8, 26, 441, 11,
- 13, 111, 3, 4, 16, 115, 19, 20, 21, 3,
- 4, 193, 82, 6, 7, 8, 6, 444, 11, 274,
- 3, 4, 255, 33, 34, 35, 36, 37, 38, 39,
- 40, 3, 4, 288, 289, 253, 6, 7, 8, 72,
- 387, 11, 297, 390, 391, 290, 6, 7, 8, 7,
- 232, 11, 7, 271, 7, 288, 289, 7, 6, 7,
- 8, 7, 489, 11, 28, 283, 423, 312, 301, 251,
- 315, 304, 317, 318, 6, 7, 8, 322, 323, 9,
- 10, 326, 315, 7, 317, 330, 331, 383, 321, 43,
- 323, 387, 325, 4, 390, 391, 6, 7, 343, 344,
- 13, 14, 15, 546, 60, 61, 6, 352, 353, 6,
- 343, 52, 53, 54, 49, 50, 559, 6, 545, 495,
- 496, 497, 498, 499, 500, 501, 505, 60, 61, 17,
- 18, 30, 31, 3, 4, 6, 4, 6, 371, 6,
- 6, 6, 375, 376, 399, 6, 328, 392, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 3, 6, 6,
- 66, 4, 7, 7, 4, 4, 399, 412, 432, 474,
- 415, 4, 417, 4, 407, 439, 4, 4, 4, 424,
- 4, 30, 400, 4, 429, 430, 4, 4, 4, 84,
- 423, 4, 437, 12, 4, 428, 4, 16, 4, 29,
- 4, 4, 4, 4, 23, 24, 25, 6, 441, 4,
- 29, 444, 4, 4, 4, 4, 4, 4, 463, 464,
- 484, 4, 535, 3, 517, 534, 532, 537, 4, 536,
- 4, 4, 51, 488, 531, 4, 55, 56, 57, 4,
- 4, 4, 4, 4, 4, 427, 65, 4, 4, 68,
- 468, 4, 4, 72, 518, 74, 489, 4, 4, 4,
- 79, 80, 4, 4, 4, 4, 85, 86, 4, 4,
- 525, 48, 533, 491, 4, 4, 31, 4, 16, 3,
- 535, 6, 527, 6, 517, 6, 550, 4, 4, 4,
- 41, 4, 67, 538, 6, 32, 18, 67, 57, 4,
- 4, 530, 4, 6, 4, 4, 4, 74, 5, 6,
- 4, 4, 545, 546, 532, 4, 4, 4, 533, 574,
- 301, 292, 398, 328, 569, 22, 559, 24, 25, 208,
- 27, 75, 29, 301, 119, 482, 120, 71, 571, 375,
- 371, 525, 575, 571, 41, 42, 474, 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, -1, -1,
- 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
+ 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,
+ 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,
+ -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,
+ 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
};
/* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 3, 172, 173, 81, 0, 3, 177, 6, 83,
- 3, 195, 174, 178, 87, 175, 3, 180, 196, 3,
- 4, 176, 84, 179, 110, 111, 82, 181, 3, 4,
- 91, 158, 3, 4, 90, 91, 103, 122, 123, 130,
- 131, 143, 164, 165, 6, 3, 4, 72, 12, 16,
- 23, 24, 25, 29, 51, 55, 56, 57, 65, 79,
- 85, 86, 68, 80, 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, 9,
- 10, 93, 12, 16, 23, 24, 25, 29, 51, 55,
- 56, 57, 65, 68, 72, 74, 79, 80, 85, 86,
- 156, 7, 7, 138, 138, 138, 138, 138, 138, 138,
- 138, 138, 138, 138, 138, 138, 138, 7, 7, 6,
- 10, 89, 6, 8, 92, 100, 138, 7, 6, 8,
- 11, 26, 94, 95, 101, 102, 138, 28, 104, 105,
- 95, 96, 108, 138, 95, 118, 121, 121, 43, 119,
- 127, 118, 125, 119, 128, 125, 3, 91, 109, 133,
- 138, 95, 134, 138, 138, 139, 104, 138, 141, 142,
- 96, 138, 144, 145, 192, 60, 61, 110, 138, 147,
- 148, 184, 193, 32, 91, 113, 17, 18, 150, 6,
- 90, 91, 113, 149, 6, 138, 154, 155, 7, 138,
- 194, 138, 4, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 4, 92, 95, 138, 96, 92, 138, 93, 102,
- 108, 138, 133, 134, 138, 139, 142, 155, 93, 169,
- 6, 112, 183, 93, 187, 188, 69, 70, 77, 157,
- 60, 61, 7, 7, 4, 4, 4, 4, 13, 14,
- 15, 101, 4, 4, 16, 96, 138, 4, 94, 30,
- 106, 4, 4, 95, 119, 4, 4, 95, 49, 50,
- 126, 4, 119, 4, 84, 4, 4, 29, 52, 53,
- 54, 132, 4, 4, 135, 4, 4, 4, 140, 4,
- 6, 4, 113, 4, 193, 184, 4, 184, 193, 4,
- 91, 113, 122, 185, 91, 113, 122, 110, 112, 4,
- 126, 126, 4, 4, 4, 90, 94, 151, 4, 113,
- 4, 148, 166, 184, 193, 4, 75, 76, 77, 91,
- 97, 161, 163, 110, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 170, 4,
- 110, 182, 4, 95, 4, 109, 189, 4, 4, 4,
- 101, 138, 4, 17, 18, 94, 99, 31, 107, 95,
- 30, 31, 120, 97, 192, 97, 192, 113, 106, 124,
- 48, 108, 138, 91, 103, 122, 123, 109, 6, 10,
- 137, 113, 146, 91, 113, 185, 113, 185, 113, 85,
- 91, 122, 113, 113, 122, 122, 113, 114, 111, 113,
- 113, 4, 66, 152, 4, 4, 113, 185, 113, 16,
- 6, 113, 113, 6, 167, 158, 6, 91, 143, 91,
- 190, 4, 94, 13, 19, 20, 21, 98, 99, 99,
- 99, 113, 107, 97, 192, 95, 4, 4, 25, 109,
- 32, 113, 113, 113, 186, 122, 113, 110, 115, 4,
- 113, 113, 7, 96, 67, 153, 113, 96, 162, 97,
- 4, 109, 6, 57, 22, 24, 25, 27, 29, 56,
- 57, 65, 18, 113, 113, 129, 136, 183, 33, 34,
- 35, 36, 37, 38, 39, 40, 116, 117, 67, 153,
- 7, 96, 4, 78, 138, 159, 160, 109, 95, 138,
- 191, 191, 191, 191, 191, 191, 191, 191, 126, 33,
- 40, 4, 90, 7, 159, 113, 171, 100, 93, 102,
- 104, 105, 108, 139, 142, 155, 113, 6, 109, 97,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 97,
- 113, 168, 91, 164, 74, 138
+ 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,
+ 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,
+ 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
};
/* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */
static const yytype_uint8 yyr1[] =
{
- 0, 88, 89, 90, 91, 92, 92, 89, 93, 93,
- 94, 94, 94, 95, 95, 95, 96, 96, 96, 96,
- 97, 98, 98, 98, 98, 99, 100, 90, 101, 101,
- 102, 103, 90, 104, 104, 105, 90, 106, 106, 107,
- 107, 108, 90, 109, 110, 111, 111, 112, 112, 113,
- 114, 113, 115, 115, 116, 116, 116, 116, 116, 116,
- 116, 117, 116, 118, 119, 119, 120, 120, 120, 121,
- 122, 123, 90, 90, 124, 125, 125, 126, 126, 126,
- 126, 127, 129, 128, 130, 130, 131, 131, 90, 90,
- 132, 132, 132, 132, 133, 133, 133, 90, 135, 134,
- 90, 136, 136, 137, 137, 138, 140, 139, 90, 141,
- 141, 142, 142, 142, 143, 90, 144, 145, 145, 145,
- 146, 145, 145, 145, 90, 147, 147, 147, 147, 147,
- 147, 147, 147, 147, 90, 148, 148, 147, 90, 149,
- 90, 90, 90, 150, 150, 90, 151, 151, 152, 152,
- 153, 153, 154, 154, 154, 154, 155, 90, 156, 157,
- 157, 157, 157, 90, 90, 158, 159, 159, 160, 162,
- 161, 163, 163, 163, 163, 164, 165, 90, 90, 166,
- 166, 166, 90, 167, 167, 168, 168, 170, 171, 169,
- 90, 90, 172, 174, 173, 175, 175, 176, 178, 177,
- 179, 179, 180, 181, 181, 156, 156, 156, 156, 156,
- 156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
- 156, 156, 158, 158, 158, 158, 158, 158, 158, 158,
- 158, 158, 158, 158, 158, 158, 158, 158, 158, 182,
- 182, 183, 184, 186, 185, 187, 188, 189, 189, 190,
- 190, 190, 190, 190, 190, 190, 190, 191, 192, 193,
- 194, 90, 90, 90, 90, 90, 90, 90, 90, 90,
- 90, 90, 109, 196, 195
+ 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
};
/* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */
@@ -1266,27 +1300,28 @@ static const yytype_int8 yyr2[] =
2, 3, 4, 4, 0, 1, 2, 0, 1, 4,
0, 5, 1, 2, 1, 1, 1, 1, 1, 1,
1, 0, 2, 3, 0, 2, 0, 2, 2, 4,
- 4, 4, 1, 1, 2, 5, 5, 2, 2, 2,
- 2, 3, 0, 7, 4, 4, 4, 4, 1, 1,
- 0, 1, 1, 1, 3, 3, 3, 4, 0, 4,
- 4, 0, 2, 1, 1, 1, 0, 6, 4, 1,
- 2, 3, 2, 1, 4, 1, 1, 3, 4, 3,
- 0, 4, 4, 3, 4, 2, 3, 3, 2, 3,
- 3, 3, 4, 4, 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, 1, 1, 3, 0,
- 4, 1, 1, 1, 1, 10, 4, 1, 1, 2,
- 3, 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,
+ 4, 4, 1, 1, 2, 4, 4, 5, 1, 4,
+ 5, 2, 2, 2, 2, 3, 4, 0, 3, 0,
+ 5, 0, 6, 4, 1, 1, 0, 1, 1, 1,
+ 3, 3, 3, 4, 0, 4, 4, 0, 2, 1,
+ 1, 1, 0, 6, 4, 1, 2, 3, 2, 1,
+ 4, 1, 1, 3, 3, 0, 4, 3, 4, 2,
+ 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,
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, 1, 0, 5, 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
+ 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
};
@@ -2020,1202 +2055,1202 @@ yyreduce:
switch (yyn)
{
case 2: /* glyph: UNSIGNED REFERENCE */
-#line 268 "parser.y"
+#line 274 "parser.y"
{
#line 424 "format.w"
(yyval.c).c= (yyvsp[-1].u);REF(font_kind,(yyvsp[0].u));(yyval.c).f= (yyvsp[0].u);}
-#line 2028 "parser.c"
+#line 2063 "parser.c"
break;
case 3: /* content_node: start "glyph" glyph ">" */
-#line 271 "parser.y"
+#line 277 "parser.y"
{
#line 425 "format.w"
hput_tags((yyvsp[-3].u),hput_glyph(&((yyvsp[-1].c))));}
-#line 2036 "parser.c"
+#line 2071 "parser.c"
break;
case 4: /* start: "<" */
-#line 274 "parser.y"
+#line 280 "parser.y"
{
#line 426 "format.w"
HPUTNODE;(yyval.u)= (uint32_t)(hpos++-hstart);}
-#line 2044 "parser.c"
+#line 2079 "parser.c"
break;
case 6: /* integer: UNSIGNED */
-#line 278 "parser.y"
+#line 284 "parser.y"
{
- #line 947 "format.w"
+ #line 954 "format.w"
RNG("number",(yyvsp[0].u),0,0x7FFFFFFF);}
-#line 2052 "parser.c"
+#line 2087 "parser.c"
break;
case 7: /* glyph: CHARCODE REFERENCE */
-#line 282 "parser.y"
+#line 288 "parser.y"
{
- #line 1088 "format.w"
+ #line 1096 "format.w"
(yyval.c).c= (yyvsp[-1].u);REF(font_kind,(yyvsp[0].u));(yyval.c).f= (yyvsp[0].u);}
-#line 2060 "parser.c"
+#line 2095 "parser.c"
break;
case 9: /* string: CHARCODE */
-#line 286 "parser.y"
+#line 292 "parser.y"
{
- #line 1193 "format.w"
+ #line 1201 "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 2070 "parser.c"
+#line 2105 "parser.c"
break;
case 10: /* number: UNSIGNED */
-#line 292 "parser.y"
+#line 298 "parser.y"
{
- #line 1346 "format.w"
+ #line 1354 "format.w"
(yyval.f)= (float64_t)(yyvsp[0].u);}
-#line 2078 "parser.c"
+#line 2113 "parser.c"
break;
case 11: /* number: SIGNED */
-#line 294 "parser.y"
+#line 300 "parser.y"
{
- #line 1346 "format.w"
+ #line 1354 "format.w"
(yyval.f)= (float64_t)(yyvsp[0].i);}
-#line 2086 "parser.c"
+#line 2121 "parser.c"
break;
case 13: /* dimension: number "pt" */
-#line 298 "parser.y"
+#line 304 "parser.y"
{
- #line 1697 "format.w"
+ #line 1708 "format.w"
(yyval.d)= ROUND((yyvsp[-1].f)*ONE);RNG("Dimension",(yyval.d),-MAX_DIMEN,MAX_DIMEN);}
-#line 2094 "parser.c"
+#line 2129 "parser.c"
break;
case 14: /* dimension: number "in" */
-#line 301 "parser.y"
+#line 307 "parser.y"
{
- #line 1698 "format.w"
+ #line 1709 "format.w"
(yyval.d)= ROUND((yyvsp[-1].f)*ONE*72.27);RNG("Dimension",(yyval.d),-MAX_DIMEN,MAX_DIMEN);}
-#line 2102 "parser.c"
+#line 2137 "parser.c"
break;
case 15: /* dimension: number "mm" */
-#line 304 "parser.y"
+#line 310 "parser.y"
{
- #line 1699 "format.w"
+ #line 1710 "format.w"
(yyval.d)= ROUND((yyvsp[-1].f)*ONE*(72.27/25.4));RNG("Dimension",(yyval.d),-MAX_DIMEN,MAX_DIMEN);}
-#line 2110 "parser.c"
+#line 2145 "parser.c"
break;
case 16: /* xdimen: dimension number "h" number "v" */
-#line 308 "parser.y"
+#line 314 "parser.y"
{
- #line 1777 "format.w"
+ #line 1788 "format.w"
(yyval.xd).w= (yyvsp[-4].d);(yyval.xd).h= (yyvsp[-3].f);(yyval.xd).v= (yyvsp[-1].f);}
-#line 2118 "parser.c"
+#line 2153 "parser.c"
break;
case 17: /* xdimen: dimension number "h" */
-#line 311 "parser.y"
+#line 317 "parser.y"
{
- #line 1778 "format.w"
+ #line 1789 "format.w"
(yyval.xd).w= (yyvsp[-2].d);(yyval.xd).h= (yyvsp[-1].f);(yyval.xd).v= 0.0;}
-#line 2126 "parser.c"
+#line 2161 "parser.c"
break;
case 18: /* xdimen: dimension number "v" */
-#line 314 "parser.y"
+#line 320 "parser.y"
{
- #line 1779 "format.w"
+ #line 1790 "format.w"
(yyval.xd).w= (yyvsp[-2].d);(yyval.xd).h= 0.0;(yyval.xd).v= (yyvsp[-1].f);}
-#line 2134 "parser.c"
+#line 2169 "parser.c"
break;
case 19: /* xdimen: dimension */
-#line 317 "parser.y"
+#line 323 "parser.y"
{
- #line 1780 "format.w"
+ #line 1791 "format.w"
(yyval.xd).w= (yyvsp[0].d);(yyval.xd).h= 0.0;(yyval.xd).v= 0.0;}
-#line 2142 "parser.c"
+#line 2177 "parser.c"
break;
case 20: /* xdimen_node: start "xdimen" xdimen ">" */
-#line 321 "parser.y"
+#line 327 "parser.y"
{
- #line 1782 "format.w"
+ #line 1793 "format.w"
hput_tags((yyvsp[-3].u),hput_xdimen(&((yyvsp[-1].xd))));}
-#line 2150 "parser.c"
+#line 2185 "parser.c"
break;
case 21: /* order: "pt" */
-#line 326 "parser.y"
+#line 332 "parser.y"
{
- #line 1961 "format.w"
+ #line 1972 "format.w"
(yyval.o)= normal_o;}
-#line 2158 "parser.c"
+#line 2193 "parser.c"
break;
case 22: /* order: "fil" */
-#line 328 "parser.y"
+#line 334 "parser.y"
{
- #line 1961 "format.w"
+ #line 1972 "format.w"
(yyval.o)= fil_o;}
-#line 2166 "parser.c"
+#line 2201 "parser.c"
break;
case 23: /* order: "fill" */
-#line 330 "parser.y"
+#line 336 "parser.y"
{
- #line 1961 "format.w"
+ #line 1972 "format.w"
(yyval.o)= fill_o;}
-#line 2174 "parser.c"
+#line 2209 "parser.c"
break;
case 24: /* order: "filll" */
-#line 332 "parser.y"
+#line 338 "parser.y"
{
- #line 1961 "format.w"
+ #line 1972 "format.w"
(yyval.o)= filll_o;}
-#line 2182 "parser.c"
+#line 2217 "parser.c"
break;
case 25: /* stretch: number order */
-#line 336 "parser.y"
+#line 342 "parser.y"
{
- #line 1963 "format.w"
+ #line 1974 "format.w"
(yyval.st).f= (yyvsp[-1].f);(yyval.st).o= (yyvsp[0].o);}
-#line 2190 "parser.c"
+#line 2225 "parser.c"
break;
case 26: /* penalty: integer */
-#line 340 "parser.y"
+#line 346 "parser.y"
{
- #line 2017 "format.w"
+ #line 2028 "format.w"
RNG("Penalty",(yyvsp[0].i),-20000,+20000);(yyval.i)= (yyvsp[0].i);}
-#line 2198 "parser.c"
+#line 2233 "parser.c"
break;
case 27: /* content_node: start "penalty" penalty ">" */
-#line 343 "parser.y"
+#line 349 "parser.y"
{
- #line 2018 "format.w"
+ #line 2029 "format.w"
hput_tags((yyvsp[-3].u),hput_int((yyvsp[-1].i)));}
-#line 2206 "parser.c"
+#line 2241 "parser.c"
break;
case 29: /* rule_dimension: "|" */
-#line 347 "parser.y"
+#line 353 "parser.y"
{
- #line 2193 "format.w"
+ #line 2206 "format.w"
(yyval.d)= RUNNING_DIMEN;}
-#line 2214 "parser.c"
+#line 2249 "parser.c"
break;
case 30: /* rule: rule_dimension rule_dimension rule_dimension */
-#line 351 "parser.y"
+#line 357 "parser.y"
{
- #line 2195 "format.w"
+ #line 2208 "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 2224 "parser.c"
+#line 2259 "parser.c"
break;
case 31: /* rule_node: start "rule" rule ">" */
-#line 356 "parser.y"
+#line 362 "parser.y"
{
- #line 2198 "format.w"
+ #line 2211 "format.w"
hput_tags((yyvsp[-3].u),hput_rule(&((yyvsp[-1].r))));}
-#line 2232 "parser.c"
+#line 2267 "parser.c"
break;
case 33: /* explicit: %empty */
-#line 361 "parser.y"
+#line 367 "parser.y"
{
- #line 2306 "format.w"
+ #line 2319 "format.w"
(yyval.b)= false;}
-#line 2240 "parser.c"
+#line 2275 "parser.c"
break;
case 34: /* explicit: "!" */
-#line 363 "parser.y"
+#line 369 "parser.y"
{
- #line 2306 "format.w"
+ #line 2319 "format.w"
(yyval.b)= true;}
-#line 2248 "parser.c"
+#line 2283 "parser.c"
break;
case 35: /* kern: explicit xdimen */
-#line 366 "parser.y"
+#line 372 "parser.y"
{
- #line 2307 "format.w"
+ #line 2320 "format.w"
(yyval.kt).x= (yyvsp[-1].b);(yyval.kt).d= (yyvsp[0].xd);}
-#line 2256 "parser.c"
+#line 2291 "parser.c"
break;
case 36: /* content_node: start "kern" kern ">" */
-#line 369 "parser.y"
+#line 375 "parser.y"
{
- #line 2308 "format.w"
+ #line 2321 "format.w"
hput_tags((yyvsp[-3].u),hput_kern(&((yyvsp[-1].kt))));}
-#line 2264 "parser.c"
+#line 2299 "parser.c"
break;
case 37: /* plus: %empty */
-#line 373 "parser.y"
+#line 379 "parser.y"
{
- #line 2518 "format.w"
+ #line 2531 "format.w"
(yyval.st).f= 0.0;(yyval.st).o= 0;}
-#line 2272 "parser.c"
+#line 2307 "parser.c"
break;
case 38: /* plus: "plus" stretch */
-#line 375 "parser.y"
+#line 381 "parser.y"
{
- #line 2518 "format.w"
+ #line 2531 "format.w"
(yyval.st)= (yyvsp[0].st);}
-#line 2280 "parser.c"
+#line 2315 "parser.c"
break;
case 39: /* minus: %empty */
-#line 378 "parser.y"
+#line 384 "parser.y"
{
- #line 2519 "format.w"
+ #line 2532 "format.w"
(yyval.st).f= 0.0;(yyval.st).o= 0;}
-#line 2288 "parser.c"
+#line 2323 "parser.c"
break;
case 40: /* minus: "minus" stretch */
-#line 380 "parser.y"
+#line 386 "parser.y"
{
- #line 2519 "format.w"
+ #line 2532 "format.w"
(yyval.st)= (yyvsp[0].st);}
-#line 2296 "parser.c"
+#line 2331 "parser.c"
break;
case 41: /* glue: xdimen plus minus */
-#line 383 "parser.y"
+#line 389 "parser.y"
{
- #line 2520 "format.w"
+ #line 2533 "format.w"
(yyval.g).w= (yyvsp[-2].xd);(yyval.g).p= (yyvsp[-1].st);(yyval.g).m= (yyvsp[0].st);}
-#line 2304 "parser.c"
+#line 2339 "parser.c"
break;
case 42: /* content_node: start "glue" glue ">" */
-#line 386 "parser.y"
+#line 392 "parser.y"
{
- #line 2521 "format.w"
+ #line 2534 "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 2313 "parser.c"
+#line 2348 "parser.c"
break;
case 43: /* glue_node: start "glue" glue ">" */
-#line 391 "parser.y"
+#line 397 "parser.y"
{
- #line 2524 "format.w"
+ #line 2537 "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 2322 "parser.c"
+#line 2357 "parser.c"
break;
case 44: /* position: %empty */
-#line 396 "parser.y"
+#line 402 "parser.y"
{
- #line 2800 "format.w"
+ #line 2812 "format.w"
(yyval.u)= hpos-hstart;}
-#line 2330 "parser.c"
+#line 2365 "parser.c"
break;
case 47: /* estimate: %empty */
-#line 401 "parser.y"
+#line 407 "parser.y"
{
- #line 2803 "format.w"
+ #line 2815 "format.w"
hpos+= 2;}
-#line 2338 "parser.c"
+#line 2373 "parser.c"
break;
case 48: /* estimate: UNSIGNED */
-#line 404 "parser.y"
+#line 410 "parser.y"
{
- #line 2804 "format.w"
+ #line 2816 "format.w"
hpos+= hsize_bytes((yyvsp[0].u))+1;}
-#line 2346 "parser.c"
+#line 2381 "parser.c"
break;
case 49: /* list: start estimate content_list ">" */
-#line 408 "parser.y"
+#line 414 "parser.y"
{
- #line 2806 "format.w"
- (yyval.l).k= list_kind;(yyval.l).p= (yyvsp[-1].u);(yyval.l).s= (hpos-hstart)-(yyvsp[-1].u);
+ #line 2818 "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 2355 "parser.c"
+#line 2390 "parser.c"
break;
case 50: /* $@1: %empty */
-#line 414 "parser.y"
+#line 420 "parser.y"
{
- #line 3213 "format.w"
+ #line 3232 "format.w"
hpos+= 4;}
-#line 2363 "parser.c"
+#line 2398 "parser.c"
break;
case 51: /* list: TXT_START position $@1 text TXT_END */
-#line 418 "parser.y"
+#line 424 "parser.y"
{
- #line 3215 "format.w"
- (yyval.l).k= text_kind;(yyval.l).p= (yyvsp[-1].u);(yyval.l).s= (hpos-hstart)-(yyvsp[-1].u);
+ #line 3234 "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 2372 "parser.c"
+#line 2407 "parser.c"
break;
case 54: /* txt: TXT_CC */
-#line 424 "parser.y"
+#line 430 "parser.y"
{
- #line 3219 "format.w"
+ #line 3238 "format.w"
hput_txt_cc((yyvsp[0].u));}
-#line 2380 "parser.c"
+#line 2415 "parser.c"
break;
case 55: /* txt: TXT_FONT */
-#line 427 "parser.y"
+#line 433 "parser.y"
{
- #line 3220 "format.w"
+ #line 3239 "format.w"
REF(font_kind,(yyvsp[0].u));hput_txt_font((yyvsp[0].u));}
-#line 2388 "parser.c"
+#line 2423 "parser.c"
break;
case 56: /* txt: TXT_GLOBAL */
-#line 430 "parser.y"
+#line 436 "parser.y"
{
- #line 3221 "format.w"
+ #line 3240 "format.w"
REF((yyvsp[0].rf).k,(yyvsp[0].rf).n);hput_txt_global(&((yyvsp[0].rf)));}
-#line 2396 "parser.c"
+#line 2431 "parser.c"
break;
case 57: /* txt: TXT_LOCAL */
-#line 433 "parser.y"
+#line 439 "parser.y"
{
- #line 3222 "format.w"
+ #line 3241 "format.w"
RNG("Font parameter",(yyvsp[0].u),0,11);hput_txt_local((yyvsp[0].u));}
-#line 2404 "parser.c"
+#line 2439 "parser.c"
break;
case 58: /* txt: TXT_FONT_GLUE */
-#line 436 "parser.y"
+#line 442 "parser.y"
{
- #line 3223 "format.w"
+ #line 3242 "format.w"
HPUTX(1);HPUT8(txt_glue);}
-#line 2412 "parser.c"
+#line 2447 "parser.c"
break;
case 59: /* txt: TXT_FONT_HYPHEN */
-#line 439 "parser.y"
+#line 445 "parser.y"
{
- #line 3224 "format.w"
+ #line 3243 "format.w"
HPUTX(1);HPUT8(txt_hyphen);}
-#line 2420 "parser.c"
+#line 2455 "parser.c"
break;
case 60: /* txt: TXT_IGNORE */
-#line 442 "parser.y"
+#line 448 "parser.y"
{
- #line 3225 "format.w"
+ #line 3244 "format.w"
HPUTX(1);HPUT8(txt_ignore);}
-#line 2428 "parser.c"
+#line 2463 "parser.c"
break;
case 61: /* $@2: %empty */
-#line 445 "parser.y"
+#line 451 "parser.y"
{
- #line 3226 "format.w"
+ #line 3245 "format.w"
HPUTX(1);HPUT8(txt_node);}
-#line 2436 "parser.c"
+#line 2471 "parser.c"
break;
case 63: /* box_dimen: dimension dimension dimension */
-#line 451 "parser.y"
+#line 457 "parser.y"
{
- #line 3486 "format.w"
+ #line 3501 "format.w"
(yyval.info)= hput_box_dimen((yyvsp[-2].d),(yyvsp[-1].d),(yyvsp[0].d));}
-#line 2444 "parser.c"
+#line 2479 "parser.c"
break;
case 64: /* box_shift: %empty */
-#line 454 "parser.y"
+#line 460 "parser.y"
{
- #line 3487 "format.w"
+ #line 3502 "format.w"
(yyval.info)= b000;}
-#line 2452 "parser.c"
+#line 2487 "parser.c"
break;
case 65: /* box_shift: "shifted" dimension */
-#line 457 "parser.y"
+#line 463 "parser.y"
{
- #line 3488 "format.w"
+ #line 3503 "format.w"
(yyval.info)= hput_box_shift((yyvsp[0].d));}
-#line 2460 "parser.c"
+#line 2495 "parser.c"
break;
case 66: /* box_glue_set: %empty */
-#line 461 "parser.y"
+#line 467 "parser.y"
{
- #line 3490 "format.w"
+ #line 3505 "format.w"
(yyval.info)= b000;}
-#line 2468 "parser.c"
+#line 2503 "parser.c"
break;
case 67: /* box_glue_set: "plus" stretch */
-#line 464 "parser.y"
+#line 470 "parser.y"
{
- #line 3491 "format.w"
+ #line 3506 "format.w"
(yyval.info)= hput_box_glue_set(+1,(yyvsp[0].st).f,(yyvsp[0].st).o);}
-#line 2476 "parser.c"
+#line 2511 "parser.c"
break;
case 68: /* box_glue_set: "minus" stretch */
-#line 467 "parser.y"
+#line 473 "parser.y"
{
- #line 3492 "format.w"
+ #line 3507 "format.w"
(yyval.info)= hput_box_glue_set(-1,(yyvsp[0].st).f,(yyvsp[0].st).o);}
-#line 2484 "parser.c"
+#line 2519 "parser.c"
break;
case 69: /* box: box_dimen box_shift box_glue_set list */
-#line 472 "parser.y"
+#line 478 "parser.y"
{
- #line 3495 "format.w"
+ #line 3510 "format.w"
(yyval.info)= (yyvsp[-3].info) |(yyvsp[-2].info) |(yyvsp[-1].info);}
-#line 2492 "parser.c"
+#line 2527 "parser.c"
break;
case 70: /* hbox_node: start "hbox" box ">" */
-#line 476 "parser.y"
+#line 482 "parser.y"
{
- #line 3497 "format.w"
+ #line 3512 "format.w"
hput_tags((yyvsp[-3].u),TAG(hbox_kind,(yyvsp[-1].info)));}
-#line 2500 "parser.c"
+#line 2535 "parser.c"
break;
case 71: /* vbox_node: start "vbox" box ">" */
-#line 479 "parser.y"
+#line 485 "parser.y"
{
- #line 3498 "format.w"
+ #line 3513 "format.w"
hput_tags((yyvsp[-3].u),TAG(vbox_kind,(yyvsp[-1].info)));}
-#line 2508 "parser.c"
+#line 2543 "parser.c"
break;
case 74: /* box_flex: plus minus */
-#line 484 "parser.y"
+#line 490 "parser.y"
{
- #line 3679 "format.w"
+ #line 3709 "format.w"
hput_stretch(&((yyvsp[-1].st)));hput_stretch(&((yyvsp[0].st)));}
-#line 2516 "parser.c"
+#line 2551 "parser.c"
break;
- case 75: /* xbox: box_dimen box_shift box_flex xdimen_ref list */
-#line 487 "parser.y"
- {
- #line 3680 "format.w"
- (yyval.info)= (yyvsp[-4].info) |(yyvsp[-3].info);}
-#line 2524 "parser.c"
+ case 75: /* box_options: box_shift box_flex xdimen_ref list */
+#line 494 "parser.y"
+ {
+ #line 3711 "format.w"
+ (yyval.info)= (yyvsp[-3].info);}
+#line 2559 "parser.c"
break;
- case 76: /* xbox: box_dimen box_shift box_flex xdimen_node list */
-#line 490 "parser.y"
- {
- #line 3681 "format.w"
- (yyval.info)= (yyvsp[-4].info) |(yyvsp[-3].info) |b100;}
-#line 2532 "parser.c"
+ case 76: /* box_options: box_shift box_flex xdimen_node list */
+#line 497 "parser.y"
+ {
+ #line 3712 "format.w"
+ (yyval.info)= (yyvsp[-3].info) |b100;}
+#line 2567 "parser.c"
break;
- case 77: /* box_goal: "to" xdimen_ref */
-#line 494 "parser.y"
+ case 77: /* hxbox_node: start "hset" box_dimen box_options ">" */
+#line 501 "parser.y"
+ {
+ #line 3714 "format.w"
+ hput_tags((yyvsp[-4].u),TAG(hset_kind,(yyvsp[-2].info) |(yyvsp[-1].info)));}
+#line 2575 "parser.c"
+ break;
+
+ case 79: /* vbox_dimen: "top" dimension dimension dimension */
+#line 507 "parser.y"
+{
+ #line 3718 "format.w"
+ (yyval.info)= hput_box_dimen((yyvsp[-2].d),(yyvsp[-1].d)^0x40000000,(yyvsp[0].d));}
+#line 2583 "parser.c"
+ break;
+
+ case 80: /* vxbox_node: start "vset" vbox_dimen box_options ">" */
+#line 511 "parser.y"
+ {
+ #line 3720 "format.w"
+ hput_tags((yyvsp[-4].u),TAG(vset_kind,(yyvsp[-2].info) |(yyvsp[-1].info)));}
+#line 2591 "parser.c"
+ break;
+
+ case 81: /* box_goal: "to" xdimen_ref */
+#line 515 "parser.y"
{
- #line 3683 "format.w"
+ #line 3722 "format.w"
(yyval.info)= b000;}
-#line 2540 "parser.c"
+#line 2599 "parser.c"
break;
- case 78: /* box_goal: "add" xdimen_ref */
-#line 497 "parser.y"
+ case 82: /* box_goal: "add" xdimen_ref */
+#line 518 "parser.y"
{
- #line 3684 "format.w"
+ #line 3723 "format.w"
(yyval.info)= b001;}
-#line 2548 "parser.c"
+#line 2607 "parser.c"
break;
- case 79: /* box_goal: "to" xdimen_node */
-#line 500 "parser.y"
+ case 83: /* box_goal: "to" xdimen_node */
+#line 521 "parser.y"
{
- #line 3685 "format.w"
+ #line 3724 "format.w"
(yyval.info)= b100;}
-#line 2556 "parser.c"
+#line 2615 "parser.c"
break;
- case 80: /* box_goal: "add" xdimen_node */
-#line 503 "parser.y"
+ case 84: /* box_goal: "add" xdimen_node */
+#line 524 "parser.y"
{
- #line 3686 "format.w"
+ #line 3725 "format.w"
(yyval.info)= b101;}
-#line 2564 "parser.c"
+#line 2623 "parser.c"
break;
- case 81: /* hpack: box_shift box_goal list */
-#line 507 "parser.y"
+ case 85: /* hpack: box_shift box_goal list */
+#line 528 "parser.y"
{
- #line 3688 "format.w"
+ #line 3727 "format.w"
(yyval.info)= (yyvsp[-1].info);}
-#line 2572 "parser.c"
+#line 2631 "parser.c"
break;
- case 82: /* $@3: %empty */
-#line 510 "parser.y"
- {
- #line 3689 "format.w"
- HPUT32((yyvsp[0].d));}
-#line 2580 "parser.c"
+ case 86: /* hxbox_node: start "hpack" hpack ">" */
+#line 532 "parser.y"
+ {
+ #line 3729 "format.w"
+ hput_tags((yyvsp[-3].u),TAG(hpack_kind,(yyvsp[-1].info)));}
+#line 2639 "parser.c"
break;
- case 83: /* vpack: box_shift "max" "depth" dimension $@3 box_goal list */
-#line 512 "parser.y"
- {
- #line 3689 "format.w"
- (yyval.info)= (yyvsp[-6].info) |(yyvsp[-1].info);}
-#line 2588 "parser.c"
+ case 87: /* max_depth: %empty */
+#line 536 "parser.y"
+ {
+ #line 3731 "format.w"
+ (yyval.d)= MAX_DIMEN;}
+#line 2647 "parser.c"
break;
- case 84: /* vxbox_node: start "vset" xbox ">" */
-#line 516 "parser.y"
- {
- #line 3691 "format.w"
- hput_tags((yyvsp[-3].u),TAG(vset_kind,(yyvsp[-1].info)));}
-#line 2596 "parser.c"
+ case 88: /* max_depth: "max" "depth" dimension */
+#line 538 "parser.y"
+ {
+ #line 3731 "format.w"
+ (yyval.d)= (yyvsp[0].d);}
+#line 2655 "parser.c"
break;
- case 85: /* vxbox_node: start "vpack" vpack ">" */
-#line 519 "parser.y"
- {
- #line 3692 "format.w"
- hput_tags((yyvsp[-3].u),TAG(vpack_kind,(yyvsp[-1].info)));}
-#line 2604 "parser.c"
+ case 89: /* $@3: %empty */
+#line 542 "parser.y"
+ {
+ #line 3733 "format.w"
+ HPUT32((yyvsp[0].d));}
+#line 2663 "parser.c"
break;
- case 86: /* hxbox_node: start "hset" xbox ">" */
-#line 524 "parser.y"
- {
- #line 3695 "format.w"
- hput_tags((yyvsp[-3].u),TAG(hset_kind,(yyvsp[-1].info)));}
-#line 2612 "parser.c"
+ case 90: /* vpack: max_depth $@3 box_shift box_goal list */
+#line 544 "parser.y"
+ {
+ #line 3733 "format.w"
+ (yyval.info)= (yyvsp[-2].info) |(yyvsp[-1].info);}
+#line 2671 "parser.c"
break;
- case 87: /* hxbox_node: start "hpack" hpack ">" */
-#line 527 "parser.y"
- {
- #line 3696 "format.w"
- hput_tags((yyvsp[-3].u),TAG(hpack_kind,(yyvsp[-1].info)));}
-#line 2620 "parser.c"
+ case 91: /* $@4: %empty */
+#line 547 "parser.y"
+ {
+ #line 3734 "format.w"
+ HPUT32((yyvsp[0].d)^0x40000000);}
+#line 2679 "parser.c"
+ break;
+
+ case 92: /* vpack: "top" max_depth $@4 box_shift box_goal list */
+#line 549 "parser.y"
+ {
+ #line 3734 "format.w"
+ (yyval.info)= (yyvsp[-2].info) |(yyvsp[-1].info);}
+#line 2687 "parser.c"
+ break;
+
+ case 93: /* vxbox_node: start "vpack" vpack ">" */
+#line 553 "parser.y"
+ {
+ #line 3736 "format.w"
+ hput_tags((yyvsp[-3].u),TAG(vpack_kind,(yyvsp[-1].info)));}
+#line 2695 "parser.c"
break;
- case 90: /* ltype: %empty */
-#line 533 "parser.y"
+ case 96: /* ltype: %empty */
+#line 559 "parser.y"
{
- #line 3806 "format.w"
+ #line 3850 "format.w"
(yyval.info)= 1;}
-#line 2628 "parser.c"
+#line 2703 "parser.c"
break;
- case 91: /* ltype: "align" */
-#line 535 "parser.y"
+ case 97: /* ltype: "align" */
+#line 561 "parser.y"
{
- #line 3806 "format.w"
+ #line 3850 "format.w"
(yyval.info)= 1;}
-#line 2636 "parser.c"
+#line 2711 "parser.c"
break;
- case 92: /* ltype: "center" */
-#line 537 "parser.y"
+ case 98: /* ltype: "center" */
+#line 563 "parser.y"
{
- #line 3806 "format.w"
+ #line 3850 "format.w"
(yyval.info)= 2;}
-#line 2644 "parser.c"
+#line 2719 "parser.c"
break;
- case 93: /* ltype: "expand" */
-#line 539 "parser.y"
+ case 99: /* ltype: "expand" */
+#line 565 "parser.y"
{
- #line 3806 "format.w"
+ #line 3850 "format.w"
(yyval.info)= 3;}
-#line 2652 "parser.c"
+#line 2727 "parser.c"
break;
- case 94: /* leaders: glue_node ltype rule_node */
-#line 542 "parser.y"
+ case 100: /* leaders: glue_node ltype rule_node */
+#line 568 "parser.y"
{
- #line 3807 "format.w"
+ #line 3851 "format.w"
if((yyvsp[-2].b))(yyval.info)= (yyvsp[-1].info) |b100;else (yyval.info)= (yyvsp[-1].info);}
-#line 2660 "parser.c"
+#line 2735 "parser.c"
break;
- case 95: /* leaders: glue_node ltype hbox_node */
-#line 545 "parser.y"
+ case 101: /* leaders: glue_node ltype hbox_node */
+#line 571 "parser.y"
{
- #line 3808 "format.w"
+ #line 3852 "format.w"
if((yyvsp[-2].b))(yyval.info)= (yyvsp[-1].info) |b100;else (yyval.info)= (yyvsp[-1].info);}
-#line 2668 "parser.c"
+#line 2743 "parser.c"
break;
- case 96: /* leaders: glue_node ltype vbox_node */
-#line 548 "parser.y"
+ case 102: /* leaders: glue_node ltype vbox_node */
+#line 574 "parser.y"
{
- #line 3809 "format.w"
+ #line 3853 "format.w"
if((yyvsp[-2].b))(yyval.info)= (yyvsp[-1].info) |b100;else (yyval.info)= (yyvsp[-1].info);}
-#line 2676 "parser.c"
+#line 2751 "parser.c"
break;
- case 97: /* content_node: start "leaders" leaders ">" */
-#line 551 "parser.y"
+ case 103: /* content_node: start "leaders" leaders ">" */
+#line 577 "parser.y"
{
- #line 3810 "format.w"
+ #line 3854 "format.w"
hput_tags((yyvsp[-3].u),TAG(leaders_kind,(yyvsp[-1].info)));}
-#line 2684 "parser.c"
+#line 2759 "parser.c"
break;
- case 98: /* $@4: %empty */
-#line 555 "parser.y"
+ case 104: /* $@5: %empty */
+#line 581 "parser.y"
{
- #line 3916 "format.w"
+ #line 3960 "format.w"
if((yyvsp[0].d)!=0)HPUT32((yyvsp[0].d));}
-#line 2692 "parser.c"
+#line 2767 "parser.c"
break;
- case 99: /* baseline: dimension $@4 glue_node glue_node */
-#line 558 "parser.y"
+ case 105: /* baseline: dimension $@5 glue_node glue_node */
+#line 584 "parser.y"
{
- #line 3917 "format.w"
+ #line 3961 "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 2703 "parser.c"
+#line 2778 "parser.c"
break;
- case 100: /* content_node: start "baseline" baseline ">" */
-#line 565 "parser.y"
+ case 106: /* content_node: start "baseline" baseline ">" */
+#line 591 "parser.y"
{
- #line 3922 "format.w"
+ #line 3966 "format.w"
if((yyvsp[-1].info)==b000)HPUT8(0);hput_tags((yyvsp[-3].u),TAG(baseline_kind,(yyvsp[-1].info)));}
-#line 2711 "parser.c"
+#line 2786 "parser.c"
break;
- case 102: /* cc_list: cc_list TXT_CC */
-#line 569 "parser.y"
+ case 108: /* cc_list: cc_list TXT_CC */
+#line 595 "parser.y"
{
- #line 4005 "format.w"
+ #line 4049 "format.w"
hput_utf8((yyvsp[0].u));}
-#line 2719 "parser.c"
+#line 2794 "parser.c"
break;
- case 103: /* lig_cc: UNSIGNED */
-#line 572 "parser.y"
+ case 109: /* lig_cc: UNSIGNED */
+#line 598 "parser.y"
{
- #line 4006 "format.w"
+ #line 4050 "format.w"
RNG("UTF-8 code",(yyvsp[0].u),0,0x1FFFFF);(yyval.u)= hpos-hstart;hput_utf8((yyvsp[0].u));}
-#line 2727 "parser.c"
+#line 2802 "parser.c"
break;
- case 104: /* lig_cc: CHARCODE */
-#line 575 "parser.y"
+ case 110: /* lig_cc: CHARCODE */
+#line 601 "parser.y"
{
- #line 4007 "format.w"
+ #line 4051 "format.w"
(yyval.u)= hpos-hstart;hput_utf8((yyvsp[0].u));}
-#line 2735 "parser.c"
+#line 2810 "parser.c"
break;
- case 105: /* ref: REFERENCE */
-#line 578 "parser.y"
+ case 111: /* ref: REFERENCE */
+#line 604 "parser.y"
{
- #line 4008 "format.w"
+ #line 4052 "format.w"
HPUT8((yyvsp[0].u));(yyval.u)= (yyvsp[0].u);}
-#line 2743 "parser.c"
+#line 2818 "parser.c"
break;
- case 106: /* $@5: %empty */
-#line 581 "parser.y"
+ case 112: /* $@6: %empty */
+#line 607 "parser.y"
{
- #line 4009 "format.w"
+ #line 4053 "format.w"
REF(font_kind,(yyvsp[0].u));}
-#line 2751 "parser.c"
+#line 2826 "parser.c"
break;
- case 107: /* ligature: ref $@5 lig_cc TXT_START cc_list TXT_END */
-#line 584 "parser.y"
+ case 113: /* ligature: ref $@6 lig_cc TXT_START cc_list TXT_END */
+#line 610 "parser.y"
{
- #line 4010 "format.w"
+ #line 4054 "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 2760 "parser.c"
+#line 2835 "parser.c"
break;
- case 108: /* content_node: start "ligature" ligature ">" */
-#line 588 "parser.y"
+ case 114: /* content_node: start "ligature" ligature ">" */
+#line 614 "parser.y"
{
- #line 4012 "format.w"
+ #line 4056 "format.w"
hput_tags((yyvsp[-3].u),hput_ligature(&((yyvsp[-1].lg))));}
-#line 2768 "parser.c"
+#line 2843 "parser.c"
break;
- case 109: /* replace_count: explicit */
-#line 592 "parser.y"
+ case 115: /* replace_count: explicit */
+#line 618 "parser.y"
{
- #line 4122 "format.w"
+ #line 4166 "format.w"
if((yyvsp[0].b)){(yyval.u)= 0x80;HPUT8(0x80);}else (yyval.u)= 0x00;}
-#line 2776 "parser.c"
+#line 2851 "parser.c"
break;
- case 110: /* replace_count: explicit UNSIGNED */
-#line 595 "parser.y"
+ case 116: /* replace_count: explicit UNSIGNED */
+#line 621 "parser.y"
{
- #line 4123 "format.w"
+ #line 4167 "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 2785 "parser.c"
+#line 2860 "parser.c"
break;
- case 111: /* disc: replace_count list list */
-#line 599 "parser.y"
+ case 117: /* disc: replace_count list list */
+#line 625 "parser.y"
{
- #line 4125 "format.w"
+ #line 4169 "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-2;if((yyvsp[-1].l).s==0)hpos= hpos-2;}}
-#line 2794 "parser.c"
+ if((yyvsp[0].l).s==0){hpos= hpos-3;if((yyvsp[-1].l).s==0)hpos= hpos-3;}}
+#line 2869 "parser.c"
break;
- case 112: /* disc: replace_count list */
-#line 603 "parser.y"
+ case 118: /* disc: replace_count list */
+#line 629 "parser.y"
{
- #line 4127 "format.w"
- (yyval.dc).r= (yyvsp[-1].u);(yyval.dc).p= (yyvsp[0].l);if((yyvsp[0].l).s==0)hpos= hpos-2;(yyval.dc).q.s= 0;}
-#line 2802 "parser.c"
+ #line 4171 "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"
break;
- case 113: /* disc: replace_count */
-#line 606 "parser.y"
+ case 119: /* disc: replace_count */
+#line 632 "parser.y"
{
- #line 4128 "format.w"
+ #line 4172 "format.w"
(yyval.dc).r= (yyvsp[0].u);(yyval.dc).p.s= 0;(yyval.dc).q.s= 0;}
-#line 2810 "parser.c"
+#line 2885 "parser.c"
break;
- case 114: /* disc_node: start "disc" disc ">" */
-#line 612 "parser.y"
+ case 120: /* disc_node: start "disc" disc ">" */
+#line 638 "parser.y"
{
- #line 4132 "format.w"
+ #line 4176 "format.w"
hput_tags((yyvsp[-3].u),hput_disc(&((yyvsp[-1].dc))));}
-#line 2818 "parser.c"
+#line 2893 "parser.c"
break;
- case 116: /* par_dimen: xdimen */
-#line 618 "parser.y"
+ case 122: /* par_dimen: xdimen */
+#line 644 "parser.y"
{
- #line 4286 "format.w"
+ #line 4328 "format.w"
hput_xdimen_node(&((yyvsp[0].xd)));}
-#line 2826 "parser.c"
+#line 2901 "parser.c"
break;
- case 117: /* par: xdimen_ref param_ref list */
-#line 621 "parser.y"
+ case 123: /* par: xdimen_ref param_ref list */
+#line 647 "parser.y"
{
- #line 4287 "format.w"
+ #line 4329 "format.w"
(yyval.info)= b000;}
-#line 2834 "parser.c"
+#line 2909 "parser.c"
break;
- case 118: /* par: xdimen_ref empty_param_list non_empty_param_list list */
-#line 624 "parser.y"
- {
- #line 4288 "format.w"
- (yyval.info)= b010;}
-#line 2842 "parser.c"
- break;
-
- case 119: /* par: xdimen_ref empty_param_list list */
-#line 627 "parser.y"
- {
- #line 4289 "format.w"
+ case 124: /* par: xdimen_ref param_list list */
+#line 650 "parser.y"
+ {
+ #line 4330 "format.w"
(yyval.info)= b010;}
-#line 2850 "parser.c"
+#line 2917 "parser.c"
break;
- case 120: /* $@6: %empty */
-#line 630 "parser.y"
+ case 125: /* $@7: %empty */
+#line 653 "parser.y"
{
- #line 4290 "format.w"
+ #line 4331 "format.w"
hput_xdimen_node(&((yyvsp[-1].xd)));}
-#line 2858 "parser.c"
+#line 2925 "parser.c"
break;
- case 121: /* par: xdimen param_ref $@6 list */
-#line 632 "parser.y"
+ case 126: /* par: xdimen param_ref $@7 list */
+#line 655 "parser.y"
{
- #line 4290 "format.w"
+ #line 4331 "format.w"
(yyval.info)= b100;}
-#line 2866 "parser.c"
+#line 2933 "parser.c"
break;
- case 122: /* par: par_dimen empty_param_list non_empty_param_list list */
-#line 635 "parser.y"
- {
- #line 4291 "format.w"
- (yyval.info)= b110;}
-#line 2874 "parser.c"
- break;
-
- case 123: /* par: par_dimen empty_param_list list */
-#line 638 "parser.y"
- {
- #line 4292 "format.w"
+ case 127: /* par: par_dimen param_list list */
+#line 658 "parser.y"
+ {
+ #line 4332 "format.w"
(yyval.info)= b110;}
-#line 2882 "parser.c"
+#line 2941 "parser.c"
break;
- case 124: /* content_node: start "par" par ">" */
-#line 642 "parser.y"
+ case 128: /* content_node: start "par" par ">" */
+#line 662 "parser.y"
{
- #line 4294 "format.w"
+ #line 4334 "format.w"
hput_tags((yyvsp[-3].u),TAG(par_kind,(yyvsp[-1].info)));}
-#line 2890 "parser.c"
+#line 2949 "parser.c"
break;
- case 125: /* math: param_ref list */
-#line 646 "parser.y"
+ case 129: /* math: param_ref list */
+#line 666 "parser.y"
{
- #line 4360 "format.w"
+ #line 4400 "format.w"
(yyval.info)= b000;}
-#line 2898 "parser.c"
+#line 2957 "parser.c"
break;
- case 126: /* math: param_ref list hbox_node */
-#line 649 "parser.y"
+ case 130: /* math: param_ref list hbox_node */
+#line 669 "parser.y"
{
- #line 4361 "format.w"
+ #line 4401 "format.w"
(yyval.info)= b001;}
-#line 2906 "parser.c"
+#line 2965 "parser.c"
break;
- case 127: /* math: param_ref hbox_node list */
-#line 652 "parser.y"
+ case 131: /* math: param_ref hbox_node list */
+#line 672 "parser.y"
{
- #line 4362 "format.w"
+ #line 4402 "format.w"
(yyval.info)= b010;}
-#line 2914 "parser.c"
- break;
-
- case 128: /* math: empty_param_list list */
-#line 655 "parser.y"
- {
- #line 4363 "format.w"
- (yyval.info)= b100;}
-#line 2922 "parser.c"
- break;
-
- case 129: /* math: empty_param_list list hbox_node */
-#line 658 "parser.y"
- {
- #line 4364 "format.w"
- (yyval.info)= b101;}
-#line 2930 "parser.c"
- break;
-
- case 130: /* math: empty_param_list hbox_node list */
-#line 661 "parser.y"
- {
- #line 4365 "format.w"
- (yyval.info)= b110;}
-#line 2938 "parser.c"
+#line 2973 "parser.c"
break;
- case 131: /* math: empty_param_list non_empty_param_list list */
-#line 664 "parser.y"
- {
- #line 4366 "format.w"
+ case 132: /* math: param_list list */
+#line 675 "parser.y"
+ {
+ #line 4403 "format.w"
(yyval.info)= b100;}
-#line 2946 "parser.c"
+#line 2981 "parser.c"
break;
- case 132: /* math: empty_param_list non_empty_param_list list hbox_node */
-#line 667 "parser.y"
- {
- #line 4367 "format.w"
+ case 133: /* math: param_list list hbox_node */
+#line 678 "parser.y"
+ {
+ #line 4404 "format.w"
(yyval.info)= b101;}
-#line 2954 "parser.c"
+#line 2989 "parser.c"
break;
- case 133: /* math: empty_param_list non_empty_param_list hbox_node list */
-#line 670 "parser.y"
- {
- #line 4368 "format.w"
+ case 134: /* math: param_list hbox_node list */
+#line 681 "parser.y"
+ {
+ #line 4405 "format.w"
(yyval.info)= b110;}
-#line 2962 "parser.c"
+#line 2997 "parser.c"
break;
- case 134: /* content_node: start "math" math ">" */
-#line 674 "parser.y"
+ case 135: /* content_node: start "math" math ">" */
+#line 685 "parser.y"
{
- #line 4370 "format.w"
+ #line 4407 "format.w"
hput_tags((yyvsp[-3].u),TAG(math_kind,(yyvsp[-1].info)));}
-#line 2970 "parser.c"
+#line 3005 "parser.c"
break;
- case 135: /* on_off: "on" */
-#line 678 "parser.y"
+ case 136: /* on_off: "on" */
+#line 689 "parser.y"
{
- #line 4420 "format.w"
+ #line 4457 "format.w"
(yyval.i)= 1;}
-#line 2978 "parser.c"
+#line 3013 "parser.c"
break;
- case 136: /* on_off: "off" */
-#line 680 "parser.y"
+ case 137: /* on_off: "off" */
+#line 691 "parser.y"
{
- #line 4420 "format.w"
+ #line 4457 "format.w"
(yyval.i)= 0;}
-#line 2986 "parser.c"
+#line 3021 "parser.c"
break;
- case 137: /* math: on_off */
-#line 683 "parser.y"
+ case 138: /* math: on_off */
+#line 694 "parser.y"
{
- #line 4421 "format.w"
+ #line 4458 "format.w"
(yyval.info)= b011 |((yyvsp[0].i)<<2);}
-#line 2994 "parser.c"
+#line 3029 "parser.c"
break;
- case 138: /* content_node: start "adjust" list ">" */
-#line 687 "parser.y"
+ case 139: /* content_node: start "adjust" list ">" */
+#line 698 "parser.y"
{
- #line 4452 "format.w"
+ #line 4489 "format.w"
hput_tags((yyvsp[-3].u),TAG(adjust_kind,1));}
-#line 3002 "parser.c"
+#line 3037 "parser.c"
break;
- case 139: /* span_count: UNSIGNED */
-#line 691 "parser.y"
+ case 140: /* span_count: UNSIGNED */
+#line 702 "parser.y"
{
- #line 4551 "format.w"
+ #line 4588 "format.w"
(yyval.info)= hput_span_count((yyvsp[0].u));}
-#line 3010 "parser.c"
+#line 3045 "parser.c"
break;
- case 140: /* content_node: start "item" content_node ">" */
-#line 694 "parser.y"
+ case 141: /* content_node: start "item" content_node ">" */
+#line 705 "parser.y"
{
- #line 4552 "format.w"
+ #line 4589 "format.w"
hput_tags((yyvsp[-3].u),TAG(item_kind,1));}
-#line 3018 "parser.c"
+#line 3053 "parser.c"
break;
- case 141: /* content_node: start "item" span_count content_node ">" */
-#line 697 "parser.y"
+ case 142: /* content_node: start "item" span_count content_node ">" */
+#line 708 "parser.y"
{
- #line 4553 "format.w"
+ #line 4590 "format.w"
hput_tags((yyvsp[-4].u),TAG(item_kind,(yyvsp[-2].info)));}
-#line 3026 "parser.c"
+#line 3061 "parser.c"
break;
- case 142: /* content_node: start "item" list ">" */
-#line 700 "parser.y"
+ case 143: /* content_node: start "item" list ">" */
+#line 711 "parser.y"
{
- #line 4554 "format.w"
+ #line 4591 "format.w"
hput_tags((yyvsp[-3].u),TAG(item_kind,b000));}
-#line 3034 "parser.c"
+#line 3069 "parser.c"
break;
- case 143: /* table: "h" box_goal list list */
-#line 704 "parser.y"
+ case 144: /* table: "h" box_goal list list */
+#line 715 "parser.y"
{
- #line 4556 "format.w"
+ #line 4593 "format.w"
(yyval.info)= (yyvsp[-2].info);}
-#line 3042 "parser.c"
+#line 3077 "parser.c"
break;
- case 144: /* table: "v" box_goal list list */
-#line 707 "parser.y"
+ case 145: /* table: "v" box_goal list list */
+#line 718 "parser.y"
{
- #line 4557 "format.w"
+ #line 4594 "format.w"
(yyval.info)= (yyvsp[-2].info) |b010;}
-#line 3050 "parser.c"
+#line 3085 "parser.c"
break;
- case 145: /* content_node: start "table" table ">" */
-#line 711 "parser.y"
+ case 146: /* content_node: start "table" table ">" */
+#line 722 "parser.y"
{
- #line 4559 "format.w"
+ #line 4596 "format.w"
hput_tags((yyvsp[-3].u),TAG(table_kind,(yyvsp[-1].info)));}
-#line 3058 "parser.c"
+#line 3093 "parser.c"
break;
- case 146: /* image_aspect: number */
-#line 715 "parser.y"
+ case 147: /* image_aspect: number */
+#line 726 "parser.y"
{
- #line 4693 "format.w"
+ #line 4730 "format.w"
(yyval.f)= (yyvsp[0].f);}
-#line 3066 "parser.c"
+#line 3101 "parser.c"
break;
- case 147: /* image_aspect: %empty */
-#line 717 "parser.y"
+ case 148: /* image_aspect: %empty */
+#line 728 "parser.y"
{
- #line 4693 "format.w"
+ #line 4730 "format.w"
(yyval.f)= 0.0;}
-#line 3074 "parser.c"
+#line 3109 "parser.c"
break;
- case 148: /* image_width: "width" xdimen */
-#line 720 "parser.y"
+ case 149: /* image_width: "width" xdimen */
+#line 731 "parser.y"
{
- #line 4694 "format.w"
+ #line 4731 "format.w"
(yyval.xd)= (yyvsp[0].xd);}
-#line 3082 "parser.c"
+#line 3117 "parser.c"
break;
- case 149: /* image_width: %empty */
-#line 723 "parser.y"
+ case 150: /* image_width: %empty */
+#line 734 "parser.y"
{
- #line 4695 "format.w"
+ #line 4732 "format.w"
(yyval.xd)= xdimen_defaults[zero_xdimen_no];}
-#line 3090 "parser.c"
+#line 3125 "parser.c"
break;
- case 150: /* image_height: "height" xdimen */
-#line 726 "parser.y"
+ case 151: /* image_height: "height" xdimen */
+#line 737 "parser.y"
{
- #line 4696 "format.w"
+ #line 4733 "format.w"
(yyval.xd)= (yyvsp[0].xd);}
-#line 3098 "parser.c"
+#line 3133 "parser.c"
break;
- case 151: /* image_height: %empty */
-#line 729 "parser.y"
+ case 152: /* image_height: %empty */
+#line 740 "parser.y"
{
- #line 4697 "format.w"
+ #line 4734 "format.w"
(yyval.xd)= xdimen_defaults[zero_xdimen_no];}
-#line 3106 "parser.c"
+#line 3141 "parser.c"
break;
- case 152: /* image_spec: UNSIGNED image_aspect image_width image_height */
-#line 734 "parser.y"
+ case 153: /* image_spec: UNSIGNED image_aspect image_width image_height */
+#line 745 "parser.y"
{
- #line 4700 "format.w"
+ #line 4737 "format.w"
(yyval.info)= hput_image_spec((yyvsp[-3].u),(yyvsp[-2].f),0,&((yyvsp[-1].xd)),0,&((yyvsp[0].xd)));}
-#line 3114 "parser.c"
+#line 3149 "parser.c"
break;
- case 153: /* image_spec: UNSIGNED image_aspect "width" REFERENCE image_height */
-#line 738 "parser.y"
+ case 154: /* image_spec: UNSIGNED image_aspect "width" REFERENCE image_height */
+#line 749 "parser.y"
{
- #line 4702 "format.w"
+ #line 4739 "format.w"
(yyval.info)= hput_image_spec((yyvsp[-4].u),(yyvsp[-3].f),(yyvsp[-1].u),NULL,0,&((yyvsp[0].xd)));}
-#line 3122 "parser.c"
+#line 3157 "parser.c"
break;
- case 154: /* image_spec: UNSIGNED image_aspect image_width "height" REFERENCE */
-#line 742 "parser.y"
+ case 155: /* image_spec: UNSIGNED image_aspect image_width "height" REFERENCE */
+#line 753 "parser.y"
{
- #line 4704 "format.w"
+ #line 4741 "format.w"
(yyval.info)= hput_image_spec((yyvsp[-4].u),(yyvsp[-3].f),0,&((yyvsp[-2].xd)),(yyvsp[0].u),NULL);}
-#line 3130 "parser.c"
+#line 3165 "parser.c"
break;
- case 155: /* image_spec: UNSIGNED image_aspect "width" REFERENCE "height" REFERENCE */
-#line 746 "parser.y"
+ case 156: /* image_spec: UNSIGNED image_aspect "width" REFERENCE "height" REFERENCE */
+#line 757 "parser.y"
{
- #line 4706 "format.w"
+ #line 4743 "format.w"
(yyval.info)= hput_image_spec((yyvsp[-5].u),(yyvsp[-4].f),(yyvsp[-2].u),NULL,(yyvsp[0].u),NULL);}
-#line 3138 "parser.c"
+#line 3173 "parser.c"
break;
- case 156: /* image: image_spec list */
-#line 750 "parser.y"
+ case 157: /* image: image_spec list */
+#line 761 "parser.y"
{
- #line 4708 "format.w"
+ #line 4745 "format.w"
(yyval.info)= (yyvsp[-1].info);}
-#line 3146 "parser.c"
+#line 3181 "parser.c"
break;
- case 157: /* content_node: start "image" image ">" */
-#line 754 "parser.y"
+ case 158: /* content_node: start "image" image ">" */
+#line 765 "parser.y"
{
- #line 4710 "format.w"
+ #line 4747 "format.w"
hput_tags((yyvsp[-3].u),TAG(image_kind,(yyvsp[-1].info)));}
-#line 3154 "parser.c"
+#line 3189 "parser.c"
break;
- case 158: /* max_value: "outline" UNSIGNED */
-#line 758 "parser.y"
+ case 159: /* max_value: "outline" UNSIGNED */
+#line 769 "parser.y"
{
- #line 5310 "format.w"
+ #line 5347 "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 3165 "parser.c"
+#line 3200 "parser.c"
break;
- case 159: /* placement: "top" */
-#line 765 "parser.y"
+ case 160: /* placement: "top" */
+#line 776 "parser.y"
{
- #line 5402 "format.w"
+ #line 5439 "format.w"
(yyval.i)= LABEL_TOP;}
-#line 3173 "parser.c"
+#line 3208 "parser.c"
break;
- case 160: /* placement: "bot" */
-#line 767 "parser.y"
+ case 161: /* placement: "bot" */
+#line 778 "parser.y"
{
- #line 5402 "format.w"
+ #line 5439 "format.w"
(yyval.i)= LABEL_BOT;}
-#line 3181 "parser.c"
+#line 3216 "parser.c"
break;
- case 161: /* placement: "mid" */
-#line 769 "parser.y"
+ case 162: /* placement: "mid" */
+#line 780 "parser.y"
{
- #line 5402 "format.w"
+ #line 5439 "format.w"
(yyval.i)= LABEL_MID;}
-#line 3189 "parser.c"
+#line 3224 "parser.c"
break;
- case 162: /* placement: %empty */
-#line 771 "parser.y"
+ case 163: /* placement: %empty */
+#line 782 "parser.y"
{
- #line 5402 "format.w"
+ #line 5439 "format.w"
(yyval.i)= LABEL_MID;}
-#line 3197 "parser.c"
+#line 3232 "parser.c"
break;
- case 163: /* content_node: "<" "label" REFERENCE placement ">" */
-#line 775 "parser.y"
+ case 164: /* content_node: "<" "label" REFERENCE placement ">" */
+#line 786 "parser.y"
{
- #line 5404 "format.w"
+ #line 5441 "format.w"
hset_label((yyvsp[-2].u),(yyvsp[-1].i));}
-#line 3205 "parser.c"
+#line 3240 "parser.c"
break;
- case 164: /* content_node: start "link" REFERENCE on_off ">" */
-#line 780 "parser.y"
+ case 165: /* content_node: start "link" REFERENCE on_off ">" */
+#line 791 "parser.y"
{
- #line 5662 "format.w"
+ #line 5699 "format.w"
hput_tags((yyvsp[-4].u),hput_link((yyvsp[-2].u),(yyvsp[-1].i)));}
-#line 3213 "parser.c"
+#line 3248 "parser.c"
break;
- case 165: /* def_node: "<" "outline" REFERENCE integer position list ">" */
-#line 784 "parser.y"
+ case 166: /* def_node: "<" "outline" REFERENCE integer position list ">" */
+#line 795 "parser.y"
{
- #line 5792 "format.w"
+ #line 5829 "format.w"
static int outline_no= -1;
(yyval.rf).k= outline_kind;(yyval.rf).n= (yyvsp[-4].u);
@@ -3223,215 +3258,265 @@ yyreduce:
outline_no++;
hset_outline(outline_no,(yyvsp[-4].u),(yyvsp[-3].i),(yyvsp[-2].u));
}
-#line 3227 "parser.c"
+#line 3262 "parser.c"
+ break;
+
+ case 167: /* def_node: start "unknown" UNSIGNED UNSIGNED ">" */
+#line 805 "parser.y"
+ {
+ #line 5956 "format.w"
+ hput_tags((yyvsp[-4].u),hput_unknown_def((yyvsp[-2].u),(yyvsp[-1].u),0));}
+#line 3270 "parser.c"
+ break;
+
+ case 168: /* def_node: start "unknown" UNSIGNED UNSIGNED UNSIGNED ">" */
+#line 808 "parser.y"
+ {
+ #line 5957 "format.w"
+ hput_tags((yyvsp[-5].u),hput_unknown_def((yyvsp[-3].u),(yyvsp[-2].u),(yyvsp[-1].u)));}
+#line 3278 "parser.c"
+ break;
+
+ case 169: /* content_node: start "unknown" UNSIGNED unknown_bytes unknown_nodes ">" */
+#line 812 "parser.y"
+ {
+ #line 5969 "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"
+ break;
+
+ case 170: /* unknown_bytes: %empty */
+#line 815 "parser.y"
+ {
+ #line 5970 "format.w"
+ (yyval.u)= 0;}
+#line 3294 "parser.c"
+ break;
+
+ case 171: /* unknown_bytes: unknown_bytes UNSIGNED */
+#line 817 "parser.y"
+ {
+ #line 5970 "format.w"
+ RNG("byte",(yyvsp[0].u),0,0xFF);HPUT8((yyvsp[0].u));(yyval.u)= (yyvsp[-1].u)+1;}
+#line 3302 "parser.c"
+ break;
+
+ case 176: /* unknown_nodes: %empty */
+#line 821 "parser.y"
+ {
+ #line 5972 "format.w"
+ (yyval.u)= 0;}
+#line 3310 "parser.c"
break;
- case 166: /* stream_link: ref */
-#line 794 "parser.y"
+ case 177: /* unknown_nodes: unknown_nodes unknown_node */
+#line 823 "parser.y"
+ {
+ #line 5972 "format.w"
+ RNG("unknown subnodes",(yyvsp[-1].u),0,3);(yyval.u)= (yyvsp[-1].u)+1;}
+#line 3318 "parser.c"
+ break;
+
+ case 178: /* stream_link: ref */
+#line 827 "parser.y"
{
- #line 6207 "format.w"
+ #line 6407 "format.w"
REF_RNG(stream_kind,(yyvsp[0].u));}
-#line 3235 "parser.c"
+#line 3326 "parser.c"
break;
- case 167: /* stream_link: "*" */
-#line 796 "parser.y"
+ case 179: /* stream_link: "*" */
+#line 829 "parser.y"
{
- #line 6207 "format.w"
+ #line 6407 "format.w"
HPUT8(255);}
-#line 3243 "parser.c"
+#line 3334 "parser.c"
break;
- case 168: /* stream_split: stream_link stream_link UNSIGNED */
-#line 799 "parser.y"
+ case 180: /* stream_split: stream_link stream_link UNSIGNED */
+#line 832 "parser.y"
{
- #line 6208 "format.w"
+ #line 6408 "format.w"
RNG("split ratio",(yyvsp[0].u),0,1000);HPUT16((yyvsp[0].u));}
-#line 3251 "parser.c"
+#line 3342 "parser.c"
break;
- case 169: /* $@7: %empty */
-#line 802 "parser.y"
+ case 181: /* $@8: %empty */
+#line 835 "parser.y"
{
- #line 6209 "format.w"
+ #line 6409 "format.w"
RNG("magnification factor",(yyvsp[0].u),0,1000);HPUT16((yyvsp[0].u));}
-#line 3259 "parser.c"
+#line 3350 "parser.c"
break;
- case 171: /* stream_type: stream_info */
-#line 806 "parser.y"
+ case 183: /* stream_type: stream_info */
+#line 839 "parser.y"
{
- #line 6211 "format.w"
+ #line 6411 "format.w"
(yyval.info)= 0;}
-#line 3267 "parser.c"
+#line 3358 "parser.c"
break;
- case 172: /* stream_type: "first" */
-#line 808 "parser.y"
+ case 184: /* stream_type: "first" */
+#line 841 "parser.y"
{
- #line 6211 "format.w"
+ #line 6411 "format.w"
(yyval.info)= 1;}
-#line 3275 "parser.c"
+#line 3366 "parser.c"
break;
- case 173: /* stream_type: "last" */
-#line 810 "parser.y"
+ case 185: /* stream_type: "last" */
+#line 843 "parser.y"
{
- #line 6211 "format.w"
+ #line 6411 "format.w"
(yyval.info)= 2;}
-#line 3283 "parser.c"
+#line 3374 "parser.c"
break;
- case 174: /* stream_type: "top" */
-#line 812 "parser.y"
+ case 186: /* stream_type: "top" */
+#line 845 "parser.y"
{
- #line 6211 "format.w"
+ #line 6411 "format.w"
(yyval.info)= 3;}
-#line 3291 "parser.c"
+#line 3382 "parser.c"
break;
- case 175: /* stream_def_node: start "stream (definition)" ref stream_type list xdimen_node glue_node list glue_node ">" */
-#line 818 "parser.y"
+ case 187: /* stream_def_node: start "stream (definition)" ref stream_type list xdimen_node glue_node list glue_node ">" */
+#line 851 "parser.y"
{
- #line 6215 "format.w"
+ #line 6415 "format.w"
DEF((yyval.rf),stream_kind,(yyvsp[-7].u));hput_tags((yyvsp[-9].u),TAG(stream_kind,(yyvsp[-6].info) |b100));}
-#line 3299 "parser.c"
+#line 3390 "parser.c"
break;
- case 176: /* stream_ins_node: start "stream (definition)" ref ">" */
-#line 823 "parser.y"
+ case 188: /* stream_ins_node: start "stream (definition)" ref ">" */
+#line 856 "parser.y"
{
- #line 6218 "format.w"
+ #line 6418 "format.w"
RNG("Stream insertion",(yyvsp[-1].u),0,max_ref[stream_kind]);hput_tags((yyvsp[-3].u),TAG(stream_kind,b100));}
-#line 3307 "parser.c"
- break;
-
- case 179: /* stream: empty_param_list list */
-#line 829 "parser.y"
- {
- #line 6313 "format.w"
- (yyval.info)= b010;}
-#line 3315 "parser.c"
+#line 3398 "parser.c"
break;
- case 180: /* stream: empty_param_list non_empty_param_list list */
-#line 832 "parser.y"
- {
- #line 6314 "format.w"
+ case 191: /* stream: param_list list */
+#line 862 "parser.y"
+ {
+ #line 6513 "format.w"
(yyval.info)= b010;}
-#line 3323 "parser.c"
+#line 3406 "parser.c"
break;
- case 181: /* stream: param_ref list */
-#line 835 "parser.y"
+ case 192: /* stream: param_ref list */
+#line 865 "parser.y"
{
- #line 6315 "format.w"
+ #line 6514 "format.w"
(yyval.info)= b000;}
-#line 3331 "parser.c"
+#line 3414 "parser.c"
break;
- case 182: /* content_node: start "stream" stream_ref stream ">" */
-#line 839 "parser.y"
+ case 193: /* content_node: start "stream" stream_ref stream ">" */
+#line 869 "parser.y"
{
- #line 6317 "format.w"
+ #line 6516 "format.w"
hput_tags((yyvsp[-4].u),TAG(stream_kind,(yyvsp[-1].info)));}
-#line 3339 "parser.c"
+#line 3422 "parser.c"
break;
- case 183: /* page_priority: %empty */
-#line 843 "parser.y"
+ case 194: /* page_priority: %empty */
+#line 873 "parser.y"
{
- #line 6420 "format.w"
+ #line 6619 "format.w"
HPUT8(1);}
-#line 3347 "parser.c"
+#line 3430 "parser.c"
break;
- case 184: /* page_priority: UNSIGNED */
-#line 846 "parser.y"
+ case 195: /* page_priority: UNSIGNED */
+#line 876 "parser.y"
{
- #line 6421 "format.w"
+ #line 6620 "format.w"
RNG("page priority",(yyvsp[0].u),0,255);HPUT8((yyvsp[0].u));}
-#line 3355 "parser.c"
+#line 3438 "parser.c"
break;
- case 187: /* $@8: %empty */
-#line 852 "parser.y"
+ case 198: /* $@9: %empty */
+#line 882 "parser.y"
{
- #line 6425 "format.w"
+ #line 6624 "format.w"
hput_string((yyvsp[0].s));}
-#line 3363 "parser.c"
+#line 3446 "parser.c"
break;
- case 188: /* $@9: %empty */
-#line 854 "parser.y"
+ case 199: /* $@10: %empty */
+#line 884 "parser.y"
{
- #line 6425 "format.w"
+ #line 6624 "format.w"
HPUT32((yyvsp[0].d));}
-#line 3371 "parser.c"
+#line 3454 "parser.c"
break;
- case 190: /* content_node: "<" "range" REFERENCE "on" ">" */
-#line 861 "parser.y"
+ case 201: /* content_node: "<" "range" REFERENCE "on" ">" */
+#line 891 "parser.y"
{
- #line 6537 "format.w"
+ #line 6737 "format.w"
REF(page_kind,(yyvsp[-2].u));hput_range((yyvsp[-2].u),true);}
-#line 3379 "parser.c"
+#line 3462 "parser.c"
break;
- case 191: /* content_node: "<" "range" REFERENCE "off" ">" */
-#line 864 "parser.y"
+ case 202: /* content_node: "<" "range" REFERENCE "off" ">" */
+#line 894 "parser.y"
{
- #line 6538 "format.w"
+ #line 6738 "format.w"
REF(page_kind,(yyvsp[-2].u));hput_range((yyvsp[-2].u),false);}
-#line 3387 "parser.c"
+#line 3470 "parser.c"
break;
- case 193: /* $@10: %empty */
-#line 870 "parser.y"
+ case 204: /* $@11: %empty */
+#line 900 "parser.y"
{
- #line 7231 "format.w"
+ #line 7436 "format.w"
new_directory((yyvsp[0].u)+1);new_output_buffers();}
-#line 3395 "parser.c"
+#line 3478 "parser.c"
break;
- case 197: /* entry: "<" "entry" UNSIGNED string ">" */
-#line 875 "parser.y"
+ case 208: /* entry: "<" "entry" UNSIGNED string ">" */
+#line 905 "parser.y"
{
- #line 7234 "format.w"
+ #line 7439 "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 3403 "parser.c"
+#line 3486 "parser.c"
break;
- case 198: /* $@11: %empty */
-#line 879 "parser.y"
+ case 209: /* $@12: %empty */
+#line 909 "parser.y"
{
- #line 7777 "format.w"
+ #line 7982 "format.w"
hput_definitions_start();}
-#line 3411 "parser.c"
+#line 3494 "parser.c"
break;
- case 199: /* definition_section: "<" "definitions" $@11 max_definitions definition_list ">" */
-#line 883 "parser.y"
+ case 210: /* definition_section: "<" "definitions" $@12 max_definitions definition_list ">" */
+#line 913 "parser.y"
{
- #line 7779 "format.w"
+ #line 7984 "format.w"
hput_definitions_end();}
-#line 3419 "parser.c"
+#line 3502 "parser.c"
break;
- case 202: /* max_definitions: "<" "max" max_list ">" */
-#line 889 "parser.y"
+ case 213: /* max_definitions: "<" "max" max_list ">" */
+#line 919 "parser.y"
{
- #line 7895 "format.w"
+ #line 8100 "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*/ /*301:*/
+ /*:274*/ /*310:*/
ALLOCATE(page_on,max_ref[page_kind]+1,int);
ALLOCATE(range_pos,2*(max_ref[range_kind]+1),RangePos);
- /*:301*/ /*367:*/
+ /*:310*/ /*376:*/
+ 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;
definition_bits[0][dimen_kind]= (1<<(MAX_DIMEN_DEFAULT+1))-1;
definition_bits[0][xdimen_kind]= (1<<(MAX_XDIMEN_DEFAULT+1))-1;
@@ -3440,544 +3525,536 @@ 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;
- /*:367*/ /*382:*/
+ /*:376*/ /*391:*/
ALLOCATE(hfont_name,max_ref[font_kind]+1,char*);
- /*:382*/hput_max_definitions();}
-#line 3447 "parser.c"
+ /*:391*/hput_max_definitions();}
+#line 3532 "parser.c"
break;
- case 205: /* max_value: "font" UNSIGNED */
-#line 915 "parser.y"
+ case 216: /* max_value: "font" UNSIGNED */
+#line 947 "parser.y"
{
- #line 7899 "format.w"
+ #line 8104 "format.w"
hset_max(font_kind,(yyvsp[0].u));}
-#line 3455 "parser.c"
+#line 3540 "parser.c"
break;
- case 206: /* max_value: "int" UNSIGNED */
-#line 918 "parser.y"
+ case 217: /* max_value: "int" UNSIGNED */
+#line 950 "parser.y"
{
- #line 7900 "format.w"
+ #line 8105 "format.w"
hset_max(int_kind,(yyvsp[0].u));}
-#line 3463 "parser.c"
+#line 3548 "parser.c"
break;
- case 207: /* max_value: "dimen" UNSIGNED */
-#line 921 "parser.y"
+ case 218: /* max_value: "dimen" UNSIGNED */
+#line 953 "parser.y"
{
- #line 7901 "format.w"
+ #line 8106 "format.w"
hset_max(dimen_kind,(yyvsp[0].u));}
-#line 3471 "parser.c"
+#line 3556 "parser.c"
break;
- case 208: /* max_value: "ligature" UNSIGNED */
-#line 924 "parser.y"
+ case 219: /* max_value: "ligature" UNSIGNED */
+#line 956 "parser.y"
{
- #line 7902 "format.w"
+ #line 8107 "format.w"
hset_max(ligature_kind,(yyvsp[0].u));}
-#line 3479 "parser.c"
+#line 3564 "parser.c"
break;
- case 209: /* max_value: "disc" UNSIGNED */
-#line 927 "parser.y"
+ case 220: /* max_value: "disc" UNSIGNED */
+#line 959 "parser.y"
{
- #line 7903 "format.w"
+ #line 8108 "format.w"
hset_max(disc_kind,(yyvsp[0].u));}
-#line 3487 "parser.c"
+#line 3572 "parser.c"
break;
- case 210: /* max_value: "glue" UNSIGNED */
-#line 930 "parser.y"
+ case 221: /* max_value: "glue" UNSIGNED */
+#line 962 "parser.y"
{
- #line 7904 "format.w"
+ #line 8109 "format.w"
hset_max(glue_kind,(yyvsp[0].u));}
-#line 3495 "parser.c"
+#line 3580 "parser.c"
break;
- case 211: /* max_value: "language" UNSIGNED */
-#line 933 "parser.y"
+ case 222: /* max_value: "language" UNSIGNED */
+#line 965 "parser.y"
{
- #line 7905 "format.w"
+ #line 8110 "format.w"
hset_max(language_kind,(yyvsp[0].u));}
-#line 3503 "parser.c"
+#line 3588 "parser.c"
break;
- case 212: /* max_value: "rule" UNSIGNED */
-#line 936 "parser.y"
+ case 223: /* max_value: "rule" UNSIGNED */
+#line 968 "parser.y"
{
- #line 7906 "format.w"
+ #line 8111 "format.w"
hset_max(rule_kind,(yyvsp[0].u));}
-#line 3511 "parser.c"
+#line 3596 "parser.c"
break;
- case 213: /* max_value: "image" UNSIGNED */
-#line 939 "parser.y"
+ case 224: /* max_value: "image" UNSIGNED */
+#line 971 "parser.y"
{
- #line 7907 "format.w"
+ #line 8112 "format.w"
hset_max(image_kind,(yyvsp[0].u));}
-#line 3519 "parser.c"
+#line 3604 "parser.c"
break;
- case 214: /* max_value: "leaders" UNSIGNED */
-#line 942 "parser.y"
+ case 225: /* max_value: "leaders" UNSIGNED */
+#line 974 "parser.y"
{
- #line 7908 "format.w"
+ #line 8113 "format.w"
hset_max(leaders_kind,(yyvsp[0].u));}
-#line 3527 "parser.c"
+#line 3612 "parser.c"
break;
- case 215: /* max_value: "baseline" UNSIGNED */
-#line 945 "parser.y"
+ case 226: /* max_value: "baseline" UNSIGNED */
+#line 977 "parser.y"
{
- #line 7909 "format.w"
+ #line 8114 "format.w"
hset_max(baseline_kind,(yyvsp[0].u));}
-#line 3535 "parser.c"
+#line 3620 "parser.c"
break;
- case 216: /* max_value: "xdimen" UNSIGNED */
-#line 948 "parser.y"
+ case 227: /* max_value: "xdimen" UNSIGNED */
+#line 980 "parser.y"
{
- #line 7910 "format.w"
+ #line 8115 "format.w"
hset_max(xdimen_kind,(yyvsp[0].u));}
-#line 3543 "parser.c"
+#line 3628 "parser.c"
break;
- case 217: /* max_value: "param" UNSIGNED */
-#line 951 "parser.y"
+ case 228: /* max_value: "param" UNSIGNED */
+#line 983 "parser.y"
{
- #line 7911 "format.w"
+ #line 8116 "format.w"
hset_max(param_kind,(yyvsp[0].u));}
-#line 3551 "parser.c"
+#line 3636 "parser.c"
break;
- case 218: /* max_value: "stream (definition)" UNSIGNED */
-#line 954 "parser.y"
+ case 229: /* max_value: "stream (definition)" UNSIGNED */
+#line 986 "parser.y"
{
- #line 7912 "format.w"
+ #line 8117 "format.w"
hset_max(stream_kind,(yyvsp[0].u));}
-#line 3559 "parser.c"
+#line 3644 "parser.c"
break;
- case 219: /* max_value: "page" UNSIGNED */
-#line 957 "parser.y"
+ case 230: /* max_value: "page" UNSIGNED */
+#line 989 "parser.y"
{
- #line 7913 "format.w"
+ #line 8118 "format.w"
hset_max(page_kind,(yyvsp[0].u));}
-#line 3567 "parser.c"
+#line 3652 "parser.c"
break;
- case 220: /* max_value: "range" UNSIGNED */
-#line 960 "parser.y"
+ case 231: /* max_value: "range" UNSIGNED */
+#line 992 "parser.y"
{
- #line 7914 "format.w"
+ #line 8119 "format.w"
hset_max(range_kind,(yyvsp[0].u));}
-#line 3575 "parser.c"
+#line 3660 "parser.c"
break;
- case 221: /* max_value: "label" UNSIGNED */
-#line 963 "parser.y"
+ case 232: /* max_value: "label" UNSIGNED */
+#line 995 "parser.y"
{
- #line 7915 "format.w"
+ #line 8120 "format.w"
hset_max(label_kind,(yyvsp[0].u));}
-#line 3583 "parser.c"
+#line 3668 "parser.c"
break;
- case 222: /* def_node: start "font" ref font ">" */
-#line 969 "parser.y"
+ case 233: /* def_node: start "font" ref font ">" */
+#line 1001 "parser.y"
{
- #line 8112 "format.w"
+ #line 8320 "format.w"
DEF((yyval.rf),font_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),(yyvsp[-1].info));}
-#line 3591 "parser.c"
+#line 3676 "parser.c"
break;
- case 223: /* def_node: start "int" ref integer ">" */
-#line 972 "parser.y"
+ case 234: /* def_node: start "int" ref integer ">" */
+#line 1004 "parser.y"
{
- #line 8113 "format.w"
+ #line 8321 "format.w"
DEF((yyval.rf),int_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_int((yyvsp[-1].i)));}
-#line 3599 "parser.c"
+#line 3684 "parser.c"
break;
- case 224: /* def_node: start "dimen" ref dimension ">" */
-#line 975 "parser.y"
+ case 235: /* def_node: start "dimen" ref dimension ">" */
+#line 1007 "parser.y"
{
- #line 8114 "format.w"
+ #line 8322 "format.w"
DEF((yyval.rf),dimen_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_dimen((yyvsp[-1].d)));}
-#line 3607 "parser.c"
+#line 3692 "parser.c"
break;
- case 225: /* def_node: start "language" ref string ">" */
-#line 978 "parser.y"
+ case 236: /* def_node: start "language" ref string ">" */
+#line 1010 "parser.y"
{
- #line 8115 "format.w"
+ #line 8323 "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 3615 "parser.c"
+#line 3700 "parser.c"
break;
- case 226: /* def_node: start "glue" ref glue ">" */
-#line 981 "parser.y"
+ case 237: /* def_node: start "glue" ref glue ">" */
+#line 1013 "parser.y"
{
- #line 8116 "format.w"
+ #line 8324 "format.w"
DEF((yyval.rf),glue_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_glue(&((yyvsp[-1].g))));}
-#line 3623 "parser.c"
+#line 3708 "parser.c"
break;
- case 227: /* def_node: start "xdimen" ref xdimen ">" */
-#line 984 "parser.y"
+ case 238: /* def_node: start "xdimen" ref xdimen ">" */
+#line 1016 "parser.y"
{
- #line 8117 "format.w"
+ #line 8325 "format.w"
DEF((yyval.rf),xdimen_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_xdimen(&((yyvsp[-1].xd))));}
-#line 3631 "parser.c"
+#line 3716 "parser.c"
break;
- case 228: /* def_node: start "rule" ref rule ">" */
-#line 987 "parser.y"
+ case 239: /* def_node: start "rule" ref rule ">" */
+#line 1019 "parser.y"
{
- #line 8118 "format.w"
+ #line 8326 "format.w"
DEF((yyval.rf),rule_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_rule(&((yyvsp[-1].r))));}
-#line 3639 "parser.c"
+#line 3724 "parser.c"
break;
- case 229: /* def_node: start "leaders" ref leaders ">" */
-#line 990 "parser.y"
+ case 240: /* def_node: start "leaders" ref leaders ">" */
+#line 1022 "parser.y"
{
- #line 8119 "format.w"
+ #line 8327 "format.w"
DEF((yyval.rf),leaders_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(leaders_kind,(yyvsp[-1].info)));}
-#line 3647 "parser.c"
+#line 3732 "parser.c"
break;
- case 230: /* def_node: start "baseline" ref baseline ">" */
-#line 993 "parser.y"
+ case 241: /* def_node: start "baseline" ref baseline ">" */
+#line 1025 "parser.y"
{
- #line 8120 "format.w"
+ #line 8328 "format.w"
DEF((yyval.rf),baseline_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(baseline_kind,(yyvsp[-1].info)));}
-#line 3655 "parser.c"
+#line 3740 "parser.c"
break;
- case 231: /* def_node: start "ligature" ref ligature ">" */
-#line 996 "parser.y"
+ case 242: /* def_node: start "ligature" ref ligature ">" */
+#line 1028 "parser.y"
{
- #line 8121 "format.w"
+ #line 8329 "format.w"
DEF((yyval.rf),ligature_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_ligature(&((yyvsp[-1].lg))));}
-#line 3663 "parser.c"
+#line 3748 "parser.c"
break;
- case 232: /* def_node: start "disc" ref disc ">" */
-#line 999 "parser.y"
+ case 243: /* def_node: start "disc" ref disc ">" */
+#line 1031 "parser.y"
{
- #line 8122 "format.w"
+ #line 8330 "format.w"
DEF((yyval.rf),disc_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),hput_disc(&((yyvsp[-1].dc))));}
-#line 3671 "parser.c"
+#line 3756 "parser.c"
break;
- case 233: /* def_node: start "image" ref image ">" */
-#line 1002 "parser.y"
+ case 244: /* def_node: start "image" ref image ">" */
+#line 1034 "parser.y"
{
- #line 8123 "format.w"
+ #line 8331 "format.w"
DEF((yyval.rf),image_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(image_kind,(yyvsp[-1].info)));}
-#line 3679 "parser.c"
+#line 3764 "parser.c"
break;
- case 234: /* def_node: start "param" ref parameters ">" */
-#line 1005 "parser.y"
+ case 245: /* def_node: start "param" ref parameters ">" */
+#line 1037 "parser.y"
{
- #line 8124 "format.w"
+ #line 8332 "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 3687 "parser.c"
+#line 3772 "parser.c"
break;
- case 235: /* def_node: start "page" ref page ">" */
-#line 1008 "parser.y"
+ case 246: /* def_node: start "page" ref page ">" */
+#line 1040 "parser.y"
{
- #line 8125 "format.w"
+ #line 8333 "format.w"
DEF((yyval.rf),page_kind,(yyvsp[-2].u));hput_tags((yyvsp[-4].u),TAG(page_kind,0));}
-#line 3695 "parser.c"
+#line 3780 "parser.c"
break;
- case 236: /* def_node: start "int" ref ref ">" */
-#line 1013 "parser.y"
+ case 247: /* def_node: start "int" ref ref ">" */
+#line 1045 "parser.y"
{
- #line 8144 "format.w"
+ #line 8352 "format.w"
DEF_REF((yyval.rf),int_kind,(yyvsp[-2].u),(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(int_kind,0));}
-#line 3703 "parser.c"
+#line 3788 "parser.c"
break;
- case 237: /* def_node: start "dimen" ref ref ">" */
-#line 1016 "parser.y"
+ case 248: /* def_node: start "dimen" ref ref ">" */
+#line 1048 "parser.y"
{
- #line 8145 "format.w"
+ #line 8353 "format.w"
DEF_REF((yyval.rf),dimen_kind,(yyvsp[-2].u),(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(dimen_kind,0));}
-#line 3711 "parser.c"
+#line 3796 "parser.c"
break;
- case 238: /* def_node: start "glue" ref ref ">" */
-#line 1019 "parser.y"
+ case 249: /* def_node: start "glue" ref ref ">" */
+#line 1051 "parser.y"
{
- #line 8146 "format.w"
+ #line 8354 "format.w"
DEF_REF((yyval.rf),glue_kind,(yyvsp[-2].u),(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(glue_kind,0));}
-#line 3719 "parser.c"
+#line 3804 "parser.c"
break;
- case 240: /* def_list: def_list def_node */
-#line 1024 "parser.y"
+ case 251: /* def_list: def_list def_node */
+#line 1056 "parser.y"
{
- #line 8260 "format.w"
+ #line 8470 "format.w"
check_param_def(&((yyvsp[0].rf)));}
-#line 3727 "parser.c"
+#line 3812 "parser.c"
break;
- case 241: /* parameters: estimate def_list */
-#line 1027 "parser.y"
+ case 252: /* parameters: estimate def_list */
+#line 1059 "parser.y"
{
- #line 8261 "format.w"
- (yyval.l).p= (yyvsp[0].u);(yyval.l).k= param_kind;(yyval.l).s= (hpos-hstart)-(yyvsp[0].u);}
-#line 3735 "parser.c"
+ #line 8471 "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"
break;
- case 242: /* empty_param_list: position */
-#line 1031 "parser.y"
- {
- #line 8282 "format.w"
- HPUTX(2);hpos++;hput_tags((yyvsp[0].u),TAG(param_kind,1));}
-#line 3743 "parser.c"
- break;
-
- case 243: /* $@12: %empty */
-#line 1034 "parser.y"
- {
- #line 8283 "format.w"
- hpos= hpos-2;}
-#line 3751 "parser.c"
+ case 253: /* named_param_list: start "param" parameters ">" */
+#line 1064 "parser.y"
+{
+ #line 8484 "format.w"
+ hput_tags((yyvsp[-3].u),hput_list((yyvsp[-3].u)+1,&((yyvsp[-1].l))));}
+#line 3828 "parser.c"
break;
- case 244: /* non_empty_param_list: start "param" $@12 parameters ">" */
-#line 1037 "parser.y"
+ case 255: /* param_list: start parameters ">" */
+#line 1068 "parser.y"
{
- #line 8284 "format.w"
- hput_tags((yyvsp[-4].u)-2,hput_list((yyvsp[-4].u)-1,&((yyvsp[-1].l))));}
-#line 3759 "parser.c"
+ #line 8486 "format.w"
+ hput_tags((yyvsp[-2].u),hput_list((yyvsp[-2].u)+1,&((yyvsp[-1].l))));}
+#line 3836 "parser.c"
break;
- case 246: /* font_head: string dimension UNSIGNED UNSIGNED */
-#line 1045 "parser.y"
+ case 257: /* font_head: string dimension UNSIGNED UNSIGNED */
+#line 1076 "parser.y"
{
- #line 8426 "format.w"
+ #line 8632 "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 3767 "parser.c"
+#line 3844 "parser.c"
break;
- case 249: /* font_param: start "penalty" fref penalty ">" */
-#line 1052 "parser.y"
+ case 260: /* font_param: start "penalty" fref penalty ">" */
+#line 1083 "parser.y"
{
- #line 8431 "format.w"
+ #line 8637 "format.w"
hput_tags((yyvsp[-4].u),hput_int((yyvsp[-1].i)));}
-#line 3775 "parser.c"
+#line 3852 "parser.c"
break;
- case 250: /* font_param: start "kern" fref kern ">" */
-#line 1055 "parser.y"
+ case 261: /* font_param: start "kern" fref kern ">" */
+#line 1086 "parser.y"
{
- #line 8432 "format.w"
+ #line 8638 "format.w"
hput_tags((yyvsp[-4].u),hput_kern(&((yyvsp[-1].kt))));}
-#line 3783 "parser.c"
+#line 3860 "parser.c"
break;
- case 251: /* font_param: start "ligature" fref ligature ">" */
-#line 1058 "parser.y"
+ case 262: /* font_param: start "ligature" fref ligature ">" */
+#line 1089 "parser.y"
{
- #line 8433 "format.w"
+ #line 8639 "format.w"
hput_tags((yyvsp[-4].u),hput_ligature(&((yyvsp[-1].lg))));}
-#line 3791 "parser.c"
+#line 3868 "parser.c"
break;
- case 252: /* font_param: start "disc" fref disc ">" */
-#line 1061 "parser.y"
+ case 263: /* font_param: start "disc" fref disc ">" */
+#line 1092 "parser.y"
{
- #line 8434 "format.w"
+ #line 8640 "format.w"
hput_tags((yyvsp[-4].u),hput_disc(&((yyvsp[-1].dc))));}
-#line 3799 "parser.c"
+#line 3876 "parser.c"
break;
- case 253: /* font_param: start "glue" fref glue ">" */
-#line 1064 "parser.y"
+ case 264: /* font_param: start "glue" fref glue ">" */
+#line 1095 "parser.y"
{
- #line 8435 "format.w"
+ #line 8641 "format.w"
hput_tags((yyvsp[-4].u),hput_glue(&((yyvsp[-1].g))));}
-#line 3807 "parser.c"
+#line 3884 "parser.c"
break;
- case 254: /* font_param: start "language" fref string ">" */
-#line 1067 "parser.y"
+ case 265: /* font_param: start "language" fref string ">" */
+#line 1098 "parser.y"
{
- #line 8436 "format.w"
+ #line 8642 "format.w"
hput_string((yyvsp[-1].s));hput_tags((yyvsp[-4].u),TAG(language_kind,0));}
-#line 3815 "parser.c"
+#line 3892 "parser.c"
break;
- case 255: /* font_param: start "rule" fref rule ">" */
-#line 1070 "parser.y"
+ case 266: /* font_param: start "rule" fref rule ">" */
+#line 1101 "parser.y"
{
- #line 8437 "format.w"
+ #line 8643 "format.w"
hput_tags((yyvsp[-4].u),hput_rule(&((yyvsp[-1].r))));}
-#line 3823 "parser.c"
+#line 3900 "parser.c"
break;
- case 256: /* font_param: start "image" fref image ">" */
-#line 1073 "parser.y"
+ case 267: /* font_param: start "image" fref image ">" */
+#line 1104 "parser.y"
{
- #line 8438 "format.w"
+ #line 8644 "format.w"
hput_tags((yyvsp[-4].u),TAG(image_kind,(yyvsp[-1].info)));}
-#line 3831 "parser.c"
+#line 3908 "parser.c"
break;
- case 257: /* fref: ref */
-#line 1077 "parser.y"
+ case 268: /* fref: ref */
+#line 1108 "parser.y"
{
- #line 8440 "format.w"
+ #line 8646 "format.w"
RNG("Font parameter",(yyvsp[0].u),0,MAX_FONT_PARAMS);}
-#line 3839 "parser.c"
+#line 3916 "parser.c"
break;
- case 258: /* xdimen_ref: ref */
-#line 1081 "parser.y"
+ case 269: /* xdimen_ref: ref */
+#line 1112 "parser.y"
{
- #line 8513 "format.w"
+ #line 8723 "format.w"
REF(xdimen_kind,(yyvsp[0].u));}
-#line 3847 "parser.c"
+#line 3924 "parser.c"
break;
- case 259: /* param_ref: ref */
-#line 1084 "parser.y"
+ case 270: /* param_ref: ref */
+#line 1115 "parser.y"
{
- #line 8514 "format.w"
+ #line 8724 "format.w"
REF(param_kind,(yyvsp[0].u));}
-#line 3855 "parser.c"
+#line 3932 "parser.c"
break;
- case 260: /* stream_ref: ref */
-#line 1087 "parser.y"
+ case 271: /* stream_ref: ref */
+#line 1118 "parser.y"
{
- #line 8515 "format.w"
+ #line 8725 "format.w"
REF_RNG(stream_kind,(yyvsp[0].u));}
-#line 3863 "parser.c"
+#line 3940 "parser.c"
break;
- case 261: /* content_node: start "penalty" ref ">" */
-#line 1093 "parser.y"
+ case 272: /* content_node: start "penalty" ref ">" */
+#line 1124 "parser.y"
{
- #line 8519 "format.w"
+ #line 8729 "format.w"
REF(penalty_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(penalty_kind,0));}
-#line 3871 "parser.c"
+#line 3948 "parser.c"
break;
- case 262: /* content_node: start "kern" explicit ref ">" */
-#line 1097 "parser.y"
+ case 273: /* content_node: start "kern" explicit ref ">" */
+#line 1128 "parser.y"
{
- #line 8521 "format.w"
+ #line 8731 "format.w"
REF(dimen_kind,(yyvsp[-1].u));hput_tags((yyvsp[-4].u),TAG(kern_kind,((yyvsp[-2].b))?b100:b000));}
-#line 3879 "parser.c"
+#line 3956 "parser.c"
break;
- case 263: /* content_node: start "kern" explicit "xdimen" ref ">" */
-#line 1101 "parser.y"
+ case 274: /* content_node: start "kern" explicit "xdimen" ref ">" */
+#line 1132 "parser.y"
{
- #line 8523 "format.w"
+ #line 8733 "format.w"
REF(xdimen_kind,(yyvsp[-1].u));hput_tags((yyvsp[-5].u),TAG(kern_kind,((yyvsp[-3].b))?b101:b001));}
-#line 3887 "parser.c"
+#line 3964 "parser.c"
break;
- case 264: /* content_node: start "glue" ref ">" */
-#line 1104 "parser.y"
+ case 275: /* content_node: start "glue" ref ">" */
+#line 1135 "parser.y"
{
- #line 8524 "format.w"
+ #line 8734 "format.w"
REF(glue_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(glue_kind,0));}
-#line 3895 "parser.c"
+#line 3972 "parser.c"
break;
- case 265: /* content_node: start "ligature" ref ">" */
-#line 1107 "parser.y"
+ case 276: /* content_node: start "ligature" ref ">" */
+#line 1138 "parser.y"
{
- #line 8525 "format.w"
+ #line 8735 "format.w"
REF(ligature_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(ligature_kind,0));}
-#line 3903 "parser.c"
+#line 3980 "parser.c"
break;
- case 266: /* content_node: start "disc" ref ">" */
-#line 1110 "parser.y"
+ case 277: /* content_node: start "disc" ref ">" */
+#line 1141 "parser.y"
{
- #line 8526 "format.w"
+ #line 8736 "format.w"
REF(disc_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(disc_kind,0));}
-#line 3911 "parser.c"
+#line 3988 "parser.c"
break;
- case 267: /* content_node: start "rule" ref ">" */
-#line 1113 "parser.y"
+ case 278: /* content_node: start "rule" ref ">" */
+#line 1144 "parser.y"
{
- #line 8527 "format.w"
+ #line 8737 "format.w"
REF(rule_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(rule_kind,0));}
-#line 3919 "parser.c"
+#line 3996 "parser.c"
break;
- case 268: /* content_node: start "image" ref ">" */
-#line 1116 "parser.y"
+ case 279: /* content_node: start "image" ref ">" */
+#line 1147 "parser.y"
{
- #line 8528 "format.w"
+ #line 8738 "format.w"
REF(image_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(image_kind,0));}
-#line 3927 "parser.c"
+#line 4004 "parser.c"
break;
- case 269: /* content_node: start "leaders" ref ">" */
-#line 1119 "parser.y"
+ case 280: /* content_node: start "leaders" ref ">" */
+#line 1150 "parser.y"
{
- #line 8529 "format.w"
+ #line 8739 "format.w"
REF(leaders_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(leaders_kind,0));}
-#line 3935 "parser.c"
+#line 4012 "parser.c"
break;
- case 270: /* content_node: start "baseline" ref ">" */
-#line 1122 "parser.y"
+ case 281: /* content_node: start "baseline" ref ">" */
+#line 1153 "parser.y"
{
- #line 8530 "format.w"
+ #line 8740 "format.w"
REF(baseline_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),TAG(baseline_kind,0));}
-#line 3943 "parser.c"
+#line 4020 "parser.c"
break;
- case 271: /* content_node: start "language" REFERENCE ">" */
-#line 1125 "parser.y"
+ case 282: /* content_node: start "language" REFERENCE ">" */
+#line 1156 "parser.y"
{
- #line 8531 "format.w"
+ #line 8741 "format.w"
REF(language_kind,(yyvsp[-1].u));hput_tags((yyvsp[-3].u),hput_language((yyvsp[-1].u)));}
-#line 3951 "parser.c"
+#line 4028 "parser.c"
break;
- case 272: /* glue_node: start "glue" ref ">" */
-#line 1129 "parser.y"
+ case 283: /* glue_node: start "glue" ref ">" */
+#line 1160 "parser.y"
{
- #line 8533 "format.w"
+ #line 8743 "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 3961 "parser.c"
+#line 4038 "parser.c"
break;
- case 273: /* $@13: %empty */
-#line 1136 "parser.y"
+ case 284: /* $@13: %empty */
+#line 1167 "parser.y"
{
- #line 8964 "format.w"
+ #line 9190 "format.w"
hput_content_start();}
-#line 3969 "parser.c"
+#line 4046 "parser.c"
break;
- case 274: /* content_section: "<" "content" $@13 content_list ">" */
-#line 1139 "parser.y"
+ case 285: /* content_section: "<" "content" $@13 content_list ">" */
+#line 1170 "parser.y"
{
- #line 8965 "format.w"
+ #line 9191 "format.w"
hput_content_end();hput_range_defs();hput_label_defs();}
-#line 3977 "parser.c"
+#line 4054 "parser.c"
break;
-#line 3981 "parser.c"
+#line 4058 "parser.c"
default: break;
}
@@ -4201,6 +4278,6 @@ yyreturnlab:
return yyresult;
}
-#line 1143 "parser.y"
+#line 1174 "parser.y"
- /*:520*/
+ /*:534*/