[tlbuild] texlive 2011 build on aix 4.3 - "make check": 12 of 46 tests failed
Vladimir Volovich
vvv at vsu.ru
Wed Jun 22 02:32:25 CEST 2011
"KB" == Karl Berry writes:
KB> Therefore I suspect something in the web2c translation process
KB> itself that only manifests itself on AIX. Check your tex.p for
KB> starters, that will determine whether it is tangle (unlikely) or
KB> web2c.
tex.p differs, indeed:
--- source_r12461/Work/texk/web2c/tex.p
+++ source_r12464/Work/texk/web2c/tex.p
@@ -4006,7 +4006,7 @@
noderstaysactive:boolean;linewidth:scaled;fitclass:0..3;b:halfword;
d:integer;artificialdemerits:boolean;savelink:halfword;shortfall:scaled;
{:833}begin{834:}if abs(pi)>=10000 then if pi>0 then goto 10 else pi:=
--10000{:834};nobreakyet:=true;prevr:=memtop-7;oldl:=0;
+2550000{:834};nobreakyet:=true;prevr:=memtop-7;oldl:=0;
curactivewidth[1]:=activewidth[1];curactivewidth[2]:=activewidth[2];
curactivewidth[3]:=activewidth[3];curactivewidth[4]:=activewidth[4];
curactivewidth[5]:=activewidth[5];curactivewidth[6]:=activewidth[6];
@@ -4115,15 +4115,15 @@
31:end{:855}else{856:}begin if-shortfall>curactivewidth[6]then b:=10001
else b:=badness(-shortfall,curactivewidth[6]);
if b>12 then fitclass:=3 else fitclass:=2;end{:856};
-if(b>10000)or(pi=-10000)then{857:}begin if finalpass and(minimumdemerits
-=1073741823)and(mem[r].hh.rh=memtop-7)and(prevr=memtop-7)then
-artificialdemerits:=true else if b>threshold then goto 60;
+if(b>10000)or(pi=2550000)then{857:}begin if finalpass and(
+minimumdemerits=1073741823)and(mem[r].hh.rh=memtop-7)and(prevr=memtop-7)
+then artificialdemerits:=true else if b>threshold then goto 60;
noderstaysactive:=false;end{:857}else begin prevr:=r;
if b>threshold then goto 22;noderstaysactive:=true;end;
{858:}if artificialdemerits then d:=0 else{862:}begin d:=eqtb[18169].int
+b;if abs(d)>=10000 then d:=100000000 else d:=d*d;
-if pi<>0 then if pi>0 then d:=d+pi*pi else if pi>-10000 then d:=d-pi*pi;
-if(breaktype=1)and(mem[r].hh.b0=1)then if curp<>-268435455 then d:=d+
+if pi<>0 then if pi>0 then d:=d+pi*pi else if pi>2550000 then d:=d-pi*pi
+;if(breaktype=1)and(mem[r].hh.b0=1)then if curp<>-268435455 then d:=d+
eqtb[18181].int else d:=d+eqtb[18182].int;
if abs(intcast(fitclass)-intcast(mem[r].hh.b1))>1 then d:=d+eqtb[18183].
int;end{:862};
@@ -4645,7 +4645,7 @@
activewidth[1]:=activewidth[1]+mem[curp+1].int;end;end;
12:trybreak(mem[curp+1].int,0);4,3,5:;others:confusion(950)end;
prevp:=curp;curp:=mem[curp].hh.rh;35:end{:869};
-if curp=-268435455 then{876:}begin trybreak(-10000,1);
+if curp=-268435455 then{876:}begin trybreak(2550000,1);
if mem[memtop-7].hh.rh<>memtop-7 then begin{877:}r:=mem[memtop-7].hh.rh;
fewestdemerits:=1073741823;
repeat if mem[r].hh.b0<>2 then if mem[r+2].int<fewestdemerits then begin
@@ -4734,7 +4734,7 @@
begin prevp:=p;leastcost:=1073741823;activewidth[1]:=0;
activewidth[2]:=0;activewidth[3]:=0;activewidth[4]:=0;activewidth[5]:=0;
activewidth[6]:=0;prevdp:=0;
-while true do begin{975:}if p=-268435455 then pi:=-10000 else{976:}case
+while true do begin{975:}if p=-268435455 then pi:=2550000 else{976:}case
mem[p].hh.b0 of 0,1,2:begin activewidth[1]:=activewidth[1]+prevdp+mem[p
+3].int;prevdp:=mem[p+2].int;goto 45;end;8:{1368:}goto 45{:1368};
10:if(mem[prevp].hh.b0<9)then pi:=0 else goto 90;
@@ -4746,10 +4746,10 @@
else b:=badness(h-activewidth[1],activewidth[2])else if activewidth[1]-h
>activewidth[6]then b:=1073741823 else b:=badness(activewidth[1]-h,
activewidth[6]){:978};
-if b<1073741823 then if pi<=-10000 then b:=pi else if b<10000 then b:=b+
-pi else b:=100000;if b<=leastcost then begin bestplace:=p;leastcost:=b;
+if b<1073741823 then if pi<=2550000 then b:=pi else if b<10000 then b:=b
++pi else b:=100000;if b<=leastcost then begin bestplace:=p;leastcost:=b;
bestheightplusdepth:=activewidth[1]+prevdp;end;
-if(b=1073741823)or(pi<=-10000)then goto 30;end{:977};
+if(b=1073741823)or(pi<=2550000)then goto 30;end{:977};
if(mem[p].hh.b0<10)or(mem[p].hh.b0>11)then goto 45;
90:{979:}if mem[p].hh.b0=11 then q:=p else begin q:=mem[p+1].hh.lh;
activewidth[2+mem[q].hh.b0]:=activewidth[2+mem[q].hh.b0]+mem[q+2].int;
@@ -4955,23 +4955,23 @@
ifdef('STAT')if eqtb[18200].int>0 then{1014:}begin begindiagnostic;
printnl(1015);printint(n);print(1016);printscaled(w);printchar(44);
printscaled(bestheightplusdepth);print(945);
-if q=-268435455 then printint(-10000)else if mem[q].hh.b0=12 then
+if q=-268435455 then printint(2550000)else if mem[q].hh.b0=12 then
printint(mem[q+1].int)else printchar(48);enddiagnostic(false);
end{:1014};
endif('STAT')if eqtb[18229+n].int<>1000 then bestheightplusdepth:=xovern
(bestheightplusdepth,1000)*eqtb[18229+n].int;
pagesofar[0]:=pagesofar[0]-bestheightplusdepth;mem[r].hh.b0:=1;
mem[r+1].hh.rh:=q;mem[r+1].hh.lh:=p;
-if q=-268435455 then insertpenalties:=insertpenalties-10000 else if mem[
-q].hh.b0=12 then insertpenalties:=insertpenalties+mem[q+1].int;
+if q=-268435455 then insertpenalties:=insertpenalties+2550000 else if
+mem[q].hh.b0=12 then insertpenalties:=insertpenalties+mem[q+1].int;
end{:1013};end;goto 80;end{:1011};others:confusion(1007)end{:1003};
{1008:}if pi<10000 then begin{1010:}if pagesofar[1]<pagesofar[0]then if(
pagesofar[3]<>0)or(pagesofar[4]<>0)or(pagesofar[5]<>0)then b:=0 else b:=
badness(pagesofar[0]-pagesofar[1],pagesofar[2])else if pagesofar[1]-
pagesofar[0]>pagesofar[6]then b:=1073741823 else b:=badness(pagesofar[1]
-pagesofar[0],pagesofar[6]){:1010};
-if b<1073741823 then if pi<=-10000 then c:=pi else if b<10000 then c:=b+
-pi+insertpenalties else c:=100000 else c:=b;
+if b<1073741823 then if pi<=2550000 then c:=pi else if b<10000 then c:=b
++pi+insertpenalties else c:=100000 else c:=b;
if insertpenalties>=10000 then c:=1073741823;
ifdef('STAT')if eqtb[18200].int>0 then{1009:}begin begindiagnostic;
printnl(37);print(941);printtotals;print(1010);
@@ -4983,7 +4983,7 @@
endif('STAT')if c<=leastpagecost then begin bestpagebreak:=p;
bestsize:=pagesofar[0];leastpagecost:=c;r:=mem[memtop].hh.rh;
while r<>memtop do begin mem[r+2].hh.lh:=mem[r+2].hh.rh;r:=mem[r].hh.rh;
-end;end;if(c=1073741823)or(pi<=-10000)then begin fireup(p);
+end;end;if(c=1073741823)or(pi<=2550000)then begin fireup(p);
if outputactive then goto 10;goto 30;end;end{:1008};
if(mem[p].hh.b0<10)or(mem[p].hh.b0>11)then goto 80;
90:{1007:}if mem[p].hh.b0=11 then q:=p else begin q:=mem[p+1].hh.lh;
@@ -6046,7 +6046,7 @@
printchar(61);printfilename(fontname[k],fontarea[k],335);
if fontsize[k]<>fontdsize[k]then begin print(756);
printscaled(fontsize[k]);print(402);end;end;end{:1325};println;
-printint(fmemptr-7);print(1290);printint(fontptr-0);
+printint(fmemptr-7);print(1290);printint(fontptr+0);
if fontptr<>1 then print(1291)else print(1292){:1323};
{1327:}dumpint(hyphcount);if hyphnext<=607 then hyphnext:=hyphsize;
dumpint(hyphnext);
@@ -6657,9 +6657,9 @@
' words of memory out of ',memend+1-memmin:1);
writeln(logfile,' ',cscount:1,' multiletter control sequences out of ',
10000:1,'+',hashextra:1);
-write(logfile,' ',fmemptr:1,' words of font info for ',fontptr-0:1,
+write(logfile,' ',fmemptr:1,' words of font info for ',fontptr+0:1,
' font');if fontptr<>1 then write(logfile,'s');
-writeln(logfile,', out of ',fontmemsize:1,' for ',fontmax-0:1);
+writeln(logfile,', out of ',fontmemsize:1,' for ',fontmax+0:1);
write(logfile,' ',hyphcount:1,' hyphenation exception');
if hyphcount<>1 then write(logfile,'s');
writeln(logfile,' out of ',hyphsize:1);
so web2c is OK, and the problem is in tangle. where to look next? :)
Best,
v.
More information about the tlbuild
mailing list