texlive[62591] Build/source/texk/web2c/hitexdir: HiTeX: changing /*

commits+mruckert at tug.org commits+mruckert at tug.org
Thu Mar 10 17:50:22 CET 2022


Revision: 62591
          http://tug.org/svn/texlive?view=revision&revision=62591
Author:   mruckert
Date:     2022-03-10 17:50:22 +0100 (Thu, 10 Mar 2022)
Log Message:
-----------
HiTeX: changing /* _WIN32 ... */ to /* |_WIN32| ... */ to keep TeX happy.

Modified Paths:
--------------
    trunk/Build/source/texk/web2c/hitexdir/doc/hiformat.hnt
    trunk/Build/source/texk/web2c/hitexdir/doc/hiformat.pdf
    trunk/Build/source/texk/web2c/hitexdir/doc/hitexman.hnt
    trunk/Build/source/texk/web2c/hitexdir/doc/hitexman.pdf
    trunk/Build/source/texk/web2c/hitexdir/hilexer.c
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/error.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/format.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.c
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.c
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.c
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.h
    trunk/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h
    trunk/Build/source/texk/web2c/hitexdir/hitex.w

Modified: trunk/Build/source/texk/web2c/hitexdir/doc/hiformat.hnt
===================================================================
(Binary files differ)

Modified: trunk/Build/source/texk/web2c/hitexdir/doc/hiformat.pdf
===================================================================
(Binary files differ)

Modified: trunk/Build/source/texk/web2c/hitexdir/doc/hitexman.hnt
===================================================================
(Binary files differ)

Modified: trunk/Build/source/texk/web2c/hitexdir/doc/hitexman.pdf
===================================================================
(Binary files differ)

Modified: trunk/Build/source/texk/web2c/hitexdir/hilexer.c
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hilexer.c	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hilexer.c	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,6 +1,6 @@
-#line 1 "lexer.c"
+#line 2 "lexer.c"
 
-#line 3 "lexer.c"
+#line 4 "lexer.c"
 
 #define  YY_INT_ALIGNED short int
 
@@ -7,6 +7,7 @@
 /* A lexical scanner generated by flex */
 
 /* %not-for-header */
+
 /* %if-c-only */
 /* %if-not-reentrant */
 
@@ -16,8 +17,8 @@
 
 #define FLEX_SCANNER
 #define YY_FLEX_MAJOR_VERSION 2
-#define YY_FLEX_MINOR_VERSION 6
-#define YY_FLEX_SUBMINOR_VERSION 4
+#define YY_FLEX_MINOR_VERSION 5
+#define YY_FLEX_SUBMINOR_VERSION 37
 #if YY_FLEX_SUBMINOR_VERSION > 0
 #define FLEX_BETA
 #endif
@@ -26,7 +27,7 @@
 /* %endif */
 
 /* %if-c-only */
-
+    
 /* %endif */
 
 /* %if-c-only */
@@ -108,10 +109,6 @@
 #define UINT32_MAX             (4294967295U)
 #endif
 
-#ifndef SIZE_MAX
-#define SIZE_MAX               (~(size_t)0)
-#endif
-
 #endif /* ! C99 */
 
 #endif /* ! FLEXINT_H */
@@ -118,29 +115,44 @@
 
 /* %endif */
 
-/* begin standard C++ headers. */
 /* %if-c++-only */
 /* %endif */
 
-/* TODO: this is always defined, so inline it */
+#ifdef __cplusplus
+
+/* The "const" storage-class-modifier is valid. */
+#define YY_USE_CONST
+
+#else	/* ! __cplusplus */
+
+/* C99 requires __STDC__ to be defined as 1. */
+#if defined (__STDC__)
+
+#define YY_USE_CONST
+
+#endif	/* defined (__STDC__) */
+#endif	/* ! __cplusplus */
+
+#ifdef YY_USE_CONST
 #define yyconst const
-
-#if defined(__GNUC__) && __GNUC__ >= 3
-#define yynoreturn __attribute__((__noreturn__))
 #else
-#define yynoreturn
+#define yyconst
 #endif
 
 /* %not-for-header */
+
 /* Returned upon end-of-file. */
 #define YY_NULL 0
 /* %ok-for-header */
 
 /* %not-for-header */
-/* Promotes a possibly negative, possibly signed char to an
- *   integer in range [0..255] for use as an array index.
+
+/* Promotes a possibly negative, possibly signed char to an unsigned
+ * integer for use as an array index.  If the signed char is negative,
+ * we want to instead treat it as an 8-bit unsigned char, hence the
+ * double cast.
  */
-#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
+#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
 /* %ok-for-header */
 
 /* %if-reentrant */
@@ -155,6 +167,7 @@
  * definition of BEGIN.
  */
 #define BEGIN (yy_start) = 1 + 2 *
+
 /* Translate the current start state into a value that can be later handed
  * to BEGIN to return to the state.  The YYSTATE alias is for lex
  * compatibility.
@@ -161,23 +174,18 @@
  */
 #define YY_START (((yy_start) - 1) / 2)
 #define YYSTATE YY_START
+
 /* Action number for EOF rule of a given start state. */
 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
+
 /* Special action meaning "start processing a new file". */
-#define YY_NEW_FILE yyrestart( yyin  )
+#define YY_NEW_FILE yyrestart(yyin  )
+
 #define YY_END_OF_BUFFER_CHAR 0
 
 /* Size of default input buffer. */
 #ifndef YY_BUF_SIZE
-#ifdef __ia64__
-/* On IA-64, the buffer size is 16k, not 8k.
- * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
- * Ditto for the __ia64__ case accordingly.
- */
-#define YY_BUF_SIZE 32768
-#else
 #define YY_BUF_SIZE 16384
-#endif /* __ia64__ */
 #endif
 
 /* The state buf must be large enough to hold one state per character in the main buffer.
@@ -195,7 +203,7 @@
 #endif
 
 /* %if-not-reentrant */
-extern int yyleng;
+extern yy_size_t yyleng;
 /* %endif */
 
 /* %if-c-only */
@@ -207,10 +215,10 @@
 #define EOB_ACT_CONTINUE_SCAN 0
 #define EOB_ACT_END_OF_FILE 1
 #define EOB_ACT_LAST_MATCH 2
-    
+
     /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
      *       access to the local variable yy_act. Since yyless() is a macro, it would break
-     *       existing scanners that call yyless() from OUTSIDE yylex.
+     *       existing scanners that call yyless() from OUTSIDE yylex. 
      *       One obvious solution it to make yy_act a global. I tried that, and saw
      *       a 5% performance hit in a non-yylineno scanner, because yy_act is
      *       normally declared as a register variable-- so it is not worth it.
@@ -222,13 +230,6 @@
                     if ( yytext[yyl] == '\n' )\
                         --yylineno;\
             }while(0)
-    #define YY_LINENO_REWIND_TO(dst) \
-            do {\
-                const char *p;\
-                for ( p = yy_cp-1; p >= (dst); --p)\
-                    if ( *p == '\n' )\
-                        --yylineno;\
-            }while(0)
     
 /* Return all but the first "n" matched characters back to the input stream. */
 #define yyless(n) \
@@ -243,6 +244,7 @@
 		YY_DO_BEFORE_ACTION; /* set up yytext again */ \
 		} \
 	while ( 0 )
+
 #define unput(c) yyunput( c, (yytext_ptr)  )
 
 #ifndef YY_STRUCT_YY_BUFFER_STATE
@@ -262,12 +264,12 @@
 	/* Size of input buffer in bytes, not including room for EOB
 	 * characters.
 	 */
-	int yy_buf_size;
+	yy_size_t yy_buf_size;
 
 	/* Number of characters read into yy_ch_buf, not including EOB
 	 * characters.
 	 */
-	int yy_n_chars;
+	yy_size_t yy_n_chars;
 
 	/* Whether we "own" the buffer - i.e., we know we created it,
 	 * and can realloc() it to grow it, and should free() it to
@@ -290,7 +292,7 @@
 
     int yy_bs_lineno; /**< The line count. */
     int yy_bs_column; /**< The column count. */
-
+    
 	/* Whether to try to fill the input buffer when we reach the
 	 * end of it.
 	 */
@@ -317,12 +319,13 @@
 
 /* %if-c-only Standard (non-C++) definition */
 /* %not-for-header */
+
 /* %if-not-reentrant */
 
 /* Stack of input buffers. */
 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
-static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */
+static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
 /* %endif */
 /* %ok-for-header */
 
@@ -337,6 +340,7 @@
 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
                           ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
                           : NULL)
+
 /* Same as previous macro, but useful when we know that the buffer stack is not
  * NULL or when we need an lvalue. For internal use only.
  */
@@ -346,13 +350,14 @@
 
 /* %if-not-reentrant */
 /* %not-for-header */
+
 /* yy_hold_char holds the character lost when yytext is formed. */
 static char yy_hold_char;
-static int yy_n_chars;		/* number of characters read into yy_ch_buf */
-int yyleng;
+static yy_size_t yy_n_chars;		/* number of characters read into yy_ch_buf */
+yy_size_t yyleng;
 
 /* Points to current character in buffer. */
-static char *yy_c_buf_p = NULL;
+static char *yy_c_buf_p = (char *) 0;
 static int yy_init = 0;		/* whether we need to initialize */
 static int yy_start = 0;	/* start state number */
 
@@ -364,48 +369,52 @@
 
 /* %endif */
 
-void yyrestart ( FILE *input_file  );
-void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer  );
-YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size  );
-void yy_delete_buffer ( YY_BUFFER_STATE b  );
-void yy_flush_buffer ( YY_BUFFER_STATE b  );
-void yypush_buffer_state ( YY_BUFFER_STATE new_buffer  );
-void yypop_buffer_state ( void );
+void yyrestart (FILE *input_file  );
+void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer  );
+YY_BUFFER_STATE yy_create_buffer (FILE *file,int size  );
+void yy_delete_buffer (YY_BUFFER_STATE b  );
+void yy_flush_buffer (YY_BUFFER_STATE b  );
+void yypush_buffer_state (YY_BUFFER_STATE new_buffer  );
+void yypop_buffer_state (void );
 
-static void yyensure_buffer_stack ( void );
-static void yy_load_buffer_state ( void );
-static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file  );
-#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
+static void yyensure_buffer_stack (void );
+static void yy_load_buffer_state (void );
+static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file  );
 
-YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size  );
-YY_BUFFER_STATE yy_scan_string ( const char *yy_str  );
-YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len  );
+#define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER )
 
+YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size  );
+YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str  );
+YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len  );
+
 /* %endif */
 
-void *yyalloc ( yy_size_t  );
-void *yyrealloc ( void *, yy_size_t  );
-void yyfree ( void *  );
+void *yyalloc (yy_size_t  );
+void *yyrealloc (void *,yy_size_t  );
+void yyfree (void *  );
 
 #define yy_new_buffer yy_create_buffer
+
 #define yy_set_interactive(is_interactive) \
 	{ \
 	if ( ! YY_CURRENT_BUFFER ){ \
         yyensure_buffer_stack (); \
 		YY_CURRENT_BUFFER_LVALUE =    \
-            yy_create_buffer( yyin, YY_BUF_SIZE ); \
+            yy_create_buffer(yyin,YY_BUF_SIZE ); \
 	} \
 	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
 	}
+
 #define yy_set_bol(at_bol) \
 	{ \
 	if ( ! YY_CURRENT_BUFFER ){\
         yyensure_buffer_stack (); \
 		YY_CURRENT_BUFFER_LVALUE =    \
-            yy_create_buffer( yyin, YY_BUF_SIZE ); \
+            yy_create_buffer(yyin,YY_BUF_SIZE ); \
 	} \
 	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
 	}
+
 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
 
 /* %% [1.0] yytext/yyin/yyout/yy_state_type/yylineno etc. def's & init go here */
@@ -412,29 +421,26 @@
 /* Begin user sect3 */
 
 #define FLEX_DEBUG
-typedef flex_uint8_t YY_CHAR;
 
-FILE *yyin = NULL, *yyout = NULL;
+typedef unsigned char YY_CHAR;
 
+FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
+
 typedef int yy_state_type;
 
 extern int yylineno;
+
 int yylineno = 1;
 
 extern char *yytext;
-#ifdef yytext_ptr
-#undef yytext_ptr
-#endif
 #define yytext_ptr yytext
 
-/* %% [1.5] DFA */
-
 /* %if-c-only Standard (non-C++) definition */
 
-static yy_state_type yy_get_previous_state ( void );
-static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  );
-static int yy_get_next_buffer ( void );
-static void yynoreturn yy_fatal_error ( const char* msg  );
+static yy_state_type yy_get_previous_state (void );
+static yy_state_type yy_try_NUL_trans (yy_state_type current_state  );
+static int yy_get_next_buffer (void );
+static void yy_fatal_error (yyconst char msg[]  );
 
 /* %endif */
 
@@ -444,11 +450,12 @@
 #define YY_DO_BEFORE_ACTION \
 	(yytext_ptr) = yy_bp; \
 /* %% [2.0] code to fiddle yytext and yyleng for yymore() goes here \ */\
-	yyleng = (int) (yy_cp - yy_bp); \
+	yyleng = (size_t) (yy_cp - yy_bp); \
 	(yy_hold_char) = *yy_cp; \
 	*yy_cp = '\0'; \
 /* %% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \ */\
 	(yy_c_buf_p) = yy_cp;
+
 /* %% [4.0] data tables for the DFA and the user's section 1 definitions go here */
 #define YY_NUM_RULES 128
 #define YY_END_OF_BUFFER 129
@@ -459,7 +466,7 @@
 	flex_int32_t yy_verify;
 	flex_int32_t yy_nxt;
 	};
-static const flex_int16_t yy_accept[381] =
+static yyconst flex_int16_t yy_accept[381] =
     {   0,
         0,    0,    0,    0,    0,    0,  129,  127,    6,    6,
        43,   47,   10,  127,  116,  127,    4,    4,    1,    2,
@@ -504,7 +511,7 @@
        92,  126,  126,   38,   93,  126,  119,  126,  121,    0
     } ;
 
-static const YY_CHAR yy_ec[256] =
+static yyconst flex_int32_t yy_ec[256] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
         4,    4,    2,    1,    1,    1,    1,    1,    1,    1,
@@ -536,7 +543,7 @@
        65,   65,   65,   65,   65
     } ;
 
-static const YY_CHAR yy_meta[66] =
+static yyconst flex_int32_t yy_meta[66] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    2,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -547,7 +554,7 @@
         4,    1,    1,    1,    4
     } ;
 
-static const flex_int16_t yy_base[386] =
+static yyconst flex_int16_t yy_base[386] =
     {   0,
         0,    0,   65,  130,  194,  258,  638,  639,  639,  639,
       639,  639,   74,   68,   64,   68,   77,   72,  639,  639,
@@ -593,7 +600,7 @@
       506,  510,  514,  517,   70
     } ;
 
-static const flex_int16_t yy_def[386] =
+static yyconst flex_int16_t yy_def[386] =
     {   0,
       380,    1,  381,  381,  382,  382,  380,  380,  380,  380,
       380,  380,  383,  384,  380,  380,  380,  380,  380,  380,
@@ -639,7 +646,7 @@
       380,  380,  380,  380,  380
     } ;
 
-static const flex_int16_t yy_nxt[705] =
+static yyconst flex_int16_t yy_nxt[705] =
     {   0,
         8,    9,   10,    9,    9,   11,   12,    8,   13,   14,
         8,   15,   16,   16,    8,   17,   18,   18,   19,   20,
@@ -721,7 +728,7 @@
       380,  380,  380,  380
     } ;
 
-static const flex_int16_t yy_chk[705] =
+static yyconst flex_int16_t yy_chk[705] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -804,7 +811,7 @@
     } ;
 
 /* Table of booleans, true if rule could match eol. */
