summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/hitexdir/hintview/src
diff options
context:
space:
mode:
authorMartin Ruckert <martin.ruckert@hm.edu>2022-03-10 16:50:22 +0000
committerMartin Ruckert <martin.ruckert@hm.edu>2022-03-10 16:50:22 +0000
commit18db006a78c86afaae1d2ba4283ae6e85cf38c05 (patch)
treede9a3e537a0500f06566ecf51a7102e87e45ef35 /Build/source/texk/web2c/hitexdir/hintview/src
parent5f60e8f78be86b9e31a8140a7bd14c5190a2db97 (diff)
HiTeX: changing /* _WIN32 ... */ to /* |_WIN32| ... */ to keep TeX happy.
git-svn-id: svn://tug.org/texlive/trunk@62591 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/hitexdir/hintview/src')
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h2
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/error.h2
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/format.h78
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/get.c92
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/get.h40
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c72
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h28
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/hint.c726
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/hint.h56
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/hrender.c176
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/hrender.h10
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/htex.c16
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/htex.h8
-rw-r--r--Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h22
14 files changed, 665 insertions, 663 deletions
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h b/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h
index 26fe2db801a..aa68595b616 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/basetypes.h
@@ -1,5 +1,5 @@
/*511:*/
- #line 10407 "format.w"
+ #line 10416 "format.w"
#ifndef __BASETYPES_H__
#define __BASETYPES_H__
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/error.h b/Build/source/texk/web2c/hitexdir/hintview/src/error.h
index 633d1d2a92f..c350d15dd34 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/error.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/error.h
@@ -1,5 +1,5 @@
/*358:*/
-#line 7154 "hint.w"
+#line 7171 "hint.w"
#ifndef _ERROR_H
#define _ERROR_H
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/format.h b/Build/source/texk/web2c/hitexdir/hintview/src/format.h
index fcfdde70d65..f2c3a8e83c8 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/format.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/format.h
@@ -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,25 +55,25 @@
#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)]
#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(undefined3,undefined3,30),
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,36 +172,36 @@ typedef enum{b000= 0,b001= 1,b010= 2,b011= 3,b100= 4,b101= 5,b110= 6,b111= 7}Inf
#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;
Stretch p,m;
}Glue;
/*:130*/ /*180:*/
- #line 3894 "format.w"
+ #line 3895 "format.w"
typedef struct{
Glue bs,ls;
@@ -218,14 +218,14 @@ int next;
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 @@ floating_penalty_no= 22
}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 @@ math_quad_no= 9
}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 @@ vsize_xdimen_no= 2
}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,42 +300,42 @@ par_fill_skip_no= 14
}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
}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
}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
}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
}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
}Range_no;
#define MAX_RANGE_DEFAULT zero_range_no
/*:409*/
- #line 10464 "format.w"
+ #line 10473 "format.w"
extern const char*content_name[32];
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/get.c b/Build/source/texk/web2c/hitexdir/hintview/src/get.c
index 42e69d3e4bf..4682ba4624b 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/get.c
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/get.c
@@ -1,5 +1,5 @@
/*516:*/
- #line 10604 "format.w"
+ #line 10613 "format.w"
#include "basetypes.h"
#include <string.h>
@@ -30,22 +30,22 @@ int*page_on;
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;
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 @@ int option_compress= false;
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 @@ return hin_size;
#endif
/*:325*/
- #line 10619 "format.w"
+ #line 10628 "format.w"
/*312:*/
#line 6697 "format.w"
@@ -194,10 +194,10 @@ DBG(DBGDIR,"banner size=0x%x\n",hbanner_size);
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 @@ ALLOCATE(dir,entries,Entry);
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 @@ e->file_name= strdup(file_name);
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 @@ if(c=='\n')break;
hbanner[hbanner_size]= 0;
}
/*:313*/ /*326:*/
- #line 7026 "format.w"
+ #line 7028 "format.w"
static void hdecompress(uint16_t n)
@@ -274,7 +274,7 @@ hpos0= hpos= hstart= buffer;
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,18 +290,18 @@ if(dir[n].xsize>0)hdecompress(n);
}
}
/*: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;
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,18 +316,18 @@ case TAG(0,b100+3):HGET_ENTRY(b100+3,*e);break;
default:TAGERR(a);break;
}
/*16:*/
- #line 724 "format.w"
+ #line 725 "format.w"
HGETTAG(z);
if(a!=z)
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,19 +363,19 @@ free(dir);dir= NULL;
}
/*: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;
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,b100):
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,23 +407,23 @@ DBG(DBGDEF,"max(%s) = %d\n",definition_name[k],max_ref[k]);
break;
}
/*16:*/
- #line 724 "format.w"
+ #line 725 "format.w"
HGETTAG(z);
if(a!=z)
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 @@ else QUIT("UTF8 byte sequence expected");
}
}
/*: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 @@ HGET32(u.bits);
return u.d;
}
/*:75*/ /*145:*/
- #line 2835 "format.w"
+ #line 2836 "format.w"
void hget_size_boundary(Info info)
{uint32_t n;
@@ -485,35 +485,35 @@ QUIT("List expected at 0x%x",(uint32_t)(hpos-hstart));
else
{
/*15:*/
- #line 717 "format.w"
+ #line 718 "format.w"
uint8_t a,z;
uint32_t node_pos= hpos-hstart;
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)
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 @@ return;
}
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 4:hpos++;HGET24(hff_list_size);hff_list_pos= hpos-hstart+1;hpos= hpos+1+hff
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 @@ HTEG32(u.bits);
return u.d;
}
/*:465*/ /*503:*/
- #line 10278 "format.w"
+ #line 10287 "format.w"
void hteg_size_boundary(Info info)
{uint32_t n;
@@ -579,14 +579,14 @@ return n;
void hteg_list(List*l)
{ /*462:*/
- #line 9812 "format.w"
+ #line 9821 "format.w"
uint8_t a,z;
uint32_t node_pos= hpos-hstart;
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 @@ s= hteg_list_size(INFO(z));
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 @@ hteg_list(l);
/*:503*/
- #line 10625 "format.w"
+ #line 10634 "format.w"
/*:516*/
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/get.h b/Build/source/texk/web2c/hitexdir/hintview/src/get.h
index 0d6e924cd74..84625af919f 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/get.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/get.h
@@ -1,25 +1,25 @@
/*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;
Xdimen d;
}Kern;
/*:122*/ /*140:*/
- #line 2701 "format.w"
+ #line 2702 "format.w"
typedef struct{
Kind k;
@@ -27,29 +27,29 @@ uint32_t p;
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 @@ uint16_t r;
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 @@ uint8_t*buffer;
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 @@ uint32_t bsize;
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 @@ uint32_t bsize;
#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 @@ uint32_t bsize;
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 @@ uint32_t bsize;
#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;
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c b/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c
index 5ff776e60d4..6aa16f2408b 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.c
@@ -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 f->g0[cc];
return NULL;
}
/*:314*//*316:*/
-#line 5888 "hint.w"
+#line 5905 "hint.w"
static Gcache*hnew_g(Gcache**g)
{if(*g==NULL)
@@ -126,24 +126,24 @@ else if(cc<G123_SIZE*G123_SIZE*G123_SIZE*G0_SIZE)return hnew_g3(&(f->g3),cc);
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);
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 @@ e= FT_New_Memory_Face(ft_library,
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 @@ f->tt.face,
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,22 +201,22 @@ nativeSetFreeType(g);
}
/*: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)
#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 @@ return packed_number(p);
}
}
/*: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 @@ y++;
}
}
/*: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 @@ if(mask==0){data++;mask= 0x80;}
}
}
/*:346*//*347:*/
-#line 6860 "hint.w"
+#line 6877 "hint.w"
static void pkunpack_glyph(Gcache*g)
@@ -341,7 +341,7 @@ else pk_runlength(g,data+i);
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 @@ return 1;
}
/*: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,14 +453,14 @@ hpos= spos;hstart= sstart;hend= send;
}
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;
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 @@ else
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 @@ if(rm){free(fonts[f]);fonts[f]= NULL;}
}
}
/*: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 @@ if(rm){free(f->g3);f->g3= NULL;}
}
}
/*:317*//*319:*/
-#line 6078 "hint.w"
+#line 6095 "hint.w"
Gcache*hget_glyph(Font*f,unsigned int cc)
{
@@ -574,7 +574,7 @@ else QUIT("Font format not supported");
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 @@ nativeGlyph(SP2PT(x),dx,SP2PT(y),dy,w,h,g,s);
}
/*:321*/
-#line 7629 "hint.w"
+#line 7644 "hint.w"
/*:376*/
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h b/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h
index 8aac51ace99..35cc72f99ba 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/hfonts.h
@@ -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 @@ double ds;
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 @@ int data_size;
double s;
double hpxs,vpxs;
/*313:*/
-#line 5827 "hint.w"
+#line 5844 "hint.w"
struct gcache_s**g0;
struct gcache_s***g1;
@@ -52,23 +52,23 @@ struct gcache_s****g2;
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;
unsigned char*encoding;
}PKglyph;
/*:340*//*342:*/
-#line 6719 "hint.w"
+#line 6736 "hint.w"
typedef struct{
int j;
@@ -77,7 +77,7 @@ int f;
unsigned char*data;
}PKparse;
/*:342*/
-#line 6040 "hint.w"
+#line 6057 "hint.w"
struct gcache_s{
@@ -93,7 +93,7 @@ FTglyph tt;
};
typedef struct gcache_s Gcache;
/*:318*/
-#line 7602 "hint.w"
+#line 7617 "hint.w"
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/hint.c b/Build/source/texk/web2c/hitexdir/hintview/src/hint.c
index b2463d6709d..5c99a41c7e5 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/hint.c
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/hint.c
@@ -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)&b100) HGET32(height(p)); else height(p)= null_flag;\
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) HGET32(width(p)); else width(p)= null_flag;
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 @@ if ((I)&b100) {int8_t x; glue_set(p)= hget_float32();\
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 @@ list_ptr(p)= hget_list_pointer();
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 @@ list_ptr(p)= hget_list_pointer();
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 @@ p= new_kern(x);\
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 if (KIND(*hpos)==hbox_kind) leader_ptr(p)= hget_hbox_node(); \
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 @@ tail_append(p);}
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 @@ p= new_ligature(f, character(q), link(q)); tail_append(p);\
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 @@ link(q)= null; flush_node_list(q);\
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 @@ link(q)= null; flush_node_list(q);\
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 @@ if ((I)&b001) a= hget_hbox_node();\
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 @@ hset_param_list(q); hdisplay(p,a,((I)&b010)!=0); hrestore_param_list();\
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 @@ if ((I)&b100) hget_xdimen_node(); else hget_xdimen_ref(HGET8);\
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 @@ hget_list_pointer();
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_width(p)= w; image_height(p)= h;\
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,21 +238,21 @@ tail_append(p);}
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;\
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(p);}
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)&b001) HTEG32(width(p)); else width(p)= null_flag;\
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)&b100) HTEG32(height(p)); else height(p)= null_flag;
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 @@ if ((I)&b001) HTEG32(depth(p));\
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 @@ node_pos= hpos-hstart-1;
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 @@ node_pos= hpos-hstart-1;
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 @@ p= new_kern(x);\
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 @@ if ((I)&b100) p= hteg_glue_node(); else {p= spec2glue(zero_glue); incr(glue_ref_
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 @@ tail_append(p);}
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 @@ link(q)= null; flush_node_list(q);\
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 @@ font(lig_char(p))= HTEG8;\
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 @@ if ((I)&b100) q= hteg_param_list_node(); else q= hget_param_list_ref(HTEG8);\
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(); \
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 @@ if ((I)&b100) hteg_xdimen_node(); else hget_xdimen_ref(HTEG8);
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 @@ if (w==0 || h==0) QUIT("Incomplete dimensions in image %d",image_no(p));\
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 @@ tail_append(p);}
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 @@ pointer p[MAX_FONT_PARAMS+1];
}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 @@ typedef struct ParamDef{
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 @@ uint32_t f,t;
}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 g;
pointer h;
}StreamDef;
/*:53*//*57:*/
-#line 890 "hint.w"
+#line 905 "hint.w"
typedef struct{
char*n;
@@ -543,25 +543,25 @@ StreamDef*s;
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 @@ uint64_t page_loc[MAX_PAGE_POS];
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_outline_or_label_def(Info i,int n);
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 @@ static int32_t hget_integer_ref(uint8_t n)
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 @@ static scaled hget_xdimen_ref(uint8_t n)
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 @@ pointer hget_param_glue(uint8_t n)
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 @@ while(KIND(*hpos)!=font_kind)
{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,20 +711,20 @@ QUIT("Font parameter %d has invalid type %s",n,content_name[n]);
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)
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 @@ font_def[i].s= font_size[i];
}
}
/*:33*//*41:*/
-#line 610 "hint.w"
+#line 625 "hint.w"
static void free_param_list(ParamDef*p)
{while(p!=NULL)
@@ -749,7 +749,7 @@ free(q);
}
}
/*: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 @@ QUIT("list end after before stream end\n");
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,14 +781,14 @@ else if(KIND(a)==dimen_kind)q->v= hget_dimen_def(a);
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)
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,23 +805,23 @@ ParamDef*hget_param_list_node(void)
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)
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 @@ ParamDef*hget_param_list_ref(uint8_t n)
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 @@ else if(q->k==glue_kind)
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 @@ return 0;
}
#endif
/*:48*//*54:*/
-#line 834 "hint.w"
+#line 849 "hint.w"
static void hget_xdimen_def_node(Xdimen*x);
@@ -917,19 +917,19 @@ return false;
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);
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 @@ s->n= HGET8;if(s->n!=255)REF_RNG(stream_kind,s->n);
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,20 +951,20 @@ s->a= hget_list_pointer();
s->h= hget_glue_spec();
}
/*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
HGETTAG(z);
if(a!=z)
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 @@ hskip_list();
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 @@ return copy_node_list(pointer_def[leaders_kind][n]);
/*:72*//*85:*/
-#line 1310 "hint.w"
+#line 1325 "hint.w"
static void hget_xdimen_def(Info i,Xdimen*x)
@@ -1056,58 +1056,58 @@ return xdimen(&x);
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));
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)
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;
}
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);
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)
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,19 +1131,19 @@ return xdimen(&x);
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);
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 @@ 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);
/*: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 @@ 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);
/*: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,14 +1199,14 @@ if(INFO(a)==b000)
else
{HGET_GLUE(INFO(a));}
/*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
HGETTAG(z);
if(a!=z)
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 @@ static pointer hget_glue_node(void)
{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 @@ if(INFO(z)==b000)p= hget_glue_ref(HTEG8);
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 @@ 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);
/*:79*/
-#line 1647 "hint.w"
+#line 1662 "hint.w"
return p;
}
@@ -1255,7 +1255,7 @@ if(p!=null)return spec2glue(p);
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 @@ else
{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,20 +1296,20 @@ t= hget_list_size(INFO(a));
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)
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 @@ hpos= list_start;
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 @@ QUIT("list start before stream start\n");
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 @@ else TAGERR(a);
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 @@ 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);
/*:79*/
-#line 1801 "hint.w"
+#line 1816 "hint.w"
r->next= p;
p= r;
@@ -1419,22 +1419,22 @@ hpos= list_start;
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,25 +1442,25 @@ 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);
/*:79*/
-#line 1934 "hint.w"
+#line 1949 "hint.w"
return p;
}
}
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 @@ 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);
/*:79*/
-#line 1943 "hint.w"
+#line 1958 "hint.w"
type(p)= vlist_node;
return p;
@@ -1476,7 +1476,7 @@ return p;
}
/*: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 @@ glue_set(p)= 0.0;
}
}
/*:127*//*144:*/
-#line 2304 "hint.w"
+#line 2319 "hint.w"
static pointer hget_text_list(uint32_t s)
{pointer p= null;
@@ -1555,36 +1555,36 @@ while(hpos<t){*pp= new_character(0,hget_utf8());pp= &link(*pp);}
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));
{
HGET_DISC(INFO(a));
/*75:*/
-#line 1170 "hint.w"
+#line 1185 "hint.w"
HGETTAG(z);
if(a!=z)
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 @@ link(head)= q;
}
}
/*:157*//*158:*/
-#line 2553 "hint.w"
+#line 2568 "hint.w"
pointer hget_paragraph_all(scaled x)
{
@@ -1661,14 +1661,14 @@ t= hget_list_size(INFO(a));
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)
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 @@ QUIT("Text in paragraph not yet implemented");
return null;
}
/*:158*//*159:*/
-#line 2616 "hint.w"
+#line 2631 "hint.w"
pointer hget_paragraph_final(scaled x,uint8_t*from)
{
@@ -1726,14 +1726,14 @@ t= hget_list_size(INFO(a));
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)
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 @@ QUIT("Text in paragraph not yet implemented");
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 @@ void hget_par_node(uint32_t offset)
{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,18 +1800,18 @@ if(INFO(a)&b100)x= hget_xdimen_node();else x= hget_xdimen_ref(HGET8);
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)
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 @@ hpos= list_start;
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 @@ if(type(tail)==hlist_node||type(tail)==vlist_node)
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,14 +1875,14 @@ ins_ptr(p)= list_ptr(s);
list_ptr(s)= null;flush_node_list(s);
}
/*:184*//*224:*/
-#line 3825 "hint.w"
+#line 3840 "hint.w"
uint64_t hlocation(pointer p)
{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 @@ return true;
/*:227*//*230:*/
-#line 3933 "hint.w"
+#line 3948 "hint.w"
void hloc_set(uint64_t h)
@@ -1929,7 +1929,7 @@ hloc_clear();
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 @@ hi_loc= i;
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 @@ cur_loc= i;
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 @@ offset_v= (page_v-hvsize)/2;
}
}
/*:245*//*247:*/
-#line 4310 "hint.w"
+#line 4327 "hint.w"
static void houtput_template(pointer p)
{pointer q,r;
@@ -2021,7 +2021,7 @@ shift_amount(p)+= offset_h;
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 @@ trv_string[trv_string_size]= 0;
return trv_string;
}
/*:272*//*369:*/
-#line 7448 "hint.w"
+#line 7463 "hint.w"
static pointer leaks[1<<16]= {0};
@@ -2091,21 +2091,21 @@ fprintf(stderr,"ERROR:leak final: p=%d, s=%d\n",i,leaks[i]);
#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,14 +2132,14 @@ if(n> max_ref[k]||n<=max_fixed[k])
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)
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,34 +2172,34 @@ baseline_def[i].lsl= baseline_defaults[i].lsl;
void free_definitions(void)
{/*5:*/
-#line 226 "hint.w"
+#line 241 "hint.w"
{int k;
for(k= 0;k<32;k++)
{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_list(param_def[i]);
}
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 @@ for(k= 0;k<=max_ref[page_kind];k++)
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 @@ for(k= 0;k<=max_outline;k++)free(hint_outlines[k].title);
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 @@ DBG(DBGDEF,"Reading list of maximum values\n");
free_definitions();
hget_max_definitions();
/*4:*/
-#line 211 "hint.w"
+#line 226 "hint.w"
{Kind k;
for(k= 0;k<32;k++)
@@ -2261,54 +2261,54 @@ ALLOCATE(pointer_def[k],max_ref[k]+1,pointer);
}
}
/*: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);
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 @@ while(hpos<hend)
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 @@ page_def[0].t= 0;
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 @@ else
{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 @@ cur_list.bs_pos= NULL;
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 @@ cur_list.bs_pos= NULL;
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->depth= HGET8;
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].pos<<32)+(labels[n].pos-labels[n].pos0);
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,67 +2454,67 @@ else t->pos0= t->pos;
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");
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)
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)
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,32 +2524,32 @@ return p;
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)
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;
}
}
/*:120*//*160:*/
-#line 2671 "hint.w"
+#line 2686 "hint.w"
pointer hget_paragraph_initial(scaled x,uint8_t*to)
{
@@ -2587,14 +2587,14 @@ t= hget_list_size(INFO(a));
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)
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 @@ return null;
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 @@ flush_node_list(leader_ptr(tail));penalty(tail)= inf_penalty;
}
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,29 +2627,29 @@ QUIT("Text in paragraph not yet implemented");
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;
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,5):
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,b001):{HTEG_RULE(b001);tail_append(p);prev_height= ignore_dep
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,b101):{pointer p;HTEG_GLUE(b101);tail_append(spec2glue(p));}b
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,b101):{pointer p;HTEG_BOX(b101);type(p)= vlist_node;hprepend_
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,b101):{pointer p;HTEG_SET(b101);vset(p,sto,st,sho,sh,x);hprep
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,b011):HTEG_PACK(vpack_kind,b011);break;
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,b101):{HTEG_KERN(b101);}break;
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|1):HTEG_LEADERS(b100|1);break;
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,b101):{HTEG_BASELINE(b101);}break;
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,5):HTEG_LIG(5);break;
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,14 +2792,14 @@ case TAG(disc_kind,b101):{HTEG_DISC(b101);tail_append(p);}break;
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;
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,b100):HTEG_MATH(b100);break;
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,b101):hteg_content();break;
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,14 +2849,14 @@ case TAG(image_kind,b101):HTEG_IMAGE(b101);break;
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;
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 @@ TAGERR(z);
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 @@ 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);
/*:79*/
-#line 1259 "hint.w"
+#line 1274 "hint.w"
node_pos= hpos-hstart;
if(nest_ptr==0&&tail!=head
@@ -2896,23 +2896,23 @@ if(nest_ptr==0&&tail!=head
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));
{
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 @@ 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);
/*: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 @@ pointer par_head= tail;
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,21 +2949,21 @@ if(INFO(a)&b010)line_break_params= hget_param_list_node();else line_break_params
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)
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)
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,23 +2985,23 @@ if(type(tail)==hlist_node||type(tail)==vlist_node)
prev_height= height(tail);
}
/*:169*/
-#line 2912 "hint.w"
+#line 2927 "hint.w"
hpos= hstart+node_pos;
line_break_params= save_lbp;
}
/*: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 @@ int32_t font_at_size(uint8_t f)
{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 @@ DBG(DBGPAGE,"Filling in after list %d\n",n);
}
}
/*:62*//*63:*/
-#line 992 "hint.w"
+#line 1007 "hint.w"
void hfill_page_template(void)
{pointer p;
@@ -3059,31 +3059,31 @@ houtput_template(p);
hmark_page();
}
/*:63*//*76:*/
-#line 1185 "hint.w"
+#line 1200 "hint.w"
static void hget_node(uint8_t a)
{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;
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,5):
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,b001):{HGET_RULE(b001);tail_append(p);prev_depth= ignore_dept
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,b101):{pointer p;HGET_GLUE(b101);tail_append(spec2glue(p));}b
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,b101):{pointer p;HGET_BOX(b101);type(p)= vlist_node;happend_t
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,b101):{pointer p;HGET_SET(b101);vset(p,sto,st,sho,sh,x);happe
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,b011):HGET_PACK(vpack_kind,b011);break;
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,b101):{HGET_KERN(b101);}break;
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|1):HGET_LEADERS(b100|1);break;
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,b101):{HGET_BASELINE(b101);}break;
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,5):HGET_LIG(5);break;
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,14 +3226,14 @@ case TAG(disc_kind,b101):{HGET_DISC(b101);tail_append(p);}break;
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;
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,b100):HGET_MATH(b100);break;
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,b101):hget_content();break;
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,14 +3287,14 @@ case TAG(image_kind,b101):HGET_IMAGE(b101);break;
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;
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,24 +3303,24 @@ TAGERR(a);
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)
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 @@ tail= head;
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 @@ scaled dimen(uint8_t n)
{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 @@ add_glue_ref(top_skip);
}
}
/*:200*//*202:*/
-#line 3405 "hint.w"
+#line 3420 "hint.w"
void hflush_contribution_list(void)
{if(link(contrib_head)!=null)
@@ -3387,7 +3387,7 @@ link(contrib_head)= null;tail= contrib_head;
}
}
/*:202*//*204:*/
-#line 3449 "hint.w"
+#line 3464 "hint.w"
static bool hbuild_page_up(void)
{
@@ -3399,12 +3399,12 @@ int pi= 0;
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 @@ if(depth(p)> page_max_depth)
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 @@ top_so_far[i]= 0;
}
}
/*: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 @@ page_height= page_top_height;
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_shrink+= shrink(q);
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,21 +3480,21 @@ type(link(page_head))!=glue_node)
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;
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 b= badness(page_goal-page_total,page_so_far[2]);
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= deplorable;
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 @@ r= link(r);
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 @@ link(head)= q;
}
}
/*: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(q)= link(page_head);
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 @@ return true;
}
}
/*: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,31 +3582,31 @@ if(link(page_head)==null)page_tail= p;
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;
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 @@ uint32_t hposition(pointer p)
{return map[p];
}
/*:222*//*229:*/
-#line 3913 "hint.w"
+#line 3928 "hint.w"
void hloc_init(void)
{cur_loc= 0;
@@ -3626,7 +3626,7 @@ page_loc[cur_loc]= 0;
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 @@ if(!hcheck_banner("hint"))
{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 @@ list_leaks();
hclear_dir();
}
/*:234*//*238:*/
-#line 4153 "hint.w"
+#line 4170 "hint.w"
bool hint_forward(void)
{hpage_init();
@@ -3677,7 +3679,7 @@ if(hbuild_page())return true;
return false;
}
/*:238*//*239:*/
-#line 4194 "hint.w"
+#line 4211 "hint.w"
bool hint_backward(void)
{hpage_init();
@@ -3691,7 +3693,7 @@ if(hbuild_page_up())return true;
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 @@ store_map(tail,pos,0);
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 @@ p= link(p);
}
}
/*:270*/
-#line 7543 "hint.w"
+#line 7558 "hint.w"
/*:372*/
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/hint.h b/Build/source/texk/web2c/hitexdir/hintview/src/hint.h
index 0713b92ecf4..4f74baa07c2 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/hint.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/hint.h
@@ -1,5 +1,5 @@
/*371:*/
-#line 7506 "hint.w"
+#line 7521 "hint.w"
#ifndef _HINT_H_
#define _HINT_H_
@@ -8,48 +8,48 @@ typedef uint16_t pointer;
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;
}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 pointer*box_ptr(uint8_t n);
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,19 +74,19 @@ extern void hflush_contribution_list(void);
#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);
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,23 +94,23 @@ extern uint32_t hposition(pointer p);
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);
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,26 +121,26 @@ char*title;
}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
#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 @@ int top,bottom,left,right;
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
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c b/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c
index 7b9dc0aed13..32ab4e120cd 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/hrender.c
@@ -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 int cur_f;
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 @@ forward_mode= false;
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 @@ backward_mode= false;
return h;
}
/*:248*//*249:*/
-#line 4368 "hint.w"
+#line 4385 "hint.w"
uint64_t hint_page_get(void)
{
@@ -127,7 +127,7 @@ if(hin_addr==NULL)return 0;
return page_loc[cur_loc];
}
/*:249*//*250:*/
-#line 4384 "hint.w"
+#line 4401 "hint.w"
uint64_t hint_page(void)
{uint64_t i;
@@ -139,14 +139,14 @@ else
return hint_page_top(i);
}
/*:250*//*251:*/
-#line 4400 "hint.w"
+#line 4417 "hint.w"
uint64_t hint_page_home(void)
{uint64_t pos;
uint8_t where;
int n= zero_label_no;
/*71:*/
-#line 1087 "hint.w"
+#line 1102 "hint.w"
where= labels[n].where;
#if 1
@@ -155,21 +155,21 @@ pos= ((uint64_t)labels[n].pos<<32)+(labels[n].pos-labels[n].pos0);
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);
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 @@ if(hin_addr==NULL)return 0.0;
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 @@ pos= pos0= hpos-hstart;
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 @@ return hint_page();
}
}
/*: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 @@ else
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 @@ forward_mode= false;
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 @@ hget_content();
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 @@ default:
pi= hp= dp= 0;
}
/*:260*/
-#line 4602 "hint.w"
+#line 4619 "hint.w"
h+= d+hp;
d= dp;
@@ -326,7 +326,7 @@ p= link(p);
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 @@ p= link(contrib_head);
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 @@ default:
pi= hp= dp= 0;
}
/*:260*/
-#line 4660 "hint.w"
+#line 4677 "hint.w"
h= h+d+hp;
d= dp;
@@ -372,19 +372,19 @@ flush_node_list(link(contrib_head));
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 @@ break;
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 @@ default:
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 @@ tail= t_save;
hpos= hpos_save;
}
/*:262*/
-#line 4582 "hint.w"
+#line 4599 "hint.w"
found:
hloc_set(PAGE_LOC(pos0,offset));
@@ -466,7 +466,7 @@ backward_mode= false;
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,24 +475,24 @@ if(i<0||i> max_outline)return hint_page_get();
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);
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_length= k;
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 @@ x= (x<<7)+y;
}
}
/*: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 @@ while(i> 0&&(0x80&m_dist[i-1])==0)i--;
return i;
}
/*:279*//*281:*/
-#line 5169 "hint.w"
+#line 5186 "hint.w"
static void next_m_char(uint32_t c)
{
@@ -586,7 +586,7 @@ m_state= 0;
}
else
/*282:*/
-#line 5203 "hint.w"
+#line 5220 "hint.w"
{int i= 0,j= 0;
do{
@@ -598,13 +598,13 @@ m_state= m_state-i;
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 @@ else if(m_state> 0)
}
#endif
/*:283*//*284:*/
-#line 5239 "hint.w"
+#line 5256 "hint.w"
#if 0
static void vlist_mark(pointer p);
@@ -673,7 +673,7 @@ p= link(p);
}
#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 @@ m_put(0xFF);
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= m_get();
m_d--;
}
/*:290*/
-#line 5411 "hint.w"
+#line 5428 "hint.w"
cur_style|= m_style;
}
@@ -729,7 +729,7 @@ case ligature_node:
{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= m_get();
m_d--;
}
/*:290*/
-#line 5421 "hint.w"
+#line 5438 "hint.w"
cur_style|= m_style;
q= link(q);
@@ -758,7 +758,7 @@ p= link(p);
}
}
/*: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 @@ m_focus= m_next(0);
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 @@ REALLOCATE(hint_links,links_allocated,hint_Link);
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].pos<<32)+(labels[n].pos-labels[n].pos0);
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 @@ else
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 @@ return last_hit;
}
}
/*:303*//*304:*/
-#line 5684 "hint.w"
+#line 5701 "hint.w"
uint64_t hint_link_page(int i)
{uint64_t h;
@@ -907,14 +907,14 @@ else if(w==LABEL_MID)return hint_page_middle(h);
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)
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 @@ nativeImage(SP2PT(x),SP2PT(y),SP2PT(w),SP2PT(h),hstart,hend);
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 @@ this_box,mem[this_box].i,p);
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 @@ local_link= cur_link;
cur_link= -1;
}
/*:299*/
-#line 6210 "hint.w"
+#line 6227 "hint.w"
while(p!=null)
{
@@ -985,7 +985,7 @@ c= character(p);
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= m_get();
m_d--;
}
/*:290*/
-#line 6225 "hint.w"
+#line 6242 "hint.w"
cur_style|= m_style;
}
@@ -1051,7 +1051,7 @@ rule_ht= height(p);rule_dp= depth(p);rule_wd= width(p);
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 @@ else
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 @@ end_new_link(local_link,this_box,cur_h,cur_v);
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 @@ case ligature_node:
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 @@ cur_style= cur_style&~(MARK_BIT|FOCUS_BIT);
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,14 +1181,14 @@ m_d= m_get();
m_d--;
}
/*:290*/
-#line 5372 "hint.w"
+#line 5389 "hint.w"
cur_style|= m_style;
q= link(q);
}
}
/*:291*/
-#line 6350 "hint.w"
+#line 6367 "hint.w"
goto render_c;
default:;
@@ -1215,14 +1215,14 @@ p= link(p);
}
}
/*298:*/
-#line 5511 "hint.w"
+#line 5528 "hint.w"
if(local_link>=0)
{end_new_link(local_link,this_box,cur_h,cur_v);
cur_link= local_link;
}
/*:298*/
-#line 6375 "hint.w"
+#line 6392 "hint.w"
}
@@ -1375,14 +1375,14 @@ p= link(p);
}
/*:326*//*327:*/
-#line 6533 "hint.w"
+#line 6550 "hint.w"
uint64_t hint_blank(void)
{nativeBlank();
return 0;
}
/*:327*//*328:*/
-#line 6542 "hint.w"
+#line 6559 "hint.w"
void hint_render(void)
@@ -1393,11 +1393,11 @@ cur_v= height(streams[0].p);
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 @@ else
hlist_render(streams[0].p);
}
/*:328*/
-#line 7593 "hint.w"
+#line 7608 "hint.w"
/*:374*/
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h b/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h
index 29916a01d63..6978b82491e 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/hrender.h
@@ -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;
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/htex.c b/Build/source/texk/web2c/hitexdir/hintview/src/htex.c
index 5d2bb6c3426..e4aa63ad1e2 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/htex.c
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/htex.c
@@ -606,7 +606,7 @@ delete_glue_ref(split_top_ptr(p));
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 @@ ins_ptr(r)= copy_node_list(ins_ptr(p));
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 @@ link(q)= p;p= q;
#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 @@ if(width(p)+s> w)w= width(p)+s;
#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 @@ cur_p= link(cur_p);
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 @@ cur_height= cur_height+prev_dp+height(p);prev_dp= depth(p);
goto not_found;
}
case whatsit_node:/*1394:*/
-#line 25481 "htex.w"
+#line 25483 "htex.w"
goto not_found
@@ -2978,7 +2978,7 @@ goto contribute;
#line 19692 "htex.w"
break;
case whatsit_node:/*1393:*/
-#line 25478 "htex.w"
+#line 25480 "htex.w"
goto contribute
@@ -3437,7 +3437,7 @@ if(subtype(p)>=a_leaders)goto found;
#line 22034 "htex.w"
break;
case whatsit_node:/*1390:*/
-#line 25468 "htex.w"
+#line 25470 "htex.w"
d= 0
/*:1390*/
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/htex.h b/Build/source/texk/web2c/hitexdir/hintview/src/htex.h
index 9beef681ddd..32b99c40000 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/htex.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/htex.h
@@ -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 @@ str_pool[k+2]= si(qo(w.b2) ) ;str_pool[k+3]= si(qo(w.b3) ) \
#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 @@ file_name_size= 1024,
empty_string= 256
/*:11*/
-#line 25693 "htex.w"
+#line 25695 "htex.w"
};
/*18:*/
#line 502 "htex.w"
@@ -1890,7 +1890,7 @@ typedef uint16_t trie_pointer;
typedef int16_t hyph_pointer;
/*:949*/
-#line 25694 "htex.w"
+#line 25696 "htex.w"
extern void list_init(void);
extern void hpack_page(void);
diff --git a/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h b/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h
index d8be265d7b3..27f36754a41 100644
--- a/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h
+++ b/Build/source/texk/web2c/hitexdir/hintview/src/rendernative.h
@@ -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