[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