-static const flex_int32_t yy_rule_can_match_eol[129] =
+static yyconst flex_int32_t yy_rule_can_match_eol[129] =
     {   0,
 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 
     1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
@@ -820,22 +827,22 @@
 extern int yy_flex_debug;
 int yy_flex_debug = 1;
 
-static const flex_int16_t yy_rule_linenum[128] =
+static yyconst flex_int16_t yy_rule_linenum[128] =
     {   0,
-      171,  172,  173,  174,  175,  176,  177,  179,  181,  183,
-      185,  186,  187,  188,  189,  194,  195,  196,  197,  198,
-      199,  200,  201,  203,  205,  207,  208,  209,  210,  212,
-      213,  214,  216,  217,  218,  220,  221,  223,  225,  226,
-      227,  229,  230,  232,  233,  234,  236,  239,  241,  242,
-      244,  245,  246,  247,  248,  249,  250,  252,  253,  255,
-      257,  258,  259,  260,  261,  262,  263,  264,  265,  268,
-      270,  271,  272,  274,  275,  276,  277,  280,  281,  282,
-      284,  285,  286,  287,  288,  289,  290,  292,  293,  294,
-      295,  297,  299,  301,  303,  305,  307,  308,  310,  312,
+      170,  171,  172,  173,  174,  175,  176,  178,  180,  182,
+      184,  185,  186,  187,  188,  193,  194,  195,  196,  197,
+      198,  199,  200,  202,  204,  206,  207,  208,  209,  211,
+      212,  213,  215,  216,  217,  219,  220,  222,  224,  225,
+      226,  228,  229,  231,  232,  233,  235,  238,  240,  241,
+      243,  244,  245,  246,  247,  248,  249,  251,  252,  254,
+      256,  257,  258,  259,  260,  261,  262,  263,  264,  267,
+      269,  270,  271,  273,  274,  275,  276,  279,  280,  281,
+      283,  284,  285,  286,  287,  288,  289,  291,  292,  293,
+      294,  296,  298,  300,  302,  304,  306,  307,  309,  311,
 
-      313,  314,  315,  317,  318,  319,  321,  322,  323,  325,
-      327,  329,  330,  331,  332,  333,  335,  337,  339,  340,
-      342,  344,  346,  348,  350,  352,  353
+      312,  313,  314,  316,  317,  318,  320,  321,  322,  324,
+      326,  328,  329,  330,  331,  332,  334,  336,  338,  339,
+      341,  343,  345,  347,  349,  351,  352
     } ;
 
 /* The intent behind this definition is that it'll catch
@@ -847,8 +854,8 @@
 #define YY_RESTORE_YY_MORE_OFFSET
 char *yytext;
 #line 1 "lexer.l"
-#line 2 "lexer.l"
-	/*519:*/
+/*519:*/
+#line 3 "lexer.l"
 	#line 10736 "format.w"
 	
 #include "hibasetypes.h"
@@ -991,21 +998,19 @@
 #pragma  warning( disable : 4267)
 #endif
 
-#line 994 "lexer.c"
 #define YY_NO_UNISTD_H 1
 #define YY_NO_INPUT 1
-#line 152 "lexer.l"
-	/*23:*/
-	/*:23*/	/*32:*/
+/*23:*/
+/*:23*/	/*32:*/
 
-	/*:32*/	/*39:*/
-	/*:39*/	/*41:*/
-	/*:41*/	/*43:*/
-	/*:43*/	/*45:*/
-	/*:45*/	/*149:*/
+/*:32*/	/*39:*/
+/*:39*/	/*41:*/
+/*:41*/	/*43:*/
+/*:43*/	/*45:*/
+/*:45*/	/*149:*/
 
-	/*:149*/
-#line 1008 "lexer.c"
+/*:149*/
+#line 1014 "lexer.c"
 
 #define INITIAL 0
 #define STR 1
@@ -1031,7 +1036,7 @@
 /* %if-reentrant */
 /* %if-c-only */
 
-static int yy_init_globals ( void );
+static int yy_init_globals (void );
 
 /* %endif */
 /* %if-reentrant */
@@ -1041,31 +1046,31 @@
 /* Accessor methods to globals.
    These are made visible to non-reentrant scanners for convenience. */
 
-int yylex_destroy ( void );
+int yylex_destroy (void );
 
-int yyget_debug ( void );
+int yyget_debug (void );
 
-void yyset_debug ( int debug_flag  );
+void yyset_debug (int debug_flag  );
 
-YY_EXTRA_TYPE yyget_extra ( void );
+YY_EXTRA_TYPE yyget_extra (void );
 
-void yyset_extra ( YY_EXTRA_TYPE user_defined  );
+void yyset_extra (YY_EXTRA_TYPE user_defined  );
 
-FILE *yyget_in ( void );
+FILE *yyget_in (void );
 
-void yyset_in  ( FILE * _in_str  );
+void yyset_in  (FILE * in_str  );
 
-FILE *yyget_out ( void );
+FILE *yyget_out (void );
 
-void yyset_out  ( FILE * _out_str  );
+void yyset_out  (FILE * out_str  );
 
-			int yyget_leng ( void );
+yy_size_t yyget_leng (void );
 
-char *yyget_text ( void );
+char *yyget_text (void );
 
-int yyget_lineno ( void );
+int yyget_lineno (void );
 
-void yyset_lineno ( int _line_number  );
+void yyset_lineno (int line_number  );
 
 /* %if-bison-bridge */
 /* %endif */
@@ -1076,35 +1081,34 @@
 
 #ifndef YY_SKIP_YYWRAP
 #ifdef __cplusplus
-extern "C" int yywrap ( void );
+extern "C" int yywrap (void );
 #else
-extern int yywrap ( void );
+extern int yywrap (void );
 #endif
 #endif
 
 /* %not-for-header */
-#ifndef YY_NO_UNPUT
-    
-#endif
+
 /* %ok-for-header */
 
 /* %endif */
 
 #ifndef yytext_ptr
-static void yy_flex_strncpy ( char *, const char *, int );
+static void yy_flex_strncpy (char *,yyconst char *,int );
 #endif
 
 #ifdef YY_NEED_STRLEN
-static int yy_flex_strlen ( const char * );
+static int yy_flex_strlen (yyconst char * );
 #endif
 
 #ifndef YY_NO_INPUT
 /* %if-c-only Standard (non-C++) definition */
 /* %not-for-header */
+
 #ifdef __cplusplus
-static int yyinput ( void );
+static int yyinput (void );
 #else
-static int input ( void );
+static int input (void );
 #endif
 /* %ok-for-header */
 
@@ -1117,20 +1121,15 @@
         static int yy_start_stack_depth = 0;
         static int *yy_start_stack = NULL;
     
-    static void yy_push_state ( int _new_state );
+    static void yy_push_state (int new_state );
     
-    static void yy_pop_state ( void );
+    static void yy_pop_state (void );
     
 /* %endif */
 
 /* Amount of stuff to slurp up with each read. */
 #ifndef YY_READ_BUF_SIZE
-#ifdef __ia64__
-/* On IA-64, the buffer size is 16k, not 8k */
-#define YY_READ_BUF_SIZE 16384
-#else
 #define YY_READ_BUF_SIZE 8192
-#endif /* __ia64__ */
 #endif
 
 /* Copy whatever the last rule matched to the standard output. */
@@ -1139,7 +1138,7 @@
 /* This used to be an fputs(), but since the string might contain NUL's,
  * we now use fwrite().
  */
-#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
+#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
 /* %endif */
 /* %if-c++-only C++ definition */
 /* %endif */
@@ -1154,7 +1153,7 @@
 	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
 		{ \
 		int c = '*'; \
-		int n; \
+		size_t n; \
 		for ( n = 0; n < max_size && \
 			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
 			buf[n] = (char) c; \
@@ -1167,7 +1166,7 @@
 	else \
 		{ \
 		errno=0; \
-		while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
+		while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
 			{ \
 			if( errno != EINTR) \
 				{ \
@@ -1208,9 +1207,11 @@
 
 /* %if-tables-serialization structures and prototypes */
 /* %not-for-header */
+
 /* %ok-for-header */
 
 /* %not-for-header */
+
 /* %tables-yydmap generated elements */
 /* %endif */
 /* end tables serialization structures and prototypes */
@@ -1241,7 +1242,7 @@
 
 /* Code executed at the end of each rule. */
 #ifndef YY_BREAK
-#define YY_BREAK /*LINTED*/break;
+#define YY_BREAK break;
 #endif
 
 /* %% [6.0] YY_RULE_SETUP definition goes here */
@@ -1249,14 +1250,22 @@
 	YY_USER_ACTION
 
 /* %not-for-header */
+
 /** The main scanner function which does all the work.
  */
 YY_DECL
 {
-	yy_state_type yy_current_state;
-	char *yy_cp, *yy_bp;
-	int yy_act;
+	register yy_state_type yy_current_state;
+	register char *yy_cp, *yy_bp;
+	register int yy_act;
     
+/* %% [7.0] user's declarations go here */
+#line 167 "lexer.l"
+
+
+	/*3:*/
+#line 1268 "lexer.c"
+
 	if ( !(yy_init) )
 		{
 		(yy_init) = 1;
@@ -1285,21 +1294,13 @@
 		if ( ! YY_CURRENT_BUFFER ) {
 			yyensure_buffer_stack ();
 			YY_CURRENT_BUFFER_LVALUE =
-				yy_create_buffer( yyin, YY_BUF_SIZE );
+				yy_create_buffer(yyin,YY_BUF_SIZE );
 		}
 
-		yy_load_buffer_state(  );
+		yy_load_buffer_state( );
 		}
 
-	{
-/* %% [7.0] user's declarations go here */
-#line 168 "lexer.l"
-
-
-	/*3:*/
-#line 1300 "lexer.c"
-
-	while ( /*CONSTCOND*/1 )		/* loops until end-of-file is reached */
+	while ( 1 )		/* loops until end-of-file is reached */
 		{
 /* %% [8.0] yymore()-related code goes here */
 		yy_cp = (yy_c_buf_p);
@@ -1317,7 +1318,7 @@
 yy_match:
 		do
 			{
-			YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
+			register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
 			if ( yy_accept[yy_current_state] )
 				{
 				(yy_last_accepting_state) = yy_current_state;
@@ -1327,9 +1328,9 @@
 				{
 				yy_current_state = (int) yy_def[yy_current_state];
 				if ( yy_current_state >= 381 )
-					yy_c = yy_meta[yy_c];
+					yy_c = yy_meta[(unsigned int) yy_c];
 				}
-			yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
+			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 			++yy_cp;
 			}
 		while ( yy_current_state != 380 );
@@ -1349,7 +1350,7 @@
 			int yyl;
 			for ( yyl = 0; yyl < yyleng; ++yyl )
 				if ( yytext[yyl] == '\n' )
-					
+					   
     yylineno++;
 ;
 			}
@@ -1385,84 +1386,84 @@
 
 case 1:
 YY_RULE_SETUP
-#line 171 "lexer.l"
+#line 170 "lexer.l"
 SCAN_START;return START;
 	YY_BREAK
 case 2:
 YY_RULE_SETUP
-#line 172 "lexer.l"
+#line 171 "lexer.l"
 SCAN_END;return END;
 	YY_BREAK
 case 3:
 YY_RULE_SETUP
-#line 173 "lexer.l"
+#line 172 "lexer.l"
 return GLYPH;
 	YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 174 "lexer.l"
+#line 173 "lexer.l"
 SCAN_UDEC(yytext);return UNSIGNED;
 	YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 175 "lexer.l"
+#line 174 "lexer.l"
 SCAN_UDEC(yytext+1);return REFERENCE;
 	YY_BREAK
 case 6:
 /* rule 6 can match eol */
 YY_RULE_SETUP
-#line 176 "lexer.l"
+#line 175 "lexer.l"
 ;
 	YY_BREAK
 case 7:
 /* rule 7 can match eol */
 YY_RULE_SETUP
-#line 177 "lexer.l"
+#line 176 "lexer.l"
 ;
 	YY_BREAK
 /*:3*/	/*24:*/
 case 8:
 YY_RULE_SETUP
-#line 179 "lexer.l"
+#line 178 "lexer.l"
 SCAN_HEX(yytext+2);return UNSIGNED;
 	YY_BREAK
 /*:24*/	/*27:*/
 case 9:
 YY_RULE_SETUP
-#line 181 "lexer.l"
+#line 180 "lexer.l"
 SCAN_DEC(yytext);return SIGNED;
 	YY_BREAK
 /*:27*/	/*34:*/
 case 10:
 YY_RULE_SETUP
-#line 183 "lexer.l"
+#line 182 "lexer.l"
 STR_START;BEGIN(STR);
 	YY_BREAK
 
 case 11:
 YY_RULE_SETUP
-#line 185 "lexer.l"
+#line 184 "lexer.l"
 STR_END;SCAN_STR;BEGIN(INITIAL);return STRING;
 	YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 186 "lexer.l"
+#line 185 "lexer.l"
 STR_ADD('\'');
 	YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 187 "lexer.l"
+#line 186 "lexer.l"
 STR_ADD(yytext[0]);
 	YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 188 "lexer.l"
+#line 187 "lexer.l"
 RNG("String character",yytext[0],0x20,0x7E);
 	YY_BREAK
 case 15:
 /* rule 15 can match eol */
 YY_RULE_SETUP
-#line 189 "lexer.l"
+#line 188 "lexer.l"
 QUIT("Unterminated String in line %d",yylineno);
 	YY_BREAK
 
@@ -1469,328 +1470,328 @@
 /*:34*/	/*48:*/
 case 16:
 YY_RULE_SETUP
-#line 194 "lexer.l"
+#line 193 "lexer.l"
 STR_START;STR_PUT('\'');BEGIN(STR);
 	YY_BREAK
 case 17:
 YY_RULE_SETUP
-#line 195 "lexer.l"
+#line 194 "lexer.l"
 SCAN_UTF8_1(yytext+1);return CHARCODE;
 	YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 196 "lexer.l"
+#line 195 "lexer.l"
 STR_START;STR_PUT(yytext[1]);STR_PUT('\'');BEGIN(STR);
 	YY_BREAK
 case 19:
 YY_RULE_SETUP
-#line 197 "lexer.l"
+#line 196 "lexer.l"
 STR_START;STR_PUT('\'');STR_PUT('\'');BEGIN(STR);
 	YY_BREAK
 case 20:
 /* rule 20 can match eol */
 YY_RULE_SETUP
-#line 198 "lexer.l"
+#line 197 "lexer.l"
 SCAN_UTF8_1(yytext+1);return CHARCODE;
 	YY_BREAK
 case 21:
 YY_RULE_SETUP
-#line 199 "lexer.l"
+#line 198 "lexer.l"
 SCAN_UTF8_2(yytext+1);return CHARCODE;
 	YY_BREAK
 case 22:
 YY_RULE_SETUP
-#line 200 "lexer.l"
+#line 199 "lexer.l"
 SCAN_UTF8_3(yytext+1);return CHARCODE;
 	YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 201 "lexer.l"
+#line 200 "lexer.l"
 SCAN_UTF8_4(yytext+1);return CHARCODE;
 	YY_BREAK
 /*:48*/	/*55:*/
 case 24:
 YY_RULE_SETUP
-#line 203 "lexer.l"
+#line 202 "lexer.l"
 SCAN_DECFLOAT;return FPNUM;
 	YY_BREAK
 /*:55*/	/*59:*/
 case 25:
 YY_RULE_SETUP
-#line 205 "lexer.l"
+#line 204 "lexer.l"
 SCAN_HEXFLOAT;return FPNUM;
 	YY_BREAK
 /*:59*/	/*80:*/
 case 26:
 YY_RULE_SETUP
-#line 207 "lexer.l"
+#line 206 "lexer.l"
 return DIMEN;
 	YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 208 "lexer.l"
+#line 207 "lexer.l"
 return PT;
 	YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 209 "lexer.l"
+#line 208 "lexer.l"
 return MM;
 	YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 210 "lexer.l"
+#line 209 "lexer.l"
 return INCH;
 	YY_BREAK
 /*:80*/	/*88:*/
 case 30:
 YY_RULE_SETUP
-#line 212 "lexer.l"
+#line 211 "lexer.l"
 return XDIMEN;
 	YY_BREAK
 case 31:
 YY_RULE_SETUP
-#line 213 "lexer.l"
+#line 212 "lexer.l"
 return H;
 	YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 214 "lexer.l"
+#line 213 "lexer.l"
 return V;
 	YY_BREAK
 /*:88*/	/*99:*/
 case 33:
 YY_RULE_SETUP
-#line 216 "lexer.l"
+#line 215 "lexer.l"
 return FIL;
 	YY_BREAK
 case 34:
 YY_RULE_SETUP
-#line 217 "lexer.l"
+#line 216 "lexer.l"
 return FILL;
 	YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 218 "lexer.l"
+#line 217 "lexer.l"
 return FILLL;
 	YY_BREAK
 /*:99*/	/*103:*/
 case 36:
 YY_RULE_SETUP
-#line 220 "lexer.l"
+#line 219 "lexer.l"
 return PENALTY;
 	YY_BREAK
 case 37:
 YY_RULE_SETUP
-#line 221 "lexer.l"
+#line 220 "lexer.l"
 return INTEGER;
 	YY_BREAK
 /*:103*/	/*109:*/
 case 38:
 YY_RULE_SETUP
-#line 223 "lexer.l"
+#line 222 "lexer.l"
 return LANGUAGE;
 	YY_BREAK
 /*:109*/	/*115:*/
 case 39:
 YY_RULE_SETUP
-#line 225 "lexer.l"
+#line 224 "lexer.l"
 return RULE;
 	YY_BREAK
 case 40:
 YY_RULE_SETUP
-#line 226 "lexer.l"
+#line 225 "lexer.l"
 return RUNNING;
 	YY_BREAK
 case 41:
 YY_RULE_SETUP
-#line 227 "lexer.l"
+#line 226 "lexer.l"
 return RUNNING;
 	YY_BREAK
 /*:115*/	/*124:*/
 case 42:
 YY_RULE_SETUP
-#line 229 "lexer.l"
+#line 228 "lexer.l"
 return KERN;
 	YY_BREAK
 case 43:
 YY_RULE_SETUP
-#line 230 "lexer.l"
+#line 229 "lexer.l"
 return EXPLICIT;
 	YY_BREAK
 /*:124*/	/*133:*/
 case 44:
 YY_RULE_SETUP
-#line 232 "lexer.l"
+#line 231 "lexer.l"
 return GLUE;
 	YY_BREAK
 case 45:
 YY_RULE_SETUP
-#line 233 "lexer.l"
+#line 232 "lexer.l"
 return PLUS;
 	YY_BREAK
 case 46:
 YY_RULE_SETUP
-#line 234 "lexer.l"
+#line 233 "lexer.l"
 return MINUS;
 	YY_BREAK
 /*:133*/	/*151:*/
 case 47:
 YY_RULE_SETUP
-#line 236 "lexer.l"
+#line 235 "lexer.l"
 SCAN_TXT_START;return TXT_START;
 	YY_BREAK
 
 case 48:
 YY_RULE_SETUP
-#line 239 "lexer.l"
+#line 238 "lexer.l"
 SCAN_TXT_END;return TXT_END;
 	YY_BREAK
 case 49:
 YY_RULE_SETUP
-#line 241 "lexer.l"
+#line 240 "lexer.l"
 SCAN_START;return START;
 	YY_BREAK
 case 50:
 YY_RULE_SETUP
-#line 242 "lexer.l"
+#line 241 "lexer.l"
 QUIT("> not allowed in text mode");
 	YY_BREAK
 case 51:
 YY_RULE_SETUP
-#line 244 "lexer.l"
+#line 243 "lexer.l"
 yylval.u= '\\';return TXT_CC;
 	YY_BREAK
 case 52:
 YY_RULE_SETUP
-#line 245 "lexer.l"
+#line 244 "lexer.l"
 yylval.u= '"';return TXT_CC;
 	YY_BREAK
 case 53:
 YY_RULE_SETUP
-#line 246 "lexer.l"
+#line 245 "lexer.l"
 yylval.u= '<';return TXT_CC;
 	YY_BREAK
 case 54:
 YY_RULE_SETUP
-#line 247 "lexer.l"
+#line 246 "lexer.l"
 yylval.u= '>';return TXT_CC;
 	YY_BREAK
 case 55:
 YY_RULE_SETUP
-#line 248 "lexer.l"
+#line 247 "lexer.l"
 yylval.u= ' ';return TXT_CC;
 	YY_BREAK
 case 56:
 YY_RULE_SETUP
-#line 249 "lexer.l"
+#line 248 "lexer.l"
 yylval.u= '-';return TXT_CC;
 	YY_BREAK
 case 57:
 YY_RULE_SETUP
-#line 250 "lexer.l"
+#line 249 "lexer.l"
 return TXT_IGNORE;
 	YY_BREAK
 case 58:
 /* rule 58 can match eol */
 YY_RULE_SETUP
-#line 252 "lexer.l"
+#line 251 "lexer.l"
 return TXT_FONT_GLUE;
 	YY_BREAK
 case 59:
 /* rule 59 can match eol */
 YY_RULE_SETUP
-#line 253 "lexer.l"
+#line 252 "lexer.l"
 ;
 	YY_BREAK
 case 60:
 YY_RULE_SETUP
-#line 255 "lexer.l"
+#line 254 "lexer.l"
 yylval.u= yytext[1]-'0';return TXT_FONT;
 	YY_BREAK
 case 61:
 YY_RULE_SETUP
-#line 257 "lexer.l"
+#line 256 "lexer.l"
 SCAN_REF(font_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 62:
 YY_RULE_SETUP
-#line 258 "lexer.l"
+#line 257 "lexer.l"
 SCAN_REF(penalty_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 63:
 YY_RULE_SETUP
-#line 259 "lexer.l"
+#line 258 "lexer.l"
 SCAN_REF(kern_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 64:
 YY_RULE_SETUP
-#line 260 "lexer.l"
+#line 259 "lexer.l"
 SCAN_REF(ligature_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 65:
 YY_RULE_SETUP
-#line 261 "lexer.l"
+#line 260 "lexer.l"
 SCAN_REF(disc_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 66:
 YY_RULE_SETUP
-#line 262 "lexer.l"
+#line 261 "lexer.l"
 SCAN_REF(glue_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 67:
 YY_RULE_SETUP
-#line 263 "lexer.l"
+#line 262 "lexer.l"
 SCAN_REF(language_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 68:
 YY_RULE_SETUP
-#line 264 "lexer.l"
+#line 263 "lexer.l"
 SCAN_REF(rule_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 69:
 YY_RULE_SETUP
-#line 265 "lexer.l"
+#line 264 "lexer.l"
 SCAN_REF(image_kind);return TXT_GLOBAL;
 	YY_BREAK
 case 70:
 YY_RULE_SETUP
-#line 268 "lexer.l"
+#line 267 "lexer.l"
 SCAN_UDEC(yytext+2);return TXT_CC;
 	YY_BREAK
 case 71:
 YY_RULE_SETUP
-#line 270 "lexer.l"
+#line 269 "lexer.l"
 yylval.u= yytext[1]-'a';return TXT_LOCAL;
 	YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 271 "lexer.l"
+#line 270 "lexer.l"
 return TXT_FONT_GLUE;
 	YY_BREAK
 case 73:
 YY_RULE_SETUP
-#line 272 "lexer.l"
+#line 271 "lexer.l"
 return TXT_FONT_HYPHEN;
 	YY_BREAK
 case 74:
 /* rule 74 can match eol */
 YY_RULE_SETUP
-#line 274 "lexer.l"
+#line 273 "lexer.l"
 SCAN_UTF8_1(yytext);return TXT_CC;
 	YY_BREAK
 case 75:
 YY_RULE_SETUP
-#line 275 "lexer.l"
+#line 274 "lexer.l"
 SCAN_UTF8_2(yytext);return TXT_CC;
 	YY_BREAK
 case 76:
 YY_RULE_SETUP
-#line 276 "lexer.l"
+#line 275 "lexer.l"
 SCAN_UTF8_3(yytext);return TXT_CC;
 	YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 277 "lexer.l"
+#line 276 "lexer.l"
 SCAN_UTF8_4(yytext);return TXT_CC;
 	YY_BREAK
 
@@ -1797,284 +1798,284 @@
 /*:151*/	/*162:*/
 case 78:
 YY_RULE_SETUP
-#line 280 "lexer.l"
+#line 279 "lexer.l"
 return HBOX;
 	YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 281 "lexer.l"
+#line 280 "lexer.l"
 return VBOX;
 	YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 282 "lexer.l"
+#line 281 "lexer.l"
 return SHIFTED;
 	YY_BREAK
 /*:162*/	/*170:*/
 case 81:
 YY_RULE_SETUP
-#line 284 "lexer.l"
+#line 283 "lexer.l"
 return HPACK;
 	YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 285 "lexer.l"
+#line 284 "lexer.l"
 return HSET;
 	YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 286 "lexer.l"
+#line 285 "lexer.l"
 return VPACK;
 	YY_BREAK
 case 84:
 YY_RULE_SETUP
-#line 287 "lexer.l"
+#line 286 "lexer.l"
 return VSET;
 	YY_BREAK
 case 85:
 YY_RULE_SETUP
-#line 288 "lexer.l"
+#line 287 "lexer.l"
 return ADD;
 	YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 289 "lexer.l"
+#line 288 "lexer.l"
 return TO;
 	YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 290 "lexer.l"
+#line 289 "lexer.l"
 return DEPTH;
 	YY_BREAK
 /*:170*/	/*175:*/
 case 88:
 YY_RULE_SETUP
-#line 292 "lexer.l"
+#line 291 "lexer.l"
 return LEADERS;
 	YY_BREAK
 case 89:
 YY_RULE_SETUP
-#line 293 "lexer.l"
+#line 292 "lexer.l"
 return ALIGN;
 	YY_BREAK
 case 90:
 YY_RULE_SETUP
-#line 294 "lexer.l"
+#line 293 "lexer.l"
 return CENTER;
 	YY_BREAK
 case 91:
 YY_RULE_SETUP
-#line 295 "lexer.l"
+#line 294 "lexer.l"
 return EXPAND;
 	YY_BREAK
 /*:175*/	/*182:*/
 case 92:
 YY_RULE_SETUP
-#line 297 "lexer.l"
+#line 296 "lexer.l"
 return BASELINE;
 	YY_BREAK
 /*:182*/	/*189:*/
 case 93:
 YY_RULE_SETUP
-#line 299 "lexer.l"
+#line 298 "lexer.l"
 return LIGATURE;
 	YY_BREAK
 /*:189*/	/*197:*/
 case 94:
 YY_RULE_SETUP
-#line 301 "lexer.l"
+#line 300 "lexer.l"
 return DISC;
 	YY_BREAK
 /*:197*/	/*205:*/
 case 95:
 YY_RULE_SETUP
-#line 303 "lexer.l"
+#line 302 "lexer.l"
 return PAR;
 	YY_BREAK
 /*:205*/	/*210:*/
 case 96:
 YY_RULE_SETUP
-#line 305 "lexer.l"
+#line 304 "lexer.l"
 return MATH;
 	YY_BREAK
 /*:210*/	/*215:*/
 case 97:
 YY_RULE_SETUP
-#line 307 "lexer.l"
+#line 306 "lexer.l"
 return ON;
 	YY_BREAK
 case 98:
 YY_RULE_SETUP
-#line 308 "lexer.l"
+#line 307 "lexer.l"
 return OFF;
 	YY_BREAK
 /*:215*/	/*219:*/
 case 99:
 YY_RULE_SETUP
-#line 310 "lexer.l"
+#line 309 "lexer.l"
 return ADJUST;
 	YY_BREAK
 /*:219*/	/*223:*/
 case 100:
 YY_RULE_SETUP
-#line 312 "lexer.l"
+#line 311 "lexer.l"
 return TABLE;
 	YY_BREAK
 case 101:
 YY_RULE_SETUP
-#line 313 "lexer.l"
+#line 312 "lexer.l"
 return ITEM;
 	YY_BREAK
 case 102:
 YY_RULE_SETUP
-#line 314 "lexer.l"
+#line 313 "lexer.l"
 return ITEM;
 	YY_BREAK
 case 103:
 YY_RULE_SETUP
-#line 315 "lexer.l"
+#line 314 "lexer.l"
 return ITEM;
 	YY_BREAK
 /*:223*/	/*230:*/
 case 104:
 YY_RULE_SETUP
-#line 317 "lexer.l"
+#line 316 "lexer.l"
 return IMAGE;
 	YY_BREAK
 case 105:
 YY_RULE_SETUP
-#line 318 "lexer.l"
+#line 317 "lexer.l"
 return WIDTH;
 	YY_BREAK
 case 106:
 YY_RULE_SETUP
-#line 319 "lexer.l"
+#line 318 "lexer.l"
 return HEIGHT;
 	YY_BREAK
 /*:230*/	/*255:*/
 case 107:
 YY_RULE_SETUP
-#line 321 "lexer.l"
+#line 320 "lexer.l"
 return LABEL;
 	YY_BREAK
 case 108:
 YY_RULE_SETUP
-#line 322 "lexer.l"
+#line 321 "lexer.l"
 return BOT;
 	YY_BREAK
 case 109:
 YY_RULE_SETUP
-#line 323 "lexer.l"
+#line 322 "lexer.l"
 return MID;
 	YY_BREAK
 /*:255*/	/*269:*/
 case 110:
 YY_RULE_SETUP
-#line 325 "lexer.l"
+#line 324 "lexer.l"
 return LINK;
 	YY_BREAK
 /*:269*/	/*279:*/
 case 111:
 YY_RULE_SETUP
-#line 327 "lexer.l"
+#line 326 "lexer.l"
 return OUTLINE;
 	YY_BREAK
 /*:279*/	/*286:*/
 case 112:
 YY_RULE_SETUP
-#line 329 "lexer.l"
+#line 328 "lexer.l"
 if(section_no==1)return STREAMDEF;else return STREAM;
 	YY_BREAK
 case 113:
 YY_RULE_SETUP
-#line 330 "lexer.l"
+#line 329 "lexer.l"
 return FIRST;
 	YY_BREAK
 case 114:
 YY_RULE_SETUP
-#line 331 "lexer.l"
+#line 330 "lexer.l"
 return LAST;
 	YY_BREAK
 case 115:
 YY_RULE_SETUP
-#line 332 "lexer.l"
+#line 331 "lexer.l"
 return TOP;
 	YY_BREAK
 case 116:
 YY_RULE_SETUP
-#line 333 "lexer.l"
+#line 332 "lexer.l"
 return NOREFERENCE;
 	YY_BREAK
 /*:286*/	/*296:*/
 case 117:
 YY_RULE_SETUP
-#line 335 "lexer.l"
+#line 334 "lexer.l"
 return PAGE;
 	YY_BREAK
 /*:296*/	/*304:*/
 case 118:
 YY_RULE_SETUP
-#line 337 "lexer.l"
+#line 336 "lexer.l"
 return RANGE;
 	YY_BREAK
 /*:304*/	/*331:*/
 case 119:
 YY_RULE_SETUP
-#line 339 "lexer.l"
+#line 338 "lexer.l"
 return DIRECTORY;
 	YY_BREAK
 case 120:
 YY_RULE_SETUP
-#line 340 "lexer.l"
+#line 339 "lexer.l"
 return SECTION;
 	YY_BREAK
 /*:331*/	/*352:*/
 case 121:
 YY_RULE_SETUP
-#line 342 "lexer.l"
+#line 341 "lexer.l"
 return DEFINITIONS;
 	YY_BREAK
 /*:352*/	/*360:*/
 case 122:
 YY_RULE_SETUP
-#line 344 "lexer.l"
+#line 343 "lexer.l"
 return MAX;
 	YY_BREAK
 /*:360*/	/*375:*/
 case 123:
 YY_RULE_SETUP
-#line 346 "lexer.l"
+#line 345 "lexer.l"
 return PARAM;
 	YY_BREAK
 /*:375*/	/*384:*/
 case 124:
 YY_RULE_SETUP
-#line 348 "lexer.l"
+#line 347 "lexer.l"
 return FONT;
 	YY_BREAK
 /*:384*/	/*412:*/
 case 125:
 YY_RULE_SETUP
-#line 350 "lexer.l"
+#line 349 "lexer.l"
 return CONTENT;
 	YY_BREAK
 /*:412*/
 case 126:
 YY_RULE_SETUP
-#line 352 "lexer.l"
+#line 351 "lexer.l"
 QUIT("Unexpected keyword '%s' in line %d",yytext,yylineno);
 	YY_BREAK
 case 127:
 YY_RULE_SETUP
-#line 353 "lexer.l"
+#line 352 "lexer.l"
 QUIT("Unexpected character '%c' (0x%02X) in line %d",yytext[0]>' '?yytext[0]:' ',yytext[0],yylineno);
 	YY_BREAK
 case 128:
 YY_RULE_SETUP
-#line 355 "lexer.l"
+#line 354 "lexer.l"
 ECHO;
 	YY_BREAK
-#line 2077 "lexer.c"
+#line 2079 "lexer.c"
 case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(STR):
 case YY_STATE_EOF(TXT):
@@ -2101,11 +2102,7 @@
 			 * back-up) that will match for the new input source.
 			 */
 			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
-/* %if-c-only */
 			YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
-/* %endif */
-/* %if-c++-only */
-/* %endif */
 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
 			}
 
@@ -2160,7 +2157,7 @@
 				{
 				(yy_did_buffer_switch_on_eof) = 0;
 
-				if ( yywrap(  ) )
+				if ( yywrap( ) )
 					{
 					/* Note: because we've taken care in
 					 * yy_get_next_buffer() to have set up
@@ -2213,12 +2210,12 @@
 			"fatal flex scanner internal error--no action found" );
 	} /* end of action switch */
 		} /* end of scanning one token */
-	} /* end of user's declarations */
 } /* end of yylex */
 /* %ok-for-header */
 
 /* %if-c++-only */
 /* %not-for-header */
+
 /* %ok-for-header */
 
 /* %endif */
@@ -2236,9 +2233,9 @@
 /* %if-c++-only */
 /* %endif */
 {
-    	char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
-	char *source = (yytext_ptr);
-	int number_to_move, i;
+    	register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
+	register char *source = (yytext_ptr);
+	register int number_to_move, i;
 	int ret_val;
 
 	if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
@@ -2267,7 +2264,7 @@
 	/* Try to read more data. */
 
 	/* First move last chars to start of buffer. */
-	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
+	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
 
 	for ( i = 0; i < number_to_move; ++i )
 		*(dest++) = *(source++);
@@ -2280,7 +2277,7 @@
 
 	else
 		{
-			int num_to_read =
+			yy_size_t num_to_read =
 			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
 
 		while ( num_to_read <= 0 )
@@ -2294,7 +2291,7 @@
 
 			if ( b->yy_is_our_buffer )
 				{
-				int new_size = b->yy_buf_size * 2;
+				yy_size_t new_size = b->yy_buf_size * 2;
 
 				if ( new_size <= 0 )
 					b->yy_buf_size += b->yy_buf_size / 8;
@@ -2303,12 +2300,11 @@
 
 				b->yy_ch_buf = (char *)
 					/* Include room in for 2 EOB chars. */
-					yyrealloc( (void *) b->yy_ch_buf,
-							 (yy_size_t) (b->yy_buf_size + 2)  );
+					yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  );
 				}
 			else
 				/* Can't grow it, we don't own it. */
-				b->yy_ch_buf = NULL;
+				b->yy_ch_buf = 0;
 
 			if ( ! b->yy_ch_buf )
 				YY_FATAL_ERROR(
@@ -2336,7 +2332,7 @@
 		if ( number_to_move == YY_MORE_ADJ )
 			{
 			ret_val = EOB_ACT_END_OF_FILE;
-			yyrestart( yyin  );
+			yyrestart(yyin  );
 			}
 
 		else
@@ -2350,15 +2346,12 @@
 	else
 		ret_val = EOB_ACT_CONTINUE_SCAN;
 
-	if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
+	if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
 		/* Extend the array by 50%, plus the number we really need. */
-		int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
-		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
-			(void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size  );
+		yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
+		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size  );
 		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
 			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
-		/* "- 2" to take care of EOB's */
-		YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
 	}
 
 	(yy_n_chars) += number_to_move;
@@ -2374,13 +2367,14 @@
 
 /* %if-c-only */
 /* %not-for-header */
+
     static yy_state_type yy_get_previous_state (void)
 /* %endif */
 /* %if-c++-only */
 /* %endif */
 {
-	yy_state_type yy_current_state;
-	char *yy_cp;
+	register yy_state_type yy_current_state;
+	register char *yy_cp;
     
 /* %% [15.0] code to get the start state into yy_current_state goes here */
 	yy_current_state = (yy_start);
@@ -2388,7 +2382,7 @@
 	for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
 		{
 /* %% [16.0] code to find the next state goes here */
-		YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
+		register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
 		if ( yy_accept[yy_current_state] )
 			{
 			(yy_last_accepting_state) = yy_current_state;
@@ -2398,9 +2392,9 @@
 			{
 			yy_current_state = (int) yy_def[yy_current_state];
 			if ( yy_current_state >= 381 )
-				yy_c = yy_meta[yy_c];
+				yy_c = yy_meta[(unsigned int) yy_c];
 			}
-		yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
+		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 		}
 
 	return yy_current_state;
@@ -2417,11 +2411,11 @@
 /* %if-c++-only */
 /* %endif */
 {
-	int yy_is_jam;
+	register int yy_is_jam;
     /* %% [17.0] code to find the next state, and perhaps do backing up, goes here */
-	char *yy_cp = (yy_c_buf_p);
+	register char *yy_cp = (yy_c_buf_p);
 
-	YY_CHAR yy_c = 1;
+	register YY_CHAR yy_c = 1;
 	if ( yy_accept[yy_current_state] )
 		{
 		(yy_last_accepting_state) = yy_current_state;
@@ -2431,19 +2425,17 @@
 		{
 		yy_current_state = (int) yy_def[yy_current_state];
 		if ( yy_current_state >= 381 )
-			yy_c = yy_meta[yy_c];
+			yy_c = yy_meta[(unsigned int) yy_c];
 		}
-	yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
+	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 	yy_is_jam = (yy_current_state == 380);
 
 		return yy_is_jam ? 0 : yy_current_state;
 }
 
-#ifndef YY_NO_UNPUT
 /* %if-c-only */
 
 /* %endif */
-#endif
 
 /* %if-c-only */
 #ifndef YY_NO_INPUT
@@ -2473,7 +2465,7 @@
 
 		else
 			{ /* need more input */
-			int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
+			yy_size_t offset = (yy_c_buf_p) - (yytext_ptr);
 			++(yy_c_buf_p);
 
 			switch ( yy_get_next_buffer(  ) )
@@ -2490,14 +2482,14 @@
 					 */
 
 					/* Reset buffer status. */
-					yyrestart( yyin );
+					yyrestart(yyin );
 
 					/*FALLTHROUGH*/
 
 				case EOB_ACT_END_OF_FILE:
 					{
-					if ( yywrap(  ) )
-						return 0;
+					if ( yywrap( ) )
+						return EOF;
 
 					if ( ! (yy_did_buffer_switch_on_eof) )
 						YY_NEW_FILE;
@@ -2521,7 +2513,7 @@
 
 /* %% [19.0] update BOL and yylineno */
 	if ( c == '\n' )
-		
+		   
     yylineno++;
 ;
 
@@ -2546,16 +2538,13 @@
 	if ( ! YY_CURRENT_BUFFER ){
         yyensure_buffer_stack ();
 		YY_CURRENT_BUFFER_LVALUE =
-            yy_create_buffer( yyin, YY_BUF_SIZE );
+            yy_create_buffer(yyin,YY_BUF_SIZE );
 	}
 
-	yy_init_buffer( YY_CURRENT_BUFFER, input_file );
-	yy_load_buffer_state(  );
+	yy_init_buffer(YY_CURRENT_BUFFER,input_file );
+	yy_load_buffer_state( );
 }
 
-/* %if-c++-only */
-/* %endif */
-
 /** Switch to a different input buffer.
  * @param new_buffer The new input buffer.
  * 
@@ -2585,7 +2574,7 @@
 		}
 
 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
-	yy_load_buffer_state(  );
+	yy_load_buffer_state( );
 
 	/* We don't actually know whether we did this switch during
 	 * EOF (yywrap()) processing, but the only time this flag
@@ -2603,11 +2592,7 @@
 {
     	(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
 	(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
-/* %if-c-only */
 	yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
-/* %endif */
-/* %if-c++-only */
-/* %endif */
 	(yy_hold_char) = *(yy_c_buf_p);
 }
 
@@ -2625,7 +2610,7 @@
 {
 	YY_BUFFER_STATE b;
     
-	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
+	b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state )  );
 	if ( ! b )
 		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
@@ -2634,20 +2619,17 @@
 	/* yy_ch_buf has to be 2 characters longer than the size given because
 	 * we need to put in 2 end-of-buffer characters.
 	 */
-	b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2)  );
+	b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2  );
 	if ( ! b->yy_ch_buf )
 		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
 
 	b->yy_is_our_buffer = 1;
 
-	yy_init_buffer( b, file );
+	yy_init_buffer(b,file );
 
 	return b;
 }
 
-/* %if-c++-only */
-/* %endif */
-
 /** Destroy the buffer.
  * @param b a buffer created with yy_create_buffer()
  * 
@@ -2666,9 +2648,9 @@
 		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
 
 	if ( b->yy_is_our_buffer )
-		yyfree( (void *) b->yy_ch_buf  );
+		yyfree((void *) b->yy_ch_buf  );
 
-	yyfree( (void *) b  );
+	yyfree((void *) b  );
 }
 
 /* Initializes or reinitializes a buffer.
@@ -2684,13 +2666,9 @@
 {
 	int oerrno = errno;
     
-	yy_flush_buffer( b );
+	yy_flush_buffer(b );
 
-/* %if-c-only */
 	b->yy_input_file = file;
-/* %endif */
-/* %if-c++-only */
-/* %endif */
 	b->yy_fill_buffer = 1;
 
     /* If b is the current buffer, then yy_init_buffer was _probably_
@@ -2740,7 +2718,7 @@
 	b->yy_buffer_status = YY_BUFFER_NEW;
 
 	if ( b == YY_CURRENT_BUFFER )
-		yy_load_buffer_state(  );
+		yy_load_buffer_state( );
 }
 
 /* %if-c-or-c++ */
@@ -2776,7 +2754,7 @@
 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
 
 	/* copied from yy_switch_to_buffer. */
-	yy_load_buffer_state(  );
+	yy_load_buffer_state( );
 	(yy_did_buffer_switch_on_eof) = 1;
 }
 /* %endif */
@@ -2801,7 +2779,7 @@
 		--(yy_buffer_stack_top);
 
 	if (YY_CURRENT_BUFFER) {
-		yy_load_buffer_state(  );
+		yy_load_buffer_state( );
 		(yy_did_buffer_switch_on_eof) = 1;
 	}
 }
@@ -2825,15 +2803,15 @@
 		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
 		 * immediate realloc on the next call.
          */
-      num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
+		num_to_alloc = 1;
 		(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
 								(num_to_alloc * sizeof(struct yy_buffer_state*)
 								);
 		if ( ! (yy_buffer_stack) )
 			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
-
+								  
 		memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
-
+				
 		(yy_buffer_stack_max) = num_to_alloc;
 		(yy_buffer_stack_top) = 0;
 		return;
@@ -2842,7 +2820,7 @@
 	if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
 
 		/* Increase the buffer to prepare for a possible push. */
-		yy_size_t grow_size = 8 /* arbitrary grow size */;
+		int grow_size = 8 /* arbitrary grow size */;
 
 		num_to_alloc = (yy_buffer_stack_max) + grow_size;
 		(yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
@@ -2864,7 +2842,7 @@
  * @param base the character buffer
  * @param size the size in bytes of the character buffer
  * 
- * @return the newly allocated buffer state object.
+ * @return the newly allocated buffer state object. 
  */
 YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size )
 {
@@ -2874,16 +2852,16 @@
 	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
 	     base[size-1] != YY_END_OF_BUFFER_CHAR )
 		/* They forgot to leave room for the EOB's. */
-		return NULL;
+		return 0;
 
-	b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
+	b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state )  );
 	if ( ! b )
 		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
 
-	b->yy_buf_size = (int) (size - 2);	/* "- 2" to take care of EOB's */
+	b->yy_buf_size = size - 2;	/* "- 2" to take care of EOB's */
 	b->yy_buf_pos = b->yy_ch_buf = base;
 	b->yy_is_our_buffer = 0;
-	b->yy_input_file = NULL;
+	b->yy_input_file = 0;
 	b->yy_n_chars = b->yy_buf_size;
 	b->yy_is_interactive = 0;
 	b->yy_at_bol = 1;
@@ -2890,7 +2868,7 @@
 	b->yy_fill_buffer = 0;
 	b->yy_buffer_status = YY_BUFFER_NEW;
 
-	yy_switch_to_buffer( b  );
+	yy_switch_to_buffer(b  );
 
 	return b;
 }
@@ -2905,10 +2883,10 @@
  * @note If you want to scan bytes that may contain NUL values, then use
  *       yy_scan_bytes() instead.
  */
-YY_BUFFER_STATE yy_scan_string (const char * yystr )
+YY_BUFFER_STATE yy_scan_string (yyconst char * yystr )
 {
     
-	return yy_scan_bytes( yystr, (int) strlen(yystr) );
+	return yy_scan_bytes(yystr,strlen(yystr) );
 }
 /* %endif */
 
@@ -2920,7 +2898,7 @@
  * 
  * @return the newly allocated buffer state object.
  */
-YY_BUFFER_STATE yy_scan_bytes  (const char * yybytes, int  _yybytes_len )
+YY_BUFFER_STATE yy_scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len )
 {
 	YY_BUFFER_STATE b;
 	char *buf;
@@ -2928,8 +2906,8 @@
 	int i;
     
 	/* Get memory for full buffer, including space for trailing EOB's. */
-	n = (yy_size_t) (_yybytes_len + 2);
-	buf = (char *) yyalloc( n  );
+	n = _yybytes_len + 2;
+	buf = (char *) yyalloc(n  );
 	if ( ! buf )
 		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
 
@@ -2938,7 +2916,7 @@
 
 	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
 
-	b = yy_scan_buffer( buf, n );
+	b = yy_scan_buffer(buf,n );
 	if ( ! b )
 		YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
 
@@ -2952,7 +2930,7 @@
 /* %endif */
 
 /* %if-c-only */
-    static void yy_push_state (int  _new_state )
+    static void yy_push_state (int  new_state )
 /* %endif */
 /* %if-c++-only */
 /* %endif */
@@ -2962,14 +2940,13 @@
 		yy_size_t new_size;
 
 		(yy_start_stack_depth) += YY_START_STACK_INCR;
-		new_size = (yy_size_t) (yy_start_stack_depth) * sizeof( int );
+		new_size = (yy_start_stack_depth) * sizeof( int );
 
 		if ( ! (yy_start_stack) )
-			(yy_start_stack) = (int *) yyalloc( new_size  );
+			(yy_start_stack) = (int *) yyalloc(new_size  );
 
 		else
-			(yy_start_stack) = (int *) yyrealloc(
-					(void *) (yy_start_stack), new_size  );
+			(yy_start_stack) = (int *) yyrealloc((void *) (yy_start_stack),new_size  );
 
 		if ( ! (yy_start_stack) )
 			YY_FATAL_ERROR( "out of memory expanding start-condition stack" );
@@ -2977,7 +2954,7 @@
 
 	(yy_start_stack)[(yy_start_stack_ptr)++] = YY_START;
 
-	BEGIN(_new_state);
+	BEGIN(new_state);
 }
 
 /* %if-c-only */
@@ -2997,9 +2974,9 @@
 #endif
 
 /* %if-c-only */
-static void yynoreturn yy_fatal_error (const char* msg )
+static void yy_fatal_error (yyconst char* msg )
 {
-			fprintf( stderr, "%s\n", msg );
+    	(void) fprintf( stderr, "%s\n", msg );
 	exit( YY_EXIT_FAILURE );
 }
 /* %endif */
@@ -3034,7 +3011,7 @@
  */
 int yyget_lineno  (void)
 {
-    
+        
     return yylineno;
 }
 
@@ -3057,7 +3034,7 @@
 /** Get the length of the current token.
  * 
  */
-int yyget_leng  (void)
+yy_size_t yyget_leng  (void)
 {
         return yyleng;
 }
@@ -3075,29 +3052,29 @@
 /* %endif */
 
 /** Set the current line number.
- * @param _line_number line number
+ * @param line_number
  * 
  */
-void yyset_lineno (int  _line_number )
+void yyset_lineno (int  line_number )
 {
     
-    yylineno = _line_number;
+    yylineno = line_number;
 }
 
 /** Set the input stream. This does not discard the current
  * input buffer.
- * @param _in_str A readable stream.
+ * @param in_str A readable stream.
  * 
  * @see yy_switch_to_buffer
  */
-void yyset_in (FILE *  _in_str )
+void yyset_in (FILE *  in_str )
 {
-        yyin = _in_str ;
+        yyin = in_str ;
 }
 
-void yyset_out (FILE *  _out_str )
+void yyset_out (FILE *  out_str )
 {
-        yyout = _out_str ;
+        yyout = out_str ;
 }
 
 int yyget_debug  (void)
@@ -3105,9 +3082,9 @@
         return yy_flex_debug;
 }
 
-void yyset_debug (int  _bdebug )
+void yyset_debug (int  bdebug )
 {
-        yy_flex_debug = _bdebug ;
+        yy_flex_debug = bdebug ;
 }
 
 /* %endif */
@@ -3127,10 +3104,10 @@
     /* We do not touch yylineno unless the option is enabled. */
     yylineno =  1;
     
-    (yy_buffer_stack) = NULL;
+    (yy_buffer_stack) = 0;
     (yy_buffer_stack_top) = 0;
     (yy_buffer_stack_max) = 0;
-    (yy_c_buf_p) = NULL;
+    (yy_c_buf_p) = (char *) 0;
     (yy_init) = 0;
     (yy_start) = 0;
 
@@ -3143,8 +3120,8 @@
     yyin = stdin;
     yyout = stdout;
 #else
-    yyin = NULL;
-    yyout = NULL;
+    yyin = (FILE *) 0;
+    yyout = (FILE *) 0;
 #endif
 
     /* For future reference: Set errno on error, since we are called by
@@ -3161,7 +3138,7 @@
     
     /* Pop the buffer stack, destroying each element. */
 	while(YY_CURRENT_BUFFER){
-		yy_delete_buffer( YY_CURRENT_BUFFER  );
+		yy_delete_buffer(YY_CURRENT_BUFFER  );
 		YY_CURRENT_BUFFER_LVALUE = NULL;
 		yypop_buffer_state();
 	}
@@ -3171,7 +3148,7 @@
 	(yy_buffer_stack) = NULL;
 
     /* Destroy the start condition stack. */
-        yyfree( (yy_start_stack)  );
+        yyfree((yy_start_stack)  );
         (yy_start_stack) = NULL;
 
     /* Reset the globals. This is important in a non-reentrant scanner so the next time
@@ -3189,10 +3166,9 @@
  */
 
 #ifndef yytext_ptr
-static void yy_flex_strncpy (char* s1, const char * s2, int n )
+static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
 {
-		
-	int i;
+	register int i;
 	for ( i = 0; i < n; ++i )
 		s1[i] = s2[i];
 }
@@ -3199,9 +3175,9 @@
 #endif
 
 #ifdef YY_NEED_STRLEN
-static int yy_flex_strlen (const char * s )
+static int yy_flex_strlen (yyconst char * s )
 {
-	int n;
+	register int n;
 	for ( n = 0; s[n]; ++n )
 		;
 
@@ -3211,12 +3187,11 @@
 
 void *yyalloc (yy_size_t  size )
 {
-			return malloc(size);
+	return (void *) malloc( size );
 }
 
 void *yyrealloc  (void * ptr, yy_size_t  size )
 {
-		
 	/* The cast to (char *) in the following accommodates both
 	 * implementations that use char* generic pointers, and those
 	 * that use void* generic pointers.  It works with the latter
@@ -3224,12 +3199,12 @@
 	 * any pointer type to void*, and deal with argument conversions
 	 * as though doing an assignment.
 	 */
-	return realloc(ptr, size);
+	return (void *) realloc( (char *) ptr, size );
 }
 
 void yyfree (void * ptr )
 {
-			free( (char *) ptr );	/* see yyrealloc() for (char *) cast */
+	free( (char *) ptr );	/* see yyrealloc() for (char *) cast */
 }
 
 /* %if-tables-serialization definitions */
@@ -3239,7 +3214,8 @@
 
 /* %ok-for-header */
 
-#line 355 "lexer.l"
+#line 354 "lexer.l"
 
+
 	/*:519*/
 

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 	/*511:*/
-	#line 10407 "format.w"
+	#line 10416 "format.w"
 
 #ifndef __BASETYPES_H__
 #define __BASETYPES_H__

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/error.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/error.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/error.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 /*358:*/
-#line 7154 "hint.w"
+#line 7171 "hint.w"
 
 #ifndef _ERROR_H
 #define _ERROR_H

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/format.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/format.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/format.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,19 +1,19 @@
 	/*512:*/
-	#line 10457 "format.w"
+	#line 10466 "format.w"
 
 #ifndef _HFORMAT_H_
 #define _HFORMAT_H_
 	/*357:*/
-	#line 7848 "format.w"
+	#line 7858 "format.w"
 
 #define REF_RNG(K,N) if ((int)(N)>max_ref[K]) QUIT("Reference %d to %s out of range [0 - %d]",\
   (N),definition_name[K],max_ref[K])
 	/*:357*/	/*358:*/
-	#line 7862 "format.w"
+	#line 7872 "format.w"
 
 #define MAX_REF(K) ((K)==label_kind?0xFFFF:0xFF)
 	/*:358*/	/*431:*/
-	#line 9317 "format.w"
+	#line 9326 "format.w"
 
 #ifdef WIN32
 #define SIZE_F "0x%x"
@@ -23,7 +23,7 @@
 #ifdef DEBUG
 #define DBG(FLAGS,...) ((debugflags & (FLAGS))?LOG(__VA_ARGS__):0)
 #else
-#define DBG(FLAGS,...) 0
+#define DBG(FLAGS,...) (void)0
 #endif
 #define DBGTAG(A,P) DBG(DBGTAGS,"tag [%s,%d] at " SIZE_F "\n",NAME(A),INFO(A),(P)-hstart)
 
@@ -32,10 +32,10 @@
 
 #define TAGERR(A) QUIT("Unknown tag [%s,%d] at " SIZE_F "\n",NAME(A),INFO(A),hpos-hstart)
 	/*:431*/
-	#line 10460 "format.w"
+	#line 10469 "format.w"
 
 	/*418:*/
-	#line 9055 "format.w"
+	#line 9065 "format.w"
 
 #define DBGNONE     0x0
 #define DBGBASIC    0x1
@@ -55,10 +55,10 @@
 #define DBGRENDER   0x4000
 #define DBGLABEL    0x8000
 	/*:418*/
-	#line 10461 "format.w"
+	#line 10470 "format.w"
 
 	/*12:*/
-	#line 640 "format.w"
+	#line 641 "format.w"
 
 #define KIND(T)      (((T)>>3)&0x1F)
 #define NAME(T)      content_name[KIND(T)]
@@ -65,15 +65,15 @@
 #define INFO(T)      ((T)&0x7)
 #define TAG(K,I)     (((K)<<3)|(I))
 	/*:12*/	/*77:*/
-	#line 1639 "format.w"
+	#line 1640 "format.w"
 
 #define ROUND(X)     ((int)((X)>=0.0?floor((X)+0.5):ceil((X)-0.5)))
 	/*:77*/	/*112:*/
-	#line 2139 "format.w"
+	#line 2140 "format.w"
 
 #define RUNNING_DIMEN 0xC0000000
 	/*:112*/	/*131:*/
-	#line 2481 "format.w"
+	#line 2482 "format.w"
 
 #define ZERO_GLUE(G) ((G).w.w==0  && (G).w.h==0.0  && (G).w.v==0.0  && (G).p.f==0.0 && (G).m.f==0.0)
 	/*:131*/	/*244:*/
@@ -99,18 +99,18 @@
 
 #define MAX_BANNER 256
 	/*:310*/	/*323:*/
-	#line 6888 "format.w"
+	#line 6890 "format.w"
 
 #define MAX_TAG_DISTANCE 32
 	/*:323*/
-	#line 10462 "format.w"
+	#line 10471 "format.w"
 
 	/*6:*/
-	#line 492 "format.w"
+	#line 493 "format.w"
 
 #define DEF_KIND(C,D,N) C##_kind= N
 typedef enum{	/*9:*/
-	#line 561 "format.w"
+	#line 562 "format.w"
 
 DEF_KIND(text,text,0),
 DEF_KIND(list,list,1),
@@ -146,21 +146,21 @@
 DEF_KIND(penalty,int,31)
 
 	/*:9*/
-	#line 494 "format.w"
+	#line 495 "format.w"
 ,	/*10:*/
-	#line 600 "format.w"
+	#line 601 "format.w"
 
 font_kind= glyph_kind,int_kind= penalty_kind,dimen_kind= kern_kind,label_kind= link_kind,outline_kind= link_kind
 	/*:10*/
-	#line 494 "format.w"
+	#line 495 "format.w"
 }Kind;
 #undef DEF_KIND
 	/*:6*/	/*11:*/
-	#line 626 "format.w"
+	#line 627 "format.w"
 
 typedef enum{b000= 0,b001= 1,b010= 2,b011= 3,b100= 4,b101= 5,b110= 6,b111= 7}Info;
 	/*:11*/	/*56:*/
-	#line 1301 "format.w"
+	#line 1302 "format.w"
 
 
 #define FLT_M_BITS 23
@@ -172,29 +172,29 @@
 #define DBL_EXCESS 1023
 
 	/*:56*/	/*76:*/
-	#line 1634 "format.w"
+	#line 1635 "format.w"
 
 typedef int32_t Scaled;
 #define ONE ((Scaled)(1<<16))
 	/*:76*/	/*81:*/
-	#line 1690 "format.w"
+	#line 1691 "format.w"
 
 typedef Scaled Dimen;
 #define MAX_DIMEN ((Dimen)(0x3FFFFFFF))
 	/*:81*/	/*86:*/
-	#line 1746 "format.w"
+	#line 1747 "format.w"
 
 typedef struct{
 Dimen w;float32_t h,v;
 }Xdimen;
 	/*:86*/	/*95:*/
-	#line 1890 "format.w"
+	#line 1891 "format.w"
 
 typedef enum{normal_o= 0,fil_o= 1,fill_o= 2,filll_o= 3}Order;
 typedef struct{float64_t f;Order o;}Stretch;
 typedef union{float32_t f;uint32_t u;}Stch;
 	/*:95*/	/*130:*/
-	#line 2471 "format.w"
+	#line 2472 "format.w"
 
 typedef struct{
 Xdimen w;
@@ -201,7 +201,7 @@
 Stretch p,m;
 }Glue;
 	/*:130*/	/*180:*/
-	#line 3894 "format.w"
+	#line 3895 "format.w"
 
 typedef struct{
 Glue bs,ls;
@@ -218,14 +218,14 @@
 uint32_t pos0;uint8_t f;
 }Label;
 	/*:250*/	/*381:*/
-	#line 8382 "format.w"
+	#line 8392 "format.w"
 
 #define MAX_FONT_PARAMS 11
 	/*:381*/
-	#line 10463 "format.w"
+	#line 10472 "format.w"
 
 	/*393:*/
-	#line 8617 "format.w"
+	#line 8627 "format.w"
 
 typedef enum{
 zero_int_no= 0,
@@ -254,7 +254,7 @@
 }Int_no;
 #define MAX_INT_DEFAULT floating_penalty_no
 	/*:393*/	/*395:*/
-	#line 8690 "format.w"
+	#line 8700 "format.w"
 
 typedef enum{
 zero_dimen_no= 0,
@@ -270,7 +270,7 @@
 }Dimen_no;
 #define MAX_DIMEN_DEFAULT math_quad_no
 	/*:395*/	/*397:*/
-	#line 8735 "format.w"
+	#line 8745 "format.w"
 
 typedef enum{
 zero_xdimen_no= 0,
@@ -279,7 +279,7 @@
 }Xdimen_no;
 #define MAX_XDIMEN_DEFAULT vsize_xdimen_no
 	/*:397*/	/*399:*/
-	#line 8759 "format.w"
+	#line 8769 "format.w"
 
 typedef enum{
 zero_skip_no= 0,
@@ -300,7 +300,7 @@
 }Glue_no;
 #define MAX_GLUE_DEFAULT par_fill_skip_no
 	/*:399*/	/*401:*/
-	#line 8845 "format.w"
+	#line 8855 "format.w"
 
 typedef enum{
 zero_baseline_no= 0
@@ -307,7 +307,7 @@
 }Baseline_no;
 #define MAX_BASELINE_DEFAULT zero_baseline_no
 	/*:401*/	/*403:*/
-	#line 8870 "format.w"
+	#line 8880 "format.w"
 
 typedef enum{
 zero_label_no= 0
@@ -314,7 +314,7 @@
 }Label_no;
 #define MAX_LABEL_DEFAULT zero_label_no
 	/*:403*/	/*405:*/
-	#line 8884 "format.w"
+	#line 8894 "format.w"
 
 typedef enum{
 zero_stream_no= 0
@@ -321,7 +321,7 @@
 }Stream_no;
 #define MAX_STREAM_DEFAULT zero_stream_no
 	/*:405*/	/*407:*/
-	#line 8900 "format.w"
+	#line 8910 "format.w"
 
 typedef enum{
 zero_page_no= 0
@@ -328,7 +328,7 @@
 }Page_no;
 #define MAX_PAGE_DEFAULT zero_page_no
 	/*:407*/	/*409:*/
-	#line 8917 "format.w"
+	#line 8927 "format.w"
 
 typedef enum{
 zero_range_no= 0
@@ -335,7 +335,7 @@
 }Range_no;
 #define MAX_RANGE_DEFAULT zero_range_no
 	/*:409*/
-	#line 10464 "format.w"
+	#line 10473 "format.w"
 
 
 extern const char*content_name[32];

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.c
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.c	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.c	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 	/*516:*/
-	#line 10604 "format.w"
+	#line 10613 "format.w"
 
 #include "basetypes.h"
 #include <string.h>
@@ -30,11 +30,11 @@
 char hbanner[MAX_BANNER+1];
 int hbanner_size= 0;
 	/*:311*/	/*318:*/
-	#line 6833 "format.w"
+	#line 6835 "format.w"
 
 uint8_t*hpos= NULL,*hstart= NULL,*hend= NULL,*hpos0= NULL;
 	/*:318*/	/*324:*/
-	#line 6914 "format.w"
+	#line 6916 "format.w"
 
 char*hin_name= NULL;
 uint64_t hin_size= 0;
@@ -41,11 +41,11 @@
 uint8_t*hin_addr= NULL;
 uint64_t hin_time= 0;
 	/*:324*/	/*380:*/
-	#line 8378 "format.w"
+	#line 8388 "format.w"
 
 char**hfont_name;
 	/*:380*/	/*419:*/
-	#line 9078 "format.w"
+	#line 9088 "format.w"
 
 unsigned int debugflags= DBGNONE;
 int option_utf8= false;
@@ -57,15 +57,15 @@
 char*stem_name= NULL;
 int stem_length= 0;
 	/*:419*/	/*422:*/
-	#line 9212 "format.w"
+	#line 9222 "format.w"
 
 FILE*hin= NULL,*hout= NULL,*hlog= NULL;
 	/*:422*/
-	#line 10617 "format.w"
+	#line 10626 "format.w"
 
 
 	/*325:*/
-	#line 6921 "format.w"
+	#line 6923 "format.w"
 
 #ifndef USE_MMAP
 void hget_unmap(void)
@@ -159,7 +159,7 @@
 #endif
 
 	/*:325*/
-	#line 10619 "format.w"
+	#line 10628 "format.w"
 
 	/*312:*/
 	#line 6697 "format.w"
@@ -194,10 +194,10 @@
 return true;
 }
 	/*:312*/
-	#line 10620 "format.w"
+	#line 10629 "format.w"
 
 	/*334:*/
-	#line 7254 "format.w"
+	#line 7256 "format.w"
 
 Entry*dir= NULL;
 uint16_t section_no,max_section_no;
@@ -209,7 +209,7 @@
 dir[0].section_no= 0;dir[1].section_no= 1;dir[2].section_no= 2;
 }
 	/*:334*/	/*335:*/
-	#line 7267 "format.w"
+	#line 7269 "format.w"
 
 void hset_entry(Entry*e,uint16_t i,uint32_t size,uint32_t xsize,char*file_name)
 {e->section_no= i;
@@ -221,7 +221,7 @@
 DBG(DBGDIR,"Creating entry %d: \"%s\" size=0x%x xsize=0x%x\n",i,file_name,size,xsize);
 }
 	/*:335*/
-	#line 10621 "format.w"
+	#line 10630 "format.w"
 
 
 	/*313:*/
@@ -237,7 +237,7 @@
 hbanner[hbanner_size]= 0;
 }
 	/*:313*/	/*326:*/
-	#line 7026 "format.w"
+	#line 7028 "format.w"
 
 
 static void hdecompress(uint16_t n)
@@ -274,7 +274,7 @@
 hend= hstart+dir[n].xsize;
 }
 	/*:326*/	/*328:*/
-	#line 7114 "format.w"
+	#line 7116 "format.w"
 
 void hget_section(uint16_t n)
 {DBG(DBGDIR,"Reading section %d\n",n);
@@ -290,11 +290,11 @@
 }
 }
 	/*:328*/	/*345:*/
-	#line 7492 "format.w"
+	#line 7494 "format.w"
 
 void hget_entry(Entry*e)
 {	/*15:*/
-	#line 717 "format.w"
+	#line 718 "format.w"
 
 uint8_t a,z;
 uint32_t node_pos= hpos-hstart;
@@ -301,7 +301,7 @@
 if(hpos>=hend)QUIT("Attempt to read a start byte at the end of the section");
 HGETTAG(a);
 	/*:15*/
-	#line 7494 "format.w"
+	#line 7496 "format.w"
 
 DBG(DBGDIR,"Reading directory entry\n");
 switch(a)
@@ -316,7 +316,7 @@
 default:TAGERR(a);break;
 }
 	/*16:*/
-	#line 724 "format.w"
+	#line 725 "format.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -323,11 +323,11 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 	/*:16*/
-	#line 7507 "format.w"
+	#line 7509 "format.w"
 
 }
 	/*:345*/	/*346:*/
