% From Udo Wermuth. See:
% https://tug.org/texmfbug/newbug.html#B076columns
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% [12.185] BUG: fix output "columns" and "rows"; glue_sign mod 16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@x
print(" columns)");
@y
if (glue_sign(p)>15) then print (" rows)") else print(" columns)");
@z
@x
begin print(", shrink "); print_glue(glue_shrink(p),glue_sign(p),0);
@y
begin print(", shrink "); print_glue(glue_shrink(p),glue_sign(p) mod 16,0);
@z
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% [37.796] BUG: set high nybble in glue_sign; add a value
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@x
begin if mode=-hmode then
begin adjust_tail:=cur_tail; u:=hpack(link(head),natural); w:=width(u);
cur_tail:=adjust_tail; adjust_tail:=null;
end
else begin u:=vpackage(link(head),natural,0); w:=height(u);
end;
@y
begin if mode=-hmode then
begin adjust_tail:=cur_tail; u:=hpack(link(head),natural); w:=width(u);
cur_tail:=adjust_tail; adjust_tail:=null; glue_sign(u):=0;
end
else begin u:=vpackage(link(head),natural,0); w:=height(u); glue_sign(u):=16;
end;
@z
@x
glue_sign(u):=o; glue_shrink(u):=total_shrink[o];@/
@y
glue_sign(u):=glue_sign(u)+o; glue_shrink(u):=total_shrink[o];@/
@z
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% [37.807] BUG: glue_sign mod 16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@x
glue_order(q):=glue_order(p); glue_sign(q):=glue_sign(p);
@y
glue_order(q):=glue_order(p); glue_sign(q):=glue_sign(p) mod 16;
@z
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% [37.810] BUG: glue_sign mod 16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@x
else begin glue_order(r):=glue_sign(r); glue_sign(r):=shrinking;
@y
else begin glue_order(r):=glue_sign(r) mod 16; glue_sign(r):=shrinking;
@z
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% [37.811] BUG: glue_sign mod 16
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@x
else begin glue_order(r):=glue_sign(r); glue_sign(r):=shrinking;
@y
else begin glue_order(r):=glue_sign(r) mod 16; glue_sign(r):=shrinking;
@z