-	#line 7524 "format.w"
+	#line 7526 "format.w"
 
 static void hget_root(Entry*root)
 {DBG(DBGDIR,"Root entry at "SIZE_F"\n",hpos-hstart);
@@ -363,12 +363,12 @@
 }
 
 	/*:346*/	/*364:*/
-	#line 7940 "format.w"
+	#line 7950 "format.w"
 
 void hget_max_definitions(void)
 {Kind k;
 	/*15:*/
-	#line 717 "format.w"
+	#line 718 "format.w"
 
 uint8_t a,z;
 uint32_t node_pos= hpos-hstart;
@@ -375,7 +375,7 @@
 if(hpos>=hend)QUIT("Attempt to read a start byte at the end of the section");
 HGETTAG(a);
 	/*:15*/
-	#line 7943 "format.w"
+	#line 7953 "format.w"
 
 if(a!=TAG(list_kind,0))QUIT("Start of maximum list expected");
 for(k= 0;k<32;k++)max_ref[k]= max_default[k];max_outline= -1;
@@ -396,7 +396,7 @@
 case TAG(outline_kind,b101):max_outline= n;
 DBG(DBGDEF|DBGLABEL,"max(outline) = %d\n",max_outline);break;
 	/*:246*/
-	#line 7955 "format.w"
+	#line 7965 "format.w"
 
 default:
 if(max_fixed[k]>max_default[k])
@@ -407,7 +407,7 @@
 break;
 }
 	/*16:*/
-	#line 724 "format.w"
+	#line 725 "format.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -414,16 +414,16 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 	/*:16*/
-	#line 7964 "format.w"
+	#line 7974 "format.w"
 
 }
 if(INFO(a)!=0)QUIT("End of maximum list with info %d",INFO(a));
 }
 	/*:364*/
-	#line 10623 "format.w"
+	#line 10632 "format.w"
 
 	/*52:*/
-	#line 1233 "format.w"
+	#line 1234 "format.w"
 
 #define HGET_UTF8C(X)  (X)= HGET8; if ((X&0xC0)!=0x80) \
   QUIT("UTF8 continuation byte expected at " SIZE_F " got 0x%02X\n",hpos-hstart-1,X)
@@ -449,7 +449,7 @@
 }
 }
 	/*:52*/	/*75:*/
-	#line 1613 "format.w"
+	#line 1614 "format.w"
 
 float32_t hget_float32(void)
 {union{float32_t d;uint32_t bits;}u;
@@ -457,7 +457,7 @@
 return u.d;
 }
 	/*:75*/	/*145:*/
-	#line 2835 "format.w"
+	#line 2836 "format.w"
 
 void hget_size_boundary(Info info)
 {uint32_t n;
@@ -485,7 +485,7 @@
 else
 {
 	/*15:*/
-	#line 717 "format.w"
+	#line 718 "format.w"
 
 uint8_t a,z;
 uint32_t node_pos= hpos-hstart;
@@ -492,12 +492,12 @@
 if(hpos>=hend)QUIT("Attempt to read a start byte at the end of the section");
 HGETTAG(a);
 	/*:15*/
-	#line 2861 "format.w"
+	#line 2862 "format.w"
 
 l->k= KIND(a);
 HGET_LIST(INFO(a),*l);
 	/*16:*/
-	#line 724 "format.w"
+	#line 725 "format.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -504,16 +504,16 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 	/*:16*/
-	#line 2864 "format.w"
+	#line 2865 "format.w"
 
 DBG(DBGNODE,"Get list at 0x%x size=%u\n",l->p,l->s);
 }
 }
 	/*:145*/
-	#line 10624 "format.w"
+	#line 10633 "format.w"
 
 	/*434:*/
-	#line 9384 "format.w"
+	#line 9393 "format.w"
 
 uint32_t hff_list_pos= 0,hff_list_size= 0;
 uint8_t hff_tag;
@@ -533,7 +533,7 @@
 }
 else if(hff_tag<=TAG(param_kind,5))
 	/*436:*/
-	#line 9429 "format.w"
+	#line 9438 "format.w"
 
 switch(INFO(hff_tag)){
 case 1:hff_list_pos= hpos-hstart+1;hff_list_size= 0;hpos= hpos+2;return;
@@ -543,12 +543,12 @@
 case 5:hpos++;HGET32(hff_list_size);hff_list_pos= hpos-hstart+1;hpos= hpos+1+hff_list_size+1+4+1;return;
 }
 	/*:436*/
-	#line 9402 "format.w"
+	#line 9411 "format.w"
 
 TAGERR(hff_tag);
 }
 	/*:434*/	/*465:*/
-	#line 9840 "format.w"
+	#line 9849 "format.w"
 
 float32_t hteg_float32(void)
 {union{float32_t d;uint32_t bits;}u;
@@ -556,7 +556,7 @@
 return u.d;
 }
 	/*:465*/	/*503:*/
-	#line 10278 "format.w"
+	#line 10287 "format.w"
 
 void hteg_size_boundary(Info info)
 {uint32_t n;
@@ -579,7 +579,7 @@
 
 void hteg_list(List*l)
 {	/*462:*/
-	#line 9812 "format.w"
+	#line 9821 "format.w"
 
 uint8_t a,z;
 uint32_t node_pos= hpos-hstart;
@@ -586,7 +586,7 @@
 if(hpos<=hstart)return;
 HTEGTAG(z);
 	/*:462*/
-	#line 10299 "format.w"
+	#line 10308 "format.w"
 
 if(KIND(z)!=list_kind&&KIND(z)!=text_kind&&KIND(z)!=param_kind)
 QUIT("List expected at 0x%x",(uint32_t)(hpos-hstart));
@@ -602,13 +602,13 @@
 if(s!=l->s)QUIT("List sizes at "SIZE_F" and 0x%x do not match 0x%x != 0x%x",
 hpos-hstart,node_pos-1,s,l->s);
 	/*463:*/
-	#line 9819 "format.w"
+	#line 9828 "format.w"
 
 HTEGTAG(a);
 if(a!=z)QUIT("Tag mismatch [%s,%d]!=[%s,%d] at "SIZE_F" to 0x%x\n",NAME(a),INFO(a),NAME(z),INFO(z),
 hpos-hstart,node_pos-1);
 	/*:463*/
-	#line 10313 "format.w"
+	#line 10322 "format.w"
 
 }
 }
@@ -620,6 +620,6 @@
 
 
 	/*:503*/
-	#line 10625 "format.w"
+	#line 10634 "format.w"
 
 	/*:516*/

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/get.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,18 +1,18 @@
 	/*515:*/
-	#line 10559 "format.w"
+	#line 10568 "format.w"
 
 	/*1:*/
-	#line 328 "format.w"
+	#line 329 "format.w"
 
 typedef struct{uint32_t c;uint8_t f;}Glyph;
 	/*:1*/	/*113:*/
-	#line 2166 "format.w"
+	#line 2167 "format.w"
 
 typedef struct{
 Dimen h,d,w;
 }Rule;
 	/*:113*/	/*122:*/
-	#line 2280 "format.w"
+	#line 2281 "format.w"
 
 typedef struct{
 bool x;
@@ -19,7 +19,7 @@
 Xdimen d;
 }Kern;
 	/*:122*/	/*140:*/
-	#line 2701 "format.w"
+	#line 2702 "format.w"
 
 typedef struct{
 Kind k;
@@ -27,29 +27,29 @@
 uint32_t s;
 }List;
 	/*:140*/	/*148:*/
-	#line 3123 "format.w"
+	#line 3124 "format.w"
 
 typedef enum{txt_font= 0x00,txt_global= 0x08,txt_local= 0x11,
 txt_cc= 0x1D,txt_node= 0x1E,txt_hyphen= 0x1F,
 txt_glue= 0x20,txt_ignore= 0xFB}Txt;
 	/*:148*/	/*159:*/
-	#line 3390 "format.w"
+	#line 3391 "format.w"
 
 typedef struct{Kind k;int n;}Ref;
 	/*:159*/	/*160:*/
-	#line 3427 "format.w"
+	#line 3428 "format.w"
 
 typedef struct{Dimen h,d,w,a;float32_t r;int8_t s,o;List l;}Box;
 	/*:160*/	/*187:*/
-	#line 3983 "format.w"
+	#line 3984 "format.w"
 
 typedef struct{uint8_t f;List l;}Lig;
 	/*:187*/	/*195:*/
-	#line 4100 "format.w"
+	#line 4101 "format.w"
 
 typedef struct{bool x;List p,q;uint8_t r;}Disc;
 	/*:195*/	/*228:*/
-	#line 4658 "format.w"
+	#line 4659 "format.w"
 
 typedef struct{
 uint16_t n;
@@ -72,10 +72,10 @@
 typedef
 struct{uint8_t pg;uint32_t pos;bool on;int link;}RangePos;
 	/*:299*/
-	#line 10560 "format.w"
+	#line 10569 "format.w"
 
 	/*333:*/
-	#line 7240 "format.w"
+	#line 7242 "format.w"
 
 typedef struct{
 uint64_t pos;
@@ -86,16 +86,16 @@
 uint32_t bsize;
 }Entry;
 	/*:333*/
-	#line 10561 "format.w"
+	#line 10570 "format.w"
 
 	/*37:*/
-	#line 1067 "format.w"
+	#line 1068 "format.w"
 
 #define HGET_STRING(S) S= (char*)hpos;\
  while(hpos<hend && *hpos!=0) { RNG("String character",*hpos,0x20,0x7E); hpos++;}\
  hpos++;
 	/*:37*/	/*146:*/
-	#line 2870 "format.w"
+	#line 2871 "format.w"
 
 #define HGET_LIST(I,L) \
     (L).s= hget_list_size(I); hget_size_boundary(I);\
@@ -105,7 +105,7 @@
       if (s!=(L).s) \
       QUIT("List sizes at 0x%x and " SIZE_F " do not match 0x%x != 0x%x",node_pos+1,hpos-hstart-I-1,(L).s,s);}
 	/*:146*/	/*319:*/
-	#line 6841 "format.w"
+	#line 6843 "format.w"
 
 #define HGET_ERROR  QUIT("HGET overrun in section %d at " SIZE_F "\n",section_no,hpos-hstart)
 #define HEND   ((hpos<=hend)?0:(HGET_ERROR,0))
@@ -116,7 +116,7 @@
 #define HGET32(X) ((X)= (hpos[0]<<24)+(hpos[1]<<16)+(hpos[2]<<8)+hpos[3],hpos+= 4,HEND)
 #define HGETTAG(A) A= HGET8,DBGTAG(A,hpos-1)
 	/*:319*/	/*344:*/
-	#line 7468 "format.w"
+	#line 7470 "format.w"
 
 #define HGET_SIZE(I) \
   if ((I)&b100) { \
@@ -140,7 +140,7 @@
   hset_entry(&(E),i,s,xs,file_name); \
 }
 	/*:344*/	/*464:*/
-	#line 9827 "format.w"
+	#line 9836 "format.w"
 
 #define HBACK(X) ((hpos-(X)<hstart)?(QUIT("HTEG underflow\n"),NULL):(hpos-= (X)))
 
@@ -150,7 +150,7 @@
 #define HTEG32(X) (HBACK(4),(X)= (hpos[0]<<24)+(hpos[1]<<16)+(hpos[2]<<8)+hpos[3])
 #define HTEGTAG(X) X= HTEG8,DBGTAG(X,hpos)
 	/*:464*/
-	#line 10562 "format.w"
+	#line 10571 "format.w"
 
 
 extern Entry*dir;

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 /*376:*/
-#line 7609 "hint.w"
+#line 7624 "hint.w"
 
 #include "basetypes.h"
 #include "error.h"
@@ -13,30 +13,30 @@
 #include "rendernative.h"
 
 /*308:*/
-#line 5748 "hint.w"
+#line 5765 "hint.w"
 
 static Font*fonts[0x100]= {NULL};
 /*:308*//*315:*/
-#line 5884 "hint.w"
+#line 5901 "hint.w"
 
 static Gcache g_undefined= {0};
 /*:315*//*349:*/
-#line 6998 "hint.w"
+#line 7015 "hint.w"
 
 static FT_Library ft_library= NULL;
 /*:349*/
-#line 7621 "hint.w"
+#line 7636 "hint.w"
 
 /*35:*/
-#line 562 "hint.w"
+#line 577 "hint.w"
 
 extern uint16_t hglyph_section(uint8_t f);
 extern int32_t font_at_size(uint8_t f);
 /*:35*/
-#line 7622 "hint.w"
+#line 7637 "hint.w"
 
 /*314:*/
-#line 5841 "hint.w"
+#line 5858 "hint.w"
 
 #define G0_BITS 7
 #define G0_SIZE (1<<G0_BITS)
@@ -71,7 +71,7 @@
 return NULL;
 }
 /*:314*//*316:*/
-#line 5888 "hint.w"
+#line 5905 "hint.w"
 
 static Gcache*hnew_g(Gcache**g)
 {if(*g==NULL)
@@ -126,17 +126,17 @@
 else return&g_undefined;
 }
 /*:316*/
-#line 7623 "hint.w"
+#line 7638 "hint.w"
 
 
 /*353:*/
-#line 7032 "hint.w"
+#line 7049 "hint.w"
 
 
 int unpack_ft_file(Font*f)
 {int e;
 /*350:*/
-#line 7002 "hint.w"
+#line 7019 "hint.w"
 
 if(ft_library==NULL)
 {int e= FT_Init_FreeType(&ft_library);
@@ -143,7 +143,7 @@
 if(e)QUIT("Unable to initialize the FreeType library");
 }
 /*:350*/
-#line 7036 "hint.w"
+#line 7053 "hint.w"
 
 f->hpxs= 72.27/xdpi;
 f->vpxs= 72.27/ydpi;
@@ -151,15 +151,15 @@
 f->font_data,f->data_size,0,&(f->tt.face));
 if(e)return 0;
 /*354:*/
-#line 7057 "hint.w"
+#line 7074 "hint.w"
 
 e= FT_Select_Charmap(f->tt.face,FT_ENCODING_ADOBE_CUSTOM);
 if(e)LOG("Unable to select custom encoding for font %d\n",f->n);
 /*:354*/
-#line 7042 "hint.w"
+#line 7059 "hint.w"
 
 /*355:*/
-#line 7065 "hint.w"
+#line 7082 "hint.w"
 
 e= FT_Set_Char_Size(
 f->tt.face,
@@ -170,13 +170,13 @@
 if(e)QUIT("Unable to set FreeType glyph size");
 FT_Set_Transform(f->tt.face,0,0);
 /*:355*/
-#line 7043 "hint.w"
+#line 7060 "hint.w"
 
 f->ff= ft_format;
 return 1;
 }
 /*:353*//*356:*/
-#line 7088 "hint.w"
+#line 7105 "hint.w"
 
 static void ft_unpack_glyph(Font*f,Gcache*g,uint32_t cc)
 {int e,i;
@@ -201,11 +201,11 @@
 }
 
 /*:356*/
-#line 7625 "hint.w"
+#line 7640 "hint.w"
 
 
 /*341:*/
-#line 6703 "hint.w"
+#line 6720 "hint.w"
 
 #define PK_READ_1_BYTE() (data[i++])
 #define PK_READ_2_BYTE() (k= PK_READ_1_BYTE(),k= k<<8,k= k+data[i++],k)
@@ -212,11 +212,11 @@
 #define PK_READ_3_BYTE() (k= PK_READ_2_BYTE(),k= k<<8,k= k+data[i++],k)
 #define PK_READ_4_BYTE() (k= PK_READ_3_BYTE(),k= k<<8,k= k+data[i++],k)
 /*:341*//*343:*/
-#line 6730 "hint.w"
+#line 6747 "hint.w"
 
 #define read_nybble(P) ((P).j&1?((P).data[(P).j++>>1]&0xF):(((P).data[(P).j++>>1]>>4)&0xF))
 /*:343*//*344:*/
-#line 6756 "hint.w"
+#line 6773 "hint.w"
 
 static int packed_number(PKparse*p)
 {int i,k;
@@ -235,7 +235,7 @@
 }
 }
 /*:344*//*345:*/
-#line 6785 "hint.w"
+#line 6802 "hint.w"
 
 static void pk_runlength(Gcache*g,unsigned char*data){
 PKparse p;
@@ -277,7 +277,7 @@
 }
 }
 /*:345*//*346:*/
-#line 6837 "hint.w"
+#line 6854 "hint.w"
 
 static void pk_bitmap(Gcache*g,unsigned char*data){
 unsigned char*bits;
@@ -298,7 +298,7 @@
 }
 }
 /*:346*//*347:*/
-#line 6860 "hint.w"
+#line 6877 "hint.w"
 
 
 static void pkunpack_glyph(Gcache*g)
@@ -341,7 +341,7 @@
 nativeSetPK(g);
 }
 /*:347*//*348:*/
-#line 6905 "hint.w"
+#line 6922 "hint.w"
 
 
 static Gcache*hnew_glyph(Font*pk,unsigned int cc);
@@ -427,11 +427,11 @@
 }
 
 /*:348*/
-#line 7627 "hint.w"
+#line 7642 "hint.w"
 
 
 /*309:*/
-#line 5754 "hint.w"
+#line 5771 "hint.w"
 
 struct font_s*hget_font(unsigned char f)
 {Font*fp;
@@ -453,7 +453,7 @@
 }
 fp->s= font_at_size(f)/(double)(1<<16);
 /*338:*/
-#line 6640 "hint.w"
+#line 6657 "hint.w"
 
 if(fp->font_data[0]==0xF7&&fp->font_data[1]==0x59)
 {fp->ff= pk_format;
@@ -460,7 +460,7 @@
 if(!unpack_pk_file(fp)){free(fp);fp= NULL;}
 }
 /*:338*//*357:*/
-#line 7115 "hint.w"
+#line 7132 "hint.w"
 
 else if(unpack_ft_file(fp))
 fp->ff= ft_format;
@@ -469,13 +469,13 @@
 free(fp);fp= NULL;
 }
 /*:357*/
-#line 5774 "hint.w"
+#line 5791 "hint.w"
 
 fonts[f]= fp;
 return fonts[f];
 }
 /*:309*//*311:*/
-#line 5792 "hint.w"
+#line 5809 "hint.w"
 
 static void hfree_glyph_cache(Font*f,bool rm);
 
@@ -489,7 +489,7 @@
 }
 }
 /*:311*//*317:*/
-#line 5952 "hint.w"
+#line 5969 "hint.w"
 
 static void hfree_g0(struct gcache_s**g,bool rm)
 {int i;
@@ -554,7 +554,7 @@
 }
 }
 /*:317*//*319:*/
-#line 6078 "hint.w"
+#line 6095 "hint.w"
 
 Gcache*hget_glyph(Font*f,unsigned int cc)
 {
@@ -574,7 +574,7 @@
 return g;
 }
 /*:319*//*321:*/
-#line 6110 "hint.w"
+#line 6127 "hint.w"
 
 void render_char(int x,int y,struct font_s*f,uint32_t cc,uint8_t s)
 
@@ -590,7 +590,7 @@
 }
 
 /*:321*/
-#line 7629 "hint.w"
+#line 7644 "hint.w"
 
 
 /*:376*/

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,18 +1,18 @@
 /*375:*/
-#line 7598 "hint.w"
+#line 7613 "hint.w"
 
 #ifndef _HFONTS_H
 #define _HFONTS_H
 
 /*306:*/
-#line 5720 "hint.w"
+#line 5737 "hint.w"
 
 typedef enum{no_format,pk_format,ft_format}FontFormat;
 /*:306*//*307:*/
-#line 5732 "hint.w"
+#line 5749 "hint.w"
 
 /*339:*/
-#line 6679 "hint.w"
+#line 6696 "hint.w"
 
 
 typedef struct
@@ -22,19 +22,19 @@
 unsigned char id;
 }PKfont;
 /*:339*//*351:*/
-#line 7010 "hint.w"
+#line 7027 "hint.w"
 
 typedef struct
 {FT_Face face;
 }FTfont;
 /*:351*//*352:*/
-#line 7017 "hint.w"
+#line 7034 "hint.w"
 
 typedef struct
 {int dummy;
 }FTglyph;
 /*:352*/
-#line 5733 "hint.w"
+#line 5750 "hint.w"
 
 
 typedef struct font_s{
@@ -44,7 +44,7 @@
 double s;
 double hpxs,vpxs;
 /*313:*/
-#line 5827 "hint.w"
+#line 5844 "hint.w"
 
 struct gcache_s**g0;
 struct gcache_s***g1;
@@ -52,16 +52,16 @@
 struct gcache_s*****g3;
 
 /*:313*/
-#line 5741 "hint.w"
+#line 5758 "hint.w"
 
 FontFormat ff;
 union{PKfont pk;FTfont tt;};
 }Font;
 /*:307*//*318:*/
-#line 6039 "hint.w"
+#line 6056 "hint.w"
 
 /*340:*/
-#line 6692 "hint.w"
+#line 6709 "hint.w"
 
 typedef struct
 {unsigned char flag;
@@ -68,7 +68,7 @@
 unsigned char*encoding;
 }PKglyph;
 /*:340*//*342:*/
-#line 6719 "hint.w"
+#line 6736 "hint.w"
 
 typedef struct{
 int j;
@@ -77,7 +77,7 @@
 unsigned char*data;
 }PKparse;
 /*:342*/
-#line 6040 "hint.w"
+#line 6057 "hint.w"
 
 
 struct gcache_s{
@@ -93,7 +93,7 @@
 };
 typedef struct gcache_s Gcache;
 /*:318*/
-#line 7602 "hint.w"
+#line 7617 "hint.w"
 
 
 

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.c
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.c	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.c	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 /*372:*/
-#line 7519 "hint.w"
+#line 7534 "hint.w"
 
 #include "basetypes.h"
 #include <string.h> 
@@ -13,13 +13,13 @@
 #include "hint.h"
 
 /*82:*/
-#line 1283 "hint.w"
+#line 1298 "hint.w"
 
 #define HGET_STRING(S) S= (char*)hpos;\
  while(hpos<hend && *hpos!=0) { RNG("String character",*hpos,0x20,0x7E); hpos++;}\
  hpos++;
 /*:82*//*83:*/
-#line 1295 "hint.w"
+#line 1310 "hint.w"
 
 #define HGET_XDIMEN(I,X) \
 { if((I)&b100) HGET32((X).w); else (X).w= 0;\
@@ -27,11 +27,11 @@
   if((I)&b001) (X).v= hget_float32(); else (X).v= 0.0;\
 }
 /*:83*//*87:*/
-#line 1398 "hint.w"
+#line 1413 "hint.w"
 
 #define HGET_STRETCH(F,O) { Stch _st;  HGET32(_st.u); (O)= _st.u&3;  _st.u&= ~3; (F)= (scaled)(_st.f*ONE); }
 /*:87*//*89:*/
-#line 1409 "hint.w"
+#line 1424 "hint.w"
 
 #define HGET_GLYPH(I) \
 {uint8_t f; uint32_t c;\
@@ -43,7 +43,7 @@
   tail_append(new_character(f,c));\
 }
 /*:89*//*97:*/
-#line 1491 "hint.w"
+#line 1506 "hint.w"
 
 #define HGET_RULE(I)\
 pointer p= new_rule();\
@@ -51,7 +51,7 @@
 if ((I)&b010) HGET32(depth(p)); else depth(p)= null_flag;\
 if ((I)&b001) HGET32(width(p)); else width(p)= null_flag;
 /*:97*//*103:*/
-#line 1553 "hint.w"
+#line 1568 "hint.w"
 
 #define HGET_GLUE(I) \
   p=  get_node(glue_spec_size); \
@@ -60,12 +60,12 @@
   if((I)&b001) HGET_STRETCH(shrink(p),shrink_order(p)) else shrink(p)= 0, shrink_order(p)= normal;\
   if(I==b111) width(p)= hget_xdimen_node();
 /*:103*//*110:*/
-#line 1673 "hint.w"
+#line 1688 "hint.w"
 
 #define IS_LIST(X)  (KIND(X)==list_kind || \
         KIND(X)==text_kind  || KIND(X)==param_kind)
 /*:110*//*115:*/
-#line 1830 "hint.w"
+#line 1845 "hint.w"
 
 #define HGET_BOX(I) \
 p= new_null_box();\
@@ -78,7 +78,7 @@
   x= x>>4; glue_sign(p)= (x<0?shrinking:(x> 0?stretching:normal));}\
 list_ptr(p)= hget_list_pointer();
 /*:115*//*122:*/
-#line 1954 "hint.w"
+#line 1969 "hint.w"
 
 #define HGET_SET(I) \
  scaled x, st, sh; uint8_t sto, sho; \
@@ -89,7 +89,7 @@
  if ((I)&b100) x=  hget_xdimen_node();  else x= hget_xdimen_ref(HGET8);\
  list_ptr(p)= hget_list_pointer();
 /*:122*//*128:*/
-#line 2097 "hint.w"
+#line 2112 "hint.w"
 
 #define HGET_PACK(K,I) \
 { pointer p; scaled x, s= 0, d;  uint8_t m; \
@@ -102,7 +102,7 @@
  shift_amount(p)= s;\
  happend_to_vlist(p);}
 /*:128*//*132:*/
-#line 2164 "hint.w"
+#line 2179 "hint.w"
 
 #define HGET_KERN(I) \
 pointer p; scaled x; \
@@ -114,7 +114,7 @@
 if ((I)&b100) subtype(p)= explicit;\
 tail_append(p);
 /*:132*//*136:*/
-#line 2215 "hint.w"
+#line 2230 "hint.w"
 
 #define HGET_LEADERS(I) \
 {pointer p;\
@@ -125,7 +125,7 @@
 else  leader_ptr(p)= hget_vbox_node();\
 tail_append(p);}
 /*:136*//*140:*/
-#line 2261 "hint.w"
+#line 2276 "hint.w"
 
 #define HGET_BASELINE(I) \
   cur_list.bs_pos= hpos-1; \
@@ -133,7 +133,7 @@
   if((I)&b100) cur_bs= hget_glue_spec(); else cur_bs= zero_glue; \
   if((I)&b010) cur_ls= hget_glue_spec(); else cur_ls= zero_glue;
 /*:140*//*145:*/
-#line 2315 "hint.w"
+#line 2330 "hint.w"
 
 #define HGET_LIG(I) \
 {pointer p,q;uint8_t f;\
@@ -144,7 +144,7 @@
 link(q)= null; flush_node_list(q);\
 }
 /*:145*//*149:*/
-#line 2367 "hint.w"
+#line 2382 "hint.w"
 
 #define HGET_DISC(I)\
   pointer p= new_disc(); \
@@ -154,7 +154,7 @@
   if ((I)&b010) pre_break(p)= hget_list_pointer(); \
   if ((I)&b001) post_break(p)= hget_list_pointer();
 /*:149*//*155:*/
-#line 2440 "hint.w"
+#line 2455 "hint.w"
 
 #define HGET_PAR(I) \
 { scaled x= 0;\
@@ -166,7 +166,7 @@
   hget_paragraph(x,0,q);\
 }
 /*:155*//*172:*/
-#line 2925 "hint.w"
+#line 2940 "hint.w"
 
 #define HGET_MATH(I) \
 { ParamDef *q; pointer p= null, a= null;\
@@ -177,7 +177,7 @@
 hset_param_list(q); hdisplay(p,a,((I)&b010)!=0); hrestore_param_list();\
 }
 /*:172*//*178:*/
-#line 2994 "hint.w"
+#line 3009 "hint.w"
 
 #define HGET_ADJUST(I) \
 { pointer p;\
@@ -186,7 +186,7 @@
   tail_append(p);\
 }
 /*:178*//*180:*/
-#line 3010 "hint.w"
+#line 3025 "hint.w"
 
 #define HGET_TABLE(I) \
 if(I&b010) ; else ;\
@@ -195,7 +195,7 @@
 hget_list_pointer();  \
 hget_list_pointer(); 
 /*:180*//*185:*/
-#line 3097 "hint.w"
+#line 3112 "hint.w"
 
 #define HGET_STREAM(I) \
 { ParamDef *q;  pointer p;\
@@ -206,7 +206,7 @@
   hset_stream_params(p,q); \
   tail_append(p);}
 /*:185*//*189:*/
-#line 3129 "hint.w"
+#line 3144 "hint.w"
 
 #define HGET_IMAGE(I) \
 {pointer p; float32_t a= 0.0; scaled w,h;\
@@ -227,7 +227,7 @@
 image_alt(p)= hget_list_pointer();\
 tail_append(p);}
 /*:189*//*193:*/
-#line 3194 "hint.w"
+#line 3209 "hint.w"
 
 #define HGET_LINK(I) \
 { pointer p;\
@@ -238,10 +238,10 @@
   label_has_name(p)= 0;\
   tail_append(p);}
 /*:193*/
-#line 7531 "hint.w"
+#line 7546 "hint.w"
 
 /*84:*/
-#line 1303 "hint.w"
+#line 1318 "hint.w"
 
 #define HTEG_XDIMEN(I,X) \
   if((I)&b001) (X).v= hteg_float32(); else (X).v= 0.0;\
@@ -248,11 +248,11 @@
   if((I)&b010) (X).h= hteg_float32();  else (X).h= 0.0;\
   if((I)&b100) HTEG32((X).w); else (X).w= 0;\
 /*:84*//*88:*/
-#line 1401 "hint.w"
+#line 1416 "hint.w"
 
 #define HTEG_STRETCH(F,O) { Stch _st;  HTEG32(_st.u); (O)= _st.u&3;  _st.u&= ~3; (F)= (scaled)(_st.f*ONE); }
 /*:88*//*90:*/
-#line 1421 "hint.w"
+#line 1436 "hint.w"
 
 #define HTEG_GLYPH(I) \
 {uint8_t f; uint32_t c;\
@@ -264,7 +264,7 @@
   tail_append(new_character(f,c));\
 }
 /*:90*//*98:*/
-#line 1500 "hint.w"
+#line 1515 "hint.w"
 
 #define HTEG_RULE(I)\
 pointer p= new_rule();\
@@ -272,7 +272,7 @@
 if ((I)&b010) HTEG32(depth(p)); else depth(p)= null_flag;\
 if ((I)&b100) HTEG32(height(p)); else height(p)= null_flag;
 /*:98*//*105:*/
-#line 1566 "hint.w"
+#line 1581 "hint.w"
 
 #define HTEG_GLUE(I) \
   p=  get_node(glue_spec_size); \
@@ -281,12 +281,12 @@
   if((I)&b010) HTEG_STRETCH(stretch(p),stretch_order(p)) else stretch(p)= 0, stretch_order(p)= normal;\
   if((I)!=b111) { if ((I)&b100) HGET32(width(p)); else width(p)= 0; }
 /*:105*//*111:*/
-#line 1677 "hint.w"
+#line 1692 "hint.w"
 
 #define IS_LIST(X)  (KIND(X)==list_kind || \
         KIND(X)==text_kind  || KIND(X)==param_kind)
 /*:111*//*116:*/
-#line 1843 "hint.w"
+#line 1858 "hint.w"
 
 #define HTEG_BOX(I) \
 p= new_null_box();\
@@ -300,7 +300,7 @@
 HTEG32(height(p));\
 node_pos= hpos-hstart-1;
 /*:116*//*123:*/
-#line 1966 "hint.w"
+#line 1981 "hint.w"
 
 #define HTEG_SET(I) \
   scaled x, st, sh; uint8_t sto, sho; \
@@ -312,7 +312,7 @@
   HTEG32(width(p));if ((I)&b001) HTEG32(depth(p));HTEG32(height(p)); \
   node_pos= hpos-hstart-1;
 /*:123*//*129:*/
-#line 2110 "hint.w"
+#line 2125 "hint.w"
 
 #define HTEG_PACK(K,I) \
 { pointer p; scaled x, s, d;  uint8_t m; \
@@ -325,7 +325,7 @@
  if (K==vpack_kind) p= vpackage(p,x,m,d); else p= hpack(p,x,m);\
  hprepend_to_vlist(p);}
 /*:129*//*133:*/
-#line 2177 "hint.w"
+#line 2192 "hint.w"
 
 #define HTEG_KERN(I) \
 pointer p; scaled x; \
@@ -337,7 +337,7 @@
 if ((I)&b100) subtype(p)= explicit;\
 tail_append(p);
 /*:133*//*137:*/
-#line 2226 "hint.w"
+#line 2241 "hint.w"
 
 #define HTEG_LEADERS(I) \
 {pointer p,q;\
@@ -348,7 +348,7 @@
 leader_ptr(p)= q;subtype(p)= a_leaders+((I)&b011)-1;\
 tail_append(p);}
 /*:137*//*141:*/
-#line 2269 "hint.w"
+#line 2284 "hint.w"
 
 #define HTEG_BASELINE(I) \
   if((I)&b010) cur_ls= hteg_glue_spec(); else cur_ls= zero_glue; \
@@ -356,7 +356,7 @@
   if((I)&b001) HTEG32(cur_lsl); else cur_lsl= 0; \
   cur_list.bs_pos= hpos-1;
 /*:141*//*146:*/
-#line 2326 "hint.w"
+#line 2341 "hint.w"
 
 #define HTEG_LIG(I) \
 {pointer p,q;\
@@ -368,7 +368,7 @@
 font(lig_char(p))= HTEG8;\
 }
 /*:146*//*150:*/
-#line 2377 "hint.w"
+#line 2392 "hint.w"
 
 #define HTEG_DISC(I)\
   pointer p= new_disc(); \
@@ -378,7 +378,7 @@
                  if ((r&0x80)==0) set_auto_disc(p); }\
   else  set_auto_disc(p);
 /*:150*//*173:*/
-#line 2936 "hint.w"
+#line 2951 "hint.w"
 
 #define HTEG_MATH(I) \
 { ParamDef *q; pointer p= null, a= null;\
@@ -389,7 +389,7 @@
 hset_param_list(q); hdisplay(p,a,((I)&b010)!=0); hrestore_param_list();\
 }
 /*:173*//*181:*/
-#line 3019 "hint.w"
+#line 3034 "hint.w"
 
 #define HTEG_TABLE(I) \
 if(I&b010) ; else ;\
@@ -398,7 +398,7 @@
 hteg_list_pointer();  \
 if ((I)&b100) hteg_xdimen_node(); else hget_xdimen_ref(HTEG8);
 /*:181*//*186:*/
-#line 3108 "hint.w"
+#line 3123 "hint.w"
 
 #define HTEG_STREAM(I) \
 {pointer p= get_node(ins_node_size); type(p)= ins_node;\
@@ -408,7 +408,7 @@
  subtype(p)= HTEG8;RNG("Stream",subtype(p),1,254);\
  tail_append(p);}
 /*:186*//*190:*/
-#line 3150 "hint.w"
+#line 3165 "hint.w"
 
 #define HTEG_IMAGE(I) \
 { pointer p; float32_t a= 0.0; scaled w,h;\
@@ -430,7 +430,7 @@
 image_width(p)= w; image_height(p)= h;\
 tail_append(p);}
 /*:190*//*194:*/
-#line 3205 "hint.w"
+#line 3220 "hint.w"
 
 #define HTEG_LINK(I) \
 { pointer p;\
@@ -441,15 +441,15 @@
   label_has_name(p)= 0;\
   tail_append(p);}
 /*:194*/
-#line 7532 "hint.w"
+#line 7547 "hint.w"
 
 
 /*21:*/
-#line 366 "hint.w"
+#line 381 "hint.w"
 
 typedef struct{pointer bs,ls;scaled lsl;}BaselineSkip;
 /*:21*//*28:*/
-#line 476 "hint.w"
+#line 491 "hint.w"
 
 typedef struct{
 char*n;
@@ -461,7 +461,7 @@
 }FontDef;
 extern FontDef*font_def;
 /*:28*//*37:*/
-#line 581 "hint.w"
+#line 596 "hint.w"
 
 typedef struct{
 uint8_t n,k;
@@ -472,40 +472,40 @@
 struct ParamDef*next;
 Param p;}ParamDef;
 /*:37*/
-#line 7534 "hint.w"
+#line 7549 "hint.w"
 
 
 
 /*2:*/
-#line 191 "hint.w"
+#line 206 "hint.w"
 
 pointer*pointer_def[32]= {NULL};
 /*:2*//*6:*/
-#line 240 "hint.w"
+#line 255 "hint.w"
 
 int32_t*integer_def;
 /*:6*//*10:*/
-#line 270 "hint.w"
+#line 285 "hint.w"
 
 scaled*dimen_def;
 /*:10*//*14:*/
-#line 300 "hint.w"
+#line 315 "hint.w"
 
 Xdimen*xdimen_def;
 /*:14*//*22:*/
-#line 370 "hint.w"
+#line 385 "hint.w"
 
 BaselineSkip*baseline_def= NULL;
 /*:22*//*29:*/
-#line 488 "hint.w"
+#line 503 "hint.w"
 
 FontDef*font_def;
 /*:29*//*38:*/
-#line 593 "hint.w"
+#line 608 "hint.w"
 
 ParamDef**param_def;
 /*:38*//*45:*/
-#line 746 "hint.w"
+#line 761 "hint.w"
 
 typedef struct{
 uint8_t pg;
@@ -513,11 +513,11 @@
 }RangeDef;
 RangeDef*range_def;
 /*:45*//*50:*/
-#line 803 "hint.w"
+#line 818 "hint.w"
 
 Stream*streams;
 /*:50*//*53:*/
-#line 817 "hint.w"
+#line 832 "hint.w"
 
 typedef struct{
 Xdimen x;
@@ -529,7 +529,7 @@
 pointer h;
 }StreamDef;
 /*:53*//*57:*/
-#line 890 "hint.w"
+#line 905 "hint.w"
 
 typedef struct{
 char*n;
@@ -543,25 +543,25 @@
 PageDef*page_def;
 PageDef*cur_page;
 /*:57*//*65:*/
-#line 1025 "hint.w"
+#line 1040 "hint.w"
 
 hint_Outline*hint_outlines= NULL;
 int outline_no= -1;
 /*:65*//*162:*/
-#line 2766 "hint.w"
+#line 2781 "hint.w"
 
 static ParamDef*line_break_params= NULL;
 /*:162*//*205:*/
-#line 3505 "hint.w"
+#line 3520 "hint.w"
 
 static scaled page_height;
 static scaled top_so_far[8];
 /*:205*//*220:*/
-#line 3783 "hint.w"
+#line 3798 "hint.w"
 
 static uint32_t map[0x10000];
 /*:220*//*225:*/
-#line 3847 "hint.w"
+#line 3862 "hint.w"
 
 #define MAX_PAGE_POS (1<<3) 
 
@@ -569,28 +569,28 @@
 int cur_loc;
 static int lo_loc,hi_loc;
 /*:225*//*242:*/
-#line 4240 "hint.w"
+#line 4257 "hint.w"
 
 scaled hvsize,hhsize;
 /*:242*//*244:*/
-#line 4268 "hint.w"
+#line 4285 "hint.w"
 
 int page_v,page_h,offset_v,offset_h;
 /*:244*//*301:*/
-#line 5547 "hint.w"
+#line 5564 "hint.w"
 
 hint_Link*hint_links= NULL;
 int max_link= -1;
 /*:301*//*359:*/
-#line 7214 "hint.w"
+#line 7231 "hint.w"
 
 jmp_buf error_exit;
 char herror_string[MAX_HERROR];
 /*:359*/
-#line 7537 "hint.w"
+#line 7552 "hint.w"
 
 /*3:*/
-#line 196 "hint.w"
+#line 211 "hint.w"
 
 static void hget_font_def(uint8_t a,uint8_t n);
 static int32_t hget_integer_def(uint8_t a);
@@ -604,32 +604,32 @@
 static void hget_font_metrics();
 static pointer hget_definition(uint8_t a);
 /*:3*//*27:*/
-#line 457 "hint.w"
+#line 472 "hint.w"
 
 static pointer hprepend_to_vlist(pointer b);
 /*:27*//*36:*/
-#line 569 "hint.w"
+#line 584 "hint.w"
 
 static pointer hget_glue_spec(void);
 static pointer hget_disc_node(void);
 /*:36*//*104:*/
-#line 1562 "hint.w"
+#line 1577 "hint.w"
 
 static scaled hget_xdimen_node(void);
 /*:104*//*117:*/
-#line 1859 "hint.w"
+#line 1874 "hint.w"
 
 static pointer hget_list_pointer(void);
 static pointer hteg_list_pointer(void);
 /*:117*//*124:*/
-#line 1977 "hint.w"
+#line 1992 "hint.w"
 
 static scaled hget_xdimen_node(void);
 /*:124*/
-#line 7538 "hint.w"
+#line 7553 "hint.w"
 
 /*9:*/
-#line 253 "hint.w"
+#line 268 "hint.w"
 
 static int32_t hget_integer_def(uint8_t a)
 {if(INFO(a)==1){int8_t n= HGET8;return n;}
@@ -644,7 +644,7 @@
 return integer_def[n];
 }
 /*:9*//*17:*/
-#line 311 "hint.w"
+#line 326 "hint.w"
 
 static scaled xdimen(Xdimen*x)
 {return round(x->w+(double)x->h*(double)hhsize+(double)x->v*(double)hvsize);
@@ -654,7 +654,7 @@
 return xdimen(xdimen_def+n);
 }
 /*:17*//*19:*/
-#line 331 "hint.w"
+#line 346 "hint.w"
 
 
 static pointer hget_glue_ref(uint8_t n)
@@ -678,7 +678,7 @@
 return new_glue(pointer_def[glue_kind][n]);
 }
 /*:19*//*32:*/
-#line 501 "hint.w"
+#line 516 "hint.w"
 
 static void hget_font_def(uint8_t a,uint8_t n)
 {char*t;
@@ -695,12 +695,12 @@
 {Kind k;
 uint8_t n;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 516 "hint.w"
+#line 531 "hint.w"
 
 k= KIND(a);
 n= HGET8;
@@ -711,7 +711,7 @@
 RNG("Font parameter",n,0,MAX_FONT_PARAMS);
 f->p[n]= hget_definition(a);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -718,13 +718,13 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 525 "hint.w"
+#line 540 "hint.w"
 
 }
 DBG(DBGDEF,"End font definition\n");
 }
 /*:32*//*33:*/
-#line 534 "hint.w"
+#line 549 "hint.w"
 
 static void hget_font_metrics(void)
 {int i;
@@ -739,7 +739,7 @@
 }
 }
 /*:33*//*41:*/
-#line 610 "hint.w"
+#line 625 "hint.w"
 
 static void free_param_list(ParamDef*p)
 {while(p!=NULL)
@@ -749,7 +749,7 @@
 }
 }
 /*:41*//*42:*/
-#line 622 "hint.w"
+#line 637 "hint.w"
 
 static ParamDef*hget_param_list(uint8_t a)
 {uint32_t s,t;
@@ -764,12 +764,12 @@
 while(hpos<list_end)
 {ParamDef*r;Param*q;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 635 "hint.w"
+#line 650 "hint.w"
 
 ALLOCATE(r,1,ParamDef);
 q= &(r->p);
@@ -781,7 +781,7 @@
 else if(KIND(a)==glue_kind)q->v= hget_glue_def(a);
 else TAGERR(a);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -788,7 +788,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 645 "hint.w"
+#line 660 "hint.w"
 
 r->next= p;
 p= r;
@@ -805,16 +805,16 @@
 else
 {ParamDef*p;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 660 "hint.w"
+#line 675 "hint.w"
 
 p= hget_param_list(a);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -821,7 +821,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 662 "hint.w"
+#line 677 "hint.w"
 
 return p;
 }
@@ -832,7 +832,7 @@
 return param_def[n];
 }
 /*:42*//*43:*/
-#line 697 "hint.w"
+#line 712 "hint.w"
 
 #define MAX_SAVE 100
 #define SAVE_BOUNDARY 0xFF
@@ -877,7 +877,7 @@
 QUIT("Parameter save stack flow");
 }
 /*:43*//*48:*/
-#line 761 "hint.w"
+#line 776 "hint.w"
 
 static void hget_range_def(uint8_t a,uint8_t pg)
 {static uint8_t n= 0;
@@ -907,7 +907,7 @@
 }
 #endif
 /*:48*//*54:*/
-#line 834 "hint.w"
+#line 849 "hint.w"
 
 static void hget_xdimen_def_node(Xdimen*x);
 
@@ -917,12 +917,12 @@
 else
 {uint8_t n;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 842 "hint.w"
+#line 857 "hint.w"
 
 DBG(DBGDEF,"Defining stream %d at "SIZE_F"\n",*hpos,hpos-hstart-1);
 n= HGET8;REF_RNG(stream_kind,n);
@@ -929,7 +929,7 @@
 s= s+n;
 if(n> 0)
 {if(INFO(a)==b100)/*55:*/
-#line 865 "hint.w"
+#line 880 "hint.w"
 
 {DBG(DBGDEF,"Defining normal stream %d at "SIZE_F"\n",*(hpos-1),hpos-hstart-2);
 hget_xdimen_def_node(&(s->x));
@@ -939,7 +939,7 @@
 HGET16(s->r);RNG("split ratio",s->r,0,1000);
 }
 /*:55*/
-#line 847 "hint.w"
+#line 862 "hint.w"
 
 else if(INFO(a)==b101)QUIT("first stream not yet implemented");
 else if(INFO(a)==b110)QUIT("last stream not yet implemented");
@@ -951,7 +951,7 @@
 s->h= hget_glue_spec();
 }
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -958,13 +958,13 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 857 "hint.w"
+#line 872 "hint.w"
 
 return true;
 }
 }
 /*:54*//*61:*/
-#line 934 "hint.w"
+#line 949 "hint.w"
 
 
 static void hset_cur_page(void)
@@ -991,7 +991,7 @@
 while(hget_stream_def(cur_page->s))continue;
 }
 /*:61*//*72:*/
-#line 1101 "hint.w"
+#line 1116 "hint.w"
 
 static pointer hget_ligature_ref(uint8_t n)
 {REF_RNG(ligature_kind,n);
@@ -1022,7 +1022,7 @@
 
 
 /*:72*//*85:*/
-#line 1310 "hint.w"
+#line 1325 "hint.w"
 
 
 static void hget_xdimen_def(Info i,Xdimen*x)
@@ -1056,12 +1056,12 @@
 static scaled hget_xdimen_node(void)
 {scaled x= 0;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 1342 "hint.w"
+#line 1357 "hint.w"
 
 if(KIND(a)==xdimen_kind)
 x= hget_xdimen(INFO(a));
@@ -1068,7 +1068,7 @@
 else
 QUIT("Extent expected at 0x%x got %s",node_pos,NAME(a));
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1075,7 +1075,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1347 "hint.w"
+#line 1362 "hint.w"
 
 return x;
 }
@@ -1082,12 +1082,12 @@
 
 static void hget_xdimen_def_node(Xdimen*x)
 {/*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 1352 "hint.w"
+#line 1367 "hint.w"
 
 if(KIND(a)==xdimen_kind)
 hget_xdimen_def(INFO(a),x);
@@ -1094,7 +1094,7 @@
 else
 QUIT("Extent expected at 0x%x got %s",node_pos,NAME(a));
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1101,13 +1101,13 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1357 "hint.w"
+#line 1372 "hint.w"
 
 }
 
 
 /*:85*//*86:*/
-#line 1363 "hint.w"
+#line 1378 "hint.w"
 
 scaled hteg_xdimen(uint8_t a)
 {Xdimen x;
@@ -1131,12 +1131,12 @@
 scaled hteg_xdimen_node(void)
 {scaled x= 0;
 /*78:*/
-#line 1226 "hint.w"
+#line 1241 "hint.w"
 
 uint8_t a,z;
 z= HTEG8,DBGTAG(z,hpos);
 /*:78*/
-#line 1385 "hint.w"
+#line 1400 "hint.w"
 
 if(KIND(z)==xdimen_kind)
 x= hteg_xdimen(z);
@@ -1143,7 +1143,7 @@
 else
 QUIT("Extent expected at 0x%x got %s",node_pos,NAME(z));
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -1151,27 +1151,27 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 1390 "hint.w"
+#line 1405 "hint.w"
 
 return x;
 }
 /*:86*//*102:*/
-#line 1538 "hint.w"
+#line 1553 "hint.w"
 
 static pointer hteg_rule_node(void)
 {pointer q= null;
 /*78:*/
-#line 1226 "hint.w"
+#line 1241 "hint.w"
 
 uint8_t a,z;
 z= HTEG8,DBGTAG(z,hpos);
 /*:78*/
-#line 1541 "hint.w"
+#line 1556 "hint.w"
 
 if(KIND(z)==rule_kind){HTEG_RULE(INFO(z));q= p;}
 else QUIT("Rule expected at 0x%x got %s",node_pos,NAME(z));
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -1179,12 +1179,12 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 1544 "hint.w"
+#line 1559 "hint.w"
 
 return q;
 }
 /*:102*//*108:*/
-#line 1607 "hint.w"
+#line 1622 "hint.w"
 
 static pointer hget_glue_spec(void)
 {pointer p= null;
@@ -1199,7 +1199,7 @@
 else
 {HGET_GLUE(INFO(a));}
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1206,7 +1206,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1620 "hint.w"
+#line 1635 "hint.w"
 
 }
 return p;
@@ -1223,7 +1223,7 @@
 {return spec2glue(hget_glue_spec());
 }
 /*:108*//*109:*/
-#line 1637 "hint.w"
+#line 1652 "hint.w"
 
 static pointer hteg_glue_spec(void)
 {pointer p= null;
@@ -1235,7 +1235,7 @@
 else
 {HTEG_GLUE(INFO(z));}
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -1243,7 +1243,7 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 1647 "hint.w"
+#line 1662 "hint.w"
 
 return p;
 }
@@ -1255,7 +1255,7 @@
 else return new_glue(zero_glue);
 }
 /*:109*//*112:*/
-#line 1682 "hint.w"
+#line 1697 "hint.w"
 
 static pointer hget_node_list(uint32_t s)
 {uint8_t*list_end= hpos+s;
@@ -1278,12 +1278,12 @@
 {pointer p= null;
 uint32_t s,t;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 1703 "hint.w"
+#line 1718 "hint.w"
 
 s= hget_list_size(INFO(a));
 hget_size_boundary(INFO(a));
@@ -1296,7 +1296,7 @@
 if(t!=s)
 QUIT("List sizes at 0x%x and "SIZE_F" do not match 0x%x != 0x%x",node_pos+1,hpos-hstart-s-1,s,t);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1303,13 +1303,13 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1714 "hint.w"
+#line 1729 "hint.w"
 
 return p;
 }
 }
 /*:112*//*113:*/
-#line 1724 "hint.w"
+#line 1739 "hint.w"
 
 
 static void hskip_list()
@@ -1347,7 +1347,7 @@
 return p;
 }
 /*:113*//*114:*/
-#line 1769 "hint.w"
+#line 1784 "hint.w"
 
 #if 0
 static int32_t hteg_integer_def(uint8_t z)
@@ -1371,12 +1371,12 @@
 while(list_start<hpos)
 {ParamDef*r;Param*q;
 /*78:*/
-#line 1226 "hint.w"
+#line 1241 "hint.w"
 
 uint8_t a,z;
 z= HTEG8,DBGTAG(z,hpos);
 /*:78*/
-#line 1791 "hint.w"
+#line 1806 "hint.w"
 
 ALLOCATE(r,1,ParamDef);
 q= &(r->p);
@@ -1388,7 +1388,7 @@
 q->n= HTEG8;
 DBG(DBGTAGS,"Defining %s %d\n",definition_name[KIND(z)],q->n);
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -1396,7 +1396,7 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 1801 "hint.w"
+#line 1816 "hint.w"
 
 r->next= p;
 p= r;
@@ -1419,22 +1419,22 @@
 return p;
 }
 /*:114*//*121:*/
-#line 1928 "hint.w"
+#line 1943 "hint.w"
 
 static pointer hteg_hbox_node(void)
 {/*78:*/
-#line 1226 "hint.w"
+#line 1241 "hint.w"
 
 uint8_t a,z;
 z= HTEG8,DBGTAG(z,hpos);
 /*:78*/
-#line 1930 "hint.w"
+#line 1945 "hint.w"
 
 if(KIND(z)!=hbox_kind)QUIT("Hbox expected at 0x%x got %s",node_pos,NAME(z));
 {pointer p;
 HTEG_BOX(INFO(z));
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -1442,7 +1442,7 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 1934 "hint.w"
+#line 1949 "hint.w"
 
 return p;
 }
@@ -1449,18 +1449,18 @@
 }
 static pointer hteg_vbox_node(void)
 {/*78:*/
-#line 1226 "hint.w"
+#line 1241 "hint.w"
 
 uint8_t a,z;
 z= HTEG8,DBGTAG(z,hpos);
 /*:78*/
-#line 1939 "hint.w"
+#line 1954 "hint.w"
 
 if(KIND(z)!=vbox_kind)QUIT("Vbox expected at 0x%x got %s",node_pos,NAME(z));
 {pointer p;
 HTEG_BOX(INFO(z));
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -1468,7 +1468,7 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 1943 "hint.w"
+#line 1958 "hint.w"
 
 type(p)= vlist_node;
 return p;
@@ -1476,7 +1476,7 @@
 }
 
 /*:121*//*127:*/
-#line 2025 "hint.w"
+#line 2040 "hint.w"
 
 static void hset(pointer p,
 uint8_t sto,scaled st,uint8_t sho,scaled sh,scaled w)
@@ -1545,7 +1545,7 @@
 }
 }
 /*:127*//*144:*/
-#line 2304 "hint.w"
+#line 2319 "hint.w"
 
 static pointer hget_text_list(uint32_t s)
 {pointer p= null;
@@ -1555,16 +1555,16 @@
 return p;
 }
 /*:144*//*153:*/
-#line 2411 "hint.w"
+#line 2426 "hint.w"
 
 static pointer hget_disc_node(void)
 {/*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 2413 "hint.w"
+#line 2428 "hint.w"
 
 if(KIND(a)!=disc_kind||INFO(a)==b000)
 QUIT("Hyphen expected at 0x%x got %s,%d",node_pos,NAME(a),INFO(a));
@@ -1571,7 +1571,7 @@
 {
 HGET_DISC(INFO(a));
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1578,13 +1578,13 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 2418 "hint.w"
+#line 2433 "hint.w"
 
 return p;
 }
 }
 /*:153*//*157:*/
-#line 2486 "hint.w"
+#line 2501 "hint.w"
 
 static void transplant_post_break_list(void)
 {pointer r,q= link(head);
@@ -1627,7 +1627,7 @@
 }
 }
 /*:157*//*158:*/
-#line 2553 "hint.w"
+#line 2568 "hint.w"
 
 pointer hget_paragraph_all(scaled x)
 {
@@ -1661,7 +1661,7 @@
 if(t!=s)
 QUIT("List sizes at 0x%x and "SIZE_F" do not match 0x%x != 0x%x",node_pos+1,hpos-hstart-s-1,s,t);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1668,7 +1668,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 2585 "hint.w"
+#line 2600 "hint.w"
 
 #if 0
 if(offset> 0&&link(head)!=null&&!is_char_node(link(head)))
@@ -1696,7 +1696,7 @@
 return null;
 }
 /*:158*//*159:*/
-#line 2616 "hint.w"
+#line 2631 "hint.w"
 
 pointer hget_paragraph_final(scaled x,uint8_t*from)
 {
@@ -1726,7 +1726,7 @@
 if(t!=s)
 QUIT("List sizes at 0x%x and "SIZE_F" do not match 0x%x != 0x%x",node_pos+1,hpos-hstart-s-1,s,t);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1733,7 +1733,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 2644 "hint.w"
+#line 2659 "hint.w"
 
 if(link(head)!=null&&!is_char_node(link(head)))
 {if(type(link(head))==disc_node)
@@ -1759,7 +1759,7 @@
 return null;
 }
 /*:159*//*165:*/
-#line 2783 "hint.w"
+#line 2798 "hint.w"
 
 pointer hget_paragraph(scaled x,uint32_t offset,ParamDef*q)
 {
@@ -1785,12 +1785,12 @@
 {scaled x= 0;
 ParamDef*q;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 2807 "hint.w"
+#line 2822 "hint.w"
 
 if(KIND(a)!=par_kind)
 QUIT("Paragrap expected found tag [%s,%d] at "SIZE_F"\n",NAME(a),INFO(a),hpos-hstart);
@@ -1800,7 +1800,7 @@
 if(INFO(a)&b010)q= hget_param_list_node();else q= hget_param_list_ref(HGET8);
 hget_paragraph(x,offset,q);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -1807,11 +1807,11 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 2815 "hint.w"
+#line 2830 "hint.w"
 
 }
 /*:165*//*168:*/
-#line 2837 "hint.w"
+#line 2852 "hint.w"
 
 void hteg_paragraph(Info i)
 {scaled x= 0;
@@ -1832,7 +1832,7 @@
 cur_list.bs_pos= NULL;
 par_head= hget_paragraph(x,0,q);
 /*169:*/
-#line 2869 "hint.w"
+#line 2884 "hint.w"
 
 {pointer p,r,par_tail;
 p= null;
@@ -1854,12 +1854,12 @@
 prev_height= height(tail);
 }
 /*:169*/
-#line 2856 "hint.w"
+#line 2871 "hint.w"
 
 hpos= par_start;
 }
 /*:168*//*184:*/
-#line 3080 "hint.w"
+#line 3095 "hint.w"
 
 static void hset_stream_params(pointer p,ParamDef*q)
 {pointer s;
@@ -1875,7 +1875,7 @@
 list_ptr(s)= null;flush_node_list(s);
 }
 /*:184*//*224:*/
-#line 3825 "hint.w"
+#line 3840 "hint.w"
 
 
 uint64_t hlocation(pointer p)
@@ -1882,7 +1882,7 @@
 {return PAGE_LOC(map[p],map[p+1]);
 }
 /*:224*//*227:*/
-#line 3871 "hint.w"
+#line 3886 "hint.w"
 
 #define NEXT_PAGE(X) (X= (X+1)&(MAX_PAGE_POS-1))
 #define PREV_PAGE(X) (X= (X-1)&(MAX_PAGE_POS-1))
@@ -1915,7 +1915,7 @@
 
 
 /*:227*//*230:*/
-#line 3933 "hint.w"
+#line 3948 "hint.w"
 
 
 void hloc_set(uint64_t h)
@@ -1929,7 +1929,7 @@
 DBG(DBGPAGE,"loc_set: %d < %d < %d\n",lo_loc,cur_loc,hi_loc);
 }
 /*:230*//*231:*/
-#line 3957 "hint.w"
+#line 3972 "hint.w"
 
 
 void hloc_set_next(pointer p)
@@ -1952,7 +1952,7 @@
 DBG(DBGPAGE,"loc_set_next: %d < %d < %d\n",lo_loc,cur_loc,hi_loc);
 }
 /*:231*//*232:*/
-#line 3994 "hint.w"
+#line 4009 "hint.w"
 
 void hloc_set_prev(pointer p)
 {int i= cur_loc;
@@ -1975,7 +1975,7 @@
 DBG(DBGPAGE,"loc_set_prev: %d < %d < %d\n",lo_loc,cur_loc,hi_loc);
 }
 /*:232*//*245:*/
-#line 4278 "hint.w"
+#line 4295 "hint.w"
 
 static void hset_margins(void)
 {if(cur_page==&(page_def[0])){
@@ -2000,7 +2000,7 @@
 }
 }
 /*:245*//*247:*/
-#line 4310 "hint.w"
+#line 4327 "hint.w"
 
 static void houtput_template(pointer p)
 {pointer q,r;
@@ -2021,7 +2021,7 @@
 streams[0].p= q;
 }
 /*:247*//*272:*/
-#line 4956 "hint.w"
+#line 4973 "hint.w"
 
 static int trv_string_size= 0;
 static char trv_string[256];
@@ -2050,7 +2050,7 @@
 return trv_string;
 }
 /*:272*//*369:*/
-#line 7448 "hint.w"
+#line 7463 "hint.w"
 
 static pointer leaks[1<<16]= {0};
 
@@ -2091,21 +2091,21 @@
 #endif
 }
 /*:369*/
-#line 7539 "hint.w"
+#line 7554 "hint.w"
 
 /*1:*/
-#line 111 "hint.w"
+#line 126 "hint.w"
 
 void hget_def_node(void)
 {Kind k;
 int n;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 115 "hint.w"
+#line 130 "hint.w"
 
 k= KIND(a);
 if(k==label_kind&&(INFO(a)&b001))HGET16(n);
@@ -2132,7 +2132,7 @@
 QUIT("Definition %d for %s out of range [%d - %d]",
 n,definition_name[k],max_fixed[k]+1,max_ref[k]);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -2139,7 +2139,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 140 "hint.w"
+#line 155 "hint.w"
 
 }
 
@@ -2172,7 +2172,7 @@
 
 void free_definitions(void)
 {/*5:*/
-#line 226 "hint.w"
+#line 241 "hint.w"
 
 {int k;
 for(k= 0;k<32;k++)
@@ -2179,27 +2179,27 @@
 {free(pointer_def[k]);pointer_def[k]= NULL;}
 }
 /*:5*//*8:*/
-#line 249 "hint.w"
+#line 264 "hint.w"
 
 free(integer_def);integer_def= NULL;
 /*:8*//*12:*/
-#line 278 "hint.w"
+#line 293 "hint.w"
 
 free(dimen_def);dimen_def= NULL;
 /*:12*//*16:*/
-#line 307 "hint.w"
+#line 322 "hint.w"
 
 free(xdimen_def);xdimen_def= NULL;
 /*:16*//*24:*/
-#line 378 "hint.w"
+#line 393 "hint.w"
 
 free(baseline_def);baseline_def= NULL;
 /*:24*//*31:*/
-#line 496 "hint.w"
+#line 511 "hint.w"
 
 free(font_def);font_def= NULL;
 /*:31*//*40:*/
-#line 601 "hint.w"
+#line 616 "hint.w"
 
 if(param_def!=NULL)
 {int i;
@@ -2208,15 +2208,15 @@
 }
 free(param_def);param_def= NULL;
 /*:40*//*47:*/
-#line 757 "hint.w"
+#line 772 "hint.w"
 
 free(range_def);range_def= NULL;
 /*:47*//*52:*/
-#line 811 "hint.w"
+#line 826 "hint.w"
 
 free(streams);streams= NULL;
 /*:52*//*60:*/
-#line 924 "hint.w"
+#line 939 "hint.w"
 
 if(page_def!=NULL)
 {int k;
@@ -2226,7 +2226,7 @@
 free(page_def);page_def= NULL;cur_page= NULL;
 }
 /*:60*//*67:*/
-#line 1037 "hint.w"
+#line 1052 "hint.w"
 
 free(labels);labels= NULL;
 {int k;
@@ -2235,7 +2235,7 @@
 free(hint_outlines);hint_outlines= NULL;outline_no= -1;
 max_outline= -1;
 /*:67*/
-#line 171 "hint.w"
+#line 186 "hint.w"
 
 }
 
@@ -2246,7 +2246,7 @@
 free_definitions();
 hget_max_definitions();
 /*4:*/
-#line 211 "hint.w"
+#line 226 "hint.w"
 
 {Kind k;
 for(k= 0;k<32;k++)
@@ -2261,47 +2261,47 @@
 }
 }
 /*:4*//*7:*/
-#line 245 "hint.w"
+#line 260 "hint.w"
 
 ALLOCATE(integer_def,max_ref[int_kind]+1,int32_t);
 /*:7*//*11:*/
-#line 274 "hint.w"
+#line 289 "hint.w"
 
 ALLOCATE(dimen_def,max_ref[dimen_kind]+1,Dimen);
 /*:11*//*15:*/
-#line 304 "hint.w"
+#line 319 "hint.w"
 
 ALLOCATE(xdimen_def,max_ref[xdimen_kind]+1,Xdimen);
 /*:15*//*20:*/
-#line 355 "hint.w"
+#line 370 "hint.w"
 
 ALLOCATE(pointer_def[glue_kind],max_ref[glue_kind]+1,pointer);
 /*:20*//*23:*/
-#line 374 "hint.w"
+#line 389 "hint.w"
 
 ALLOCATE(baseline_def,max_ref[baseline_kind]+1,BaselineSkip);
 /*:23*//*30:*/
-#line 492 "hint.w"
+#line 507 "hint.w"
 
 ALLOCATE(font_def,max_ref[font_kind]+1,FontDef);
 /*:30*//*39:*/
-#line 597 "hint.w"
+#line 612 "hint.w"
 
 ALLOCATE(param_def,max_ref[param_kind]+1,ParamDef*);
 /*:39*//*46:*/
-#line 753 "hint.w"
+#line 768 "hint.w"
 
 ALLOCATE(range_def,max_ref[range_kind]+1,RangeDef);
 /*:46*//*51:*/
-#line 807 "hint.w"
+#line 822 "hint.w"
 
 ALLOCATE(streams,max_ref[stream_kind]+1,Stream);
 /*:51*//*58:*/
-#line 904 "hint.w"
+#line 919 "hint.w"
 
 ALLOCATE(page_def,max_ref[page_kind]+1,PageDef);
 /*:58*//*66:*/
-#line 1030 "hint.w"
+#line 1045 "hint.w"
 
 if(max_ref[label_kind]>=0)
 ALLOCATE(labels,max_ref[label_kind]+1,Label);
@@ -2308,7 +2308,7 @@
 if(max_outline>=0)
 ALLOCATE(hint_outlines,max_outline+1,hint_Outline);
 /*:66*/
-#line 180 "hint.w"
+#line 195 "hint.w"
 
 hset_default_definitions();
 DBG(DBGDEF,"Reading list of definitions\n");
@@ -2316,7 +2316,7 @@
 hget_def_node();
 hget_font_metrics();
 /*59:*/
-#line 908 "hint.w"
+#line 923 "hint.w"
 
 page_def[0].d= max_depth;
 page_def[0].g= top_skip;add_glue_ref(top_skip);
@@ -2332,11 +2332,11 @@
 ALLOCATE(page_def[0].s,max_ref[stream_kind]+1,StreamDef);
 cur_page= &(page_def[0]);
 /*:59*/
-#line 186 "hint.w"
+#line 201 "hint.w"
 
 }
 /*:1*//*13:*/
-#line 282 "hint.w"
+#line 297 "hint.w"
 
 scaled hget_dimen_ref(uint8_t n)
 {REF_RNG(dimen_kind,n);
@@ -2350,7 +2350,7 @@
 {scaled d;HGET32(d);return d;}
 }
 /*:13*//*25:*/
-#line 382 "hint.w"
+#line 397 "hint.w"
 
 static void hget_baseline_def(uint8_t a,uint8_t n)
 {HGET_BASELINE(INFO(a));
@@ -2385,7 +2385,7 @@
 return p;
 }
 /*:25*//*26:*/
-#line 436 "hint.w"
+#line 451 "hint.w"
 
 static pointer hprepend_to_vlist(pointer b)
 {scaled d;
@@ -2406,12 +2406,12 @@
 return p;
 }
 /*:26*//*68:*/
-#line 1050 "hint.w"
+#line 1065 "hint.w"
 
 void hget_outline_or_label_def(Info i,int n)
 {if(i&b100)
 /*70:*/
-#line 1071 "hint.w"
+#line 1086 "hint.w"
 
 {hint_Outline*t;
 uint64_t pos;
@@ -2423,7 +2423,7 @@
 t->p= hget_list_pointer();
 t->title= strdup(hlist_to_string(t->p));
 /*71:*/
-#line 1087 "hint.w"
+#line 1102 "hint.w"
 
 where= labels[n].where;
 #if 1
@@ -2432,17 +2432,17 @@
 pos= ((uint64_t)labels[n].pos0<<32);
 #endif
 /*:71*/
-#line 1081 "hint.w"
+#line 1096 "hint.w"
 
 t->where= where;
 t->pos= pos;
 }
 /*:70*/
-#line 1053 "hint.w"
+#line 1068 "hint.w"
 
 else
 /*69:*/
-#line 1059 "hint.w"
+#line 1074 "hint.w"
 
 {Label*t= labels+n;
 HGET32(t->pos);
@@ -2454,11 +2454,11 @@
 DBG(DBGDEF,"Label 0x%x+0x%x where=%d font=%d\n",t->pos0,t->pos,t->where,t->f);
 }
 /*:69*/
-#line 1055 "hint.w"
+#line 1070 "hint.w"
 
 }
 /*:68*//*73:*/
-#line 1151 "hint.w"
+#line 1166 "hint.w"
 
 static void hget_content_section()
 {DBG(DBGDIR,"Reading Content Section\n");
@@ -2465,22 +2465,22 @@
 hget_section(2);
 }
 /*:73*//*101:*/
-#line 1527 "hint.w"
+#line 1542 "hint.w"
 
 pointer hget_rule_node(void)
 {pointer q= null;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 1530 "hint.w"
+#line 1545 "hint.w"
 
 if(KIND(a)==rule_kind){HGET_RULE(INFO(a));q= p;}
 else QUIT("Rule expected at 0x%x got %s",node_pos,NAME(a));
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -2487,27 +2487,27 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1533 "hint.w"
+#line 1548 "hint.w"
 
 return q;
 }
 /*:101*//*120:*/
-#line 1903 "hint.w"
+#line 1918 "hint.w"
 
 pointer hget_hbox_node(void)
 {/*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 1905 "hint.w"
+#line 1920 "hint.w"
 
 if(KIND(a)!=hbox_kind)QUIT("Hbox expected at 0x%x got %s",node_pos,NAME(a));
 {pointer p;
 HGET_BOX(INFO(a));
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -2514,7 +2514,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1909 "hint.w"
+#line 1924 "hint.w"
 
 return p;
 }
@@ -2524,18 +2524,18 @@
 pointer hget_vbox_node(void)
 {
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 1917 "hint.w"
+#line 1932 "hint.w"
 
 if(KIND(a)!=vbox_kind)QUIT("Vbox expected at 0x%x got %s",node_pos,NAME(a));
 {pointer p;
 HGET_BOX(INFO(a));
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -2542,7 +2542,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1921 "hint.w"
+#line 1936 "hint.w"
 
 type(p)= vlist_node;
 return p;
@@ -2549,7 +2549,7 @@
 }
 }
 /*:120*//*160:*/
-#line 2671 "hint.w"
+#line 2686 "hint.w"
 
 pointer hget_paragraph_initial(scaled x,uint8_t*to)
 {
@@ -2587,7 +2587,7 @@
 if(t!=s)
 QUIT("List sizes at 0x%x and "SIZE_F" do not match 0x%x != 0x%x",node_pos+1,hpos-hstart-s-1,s,t);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -2594,7 +2594,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 2707 "hint.w"
+#line 2722 "hint.w"
 
 if(needs_bs)
 QUIT("Unexpected trailing baseline node");
@@ -2605,7 +2605,7 @@
 else
 {pointer par_ptr= link(head);
 /*161:*/
-#line 2735 "hint.w"
+#line 2750 "hint.w"
 
 if(is_char_node(tail))tail_append(new_penalty(inf_penalty))
 else if(type(tail)!=glue_node)tail_append(new_penalty(inf_penalty))
@@ -2615,7 +2615,7 @@
 }
 tail_append(new_glue(zero_glue));
 /*:161*/
-#line 2716 "hint.w"
+#line 2731 "hint.w"
 
 pop_nest();
 store_map(par_ptr,node_pos,0);
@@ -2627,16 +2627,16 @@
 return null;
 }
 /*:160*/
-#line 7540 "hint.w"
+#line 7555 "hint.w"
 
 /*80:*/
-#line 1245 "hint.w"
+#line 1260 "hint.w"
 
 static void hteg_node(uint8_t z)
 {switch(z)
 {
 /*92:*/
-#line 1439 "hint.w"
+#line 1454 "hint.w"
 
 case TAG(glyph_kind,1):HTEG_GLYPH(1);break;
 case TAG(glyph_kind,2):HTEG_GLYPH(2);break;
@@ -2643,13 +2643,13 @@
 case TAG(glyph_kind,3):HTEG_GLYPH(3);break;
 case TAG(glyph_kind,4):HTEG_GLYPH(4);break;
 /*:92*//*94:*/
-#line 1454 "hint.w"
+#line 1469 "hint.w"
 
 case TAG(penalty_kind,0):tail_append(new_penalty(hget_integer_ref(HTEG8)));break;
 case TAG(penalty_kind,1):{tail_append(new_penalty(HTEG8));}break;
 case TAG(penalty_kind,2):{int16_t n;HTEG16(n);RNG("Penalty",n,-20000,+20000);tail_append(new_penalty(n));}break;
 /*:94*//*96:*/
-#line 1474 "hint.w"
+#line 1489 "hint.w"
 
 case TAG(language_kind,b000):(void)HTEG8;
 case TAG(language_kind,1):
@@ -2660,7 +2660,7 @@
 case TAG(language_kind,6):
 case TAG(language_kind,7):break;
 /*:96*//*100:*/
-#line 1517 "hint.w"
+#line 1532 "hint.w"
 
 case TAG(rule_kind,b000):tail_append(hget_rule_ref(HTEG8));prev_height= ignore_depth;break;
 case TAG(rule_kind,b011):{HTEG_RULE(b011);tail_append(p);prev_height= ignore_depth;}break;
@@ -2669,7 +2669,7 @@
 case TAG(rule_kind,b110):{HTEG_RULE(b110);tail_append(p);prev_height= ignore_depth;}break;
 case TAG(rule_kind,b111):{HTEG_RULE(b111);tail_append(p);prev_height= ignore_depth;}break;
 /*:100*//*107:*/
-#line 1588 "hint.w"
+#line 1603 "hint.w"
 
 case TAG(glue_kind,b000):tail_append(new_glue(hget_glue_ref(HTEG8)));break;
 case TAG(glue_kind,b001):{pointer p;HTEG_GLUE(b001);tail_append(spec2glue(p));}break;
@@ -2680,7 +2680,7 @@
 case TAG(glue_kind,b110):{pointer p;HTEG_GLUE(b110);tail_append(spec2glue(p));}break;
 case TAG(glue_kind,b111):{pointer p;HTEG_GLUE(b111);tail_append(spec2glue(p));}break;
 /*:107*//*119:*/
-#line 1884 "hint.w"
+#line 1899 "hint.w"
 
 case TAG(hbox_kind,b000):{pointer p;HTEG_BOX(b000);hprepend_to_vlist(p);}break;
 case TAG(hbox_kind,b001):{pointer p;HTEG_BOX(b001);hprepend_to_vlist(p);}break;
@@ -2699,7 +2699,7 @@
 case TAG(vbox_kind,b110):{pointer p;HTEG_BOX(b110);type(p)= vlist_node;hprepend_to_vlist(p);}break;
 case TAG(vbox_kind,b111):{pointer p;HTEG_BOX(b111);type(p)= vlist_node;hprepend_to_vlist(p);}break;
 /*:119*//*126:*/
-#line 2002 "hint.w"
+#line 2017 "hint.w"
 
 case TAG(hset_kind,b000):{pointer p;HTEG_SET(b000);hset(p,sto,st,sho,sh,x);hprepend_to_vlist(p);}break;
 case TAG(hset_kind,b001):{pointer p;HTEG_SET(b001);hset(p,sto,st,sho,sh,x);hprepend_to_vlist(p);}break;
@@ -2719,7 +2719,7 @@
 case TAG(vset_kind,b110):{pointer p;HTEG_SET(b110);vset(p,sto,st,sho,sh,x);hprepend_to_vlist(p);}break;
 case TAG(vset_kind,b111):{pointer p;HTEG_SET(b111);vset(p,sto,st,sho,sh,x);hprepend_to_vlist(p);}break;
 /*:126*//*131:*/
-#line 2142 "hint.w"
+#line 2157 "hint.w"
 
 case TAG(hpack_kind,b000):HTEG_PACK(hpack_kind,b000);break;
 case TAG(hpack_kind,b010):HTEG_PACK(hpack_kind,b010);break;
@@ -2739,7 +2739,7 @@
 case TAG(vpack_kind,b101):HTEG_PACK(vpack_kind,b101);break;
 case TAG(vpack_kind,b111):HTEG_PACK(vpack_kind,b111);break;
 /*:131*//*135:*/
-#line 2201 "hint.w"
+#line 2216 "hint.w"
 
 case TAG(kern_kind,b000):{HTEG_KERN(b000);}break;
 case TAG(kern_kind,b001):{HTEG_KERN(b001);}break;
@@ -2750,7 +2750,7 @@
 case TAG(kern_kind,b110):{HTEG_KERN(b110);}break;
 case TAG(kern_kind,b111):{HTEG_KERN(b111);}break;
 /*:135*//*139:*/
-#line 2248 "hint.w"
+#line 2263 "hint.w"
 
 case TAG(leaders_kind,0):tail_append(hget_leaders_ref(HTEG8));break;
 case TAG(leaders_kind,1):HTEG_LEADERS(1);break;
@@ -2760,7 +2760,7 @@
 case TAG(leaders_kind,b100|2):HTEG_LEADERS(b100|2);break;
 case TAG(leaders_kind,b100|3):HTEG_LEADERS(b100|3);break;
 /*:139*//*143:*/
-#line 2289 "hint.w"
+#line 2304 "hint.w"
 
 case TAG(baseline_kind,b000):{hget_baseline_ref(HTEG8);cur_list.bs_pos= hpos-1;}break;
 case TAG(baseline_kind,b010):{HTEG_BASELINE(b010);}break;
@@ -2770,7 +2770,7 @@
 case TAG(baseline_kind,b110):{HTEG_BASELINE(b110);}break;
 case TAG(baseline_kind,b111):{HTEG_BASELINE(b111);}break;
 /*:143*//*148:*/
-#line 2350 "hint.w"
+#line 2365 "hint.w"
 
 case TAG(ligature_kind,0):tail_append(hget_ligature_ref(HTEG8));break;
 case TAG(ligature_kind,1):HTEG_LIG(1);break;
@@ -2781,7 +2781,7 @@
 case TAG(ligature_kind,6):HTEG_LIG(6);break;
 case TAG(ligature_kind,7):HTEG_LIG(7);break;
 /*:148*//*152:*/
-#line 2399 "hint.w"
+#line 2414 "hint.w"
 
 case TAG(disc_kind,b000):tail_append(hget_hyphen_ref(HTEG8));break;
 case TAG(disc_kind,b001):{HTEG_DISC(b001);tail_append(p);}break;
@@ -2792,7 +2792,7 @@
 case TAG(disc_kind,b110):{HTEG_DISC(b110);tail_append(p);}break;
 case TAG(disc_kind,b111):{HTEG_DISC(b111);tail_append(p);}break;
 /*:152*//*167:*/
-#line 2824 "hint.w"
+#line 2839 "hint.w"
 
 case TAG(par_kind,b000):hteg_paragraph(b000);break;
 case TAG(par_kind,b010):hteg_paragraph(b010);break;
@@ -2799,7 +2799,7 @@
 case TAG(par_kind,b100):hteg_paragraph(b100);break;
 case TAG(par_kind,b110):hteg_paragraph(b110);break;
 /*:167*//*175:*/
-#line 2957 "hint.w"
+#line 2972 "hint.w"
 
 case TAG(math_kind,b000):HTEG_MATH(b000);break;
 case TAG(math_kind,b001):HTEG_MATH(b001);break;
@@ -2808,12 +2808,12 @@
 case TAG(math_kind,b101):HTEG_MATH(b101);break;
 case TAG(math_kind,b110):HTEG_MATH(b110);break;
 /*:175*//*177:*/
-#line 2981 "hint.w"
+#line 2996 "hint.w"
 
 case TAG(math_kind,b111):tail_append(new_math(0,before));break;
 case TAG(math_kind,b011):tail_append(new_math(0,after));break;
 /*:177*//*183:*/
-#line 3051 "hint.w"
+#line 3066 "hint.w"
 
 case TAG(table_kind,b000):HTEG_TABLE(b000);break;
 case TAG(table_kind,b001):HTEG_TABLE(b001);break;
@@ -2833,12 +2833,12 @@
 case TAG(item_kind,b110):hteg_content();break;
 case TAG(item_kind,b111):hteg_content();(void)HTEG8;break;
 /*:183*//*188:*/
-#line 3123 "hint.w"
+#line 3138 "hint.w"
 
 case TAG(stream_kind,b000):HTEG_STREAM(b000);break;
 case TAG(stream_kind,b010):HTEG_STREAM(b010);break;
 /*:188*//*192:*/
-#line 3182 "hint.w"
+#line 3197 "hint.w"
 
 case TAG(image_kind,b000):hget_image_ref(HTEG8);break;
 case TAG(image_kind,b001):HTEG_IMAGE(b001);break;
@@ -2849,7 +2849,7 @@
 case TAG(image_kind,b110):HTEG_IMAGE(b110);break;
 case TAG(image_kind,b111):HTEG_IMAGE(b111);break;
 /*:192*//*196:*/
-#line 3222 "hint.w"
+#line 3237 "hint.w"
 
 case TAG(link_kind,b000):HTEG_LINK(b000);break;
 case TAG(link_kind,b001):HTEG_LINK(b001);break;
@@ -2856,7 +2856,7 @@
 case TAG(link_kind,b010):HTEG_LINK(b010);break;
 case TAG(link_kind,b011):HTEG_LINK(b011);break;
 /*:196*/
-#line 1249 "hint.w"
+#line 1264 "hint.w"
 
 default:
 TAGERR(z);
@@ -2865,17 +2865,17 @@
 
 void hteg_content(void)
 {/*78:*/
-#line 1226 "hint.w"
+#line 1241 "hint.w"
 
 uint8_t a,z;
 z= HTEG8,DBGTAG(z,hpos);
 /*:78*/
-#line 1256 "hint.w"
+#line 1271 "hint.w"
 
 node_pos= hpos-hstart;
 hteg_node(z);
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -2883,7 +2883,7 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 1259 "hint.w"
+#line 1274 "hint.w"
 
 node_pos= hpos-hstart;
 if(nest_ptr==0&&tail!=head
@@ -2896,16 +2896,16 @@
 store_map(tail,node_pos,0);
 }
 /*:80*//*154:*/
-#line 2424 "hint.w"
+#line 2439 "hint.w"
 
 pointer hteg_disc_node(void)
 {/*78:*/
-#line 1226 "hint.w"
+#line 1241 "hint.w"
 
 uint8_t a,z;
 z= HTEG8,DBGTAG(z,hpos);
 /*:78*/
-#line 2426 "hint.w"
+#line 2441 "hint.w"
 
 if(KIND(z)!=disc_kind||INFO(z)==b000)
 QUIT("Hyphen expected at 0x%x got %s,%d",node_pos,NAME(z),INFO(z));
@@ -2912,7 +2912,7 @@
 {
 HTEG_DISC(INFO(z));
 /*79:*/
-#line 1231 "hint.w"
+#line 1246 "hint.w"
 
 a= HTEG8,DBGTAG(a,hpos);
 if(z!=a)
@@ -2920,13 +2920,13 @@
 NAME(a),INFO(a),NAME(z),INFO(z),hpos-hstart,node_pos);
 
 /*:79*/
-#line 2431 "hint.w"
+#line 2446 "hint.w"
 
 return p;
 }
 }
 /*:154*//*170:*/
-#line 2893 "hint.w"
+#line 2908 "hint.w"
 
 void hteg_par_node(uint32_t offset)
 {scaled x= 0;
@@ -2936,12 +2936,12 @@
 uint8_t*bs_pos= cur_list.bs_pos;
 scaled ph= prev_height;
 /*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 2901 "hint.w"
+#line 2916 "hint.w"
 
 node_pos= (hpos-hstart)-1;
 if(INFO(a)&b100)x= hget_xdimen_node();else x= hget_xdimen_ref(HGET8);
@@ -2949,7 +2949,7 @@
 prev_graf= 0;
 p= hget_paragraph_initial(x,hstart+node_pos+offset);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -2956,7 +2956,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 2907 "hint.w"
+#line 2922 "hint.w"
 
 cur_list.bs_pos= NULL;
 if(p!=null)
@@ -2963,7 +2963,7 @@
 line_break(hget_integer_ref(widow_penalty_no),p);
 if(par_head!=tail)
 /*169:*/
-#line 2869 "hint.w"
+#line 2884 "hint.w"
 
 {pointer p,r,par_tail;
 p= null;
@@ -2985,7 +2985,7 @@
 prev_height= height(tail);
 }
 /*:169*/
-#line 2912 "hint.w"
+#line 2927 "hint.w"
 
 hpos= hstart+node_pos;
 line_break_params= save_lbp;
@@ -2992,16 +2992,16 @@
 }
 
 /*:170*/
-#line 7541 "hint.w"
+#line 7556 "hint.w"
 
 
 /*18:*/
-#line 323 "hint.w"
+#line 338 "hint.w"
 
 void print_xdimen(int i)
 {}
 /*:18*//*34:*/
-#line 552 "hint.w"
+#line 567 "hint.w"
 
 uint16_t hglyph_section(uint8_t f)
 {return font_def[f].q;
@@ -3011,7 +3011,7 @@
 {return font_def[f].s;
 }
 /*:34*//*62:*/
-#line 962 "hint.w"
+#line 977 "hint.w"
 
 static void hinsert_stream(uint8_t n)
 {REF_RNG(stream_kind,n);
@@ -3038,7 +3038,7 @@
 }
 }
 /*:62*//*63:*/
-#line 992 "hint.w"
+#line 1007 "hint.w"
 
 void hfill_page_template(void)
 {pointer p;
@@ -3059,7 +3059,7 @@
 hmark_page();
 }
 /*:63*//*76:*/
-#line 1185 "hint.w"
+#line 1200 "hint.w"
 
 
 static void hget_node(uint8_t a)
@@ -3066,11 +3066,11 @@
 {switch(a)
 {
 /*56:*/
-#line 883 "hint.w"
+#line 898 "hint.w"
 
 case TAG(stream_kind,b100):hinsert_stream(HGET8);break;
 /*:56*//*91:*/
-#line 1433 "hint.w"
+#line 1448 "hint.w"
 
 case TAG(glyph_kind,1):HGET_GLYPH(1);break;
 case TAG(glyph_kind,2):HGET_GLYPH(2);break;
@@ -3077,13 +3077,13 @@
 case TAG(glyph_kind,3):HGET_GLYPH(3);break;
 case TAG(glyph_kind,4):HGET_GLYPH(4);break;
 /*:91*//*93:*/
-#line 1448 "hint.w"
+#line 1463 "hint.w"
 
 case TAG(penalty_kind,0):tail_append(new_penalty(hget_integer_ref(HGET8)));break;
 case TAG(penalty_kind,1):{tail_append(new_penalty(HGET8));}break;
 case TAG(penalty_kind,2):{int16_t n;HGET16(n);RNG("Penalty",n,-20000,+20000);tail_append(new_penalty(n));}break;
 /*:93*//*95:*/
-#line 1462 "hint.w"
+#line 1477 "hint.w"
 
 case TAG(language_kind,b000):(void)HGET8;
 case TAG(language_kind,1):
@@ -3094,7 +3094,7 @@
 case TAG(language_kind,6):
 case TAG(language_kind,7):break;
 /*:95*//*99:*/
-#line 1508 "hint.w"
+#line 1523 "hint.w"
 
 case TAG(rule_kind,b000):tail_append(hget_rule_ref(HGET8));prev_depth= ignore_depth;break;
 case TAG(rule_kind,b011):{HGET_RULE(b011);tail_append(p);prev_depth= ignore_depth;}break;
@@ -3103,7 +3103,7 @@
 case TAG(rule_kind,b110):{HGET_RULE(b110);tail_append(p);prev_depth= ignore_depth;}break;
 case TAG(rule_kind,b111):{HGET_RULE(b111);tail_append(p);prev_depth= ignore_depth;}break;
 /*:99*//*106:*/
-#line 1576 "hint.w"
+#line 1591 "hint.w"
 
 case TAG(glue_kind,b000):tail_append(new_glue(hget_glue_ref(HGET8)));break;
 case TAG(glue_kind,b001):{pointer p;HGET_GLUE(b001);tail_append(spec2glue(p));}break;
@@ -3114,7 +3114,7 @@
 case TAG(glue_kind,b110):{pointer p;HGET_GLUE(b110);tail_append(spec2glue(p));}break;
 case TAG(glue_kind,b111):{pointer p;HGET_GLUE(b111);tail_append(spec2glue(p));}break;
 /*:106*//*118:*/
-#line 1865 "hint.w"
+#line 1880 "hint.w"
 
 case TAG(hbox_kind,b000):{pointer p;HGET_BOX(b000);happend_to_vlist(p);}break;
 case TAG(hbox_kind,b001):{pointer p;HGET_BOX(b001);happend_to_vlist(p);}break;
@@ -3133,7 +3133,7 @@
 case TAG(vbox_kind,b110):{pointer p;HGET_BOX(b110);type(p)= vlist_node;happend_to_vlist(p);}break;
 case TAG(vbox_kind,b111):{pointer p;HGET_BOX(b111);type(p)= vlist_node;happend_to_vlist(p);}break;
 /*:118*//*125:*/
-#line 1981 "hint.w"
+#line 1996 "hint.w"
 
 case TAG(hset_kind,b000):{pointer p;HGET_SET(b000);hset(p,sto,st,sho,sh,x);happend_to_vlist(p);}break;
 case TAG(hset_kind,b001):{pointer p;HGET_SET(b001);hset(p,sto,st,sho,sh,x);happend_to_vlist(p);}break;
@@ -3153,7 +3153,7 @@
 case TAG(vset_kind,b110):{pointer p;HGET_SET(b110);vset(p,sto,st,sho,sh,x);happend_to_vlist(p);}break;
 case TAG(vset_kind,b111):{pointer p;HGET_SET(b111);vset(p,sto,st,sho,sh,x);happend_to_vlist(p);}break;
 /*:125*//*130:*/
-#line 2123 "hint.w"
+#line 2138 "hint.w"
 
 case TAG(hpack_kind,b000):HGET_PACK(hpack_kind,b000);break;
 case TAG(hpack_kind,b010):HGET_PACK(hpack_kind,b010);break;
@@ -3173,7 +3173,7 @@
 case TAG(vpack_kind,b101):HGET_PACK(vpack_kind,b101);break;
 case TAG(vpack_kind,b111):HGET_PACK(vpack_kind,b111);break;
 /*:130*//*134:*/
-#line 2190 "hint.w"
+#line 2205 "hint.w"
 
 case TAG(kern_kind,b000):{HGET_KERN(b000);}break;
 case TAG(kern_kind,b001):{HGET_KERN(b001);}break;
@@ -3184,7 +3184,7 @@
 case TAG(kern_kind,b110):{HGET_KERN(b110);}break;
 case TAG(kern_kind,b111):{HGET_KERN(b111);}break;
 /*:134*//*138:*/
-#line 2239 "hint.w"
+#line 2254 "hint.w"
 
 case TAG(leaders_kind,0):tail_append(hget_leaders_ref(HGET8));break;
 case TAG(leaders_kind,1):HGET_LEADERS(1);break;
@@ -3194,7 +3194,7 @@
 case TAG(leaders_kind,b100|2):HGET_LEADERS(b100|2);break;
 case TAG(leaders_kind,b100|3):HGET_LEADERS(b100|3);break;
 /*:138*//*142:*/
-#line 2279 "hint.w"
+#line 2294 "hint.w"
 
 case TAG(baseline_kind,b000):{cur_list.bs_pos= hpos-1;hget_baseline_ref(HGET8);}break;
 case TAG(baseline_kind,b010):{HGET_BASELINE(b010);}break;
@@ -3204,7 +3204,7 @@
 case TAG(baseline_kind,b110):{HGET_BASELINE(b110);}break;
 case TAG(baseline_kind,b111):{HGET_BASELINE(b111);}break;
 /*:142*//*147:*/
-#line 2339 "hint.w"
+#line 2354 "hint.w"
 
 case TAG(ligature_kind,0):tail_append(hget_ligature_ref(HGET8));break;
 case TAG(ligature_kind,1):HGET_LIG(1);break;
@@ -3215,7 +3215,7 @@
 case TAG(ligature_kind,6):HGET_LIG(6);break;
 case TAG(ligature_kind,7):HGET_LIG(7);break;
 /*:147*//*151:*/
-#line 2389 "hint.w"
+#line 2404 "hint.w"
 
 case TAG(disc_kind,b000):tail_append(hget_hyphen_ref(HGET8));break;
 case TAG(disc_kind,b001):{HGET_DISC(b001);tail_append(p);}break;
@@ -3226,7 +3226,7 @@
 case TAG(disc_kind,b110):{HGET_DISC(b110);tail_append(p);}break;
 case TAG(disc_kind,b111):{HGET_DISC(b111);tail_append(p);}break;
 /*:151*//*156:*/
-#line 2452 "hint.w"
+#line 2467 "hint.w"
 
 case TAG(par_kind,b000):HGET_PAR(b000);break;
 case TAG(par_kind,b010):HGET_PAR(b010);break;
@@ -3233,7 +3233,7 @@
 case TAG(par_kind,b100):HGET_PAR(b100);break;
 case TAG(par_kind,b110):HGET_PAR(b110);break;
 /*:156*//*174:*/
-#line 2948 "hint.w"
+#line 2963 "hint.w"
 
 case TAG(math_kind,b000):HGET_MATH(b000);break;
 case TAG(math_kind,b001):HGET_MATH(b001);break;
@@ -3242,16 +3242,16 @@
 case TAG(math_kind,b101):HGET_MATH(b101);break;
 case TAG(math_kind,b110):HGET_MATH(b110);break;
 /*:174*//*176:*/
-#line 2977 "hint.w"
+#line 2992 "hint.w"
 
 case TAG(math_kind,b111):tail_append(new_math(0,before));break;
 case TAG(math_kind,b011):tail_append(new_math(0,after));break;
 /*:176*//*179:*/
-#line 3003 "hint.w"
+#line 3018 "hint.w"
 
 case TAG(adjust_kind,1):HGET_ADJUST(1);break;
 /*:179*//*182:*/
-#line 3031 "hint.w"
+#line 3046 "hint.w"
 
 case TAG(table_kind,b000):HGET_TABLE(b000);break;
 case TAG(table_kind,b001):HGET_TABLE(b001);break;
@@ -3271,12 +3271,12 @@
 case TAG(item_kind,b110):hget_content();break;
 case TAG(item_kind,b111):(void)HGET8;hget_content();break;
 /*:182*//*187:*/
-#line 3118 "hint.w"
+#line 3133 "hint.w"
 
 case TAG(stream_kind,b000):HGET_STREAM(b000);break;
 case TAG(stream_kind,b010):HGET_STREAM(b010);break;
 /*:187*//*191:*/
-#line 3172 "hint.w"
+#line 3187 "hint.w"
 
 case TAG(image_kind,b000):hget_image_ref(HGET8);break;
 case TAG(image_kind,b001):HGET_IMAGE(b001);break;
@@ -3287,7 +3287,7 @@
 case TAG(image_kind,b110):HGET_IMAGE(b110);break;
 case TAG(image_kind,b111):HGET_IMAGE(b111);break;
 /*:191*//*195:*/
-#line 3216 "hint.w"
+#line 3231 "hint.w"
 
 case TAG(link_kind,b000):HGET_LINK(b000);break;
 case TAG(link_kind,b001):HGET_LINK(b001);break;
@@ -3294,7 +3294,7 @@
 case TAG(link_kind,b010):HGET_LINK(b010);break;
 case TAG(link_kind,b011):HGET_LINK(b011);break;
 /*:195*/
-#line 1190 "hint.w"
+#line 1205 "hint.w"
 
 default:
 TAGERR(a);
@@ -3303,17 +3303,17 @@
 
 void hget_content(void)
 {/*74:*/
-#line 1165 "hint.w"
+#line 1180 "hint.w"
 
 uint8_t a,z;
 HGETTAG(a);
 /*:74*/
-#line 1197 "hint.w"
+#line 1212 "hint.w"
 
 node_pos= (hpos-hstart)-1;
 hget_node(a);
 /*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
 
 HGETTAG(z);
 if(a!=z)
@@ -3320,7 +3320,7 @@
 QUIT("Tag mismatch [%s,%d]!=[%s,%d] at 0x%x to "SIZE_F"\n",
 NAME(a),INFO(a),NAME(z),INFO(z),node_pos,hpos-hstart-1);
 /*:75*/
-#line 1200 "hint.w"
+#line 1215 "hint.w"
 
 if(nest_ptr==0&&tail!=head&&(type(tail)==penalty_node||type(tail)==glue_node||type(tail)==kern_node))
 store_map(tail,node_pos,0);
@@ -3337,13 +3337,13 @@
 return p;
 }
 /*:76*//*163:*/
-#line 2773 "hint.w"
+#line 2788 "hint.w"
 
 void set_line_break_params(void)
 {hset_param_list(line_break_params);
 }
 /*:163*//*199:*/
-#line 3349 "hint.w"
+#line 3364 "hint.w"
 
 pointer skip(uint8_t n)
 {return cur_page->s[n].g;}
@@ -3355,7 +3355,7 @@
 {return xdimen(&cur_page->s[n].x);}
 
 /*:199*//*200:*/
-#line 3374 "hint.w"
+#line 3389 "hint.w"
 
 void hpage_init(void)
 {int i;
@@ -3378,7 +3378,7 @@
 }
 }
 /*:200*//*202:*/
-#line 3405 "hint.w"
+#line 3420 "hint.w"
 
 void hflush_contribution_list(void)
 {if(link(contrib_head)!=null)
@@ -3387,7 +3387,7 @@
 }
 }
 /*:202*//*204:*/
-#line 3449 "hint.w"
+#line 3464 "hint.w"
 
 static bool hbuild_page_up(void)
 {
@@ -3399,12 +3399,12 @@
 if(link(contrib_head)==null)return false;
 do{p= link(contrib_head);
 /*209:*/
-#line 3571 "hint.w"
+#line 3586 "hint.w"
 
 switch(type(p)){
 case hlist_node:case vlist_node:case rule_node:
 /*206:*/
-#line 3515 "hint.w"
+#line 3530 "hint.w"
 
 if(page_contents<box_there)
 {if(page_contents==empty)freeze_page_specs(box_there);
@@ -3413,17 +3413,17 @@
 page_total= depth(p)-page_max_depth;
 depth(p)= 0;
 /*207:*/
-#line 3541 "hint.w"
+#line 3556 "hint.w"
 
 {page_top_height= width(top_skip);
 page_total= page_total+page_top_height;
 }
 /*:207*/
-#line 3522 "hint.w"
+#line 3537 "hint.w"
 
 }
 /*208:*/
-#line 3550 "hint.w"
+#line 3565 "hint.w"
 
 {int i;
 for(i= 1;i<=6;i++)
@@ -3432,7 +3432,7 @@
 }
 }
 /*:208*/
-#line 3524 "hint.w"
+#line 3539 "hint.w"
 
 page_total+= page_height+depth(p);
 if(height(p)> page_top_height)
@@ -3442,15 +3442,15 @@
 else
 page_height= height(p);
 /*:206*/
-#line 3574 "hint.w"
+#line 3589 "hint.w"
 goto contribute;
 case whatsit_node:goto contribute;
 case glue_node:/*212:*/
-#line 3609 "hint.w"
+#line 3624 "hint.w"
 
 if(link(p)==null)return false;
 /*213:*/
-#line 3616 "hint.w"
+#line 3631 "hint.w"
 
 #define top_shrink top_so_far[6]
 #define top_total top_so_far[1]
@@ -3463,15 +3463,15 @@
 top_total+= width(q);
 }
 /*:213*/
-#line 3611 "hint.w"
+#line 3626 "hint.w"
 
 if(page_contents==empty||!precedes_break(link(p)))goto contribute;
 pi= 0;
 /*:212*/
-#line 3576 "hint.w"
+#line 3591 "hint.w"
 break;
 case kern_node:/*214:*/
-#line 3632 "hint.w"
+#line 3647 "hint.w"
 
 top_total+= width(p);
 if(page_contents==empty||
@@ -3480,7 +3480,7 @@
 goto contribute;
 pi= 0;
 /*:214*/
-#line 3577 "hint.w"
+#line 3592 "hint.w"
 break;
 case penalty_node:if(page_contents==empty)goto done1;else pi= penalty(p);break;
 case ins_node:happend_insertion(p);goto contribute;
@@ -3487,14 +3487,14 @@
 default:DBG(DBGTEX,"Unexpected node type %d in build_page_up ignored\n",type(p));
 }
 /*217:*/
-#line 3666 "hint.w"
+#line 3681 "hint.w"
 
 if(pi<inf_penalty)
 {/*215:*/
-#line 3646 "hint.w"
+#line 3661 "hint.w"
 
 /*216:*/
-#line 3657 "hint.w"
+#line 3672 "hint.w"
 
 if(page_total<page_goal)
 {if((page_so_far[3]!=0)||(page_so_far[4]!=0)||(page_so_far[5]!=0))b= 0;
@@ -3503,7 +3503,7 @@
 else if(page_total-page_goal> page_shrink)b= awful_bad;
 else b= badness(page_total-page_goal,page_shrink)
 /*:216*/
-#line 3647 "hint.w"
+#line 3662 "hint.w"
 ;
 if(b<awful_bad)
 {if(pi<=eject_penalty)c= pi;
@@ -3513,7 +3513,7 @@
 else c= b;
 if(insert_penalties>=10000)c= awful_bad;
 /*:215*/
-#line 3668 "hint.w"
+#line 3683 "hint.w"
 
 if(c<=least_page_cost)
 {best_page_break= p;best_size= page_goal;
@@ -3527,7 +3527,7 @@
 if((c==awful_bad)||(pi<=eject_penalty))
 {
 /*218:*/
-#line 3696 "hint.w"
+#line 3711 "hint.w"
 
 if(p!=best_page_break)
 {while(link(page_head)!=best_page_break)
@@ -3539,10 +3539,10 @@
 }
 }
 /*:218*/
-#line 3680 "hint.w"
+#line 3695 "hint.w"
 
 /*219:*/
-#line 3714 "hint.w"
+#line 3729 "hint.w"
 
 hloc_set_prev(link(page_head));
 while(true){
@@ -3562,7 +3562,7 @@
 link(page_head)= q;
 best_page_break= null;
 /*:219*/
-#line 3681 "hint.w"
+#line 3696 "hint.w"
 
 hpack_page();
 hfill_page_template();
@@ -3570,11 +3570,11 @@
 }
 }
 /*:217*/
-#line 3582 "hint.w"
+#line 3597 "hint.w"
 
 contribute:
 /*210:*/
-#line 3589 "hint.w"
+#line 3604 "hint.w"
 
 link(contrib_head)= link(p);
 link(p)= link(page_head);
@@ -3582,18 +3582,18 @@
 link(page_head)= p;
 goto done;
 /*:210*/
-#line 3584 "hint.w"
+#line 3599 "hint.w"
 
 done1:/*211:*/
-#line 3597 "hint.w"
+#line 3612 "hint.w"
 
 link(contrib_head)= link(p);link(p)= null;flush_node_list(p);
 /*:211*/
-#line 3585 "hint.w"
+#line 3600 "hint.w"
 
 done:
 /*:209*/
-#line 3459 "hint.w"
+#line 3474 "hint.w"
 ;
 }while(link(contrib_head)!=null);
 tail= contrib_head;
@@ -3600,13 +3600,13 @@
 return false;
 }
 /*:204*//*221:*/
-#line 3790 "hint.w"
+#line 3805 "hint.w"
 
 static void clear_map(void)
 {memset(map,0,sizeof(map));
 }
 /*:221*//*222:*/
-#line 3803 "hint.w"
+#line 3818 "hint.w"
 
 void store_map(pointer p,uint32_t pos0,uint32_t offset)
 {map[p]= pos0;
@@ -3617,7 +3617,7 @@
 {return map[p];
 }
 /*:222*//*229:*/
-#line 3913 "hint.w"
+#line 3928 "hint.w"
 
 void hloc_init(void)
 {cur_loc= 0;
@@ -3626,7 +3626,7 @@
 DBG(DBGPAGE,"loc_init: %d < %d < %d\n",lo_loc,cur_loc,hi_loc);
 }
 /*:229*//*234:*/
-#line 4050 "hint.w"
+#line 4065 "hint.w"
 
 int hint_begin(void)
 {if(!hint_map())return 0;
@@ -3645,6 +3645,8 @@
 {hint_unmap();return 0;}
 hget_directory();
 hget_definition_section();
+page_v= hvsize= dimen_def[vsize_dimen_no];
+page_h= hhsize= dimen_def[hsize_dimen_no];
 hget_content_section();
 leak_clear();
 clear_map();
@@ -3663,7 +3665,7 @@
 hclear_dir();
 }
 /*:234*//*238:*/
-#line 4153 "hint.w"
+#line 4170 "hint.w"
 
 bool hint_forward(void)
 {hpage_init();
@@ -3677,7 +3679,7 @@
 return false;
 }
 /*:238*//*239:*/
-#line 4194 "hint.w"
+#line 4211 "hint.w"
 
 bool hint_backward(void)
 {hpage_init();
@@ -3691,7 +3693,7 @@
 return false;
 }
 /*:239*//*241:*/
-#line 4222 "hint.w"
+#line 4239 "hint.w"
 
 bool flush_pages(uint32_t pos)
 {pointer p= link(head);
@@ -3708,18 +3710,18 @@
 return false;
 }
 /*:241*//*263:*/
-#line 4740 "hint.w"
+#line 4757 "hint.w"
 
 int hint_get_outline_max(void)
 {return max_outline;}
 /*:263*//*268:*/
-#line 4820 "hint.w"
+#line 4837 "hint.w"
 
 hint_Outline*hint_get_outlines(void)
 {return hint_outlines;
 }
 /*:268*//*270:*/
-#line 4879 "hint.w"
+#line 4896 "hint.w"
 
 static bool trv_ignore= false;
 static bool trv_skip_space= false;
@@ -3785,7 +3787,7 @@
 }
 }
 /*:270*/
-#line 7543 "hint.w"
+#line 7558 "hint.w"
 
 
 /*:372*/

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/hint.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 /*371:*/
-#line 7506 "hint.w"
+#line 7521 "hint.w"
 
 #ifndef _HINT_H_
 #define _HINT_H_
@@ -8,11 +8,11 @@
 typedef int scaled;
 
 /*44:*/
-#line 741 "hint.w"
+#line 756 "hint.w"
 
 extern void hrestore_param_list(void);
 /*:44*//*49:*/
-#line 796 "hint.w"
+#line 811 "hint.w"
 
 typedef struct{
 pointer p,t;
@@ -19,37 +19,37 @@
 }Stream;
 extern Stream*streams;
 /*:49*//*64:*/
-#line 1013 "hint.w"
+#line 1028 "hint.w"
 
 extern void hfill_page_template(void);
 /*:64*//*77:*/
-#line 1217 "hint.w"
+#line 1232 "hint.w"
 
 void hget_content(void);
 /*:77*//*81:*/
-#line 1272 "hint.w"
+#line 1287 "hint.w"
 
 extern void hteg_content(void);
 /*:81*//*164:*/
-#line 2778 "hint.w"
+#line 2793 "hint.w"
 
 extern void set_line_break_params(void);
 /*:164*//*166:*/
-#line 2818 "hint.w"
+#line 2833 "hint.w"
 
 extern void hget_par_node(uint32_t offset);
 /*:166*//*171:*/
-#line 2918 "hint.w"
+#line 2933 "hint.w"
 
 extern void hteg_par_node(uint32_t offset);
 /*:171*//*197:*/
-#line 3285 "hint.w"
+#line 3300 "hint.w"
 
 extern pointer*pointer_def[32];
 extern scaled*dimen_def;
 extern int32_t*integer_def;
 /*:197*//*198:*/
-#line 3340 "hint.w"
+#line 3355 "hint.w"
 
 extern Stream*streams;
 extern bool flush_pages(uint32_t pos);
@@ -58,15 +58,15 @@
 extern int count(uint8_t n);
 extern scaled dimen(uint8_t n);
 /*:198*//*201:*/
-#line 3397 "hint.w"
+#line 3412 "hint.w"
 
 extern void hpage_init(void);
 /*:201*//*203:*/
-#line 3414 "hint.w"
+#line 3429 "hint.w"
 
 extern void hflush_contribution_list(void);
 /*:203*//*223:*/
-#line 3817 "hint.w"
+#line 3832 "hint.w"
 
 #define HINT_NO_LOC 0xFFFFFFFFFFFFFFFF
 #define PAGE_LOC(POS0,OFF) (((uint64_t)((POS0)+(OFF))<<32) + (uint64_t)(OFF))
@@ -74,12 +74,12 @@
 #define LOC_OFF(P) ((P)&0xFFFFFFFF) 
 #define LOC_POS0(P) (LOC_POS(P)-LOC_OFF(P)) 
 /*:223*//*226:*/
-#line 3854 "hint.w"
+#line 3869 "hint.w"
 
 extern uint64_t page_loc[];
 extern int cur_loc;
 /*:226*//*228:*/
-#line 3903 "hint.w"
+#line 3918 "hint.w"
 
 extern void hloc_clear(void);
 extern bool hloc_next(void);
@@ -86,7 +86,7 @@
 extern bool hloc_prev(void);
 extern uint64_t hlocation(pointer p);
 /*:228*//*233:*/
-#line 4019 "hint.w"
+#line 4034 "hint.w"
 
 extern void hloc_init(void);
 extern void store_map(pointer p,uint32_t pos,uint32_t offset);
@@ -94,7 +94,7 @@
 extern void hloc_set(uint64_t h);
 extern void hloc_set_next(pointer p);
 /*:233*//*235:*/
-#line 4088 "hint.w"
+#line 4105 "hint.w"
 
 extern int hint_begin(void);
 extern void hint_end(void);
@@ -101,16 +101,16 @@
 extern bool hint_map(void);
 extern void hint_unmap(void);
 /*:235*//*240:*/
-#line 4212 "hint.w"
+#line 4229 "hint.w"
 
 extern bool hint_forward(void);
 extern bool hint_backward(void);
 /*:240*//*243:*/
-#line 4243 "hint.w"
+#line 4260 "hint.w"
 
 extern scaled hvsize,hhsize;
 /*:243*//*264:*/
-#line 4753 "hint.w"
+#line 4770 "hint.w"
 
 typedef struct{
 uint64_t pos;
@@ -121,7 +121,7 @@
 }hint_Outline;
 extern hint_Outline*hint_outlines;
 /*:264*//*265:*/
-#line 4771 "hint.w"
+#line 4788 "hint.w"
 
 #define LABEL_UNDEF 0
 #define LABEL_TOP 1
@@ -128,19 +128,19 @@
 #define LABEL_BOT 2
 #define LABEL_MID 3
 /*:265*//*269:*/
-#line 4830 "hint.w"
+#line 4847 "hint.w"
 
 extern int hint_get_outline_max(void);
 extern hint_Outline*hint_get_outlines(void);
 extern uint64_t hint_outline_page(int i);
 /*:269*//*271:*/
-#line 4945 "hint.w"
+#line 4962 "hint.w"
 
 extern void trv_init(void(*f)(uint32_t c));
 extern void trv_vlist(pointer p);
 extern void trv_hlist(pointer p);
 /*:271*//*300:*/
-#line 5537 "hint.w"
+#line 5554 "hint.w"
 
 typedef struct{
 uint64_t pos;
@@ -150,17 +150,17 @@
 extern hint_Link*hint_links;
 extern int max_link;
 /*:300*//*305:*/
-#line 5699 "hint.w"
+#line 5716 "hint.w"
 
 extern int hint_find_link(scaled x,scaled y,scaled precission);
 extern uint64_t hint_link_page(int i);
 /*:305*//*370:*/
-#line 7489 "hint.w"
+#line 7504 "hint.w"
 
 extern void leak_in(pointer p,int s);
 extern void leak_out(pointer p,int s);
 /*:370*/
-#line 7513 "hint.w"
+#line 7528 "hint.w"
 
 
 #endif

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 /*374:*/
-#line 7578 "hint.w"
+#line 7593 "hint.w"
 
 #include "basetypes.h"
 #include "error.h"
@@ -13,57 +13,57 @@
 #include "hint.h"
 
 /*310:*/
-#line 5781 "hint.w"
+#line 5798 "hint.w"
 
 extern struct font_s*hget_font(unsigned char f);
 /*:310*//*322:*/
-#line 6126 "hint.w"
+#line 6143 "hint.w"
 
 extern void render_char(int x,int y,struct font_s*f,uint32_t cc,uint8_t s);
 /*:322*/
-#line 7590 "hint.w"
+#line 7605 "hint.w"
 
 
 /*236:*/
-#line 4117 "hint.w"
+#line 4134 "hint.w"
 
 double xdpi= 600.0,ydpi= 600.0;
 /*:236*//*254:*/
-#line 4480 "hint.w"
+#line 4497 "hint.w"
 
 static bool forward_mode= false,backward_mode= false;
 /*:254*//*273:*/
-#line 4992 "hint.w"
+#line 5009 "hint.w"
 
 static char*m_str;
 static int m_length,m_chars;
 /*:273*//*277:*/
-#line 5063 "hint.w"
+#line 5080 "hint.w"
 
 #define MAX_M_DIST 512
 static uint8_t m_dist[MAX_M_DIST+5];
 static int m_ptr,m_max;
 /*:277*//*280:*/
-#line 5164 "hint.w"
+#line 5181 "hint.w"
 
 static int m_state,m_spaces;
 static uint32_t m_d;
 /*:280*//*285:*/
-#line 5286 "hint.w"
+#line 5303 "hint.w"
 
 static int m_focus;
 static uint64_t m_page;
 /*:285*//*288:*/
-#line 5322 "hint.w"
+#line 5339 "hint.w"
 
 static bool c_ignore;
 static int m_style;
 /*:288*//*296:*/
-#line 5491 "hint.w"
+#line 5508 "hint.w"
 
 static int cur_link= -1;
 /*:296*//*325:*/
-#line 6169 "hint.w"
+#line 6186 "hint.w"
 
 static scaled cur_h,cur_v;
 static scaled rule_ht,rule_dp,rule_wd;
@@ -71,10 +71,10 @@
 static struct font_s*cur_fp;
 static uint8_t cur_style= 0;
 /*:325*/
-#line 7592 "hint.w"
+#line 7607 "hint.w"
 
 /*237:*/
-#line 4121 "hint.w"
+#line 4138 "hint.w"
 
 void hint_resize(int px_h,int px_v,double x_dpi,double y_dpi)
 {
@@ -96,7 +96,7 @@
 backward_mode= false;
 }
 /*:237*//*248:*/
-#line 4345 "hint.w"
+#line 4362 "hint.w"
 
 
 uint64_t hint_page_top(uint64_t h)
@@ -117,7 +117,7 @@
 return h;
 }
 /*:248*//*249:*/
-#line 4368 "hint.w"
+#line 4385 "hint.w"
 
 uint64_t hint_page_get(void)
 {
@@ -127,7 +127,7 @@
 return page_loc[cur_loc];
 }
 /*:249*//*250:*/
-#line 4384 "hint.w"
+#line 4401 "hint.w"
 
 uint64_t hint_page(void)
 {uint64_t i;
@@ -139,7 +139,7 @@
 return hint_page_top(i);
 }
 /*:250*//*251:*/
-#line 4400 "hint.w"
+#line 4417 "hint.w"
 
 uint64_t hint_page_home(void)
 {uint64_t pos;
@@ -146,7 +146,7 @@
 uint8_t where;
 int n= zero_label_no;
 /*71:*/
-#line 1087 "hint.w"
+#line 1102 "hint.w"
 
 where= labels[n].where;
 #if 1
@@ -155,10 +155,10 @@
 pos= ((uint64_t)labels[n].pos0<<32);
 #endif
 /*:71*/
-#line 4405 "hint.w"
+#line 4422 "hint.w"
 
 /*267:*/
-#line 4793 "hint.w"
+#line 4810 "hint.w"
 
 if(where==LABEL_TOP)return hint_page_top(pos);
 else if(where==LABEL_BOT)return hint_page_bottom(pos);
@@ -165,11 +165,11 @@
 else if(where==LABEL_MID)return hint_page_middle(pos);
 else return hint_page_get();
 /*:267*/
-#line 4406 "hint.w"
+#line 4423 "hint.w"
 
 }
 /*:251*//*252:*/
-#line 4427 "hint.w"
+#line 4444 "hint.w"
 
 double hint_get_fpos(void)
 {
@@ -179,7 +179,7 @@
 return(double)LOC_POS(page_loc[cur_loc])/(double)(hend-hstart);
 }
 /*:252*//*253:*/
-#line 4441 "hint.w"
+#line 4458 "hint.w"
 
 uint64_t hint_set_fpos(double fpos)
 {uint32_t pos,pos0;
@@ -214,7 +214,7 @@
 return hint_page_top(PAGE_LOC(pos0,pos-pos0));
 }
 /*:253*//*255:*/
-#line 4485 "hint.w"
+#line 4502 "hint.w"
 
 uint64_t hint_page_next(void)
 {if(hin_addr==NULL)return 0;
@@ -231,7 +231,7 @@
 }
 }
 /*:255*//*256:*/
-#line 4510 "hint.w"
+#line 4527 "hint.w"
 
 uint64_t hint_page_prev(void)
 {if(hin_addr==NULL)return 0;
@@ -249,7 +249,7 @@
 return hint_page_bottom(hint_page_get());
 }
 /*:256*//*257:*/
-#line 4536 "hint.w"
+#line 4553 "hint.w"
 
 uint64_t hint_page_bottom(uint64_t h)
 {if(hin_addr==NULL)return 0;
@@ -264,7 +264,7 @@
 return hint_page_get();
 }
 /*:257*//*258:*/
-#line 4561 "hint.w"
+#line 4578 "hint.w"
 
 uint64_t hint_page_middle(uint64_t l)
 {uint32_t pos,pos0,offset;
@@ -283,11 +283,11 @@
 p= link(contrib_head);
 if(offset> 0)
 {/*259:*/
-#line 4600 "hint.w"
+#line 4617 "hint.w"
 
 {while(p!=null)
 {/*260:*/
-#line 4627 "hint.w"
+#line 4644 "hint.w"
 
 switch(type(p))
 {case hlist_node:case vlist_node:case rule_node:
@@ -310,7 +310,7 @@
 pi= hp= dp= 0;
 }
 /*:260*/
-#line 4602 "hint.w"
+#line 4619 "hint.w"
 
 h+= d+hp;
 d= dp;
@@ -326,7 +326,7 @@
 if(tp==null)ht= h;
 if(ht>=hvsize)
 {/*261:*/
-#line 4654 "hint.w"
+#line 4671 "hint.w"
 
 pointer q= contrib_head;
 scaled dh= ht-hvsize/2;
@@ -334,7 +334,7 @@
 h= d= 0;
 while(p!=null)
 {/*260:*/
-#line 4627 "hint.w"
+#line 4644 "hint.w"
 
 switch(type(p))
 {case hlist_node:case vlist_node:case rule_node:
@@ -357,7 +357,7 @@
 pi= hp= dp= 0;
 }
 /*:260*/
-#line 4660 "hint.w"
+#line 4677 "hint.w"
 
 h= h+d+hp;
 d= dp;
@@ -372,19 +372,19 @@
 link(contrib_head)= p;
 }
 /*:261*/
-#line 4616 "hint.w"
+#line 4633 "hint.w"
 
 goto found;
 }
 }
 /*:259*/
-#line 4578 "hint.w"
+#line 4595 "hint.w"
 
 }
 else if(p!=null&&type(p)==penalty_node)
 pi= penalty(p);
 /*262:*/
-#line 4679 "hint.w"
+#line 4696 "hint.w"
 
 {pointer h_save= link(contrib_head);
 pointer t_save= tail;
@@ -402,7 +402,7 @@
 else
 p= link(p);
 /*260:*/
-#line 4627 "hint.w"
+#line 4644 "hint.w"
 
 switch(type(p))
 {case hlist_node:case vlist_node:case rule_node:
@@ -425,7 +425,7 @@
 pi= hp= dp= 0;
 }
 /*:260*/
-#line 4695 "hint.w"
+#line 4712 "hint.w"
 
 h= h+dp+hp;
 if(pi<best_pi)
@@ -456,7 +456,7 @@
 hpos= hpos_save;
 }
 /*:262*/
-#line 4582 "hint.w"
+#line 4599 "hint.w"
 
 found:
 hloc_set(PAGE_LOC(pos0,offset));
@@ -466,7 +466,7 @@
 return hint_page_get();
 }
 /*:258*//*266:*/
-#line 4782 "hint.w"
+#line 4799 "hint.w"
 
 uint64_t hint_outline_page(int i)
 {uint64_t pos;
@@ -475,7 +475,7 @@
 pos= hint_outlines[i].pos;
 where= hint_outlines[i].where;
 /*267:*/
-#line 4793 "hint.w"
+#line 4810 "hint.w"
 
 if(where==LABEL_TOP)return hint_page_top(pos);
 else if(where==LABEL_BOT)return hint_page_bottom(pos);
@@ -482,17 +482,17 @@
 else if(where==LABEL_MID)return hint_page_middle(pos);
 else return hint_page_get();
 /*:267*/
-#line 4789 "hint.w"
+#line 4806 "hint.w"
 
 }
 /*:266*//*274:*/
-#line 4997 "hint.w"
+#line 5014 "hint.w"
 
 void hint_set_mark(char*m,int s)
 {m_str= m;
 m_length= s;
 /*275:*/
-#line 5008 "hint.w"
+#line 5025 "hint.w"
 
 if(m_length> 0)
 {int i,j,k;
@@ -508,12 +508,12 @@
 m_chars= m_length-j;
 }
 /*:275*/
-#line 5001 "hint.w"
+#line 5018 "hint.w"
 
 hmark_page();
 }
 /*:274*//*278:*/
-#line 5097 "hint.w"
+#line 5114 "hint.w"
 
 static void m_put(uint32_t d)
 {if(m_ptr<MAX_M_DIST)
@@ -550,7 +550,7 @@
 }
 }
 /*:278*//*279:*/
-#line 5138 "hint.w"
+#line 5155 "hint.w"
 
 static int m_next(int i)
 {while((0x80&m_dist[i])==0)i++;
@@ -565,7 +565,7 @@
 return i;
 }
 /*:279*//*281:*/
-#line 5169 "hint.w"
+#line 5186 "hint.w"
 
 static void next_m_char(uint32_t c)
 {
@@ -586,7 +586,7 @@
 }
 else
 /*282:*/
-#line 5203 "hint.w"
+#line 5220 "hint.w"
 
 {int i= 0,j= 0;
 do{
@@ -598,13 +598,13 @@
 goto reconsider;
 }
 /*:282*/
-#line 5188 "hint.w"
+#line 5205 "hint.w"
 
 
 
 }
 /*:281*//*283:*/
-#line 5216 "hint.w"
+#line 5233 "hint.w"
 
 #if 0
 static void next_m_space(void)
@@ -626,7 +626,7 @@
 }
 #endif
 /*:283*//*284:*/
-#line 5239 "hint.w"
+#line 5256 "hint.w"
 
 #if 0
 static void vlist_mark(pointer p);
@@ -673,7 +673,7 @@
 }
 #endif
 /*:284*//*286:*/
-#line 5292 "hint.w"
+#line 5309 "hint.w"
 
 void hmark_page(void)
 {if(streams==NULL||streams[0].p==null)return;
@@ -695,13 +695,13 @@
 if(m_focus>=m_max)m_focus= 0;
 }
 /*:286*//*293:*/
-#line 5407 "hint.w"
+#line 5424 "hint.w"
 
 void c_ignore_list(pointer p)
 {while(p!=null)
 {if(is_char_node(p))
 {/*290:*/
-#line 5347 "hint.w"
+#line 5364 "hint.w"
 
 {while(m_d==0)
 {m_style^= MARK_BIT;
@@ -717,7 +717,7 @@
 m_d--;
 }
 /*:290*/
-#line 5411 "hint.w"
+#line 5428 "hint.w"
 
 cur_style|= m_style;
 }
@@ -729,7 +729,7 @@
 {pointer q= lig_ptr(p);
 while(q!=null)
 {/*290:*/
-#line 5347 "hint.w"
+#line 5364 "hint.w"
 
 {while(m_d==0)
 {m_style^= MARK_BIT;
@@ -745,7 +745,7 @@
 m_d--;
 }
 /*:290*/
-#line 5421 "hint.w"
+#line 5438 "hint.w"
 
 cur_style|= m_style;
 q= link(q);
@@ -758,7 +758,7 @@
 }
 }
 /*:293*//*294:*/
-#line 5454 "hint.w"
+#line 5471 "hint.w"
 
 bool hint_prev_mark(void)
 {m_focus= m_prev(m_focus);
@@ -779,7 +779,7 @@
 return(m_focus!=0);
 }
 /*:294*//*302:*/
-#line 5555 "hint.w"
+#line 5572 "hint.w"
 
 static int links_allocated= 0;
 void add_new_link(int n,pointer p,scaled h,scaled v)
@@ -800,7 +800,7 @@
 t= hint_links+max_link;
 REF_RNG(label_kind,n);
 /*71:*/
-#line 1087 "hint.w"
+#line 1102 "hint.w"
 
 where= labels[n].where;
 #if 1
@@ -809,7 +809,7 @@
 pos= ((uint64_t)labels[n].pos0<<32);
 #endif
 /*:71*/
-#line 5574 "hint.w"
+#line 5591 "hint.w"
 
 t->where= where;
 t->pos= pos;
@@ -837,7 +837,7 @@
 t->bottom= v;
 }
 /*:302*//*303:*/
-#line 5624 "hint.w"
+#line 5641 "hint.w"
 
 static scaled hlink_distance(scaled x,scaled y,hint_Link*t)
 {scaled d,dx= 0,dy= 0;
@@ -893,7 +893,7 @@
 }
 }
 /*:303*//*304:*/
-#line 5684 "hint.w"
+#line 5701 "hint.w"
 
 uint64_t hint_link_page(int i)
 {uint64_t h;
@@ -907,7 +907,7 @@
 else return hint_page_get();
 }
 /*:304*//*323:*/
-#line 6133 "hint.w"
+#line 6150 "hint.w"
 
 static void render_rule(int x,int y,int w,int h)
 {if(w> 0&&h> 0)
@@ -914,7 +914,7 @@
 nativeRule(SP2PT(x),SP2PT(y),SP2PT(w),SP2PT(h));
 }
 /*:323*//*324:*/
-#line 6145 "hint.w"
+#line 6162 "hint.w"
 
 void render_image(int x,int y,int w,int h,uint32_t n)
 {
@@ -925,7 +925,7 @@
 hpos= spos;hstart= sstart;hend= send;
 }
 /*:324*//*326:*/
-#line 6177 "hint.w"
+#line 6194 "hint.w"
 
 static void vlist_render(pointer this_box);
 
@@ -960,7 +960,7 @@
 base_line= cur_v;
 left_edge= cur_h;
 /*299:*/
-#line 5521 "hint.w"
+#line 5538 "hint.w"
 
 if(cur_link>=0)
 {add_new_link(cur_link,this_box,cur_h,cur_v);
@@ -968,7 +968,7 @@
 cur_link= -1;
 }
 /*:299*/
-#line 6210 "hint.w"
+#line 6227 "hint.w"
 
 while(p!=null)
 {
@@ -985,7 +985,7 @@
 if(!c_ignore&&c!=' ')
 {cur_style= cur_style&~(MARK_BIT|FOCUS_BIT);
 /*290:*/
-#line 5347 "hint.w"
+#line 5364 "hint.w"
 
 {while(m_d==0)
 {m_style^= MARK_BIT;
@@ -1001,7 +1001,7 @@
 m_d--;
 }
 /*:290*/
-#line 6225 "hint.w"
+#line 6242 "hint.w"
 
 cur_style|= m_style;
 }
@@ -1051,7 +1051,7 @@
 goto fin_rule;
 case whatsit_node:
 /*292:*/
-#line 5384 "hint.w"
+#line 5401 "hint.w"
 
 if(subtype(p)==ignore_node)
 {if(ignore_info(p)==1)
@@ -1063,10 +1063,10 @@
 c_ignore= false;
 }
 /*:292*/
-#line 6273 "hint.w"
+#line 6290 "hint.w"
 
 else/*297:*/
-#line 5495 "hint.w"
+#line 5512 "hint.w"
 
 if(subtype(p)==start_link_node)
 {cur_style|= LINK_BIT;
@@ -1079,7 +1079,7 @@
 local_link= -1;
 }
 /*:297*/
-#line 6274 "hint.w"
+#line 6291 "hint.w"
 
 else if(subtype(p)==image_node)
 {scaled h,w;
@@ -1157,7 +1157,7 @@
 f= font(lig_char(p));
 c= character(lig_char(p));
 /*291:*/
-#line 5366 "hint.w"
+#line 5383 "hint.w"
 
 if(!c_ignore)
 {pointer q;
@@ -1165,7 +1165,7 @@
 q= lig_ptr(p);
 while(q!=null)
 {/*290:*/
-#line 5347 "hint.w"
+#line 5364 "hint.w"
 
 {while(m_d==0)
 {m_style^= MARK_BIT;
@@ -1181,7 +1181,7 @@
 m_d--;
 }
 /*:290*/
-#line 5372 "hint.w"
+#line 5389 "hint.w"
 
 cur_style|= m_style;
 q= link(q);
@@ -1188,7 +1188,7 @@
 }
 }
 /*:291*/
-#line 6350 "hint.w"
+#line 6367 "hint.w"
 
 goto render_c;
 default:;
@@ -1215,7 +1215,7 @@
 }
 }
 /*298:*/
-#line 5511 "hint.w"
+#line 5528 "hint.w"
 
 if(local_link>=0)
 {end_new_link(local_link,this_box,cur_h,cur_v);
@@ -1222,7 +1222,7 @@
 cur_link= local_link;
 }
 /*:298*/
-#line 6375 "hint.w"
+#line 6392 "hint.w"
 
 }
 
@@ -1375,7 +1375,7 @@
 }
 
 /*:326*//*327:*/
-#line 6533 "hint.w"
+#line 6550 "hint.w"
 
 uint64_t hint_blank(void)
 {nativeBlank();
@@ -1382,7 +1382,7 @@
 return 0;
 }
 /*:327*//*328:*/
-#line 6542 "hint.w"
+#line 6559 "hint.w"
 
 
 void hint_render(void)
@@ -1393,11 +1393,11 @@
 cur_f= -1;cur_fp= NULL;
 cur_link= -1;max_link= -1;
 /*289:*/
-#line 5340 "hint.w"
+#line 5357 "hint.w"
 
 m_ptr= 0;m_d= 0;m_style= MARK_BIT;c_ignore= false;cur_style= 0;
 /*:289*/
-#line 6551 "hint.w"
+#line 6568 "hint.w"
 
 if(type(streams[0].p)==vlist_node)
 vlist_render(streams[0].p);
@@ -1405,6 +1405,6 @@
 hlist_render(streams[0].p);
 }
 /*:328*/
-#line 7593 "hint.w"
+#line 7608 "hint.w"
 
 /*:374*/

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,23 +1,23 @@
 /*373:*/
-#line 7548 "hint.w"
+#line 7563 "hint.w"
 
 #ifndef _HRENDER_H
 #define _HRENDER_H
 /*276:*/
-#line 5030 "hint.w"
+#line 5047 "hint.w"
 
 #define MARK_BIT 0x1
 #define FOCUS_BIT 0x2
 /*:276*//*295:*/
-#line 5480 "hint.w"
+#line 5497 "hint.w"
 
 #define LINK_BIT 0x4
 /*:295*//*320:*/
-#line 6107 "hint.w"
+#line 6124 "hint.w"
 
 #define SP2PT(X) ((X)/(double)(1<<16))
 /*:320*/
-#line 7551 "hint.w"
+#line 7566 "hint.w"
 
 
 extern int page_h,page_v;

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.c
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.c	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.c	2022-03-10 16:50:22 UTC (rev 62591)
@@ -606,7 +606,7 @@
 free_node(p,ins_node_size);goto done;
 }
 case whatsit_node:/*1387:*/
-#line 25382 "htex.w"
+#line 25384 "htex.w"
 
 {switch(subtype(p)){
 case close_node:case language_node:free_node(p,small_node_size);break;
@@ -735,7 +735,7 @@
 words= ins_node_size-1;
 }break;
 case whatsit_node:/*1386:*/
-#line 25264 "htex.w"
+#line 25266 "htex.w"
 
 switch(subtype(p)){
 case open_node:{r= get_node(open_node_size);words= open_node_size;
@@ -1360,7 +1360,7 @@
 #line 13121 "htex.w"
 break;
 case whatsit_node:/*1389:*/
-#line 25462 "htex.w"
+#line 25464 "htex.w"
 
 if(subtype(p)==image_node)
 {if(image_height(p)> h)h= image_height(p);
@@ -1525,7 +1525,7 @@
 #line 13348 "htex.w"
 break;
 case whatsit_node:/*1388:*/
-#line 25456 "htex.w"
+#line 25458 "htex.w"
 
 if(subtype(p)==image_node)
 {if(image_width(p)> w)w= image_width(p);
@@ -2521,7 +2521,7 @@
 switch(type(cur_p)){
 case hlist_node:case vlist_node:case rule_node:act_width= act_width+width(cur_p);break;
 case whatsit_node:/*1391:*/
-#line 25472 "htex.w"
+#line 25474 "htex.w"
 
 adv_past(cur_p)
 
@@ -2824,7 +2824,7 @@
 goto not_found;
 }
 case whatsit_node:/*1394:*/
-#line 25481 "htex.w"
+#line 25483 "htex.w"
 
 goto not_found
 
@@ -2978,7 +2978,7 @@
 #line 19692 "htex.w"
 break;
 case whatsit_node:/*1393:*/
-#line 25478 "htex.w"
+#line 25480 "htex.w"
 
 goto contribute
 
@@ -3437,7 +3437,7 @@
 #line 22034 "htex.w"
 break;
 case whatsit_node:/*1390:*/
-#line 25468 "htex.w"
+#line 25470 "htex.w"
 d= 0
 
 /*:1390*/

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/htex.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,5 +1,5 @@
 /*1410:*/
-#line 25691 "htex.w"
+#line 25693 "htex.w"
 
 #define banner "This is TeX, Version 3.141592653 (HINT)" \
 
@@ -1724,7 +1724,7 @@
 #define end_write_token cs_token_flag+end_write \
 
 
-#line 25692 "htex.w"
+#line 25694 "htex.w"
 
 enum{/*11:*/
 #line 362 "htex.w"
@@ -1768,7 +1768,7 @@
 empty_string= 256
 
 /*:11*/
-#line 25693 "htex.w"
+#line 25695 "htex.w"
 };
 /*18:*/
 #line 502 "htex.w"
@@ -1890,7 +1890,7 @@
 typedef int16_t hyph_pointer;
 
 /*:949*/
-#line 25694 "htex.w"
+#line 25696 "htex.w"
 
 extern void list_init(void);
 extern void hpack_page(void);

Modified: trunk/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h	2022-03-10 16:50:22 UTC (rev 62591)
@@ -1,51 +1,51 @@
 /*377:*/
-#line 7637 "hint.w"
+#line 7652 "hint.w"
 
 #ifndef _RENDERNATIVE_H
 #define _RENDERNATIVE_H
 
 /*329:*/
-#line 6563 "hint.w"
+#line 6580 "hint.w"
 
 extern void nativeInit(void);
 extern void nativeClear(void);
 /*:329*//*330:*/
-#line 6570 "hint.w"
+#line 6587 "hint.w"
 
 extern void nativeSetSize(int px_h,int px_v,double xdpi,double ydpi);
 /*:330*//*331:*/
-#line 6575 "hint.w"
+#line 6592 "hint.w"
 
 extern void nativeSetDark(int dark);
 /*:331*//*332:*/
-#line 6580 "hint.w"
+#line 6597 "hint.w"
 
 extern void nativeBlank(void);
 /*:332*//*333:*/
-#line 6590 "hint.w"
+#line 6607 "hint.w"
 
 typedef struct gcache_s*gcache_s_ptr;
 
 extern void nativeGlyph(double x,double dx,double y,double dy,double w,double h,struct gcache_s*g,uint8_t s);
 /*:333*//*334:*/
-#line 6601 "hint.w"
+#line 6618 "hint.w"
 
 void nativeRule(double x,double y,double w,double h);
 /*:334*//*335:*/
-#line 6607 "hint.w"
+#line 6624 "hint.w"
 
 void nativeImage(double x,double y,double w,double h,unsigned char*istart,unsigned char*iend);
 /*:335*//*336:*/
-#line 6613 "hint.w"
+#line 6630 "hint.w"
 
 extern void nativeSetPK(struct gcache_s*g);
 extern void nativeSetFreeType(struct gcache_s*g);
 /*:336*//*337:*/
-#line 6620 "hint.w"
+#line 6637 "hint.w"
 
 void nativeFreeGlyph(struct gcache_s*g);
 /*:337*/
-#line 7641 "hint.w"
+#line 7656 "hint.w"
 
 
 #endif

Modified: trunk/Build/source/texk/web2c/hitexdir/hitex.w
===================================================================
--- trunk/Build/source/texk/web2c/hitexdir/hitex.w	2022-03-10 16:43:36 UTC (rev 62590)
+++ trunk/Build/source/texk/web2c/hitexdir/hitex.w	2022-03-10 16:50:22 UTC (rev 62591)
@@ -34260,22 +34260,22 @@
    return;
 #if defined(_WIN32)
    fclose (recorder_file); /* An opened file cannot be renamed. */
-#endif /* _WIN32 */
+#endif /* |_WIN32| */
    if (output_directory) {
      temp = concat3(output_directory, DIR_SEP_STRING, new_name);
      new_name = temp;
    }
 
-   /* On windows, renaming fails if a file with new_name exists. */
+   /* On windows, renaming fails if a file with |new_name| exists. */
 #if defined(_WIN32)
    remove (new_name); /* Renaming fails if a file with the |new_name| exists. */
-#endif /* _WIN32 */
+#endif /*  |_WIN32| */
    rename(recorder_name, new_name);
    free(recorder_name);
    recorder_name = xstrdup(new_name);
 #if defined(_WIN32)
    recorder_file = xfopen (recorder_name, FOPEN_A_MODE);
-#endif /* _WIN32 */
+#endif /* |_WIN32| */
    if (temp)
      free (temp);
 }



More information about the tex-live-commits mailing list.