From 04c2cc3e4fd3c33cb2dd3b2e2c1b7067dd9204dc Mon Sep 17 00:00:00 2001 From: Peter Breitenlohner Date: Wed, 19 Jan 2011 16:29:28 +0000 Subject: texmf.cnf for (e-)pTeX's trip test git-svn-id: svn://tug.org/texlive/trunk@21125 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/Makefile.in | 14 +- Build/source/texk/web2c/eptexdir/ChangeLog.TL | 2 + Build/source/texk/web2c/eptexdir/am/eptex.am | 6 +- Build/source/texk/web2c/eptexdir/eptrip.diffs | Bin 28324 -> 0 bytes Build/source/texk/web2c/eptexdir/eptrip.test | 9 +- .../source/texk/web2c/eptexdir/eptrip/eptrip.diffs | Bin 0 -> 25797 bytes Build/source/texk/web2c/eptexdir/eptrip/etrip.log | 4281 ++++++++++++++++++++ Build/source/texk/web2c/eptexdir/eptrip/etrip.tex | 1249 ++++++ Build/source/texk/web2c/eptexdir/eptrip/texmf.cnf | 40 + Build/source/texk/web2c/eptexdir/fam256.ch | 2 + Build/source/texk/web2c/etexdir/etrip/texmf.cnf | 15 +- Build/source/texk/web2c/ptexdir/am/ptex.am | 2 +- Build/source/texk/web2c/ptexdir/ptrip.diffs | Bin 9630 -> 0 bytes Build/source/texk/web2c/ptexdir/ptrip.test | 7 +- Build/source/texk/web2c/ptexdir/ptrip/ptrip.diffs | Bin 0 -> 9543 bytes Build/source/texk/web2c/ptexdir/ptrip/texmf.cnf | 41 + 16 files changed, 5643 insertions(+), 25 deletions(-) delete mode 100644 Build/source/texk/web2c/eptexdir/eptrip.diffs create mode 100644 Build/source/texk/web2c/eptexdir/eptrip/eptrip.diffs create mode 100644 Build/source/texk/web2c/eptexdir/eptrip/etrip.log create mode 100644 Build/source/texk/web2c/eptexdir/eptrip/etrip.tex create mode 100644 Build/source/texk/web2c/eptexdir/eptrip/texmf.cnf delete mode 100644 Build/source/texk/web2c/ptexdir/ptrip.diffs create mode 100644 Build/source/texk/web2c/ptexdir/ptrip/ptrip.diffs create mode 100644 Build/source/texk/web2c/ptexdir/ptrip/texmf.cnf diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in index 59f62a56532..de436bebc3e 100644 --- a/Build/source/texk/web2c/Makefile.in +++ b/Build/source/texk/web2c/Makefile.in @@ -1294,13 +1294,15 @@ EXTRA_DIST = PROJECTS cftests cpascal.h help.h w2c/config.h \ ptexdir/tests/goth10.tfm ptexdir/tests/sample.dvi \ ptexdir/tests/min10.pl ptexdir/tests/min10.tfm \ ptexdir/tests/tmin10.pl ptexdir/tests/tmin10.tfm \ - ptexdir/ptrip.diffs $(eptex_tests) $(eptex_web_srcs) \ - $(eptex_ch_srcs) eptexdir/eptex.defines eptexdir/ChangeLog \ + ptexdir/ptrip/ptrip.diffs ptexdir/ptrip/texmf.cnf \ + $(eptex_tests) $(eptex_web_srcs) $(eptex_ch_srcs) \ + eptexdir/eptex.defines eptexdir/ChangeLog \ eptexdir/ChangeLog.TL eptexdir/README.txt \ - eptexdir/eptrip.diffs $(pdftex_ch_srcs) etexdir/etex.ch \ - pdftexdir/pdftex.defines pdftexdir/pdftex.h \ - pdftexdir/ChangeLog pdftexdir/NEWS pdftexdir/README \ - pdftexdir/change-files.txt $(pdftex_tests) \ + eptexdir/eptrip/eptrip.diffs eptexdir/eptrip/etrip.log \ + eptexdir/eptrip/etrip.tex eptexdir/eptrip/texmf.cnf \ + $(pdftex_ch_srcs) etexdir/etex.ch pdftexdir/pdftex.defines \ + pdftexdir/pdftex.h pdftexdir/ChangeLog pdftexdir/NEWS \ + pdftexdir/README pdftexdir/change-files.txt $(pdftex_tests) \ pdftexdir/regex/COPYING.LIB pdftexdir/regex/README \ luatexdir/ptexlib.h luatexdir/getluatexsvnversion.sh \ $(luatex_tests) luatexdir/lua51/Makefile \ diff --git a/Build/source/texk/web2c/eptexdir/ChangeLog.TL b/Build/source/texk/web2c/eptexdir/ChangeLog.TL index b5815a4d959..3c645b56958 100644 --- a/Build/source/texk/web2c/eptexdir/ChangeLog.TL +++ b/Build/source/texk/web2c/eptexdir/ChangeLog.TL @@ -8,6 +8,8 @@ ChangeLog.TL: TeX Live (TL) changes for e-pTeX * eptex.ech: Make \lastnodetype consistent with e-TeX, based on code from Hironori Kitagawa . + * fam256.ch (max_reg_help_line): Use correct max_reg_num value. + 2011-01-17 Peter Breitenlohner * eptex.ech: banner_k==banner for e-pTeX. diff --git a/Build/source/texk/web2c/eptexdir/am/eptex.am b/Build/source/texk/web2c/eptexdir/am/eptex.am index b1b1266d954..5b399622111 100644 --- a/Build/source/texk/web2c/eptexdir/am/eptex.am +++ b/Build/source/texk/web2c/eptexdir/am/eptex.am @@ -101,7 +101,11 @@ endif EPTEX ## Test data and results ## ## eptexdir/eptrip.test -EXTRA_DIST += eptexdir/eptrip.diffs +EXTRA_DIST += \ + eptexdir/eptrip/eptrip.diffs \ + eptexdir/eptrip/etrip.log \ + eptexdir/eptrip/etrip.tex \ + eptexdir/eptrip/texmf.cnf eptrip.diffs: eptex$(EXEEXT) $(triptrap_diffs) $@ .PHONY: eptrip-clean diff --git a/Build/source/texk/web2c/eptexdir/eptrip.diffs b/Build/source/texk/web2c/eptexdir/eptrip.diffs deleted file mode 100644 index b2f1fec66b2..00000000000 Binary files a/Build/source/texk/web2c/eptexdir/eptrip.diffs and /dev/null differ diff --git a/Build/source/texk/web2c/eptexdir/eptrip.test b/Build/source/texk/web2c/eptexdir/eptrip.test index ea4066dfcbc..b545d9667c4 100755 --- a/Build/source/texk/web2c/eptexdir/eptrip.test +++ b/Build/source/texk/web2c/eptexdir/eptrip.test @@ -6,13 +6,14 @@ testdir=$srcdir/triptrap etestdir=$srcdir/etexdir/etrip +eptestdir=$srcdir/eptexdir/eptrip -TEXMFCNF=$testdir; export TEXMFCNF +TEXMFCNF=$eptestdir; export TEXMFCNF dvitype_args="-output-level=2 -dpi=72.27 -page-start='*.*.*.*.*.*.*.*.*.*'" echo ">>> Running e-TRIP test for e-pTeX." >&2 -echo ">>> See $srcdir/eptexdir/eptrip.diffs for example of acceptable diffs." >&2 +echo ">>> See $eptestdir/eptrip.diffs for example of acceptable diffs." >&2 rm -f trip.tfm trip.pl trip.tex trip.log trip.fmt trip.log trip.dvi \ cptripin.fot cptripin.log cptrip.fot cptrip.log cptrip.typ \ @@ -92,7 +93,7 @@ echo "*** e-TeX specific part of e-TRIP test for e-pTeX ***." diff $etestdir/etrip.pl etrip.pl || is_OK=false # get same filename in log -$LN_S $etestdir/etrip.tex . +$LN_S $eptestdir/etrip.tex . ./eptex --progname=epinitex --ini <$etestdir/etrip2.in >eptripin.fot sed "$P_SED1" etrip.log > eptripin.log || exit 1 @@ -105,7 +106,7 @@ diff $etestdir/etrip.fot eptrip.fot # We use $DIFF instead of `diff' only for those files where there # might actually be legitimate numerical differences. -$DIFF $DIFFFLAGS $etestdir/etrip.log eptrip.log +$DIFF $DIFFFLAGS $eptestdir/etrip.log eptrip.log eval ./dvitype $dvitype_args etrip.dvi >eptrip.typ || exit 1 $DIFF $DIFFFLAGS $etestdir/etrip.typ eptrip.typ diff --git a/Build/source/texk/web2c/eptexdir/eptrip/eptrip.diffs b/Build/source/texk/web2c/eptexdir/eptrip/eptrip.diffs new file mode 100644 index 00000000000..353816d2ec9 Binary files /dev/null and b/Build/source/texk/web2c/eptexdir/eptrip/eptrip.diffs differ diff --git a/Build/source/texk/web2c/eptexdir/eptrip/etrip.log b/Build/source/texk/web2c/eptexdir/eptrip/etrip.log new file mode 100644 index 00000000000..a838b070ad6 --- /dev/null +++ b/Build/source/texk/web2c/eptexdir/eptrip/etrip.log @@ -0,0 +1,4281 @@ +This is e-TeX, Version 3.141592-2.2 (preloaded format=etrip 2004.9.6) 6 SEP 2004 23:13 +entering extended mode +**&etrip etrip +(etrip.tex e-IniTeX: e-Trip format loaded. +This is the e-Trip test [2004-09-06] for e-TeX v3.141592-2.2. +(You are using e-TeX version/revision 2.2) +Missing character: There is no b in font nullfont! + +Missing character: There is no c in font nullfont! + +Checking input/output of new csnames: +e-TeX Version 2 has 66 new csnames: +> \3=macro: +-> \eTeXversion \eTeXrevision + \showgroups \showtokens + \tracingassigns \tracinggroups + \tracingifs \tracingscantokens + \currentgrouplevel \currentgrouptype + \middle \lastnodetype + \TeXXeTstate \beginL + \endL \beginR + \endR \predisplaydirection + \marks \topmarks + \firstmarks \botmarks + \splitfirstmarks \splittopmarks + \protected \unexpanded + \detokenize \scantokens + \readline \unless + \ifdefined \ifcsname + \everyeof \interactionmode + \currentiflevel \currentiftype + \currentifbranch \showifs + \fontcharwd \fontcharht + \fontchardp \fontcharic + \iffontchar \tracingnesting + \parshapelength \parshapeindent + \parshapedimen \numexpr + \dimexpr \glueexpr + \muexpr \mutoglue + \gluetomu \gluestretchorder + \glueshrinkorder \gluestretch + \glueshrink \savingvdiscards + \pagediscards \splitdiscards + \lastlinefit \savinghyphcodes + \interlinepenalties \clubpenalties + \widowpenalties \displaywidowpenalties +. +l.181 \show\3 + \endgroup + +Checking creation and printing for new node types: + +Overfull \hbox (38.99965pt too wide) in paragraph at lines 195--197 +[]\trip a[]b[]p$q [] t$u[][] + +\hbox(17.0+3.00002)x0.0 +.\hbox(0.0+0.0)x0.0 +.\trip a +.\beginL +.\trip b +.\beginR +.\trip p +.\mathon +.\trip q +.\glue(\thinmuskip) 4.99988 plus 0.99997 +.\hbox(17.0+3.00002)x23.9999 +..\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +...\bigtrip a +..\trip r +..\glue(\thinmuskip) 4.99988 plus 0.99997 +..\hbox(16.0+4.00002)x6.0, shifted -1.0 +...\bigtrip B +..\trip s +..\vbox(7.0+11.0)x7.0, shifted -9.0 +...\hbox(7.0+1.0)x3.0 +....\trip A +...\hbox(8.0+2.0)x3.0 +....\trip B +.\glue(\thinmuskip) 4.99988 plus 0.99997 +.\trip t +.\mathoff +.\trip r (ligature u|) +.\penalty 10000 +.\glue(\parfillskip) 0.0 +.\endR +.\endL +.\glue(\rightskip) 0.0 + + +Overfull \hbox (11.0pt too wide) detected at line 197 +\trip aMb + +\hbox(8.0+2.0)x0.0 +.\trip a +.\trip M +.\trip b + + +Overfull \hbox (24.6pt too wide) in paragraph at lines 197--201 +[][]\trip p[]q$st$u[] + +\hbox(0.0+0.0)x0.0 +.\beginL +.\beginR +.\trip p +.\endR +.\trip q (ligature |) +.\trip q +.\mathon, surrounded 12.3 +.\trip s +.\trip t +.\mathoff, surrounded 12.3 +.\trip r (ligature u|) +.\penalty 10000 +.\glue(\parfillskip) 0.0 +.\endL +.\glue(\rightskip) 0.0 + + +Overfull \hbox (6.0pt too wide) detected at line 201 +\trip rMs + +\hbox(0.0+0.0)x0.0 +.\trip r +.\trip M +.\trip s + + +Overfull \hbox (3.0pt too wide) in paragraph at lines 201--205 +[]\trip tp[]u + +\hbox(0.0+0.0)x0.0 +.\beginL +.\trip t +.\kern3.0 +.\trip q (ligature ) +.\trip p +.\endL +.\trip r (ligature u|) +.\penalty 10000 +.\glue(\parfillskip) 0.0 +.\glue(\rightskip) 0.0 + + +Overfull \hbox (6.0pt too wide) detected at line 205 +\trip rMs + +\hbox(0.0+0.0)x0.0 +.\trip r +.\trip M +.\trip s + +! Bad register code (-1). + + { +l.208 \marks-1{ + -1}\marks65536{65536}% Bad register (-1) .... +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + { +l.208 ...marks-1{-1}\marks65536{ + 65536}% Bad register (-1) ...... +A register number must be between 0 and 65535. +I changed this one to zero. + +! Improper \beginL. +l.210 \beginL + \beginR\endL\endR % Improper \(begin/end)(L/R) +Sorry, this optional e-TeX feature has been disabled. + +! Improper \beginR. +l.210 \beginL\beginR + \endL\endR % Improper \(begin/end)(L/R) +Sorry, this optional e-TeX feature has been disabled. + +! Improper \endL. +l.210 \beginL\beginR\endL + \endR % Improper \(begin/end)(L/R) +Sorry, this optional e-TeX feature has been disabled. + +! Improper \endR. +l.210 ...beginL\beginR\endL\endR + % Improper \(begin/end)(L/R) +Sorry, this optional e-TeX feature has been disabled. + + +Overfull \hbox (3.0pt too wide) in paragraph at lines 205--211 +\trip tp + +\hbox(0.0+0.0)x0.0 +.\trip t +.\kern3.0 +.\trip q (ligature ) +.\trip p +.\penalty 10000 +.\glue(\parfillskip) 0.0 +.\glue(\rightskip) 0.0 + +> \box0= +\vbox(30.00002+0.0)x0.0 +.\hbox(17.0+3.00002)x0.0 +..\hbox(0.0+0.0)x0.0 +..\trip a +..\beginL +..\trip b +..\beginR +..\trip p +..\mathon +..\trip q +..\glue(\thinmuskip) 4.99988 plus 0.99997 +..\hbox(17.0+3.00002)x23.9999 +...\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +....\bigtrip a +...\trip r +...\glue(\thinmuskip) 4.99988 plus 0.99997 +...\hbox(16.0+4.00002)x6.0, shifted -1.0 +....\bigtrip B +...\trip s +...\vbox(7.0+11.0)x7.0, shifted -9.0 +....\hbox(7.0+1.0)x3.0 +.....\trip A +....\hbox(8.0+2.0)x3.0 +.....\trip B +..\glue(\thinmuskip) 4.99988 plus 0.99997 +..\trip t +..\mathoff +..\trip r (ligature u|) +..\penalty 10000 +..\glue(\parfillskip) 0.0 +..\endR +..\endL +..\glue(\rightskip) 0.0 +.\penalty 0 +.\glue(\abovedisplayskip) 0.0 +.\glue(\lineskip) 0.0 +.\hbox(8.0+2.0)x0.0 +..\beginM +..\kern0.0 +..\hbox(8.0+2.0)x0.0, display +...\trip a +...\trip M +...\trip b +..\kern0.0 +..\endM +.\penalty 0 +.\glue(\belowdisplayskip) 0.0 +.\glue(\lineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +..\beginL +..\beginR +..\trip p +..\endR +..\trip q (ligature |) +..\trip q +..\mathon, surrounded 12.3 +..\trip s +..\trip t +..\mathoff, surrounded 12.3 +..\trip r (ligature u|) +..\penalty 10000 +..\glue(\parfillskip) 0.0 +..\endL +..\glue(\rightskip) 0.0 +.\penalty 0 +.\glue(\abovedisplayskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +..\beginM +..\kern0.0 +..\hbox(0.0+0.0)x0.0, display +...\trip r +...\trip M +...\trip s +..\kern0.0 +..\endM +.\penalty 0 +.\glue(\belowdisplayskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +..\beginL +..\trip t +..\kern3.0 +..\trip q (ligature ) +..\trip p +..\endL +..\trip r (ligature u|) +..\penalty 10000 +..\glue(\parfillskip) 0.0 +..\glue(\rightskip) 0.0 +.\penalty 0 +.\glue(\abovedisplayskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0, display +..\trip r +..\trip M +..\trip s +.\penalty 0 +.\glue(\belowdisplayskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +..\trip t +..\kern3.0 +..\trip q (ligature ) +..\trip p +..\penalty 10000 +..\glue(\parfillskip) 0.0 +..\glue(\rightskip) 0.0 +.\mark{0old} +.\mark{0} +.\marks1{1} +.\marks15{15} +.\marks65535{65535} +.\mark{-1} +.\mark{65536} + +! OK. +l.211 }\showbox0 + + +Checking \interactionmode: + + +current interactionmode (l.229): batch + +current interactionmode (l.230): nonstop + +current interactionmode (l.231): scroll + +current interactionmode (l.232): errorstop + +! Bad interaction mode (-1). +l.237 \interactionmode=-1 + \1 1 % nonstop +Modes are 0=batch, 1=nonstop, 2=scroll, and +3=errorstop. Proceed, and I'll ignore this case. + +current interactionmode (l.237): nonstop +! Bad interaction mode (4). +l.238 \interactionmode=4 + \1 1 % nonstop +Modes are 0=batch, 1=nonstop, 2=scroll, and +3=errorstop. Proceed, and I'll ignore this case. + +current interactionmode (l.238): nonstop + +current interactionmode (l.239): scroll + +current interactionmode (l.239): scroll + +current interactionmode (l.239): nonstop + +current interactionmode (l.239): nonstop + +current interactionmode (l.239): errorstop + +current interactionmode (l.239): errorstop + +current interactionmode (l.239): batch + +current interactionmode (l.239): batch +current interactionmode (l.240): batch + +current interactionmode (l.240): errorstop + +1 (l.243) +0 (l.244) +1 (l.245) +current interactionmode (l.247): batch + +current interactionmode (l.247): errorstop + +current interactionmode (l.247): scroll + +current interactionmode (l.247): nonstop + +current interactionmode (l.248): batch +Checking \tracingifs: +{vertical mode: \iftrue: (level 1) entered on line 257} +{\iffalse: (level 2) entered on line 257} +{\else: \iffalse (level 2) entered on line 257} +{\fi: \iffalse (level 2) entered on line 257} +{\else: \iftrue (level 1) entered on line 257} +{\fi: \iftrue (level 1) entered on line 257} +{\unless\iftrue: (level 1) entered on line 258} +{\else: \unless\iftrue (level 1) entered on line 258} +{\unless\iffalse: (level 2) entered on line 258} +{\else: \unless\iffalse (level 2) entered on line 258} +{\fi: \unless\iffalse (level 2) entered on line 258} +{\fi: \unless\iftrue (level 1) entered on line 258} +{\ifdefined: (level 1) entered on line 260} +{true} +{\unless} +{\unless\ifdefined: (level 2) entered on line 260} +{true} +{\ifcase: (level 3) entered on line 260} +{case 2} +{\or: \ifcase (level 3) entered on line 260} +{\or: \ifcase (level 3) entered on line 260} +{\ifcsname: (level 4) entered on line 261} +{true} +{\ifcsname: (level 5) entered on line 261} +{false} +{\else: \ifcsname (level 5) entered on line 261} +{\ifx: (level 6) entered on line 262} +{false} +{\else: \ifx (level 6) entered on line 262} +{\ifx: (level 7) entered on line 262} +{false} +{\fi: \ifx (level 7) entered on line 262} +{\fi: \ifx (level 6) entered on line 262} +{\fi: \ifcsname (level 5) entered on line 261} +{\fi: \ifcsname (level 4) entered on line 261} +{\or: \ifcase (level 3) entered on line 260} +{\fi: \ifcase (level 3) entered on line 260} +{\fi: \unless\ifdefined (level 2) entered on line 260} +{\fi: \ifdefined (level 1) entered on line 260} +{\endgroup} +Checking \tracingassigns: +{into \tracingassigns=1} +{globally changing \count17=0} +{into \count17=7} +{reassigning \count17=7} +{globally changing \9=undefined} +{into \9=macro:->\relax } +{globally changing \8=undefined} +{into \8=macro:->\relax } +{reassigning \8=macro:->\relax } +{globally changing \count17=7} +{into \count17=0} +{reassigning \count17=0} +{globally changing \9=macro:->\relax } +{into \9=undefined} +{globally changing \8=macro:->\relax } +{into \8=undefined} +{reassigning \8=undefined} +{restoring \tracingassigns=0} +Checking \currentgrouptype, \currentgrouplevel, and \lastnodetype: +current group level (l.282): outer level +current group type (l.284): bottom level +current group type (l.311): semi simple group +{entering vbox group (level 2) at line 313} +current group type (l.313): vbox group +{entering adjusted hbox group (level 3) at line 314} +current group type (l.314): adjusted hbox group +{entering simple group (level 4) at line 315} +current group type (l.315): simple group +{leaving simple group (level 4) entered at line 315} +last node type (l.316): empty +{entering hbox group (level 4) at line 317} +current group type (l.317): hbox group +{entering disc group (level 5) at line 318} +current group type (l.318): disc group +{leaving disc group (level 5) entered at line 318} +{entering disc group (level 5) at line 318} +current group type (l.318): disc group +{leaving disc group (level 5) entered at line 318} +{entering disc group (level 5) at line 318} +current group type (l.318): disc group +{leaving disc group (level 5) entered at line 318} +last node type (l.320): disc node +last node type (l.321): char node +last node type (l.322): ligature node +{entering insert group (level 5) at line 323} +current group type (l.323): insert group +{leaving insert group (level 5) entered at line 323} +last node type (l.324): ins node +{entering insert group (level 5) at line 325} +current group type (l.325): insert group +{leaving insert group (level 5) entered at line 325} +last node type (l.326): adjust node +last node type (l.327): mark node +last node type (l.328): rule node +last node type (l.329): glue node +last node type (l.330): kern node +last node type (l.331): penalty node +{entering vtop group (level 5) at line 332} +current group type (l.332): vtop group +{leaving vtop group (level 5) entered at line 332} +last node type (l.333): vlist node +last node type (l.334): whatsit node +{entering math shift group (level 5) at line 335} +current group type (l.335): math shift group +{entering math group (level 6) at line 336} +current group type (l.336): math group +{leaving math group (level 6) entered at line 336} +{leaving math shift group (level 5) entered at line 335} +last node type (l.338): math node +last node type (l.339): math node +last node type (l.340): math node +{entering align group (level 5) at line 341} +{entering align group (level 6) at line 341} +current group type (l.341): align group +{leaving align group (level 6) entered at line 341} +{entering align group (level 6) at line 342} +{entering no align group (level 7) at line 342} +current group type (l.342): no align group +last node type (l.343): unset node +{leaving no align group (level 7) entered at line 342} +{leaving align group (level 6) entered at line 342} +{leaving align group (level 5) entered at line 341} +{leaving hbox group (level 4) entered at line 317} +{leaving adjusted hbox group (level 3) entered at line 314} +last node type (l.347): hlist node +{entering math shift group (level 3) at line 348} +current group type (l.348): math shift group +last node type (l.349): empty +{entering math choice group (level 4) at line 350} +current group type (l.350): math choice group +{leaving math choice group (level 4) entered at line 350} +{entering math choice group (level 4) at line 350} +current group type (l.350): math choice group +{leaving math choice group (level 4) entered at line 350} +{entering math choice group (level 4) at line 350} +current group type (l.350): math choice group +{leaving math choice group (level 4) entered at line 350} +{entering math choice group (level 4) at line 350} +current group type (l.350): math choice group +{entering vcenter group (level 5) at line 351} +current group type (l.351): vcenter group +{leaving vcenter group (level 5) entered at line 351} +last node type (l.352): math mode node +{leaving math choice group (level 4) entered at line 350} +last node type (l.353): math mode node +{entering math left group (level 4) at line 354} +current group type (l.354): math left group +{leaving math left group (level 4) entered at line 354} +{entering math left group (level 4) at line 355} +current group type (l.355): math left group +{leaving math left group (level 4) entered at line 355} +{entering math left group (level 4) at line 356} +current group type (l.356): math left group +{leaving math left group (level 4) entered at line 356} +{leaving math shift group (level 3) entered at line 348} +{leaving vbox group (level 2) entered at line 313} +{entering adjusted hbox group (level 2) at line 394} +{leaving adjusted hbox group (level 2) entered at line 394} +{entering output group (level 2) at line 394} +current group type (l.394): output group +{entering vbox group (level 3) at line 394} +{entering adjusted hbox group (level 4) at line 394} +{entering hbox group (level 5) at line 394} +{entering simple group (level 6) at line 394} +{entering align group (level 7) at line 394} +{entering align group (level 8) at line 394} +{entering no align group (level 9) at line 394} +{entering math shift group (level 10) at line 394} +{entering vtop group (level 11) at line 394} +{entering math shift group (level 12) at line 394} +{entering math group (level 13) at line 394} +{entering math left group (level 14) at line 394} +{leaving math left group (level 14) entered at line 394} +{entering math left group (level 14) at line 394} +{entering math choice group (level 15) at line 394} +{leaving math choice group (level 15) entered at line 394} +{entering math choice group (level 15) at line 394} +{leaving math choice group (level 15) entered at line 394} +{entering math choice group (level 15) at line 394} +{entering vcenter group (level 16) at line 394} +{entering insert group (level 17) at line 394} +{entering disc group (level 18) at line 394} +{leaving disc group (level 18) entered at line 394} +{entering disc group (level 18) at line 394} + +### disc group (level 18) entered at line 394 (\discretionary{}{) +### insert group (level 17) entered at line 394 (\vadjust{) +### vcenter group (level 16) entered at line 394 (\vcenter to7.0pt{) +### math choice group (level 15) entered at line 394 (\mathchoice{}{}{) +### math left group (level 14) entered at line 394 (\middle) +### math group (level 13) entered at line 394 ({) +### math shift group (level 12) entered at line 394 ($$) +### vtop group (level 11) entered at line 394 (\vtop{) +### math shift group (level 10) entered at line 394 ($) +### no align group (level 9) entered at line 394 (\noalign{) +### align group (level 8) entered at line 394 (\cr) +### align group (level 7) entered at line 394 (\valign{) +### simple group (level 6) entered at line 394 ({) +### hbox group (level 5) entered at line 394 (\raise5.0pt\hbox{) +### adjusted hbox group (level 4) entered at line 394 (\hbox spread5.0pt +{) +### vbox group (level 3) entered at line 394 (\setbox0=\vbox{) +### output group (level 2) entered at line 394 (\output) +### semi simple group (level 1) entered at line 285 (\begingroup) +### bottom level + +! OK. + ...nary {}{\showgroups + }{} } } }{} \right . } $$ } $... +l.394 ...ox{}\vfil\penalty-10000 + + +{leaving disc group (level 18) entered at line 394} +{entering disc group (level 18) at line 394} +{leaving disc group (level 18) entered at line 394} +{leaving insert group (level 17) entered at line 394} +{leaving vcenter group (level 16) entered at line 394} +{leaving math choice group (level 15) entered at line 394} +{entering math choice group (level 15) at line 394} +{leaving math choice group (level 15) entered at line 394} +{leaving math left group (level 14) entered at line 394} +{leaving math group (level 13) entered at line 394} +{leaving math shift group (level 12) entered at line 394} +{leaving vtop group (level 11) entered at line 394} +{leaving math shift group (level 10) entered at line 394} +{leaving no align group (level 9) entered at line 394} +{leaving align group (level 8) entered at line 394} +{leaving align group (level 7) entered at line 394} +{leaving simple group (level 6) entered at line 394} +{leaving hbox group (level 5) entered at line 394} +{leaving adjusted hbox group (level 4) entered at line 394} +{leaving vbox group (level 3) entered at line 394} +{leaving output group (level 2) entered at line 394} +Checking expansion of \protected macros: +> \2=\protected macro: +->. +l.402 ...otected\def\2{} \show\2 + + +> \3=\protected macro: +->. +l.403 \let\3=\2 \show\3 + + +> \1=\protected macro: +->\2. +l.404 ...cted\def\1{\2}} \show\1 + + + +\1->\2 +\1\2 +\typeout ->\immediate \write 15 + +\1->\2 +\1\2 + +\1->\2 +> \box0= +\vbox(0.0+0.0)x0.0 +.\special{\1\2} + +! OK. +l.408 ...ndafter\1\1}} \showbox0 + + + +\1->\2 +> \5=macro: +->\1\2. +l.409 ...xpandafter\1\1} \show\5 + + + +\1->\2 + +\1->\3 + +\3-> + +\2-> +Checking \scantokens, \tracingscantokens, \readline, and \everyeof: + +Completed box being shipped out [1] +\vbox(0.0+0.0)x0.0 +.\openout1=etrip.out +.\write1{\unexpanded \expandafter {\1}} +.\closeout1 + +Memory usage before: 50&182; after: 36&176; still untouched: 680 +(etrip.out) ( +Warning: end of semi simple group (level 3) entered at line 431 of a dif +ferent file +Warning: end of \iftrue entered on line 431 of a different file +Warning: end of file when simple group (level 3) entered at line 3 is in +complete +Warning: end of file when \iffalse\else entered on line 4 is incomplete +) ( +Warning: end of semi simple group (level 3) entered at line 433 of a dif +ferent file +l.1 \endgroup + +l.433 ...ntokens\expandafter{\1} + \egroup \fi +Warning: end of \unless\iffalse entered on line 433 of a different file +l.2 \fi + +l.433 ...ntokens\expandafter{\1} + \egroup \fi +Warning: end of file when simple group (level 3) entered at line 3 is in +complete +Warning: end of file when \iffalse\else entered on line 4 is incomplete +l.5 \iffalse \else + +l.433 ...ntokens\expandafter{\1} + \egroup \fi) ( +Warning: end of hbox group (level 4) entered at line 1 of a different fi +le +l.1 \egroup + +l.6 } + +l.444 } + % end of outer \scantokens +Warning: end of \ifcase entered on line 2 of a different file +l.2 \else \fi + +l.6 } + +l.444 } + % end of outer \scantokens +Warning: end of hbox group (level 3) entered at line 435 of a different +file + +\1->\egroup + \fi +l.4 \1 + +l.6 } + +l.444 } + % end of outer \scantokens +Warning: end of \unless\iftrue entered on line 436 of a different file + +\1->\egroup \fi + +l.4 \1 + +l.6 } + +l.444 } + % end of outer \scantokens +Warning: end of file when math shift group (level 4) entered at line 7 i +s incomplete +Warning: end of file when vtop group (level 3) entered at line 5 is inco +mplete +Warning: end of file when \iffalse entered on line 9 is incomplete +Warning: end of file when \ifinner\else entered on line 8 is incomplete +Warning: end of file when \ifnum entered on line 6 is incomplete +l.10 \csname iffalse\endcsname + +l.6 } + +l.444 } + % end of outer \scantokens +! Incomplete \iffalse; all text was ignored after line 9. + + \fi +l.6 } + +l.444 } + % end of outer \scantokens +The file ended while I was skipping conditional text. +This kind of error happens when you say `\if...' and forget +the matching `\fi'. I've inserted a `\fi'; this might work. + +Warning: end of file when vtop group (level 3) entered at line 5 is inco +mplete +Warning: end of file when \ifnum entered on line 6 is incomplete +l.9 \fi + +l.444 } + % end of outer \scantokens) (etrip.out +! Undefined control sequence. +\endgroup ->\9\9 + +l.1 \endgroup + +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +) ( +! Undefined control sequence. +\endgroup ->\9\9 + +l.1 \endgroup + +l.451 ...ntokens\expandafter{\1} + \egroup \fi +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +) ( ) +Runaway definition? +->\begingroup +! File ended while scanning definition of \1. + + } +l.453 ...scantokens{\begingroup} + % <== error +I suspect you have forgotten a `}', causing me +to read past where you wanted me to stop. +I'll try to recover; but if the error is serious, +you'd better type `E' or `X' now and fix your file. + +( ) ( level=2 ( level=3 ( level=4 +! Undefined control sequence. + ...uplevel \2\else \9 + \fi +l.2 + +\2...=\the \currentgrouplevel }} + \endgroup + ...rrentgrouplevel \2 + \else \9\fi +l.2 + +\2...=\the \currentgrouplevel }} + \endgroup + ...rrentgrouplevel \2 + \else \9\fi +l.2 + +\2...=\the \currentgrouplevel }} + \endgroup +l.461 ...evel\2\else\9\fi}}}\1\2 + +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +))) +{\tracingrestores} +{\tracingassigns} +{into \tracingassigns=1} +{\setbox} +{restricted horizontal mode: \unless} +{\unless\ifeof} +{true} +{\readline} +{changing \2=macro:->\begingroup \scantokens {\message \ETC.} +{into \2=macro:->\endgroup^^M} +{\endlinechar} +{changing \endlinechar=13} +{into \endlinechar=-1} +{the character \} +Missing character: There is no \ in font etrip! +{the character e} +Missing character: There is no e in font etrip! +{the character n} +Missing character: There is no n in font etrip! +{the character d} +Missing character: There is no d in font etrip! +{the character g} +Missing character: There is no g in font etrip! +{the character r} +Missing character: There is no o in font etrip! +{the character u} +Missing character: There is no ^^M in font etrip! +{\expandafter} +{\fi} +{\unless} +{\unless\ifeof} +{true} +{\readline} +{changing \2=macro:->\endgroup^^M} +{into \2=macro:->\fi} +{\endlinechar} +{reassigning \endlinechar=-1} +{the character \} +Missing character: There is no \ in font etrip! +{the character f} +Missing character: There is no f in font etrip! +{the character i} +Missing character: There is no i in font etrip! +{\expandafter} +{\fi} +{\unless} +{\unless\ifeof} +{true} +{\readline} +{changing \2=macro:->\fi} +{into \2=macro:->\bgroup} +{\endlinechar} +{reassigning \endlinechar=-1} +{the character \} +Missing character: There is no \ in font etrip! +{the character b} +Missing character: There is no g in font etrip! +{the character r} +Missing character: There is no o in font etrip! +{the character u} +{\expandafter} +{\fi} +{\unless} +{\unless\ifeof} +{true} +{\readline} +{changing \2=macro:->\bgroup} +{into \2=macro:->\iffalse \else} +{\endlinechar} +{reassigning \endlinechar=-1} +{the character \} +Missing character: There is no \ in font etrip! +{the character i} +Missing character: There is no i in font etrip! +{the character f} +Missing character: There is no f in font etrip! +{the character f} +Missing character: There is no f in font etrip! +{the character a} +Missing character: There is no l in font etrip! +{the character s} +Missing character: There is no e in font etrip! +{blank space } +{the character \} +Missing character: There is no \ in font etrip! +{the character e} +Missing character: There is no e in font etrip! +{the character l} +Missing character: There is no l in font etrip! +{the character s} +Missing character: There is no e in font etrip! +{\expandafter} +{\fi} +{\unless} +{\unless\ifeof} +{true} +{\readline} +{changing \2=macro:->\iffalse \else} +{into \2=macro:->} +{\endlinechar} +{reassigning \endlinechar=-1} +{\expandafter} +{\fi} +{\unless} +{\unless\ifeof} +{false} +{\showlists} + +### restricted horizontal mode entered at line 468 +\trip r +\trip r (ligature up) +\trip b +\trip r +\trip r (ligature up) +\trip a +\trip s +\glue 4.0 plus 2.0 minus 1.0 +\trip s +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.468 ...ox25=\hbox{\1\showlists + }^^M + +{end-group character }} +{restoring \endlinechar=13} +{restoring \2=macro:->\begingroup \scantokens {\message \ETC.} +{changing \box25=void} +{into \box25= +\hbox(8.0+2.0)x9.0 []} +{vertical mode: blank space } +{end-group character }} +{restoring \box25=void} +{restoring \tracingassigns=0} +Checking \marks etc., \showtokens, and \detokenize: + +Current marks: + \splitfirstmarks 0=. + \splitbotmarks 0=. + \splitfirstmarks 1=. + \splitbotmarks 1=. + \splitfirstmarks 3=. + \splitbotmarks 3=. +> \box0= +\vbox(188.0+0.0)x10.0 +.\mark{0-1} +.\marks1{1-1} +.\glue 1.0 +.\vbox(9.0+0.0)x0.0 +.\mark{0-2} +.\marks3{} +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +.\glue 5.0 +.\glue 0.0 plus 1.0fil +.\penalty 0 +.\glue 40.0 +.\mark{0-3} +.\glue 1.0 +.\glue(\lineskip) 0.0 +.\vbox(19.0+0.0)x0.0 +.\marks3{3-3} +.\glue 3.0 plus 1.0fil +.\penalty 0 +.\glue 40.0 +.\glue(\lineskip) 0.0 +.\vbox(30.0+0.0)x0.0 +.\glue 0.0 plus 1.0fil +.\penalty 0 +.\glue 40.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x10.0 + +! OK. +l.491 \1 \showbox0 + \let\5=\3 \def\3#1{\showtokens\expandaft... + +> 0-1. + } + +... +l.493 \1 + \showbox1 \showbox0 \let\3=\5 + +> 0-2. + } + +... +l.493 \1 + \showbox1 \showbox0 \let\3=\5 + +> 1-1. + } + +... +l.493 \1 + \showbox1 \showbox0 \let\3=\5 + +> 1-1. + } + +... +l.493 \1 + \showbox1 \showbox0 \let\3=\5 + +> . + } + +... +l.493 \1 + \showbox1 \showbox0 \let\3=\5 + +> . + } + +... +l.493 \1 + \showbox1 \showbox0 \let\3=\5 + + +Current marks: + \splitfirstmarks 0=0-1. + \splitbotmarks 0=0-2. + \splitfirstmarks 1=1-1. + \splitbotmarks 1=1-1. + \splitfirstmarks 3=. + \splitbotmarks 3=. +> \box1= +\vbox(17.0+0.0)x0.0, glue set 2.0fil +.\mark{0-1} +.\marks1{1-1} +.\glue 1.0 +.\vbox(9.0+0.0)x0.0 +.\mark{0-2} +.\marks3{} +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +.\glue 5.0 +.\glue 0.0 plus 1.0fil + +! OK. +l.493 \1 \showbox1 + \showbox0 \let\3=\5 + +> \box0= +\vbox(132.0+0.0)x10.0 +.\mark{0-3} +.\glue(\splittopskip) 0.0 +.\vbox(19.0+0.0)x0.0 +.\marks3{3-3} +.\glue 3.0 plus 1.0fil +.\penalty 0 +.\glue 40.0 +.\glue(\lineskip) 0.0 +.\vbox(30.0+0.0)x0.0 +.\glue 0.0 plus 1.0fil +.\penalty 0 +.\glue 40.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x10.0 + +! OK. +l.493 \1 \showbox1 \showbox0 + \let\3=\5 + + +Current marks: + \splitfirstmarks 0=0-3. + \splitbotmarks 0=0-3. + \splitfirstmarks 1=. + \splitbotmarks 1=. + \splitfirstmarks 3=3-3. + \splitbotmarks 3=3-3. +> \box1= +\vbox(27.0+0.0)x0.0, glue set 5.0fil +.\mark{0-3} +.\glue(\splittopskip) 0.0 +.\vbox(19.0+0.0)x0.0 +.\marks3{3-3} +.\glue 3.0 plus 1.0fil + +! OK. +l.495 \1 \showbox1 + \showbox0 + +> \box0= +\vbox(70.0+0.0)x10.0 +.\glue(\splittopskip) 0.0 +.\vbox(30.0+0.0)x0.0 +.\glue 0.0 plus 1.0fil +.\penalty 0 +.\glue 40.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x10.0 + +! OK. +l.495 \1 \showbox1 \showbox0 + + + +Current marks: + \splitfirstmarks 0=. + \splitbotmarks 0=. + \splitfirstmarks 1=. + \splitbotmarks 1=. + \splitfirstmarks 3=. + \splitbotmarks 3=. +> \box1= +\vbox(37.0+0.0)x0.0, glue set 7.0fil +.\glue(\splittopskip) 0.0 +.\vbox(30.0+0.0)x0.0 +.\glue 0.0 plus 1.0fil + +! OK. +l.497 \1 \showbox1 + \showbox0 + +> \box0= +\vbox(0.0+0.0)x10.0 +.\glue(\splittopskip) 0.0 +.\hbox(0.0+0.0)x10.0 + +! OK. +l.497 \1 \showbox1 \showbox0 + + + +Current marks: + \topmarks 0=. + \firstmarks 0=. + \botmarks 0=. + \topmarks 1=. + \firstmarks 1=. + \botmarks 1=. + \topmarks 3=. + \firstmarks 3=. + \botmarks 3=. + +Current marks: + \topmarks 0=. + \firstmarks 0=0-1. + \botmarks 0=0-2. + \topmarks 1=. + \firstmarks 1=1-1. + \botmarks 1=1-1. + \topmarks 3=. + \firstmarks 3=. + \botmarks 3=. +> \box255= +\vbox(35.0+0.0)x0.0, glue set 21.0fil +.\mark{0-1} +.\marks1{1-1} +.\glue(\topskip) 0.0 +.\vbox(9.0+0.0)x0.0 +.\mark{0-2} +.\marks3{} +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +.\glue 5.0 +.\glue 0.0 plus 1.0fil + +! OK. + {\1 \showbox 255 + \setbox 0=\box 255} +l.500 ...s3{}\vfil\penalty-10000 + + + +Current marks: + \topmarks 0=0-2. + \firstmarks 0=0-3. + \botmarks 0=0-3. + \topmarks 1=1-1. + \firstmarks 1=1-1. + \botmarks 1=1-1. + \topmarks 3=. + \firstmarks 3=3-3. + \botmarks 3=3-3. +> \box255= +\vbox(35.0+0.0)x0.0, glue set 13.0fil +.\mark{0-3} +.\glue(\topskip) 0.0 +.\vbox(19.0+0.0)x0.0 +.\marks3{3-3} +.\glue 3.0 plus 1.0fil + +! OK. + {\1 \showbox 255 + \setbox 0=\box 255} +l.500 ...s3{}\vfil\penalty-10000 + + + +Current marks: + \topmarks 0=0-3. + \firstmarks 0=0-3. + \botmarks 0=0-3. + \topmarks 1=1-1. + \firstmarks 1=1-1. + \botmarks 1=1-1. + \topmarks 3=3-3. + \firstmarks 3=3-3. + \botmarks 3=3-3. +> \box255= +\vbox(35.0+0.0)x0.0, glue set 5.0fil +.\glue(\topskip) 0.0 +.\vbox(30.0+0.0)x0.0 +.\glue 0.0 plus 1.0fil + +! OK. + {\1 \showbox 255 + \setbox 0=\box 255} +l.500 ...s3{}\vfil\penalty-10000 + + + +Current marks: + \topmarks 0=0-3. + \firstmarks 0=. + \botmarks 0=. + \topmarks 1=1-1. + \firstmarks 1=. + \botmarks 1=. + \topmarks 3=3-3. + \firstmarks 3=. + \botmarks 3=. +> \box255= +\vbox(35.0+0.0)x10.0, glue set 35.0fil +.\glue(\topskip) 0.0 +.\hbox(0.0+0.0)x10.0 +.\mark{} +.\marks1{} +.\marks3{} +.\glue 0.0 plus 1.0fil + +! OK. + {\1 \showbox 255 + \setbox 0=\box 255} +l.500 ...s3{}\vfil\penalty-10000 + + + +Current marks: + \topmarks 0=. + \firstmarks 0=. + \botmarks 0=. + \topmarks 1=. + \firstmarks 1=. + \botmarks 1=. + \topmarks 3=. + \firstmarks 3=. + \botmarks 3=. +> \box255= +\vbox(35.0+0.0)x0.0, glue set 35.0fil +.\glue(\topskip) 0.0 +.\hbox(0.0+0.0)x0.0 +.\mark{} +.\marks1{} +.\marks3{} +.\glue 0.0 plus 1.0fil + +! OK. + {\1 \showbox 255 + \setbox 0=\box 255} +l.501 ...s3{}\vfil\penalty-10000 + + + +Current marks: + \topmarks 0=. + \firstmarks 0=. + \botmarks 0=. + \topmarks 1=. + \firstmarks 1=. + \botmarks 1=. + \topmarks 3=. + \firstmarks 3=. + \botmarks 3=. +> \box255= +\vbox(35.0+0.0)x0.0, glue set 35.0fil +.\glue(\topskip) 0.0 +.\hbox(0.0+0.0)x0.0 +.\glue 0.0 plus 1.0fil + +! OK. + {\1 \showbox 255 + \setbox 0=\box 255} +l.502 ...x{}\vfil\penalty-10000 + % reclaim sparse array memory! + +Checking \middle: +! Missing $ inserted. + + $ +... +l.511 \setbox0=\vbox{\middle + \par \right \par} % <== 8 errors +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +! Missing delimiter (. inserted). + + \par +l.511 ...box0=\vbox{\middle \par + \right \par} % <== 8 errors +I was expecting to see something like `(' or `\{' or +`\}' here. If you typed, e.g., `{' instead of `\{', you +should probably delete the `{' by typing `1' now, so that +braces don't get unbalanced. Otherwise just proceed. +Acceptable delimiters are characters whose \delcode is +nonnegative, or you can use `\delimiter '. + +! Extra \middle. + + \par +l.511 ...box0=\vbox{\middle \par + \right \par} % <== 8 errors +I'm ignoring a \middle that had no matching \left. + +! Missing $ inserted. + + $ +... +l.511 ...box0=\vbox{\middle \par + \right \par} % <== 8 errors +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +! Missing $ inserted. + + $ +... +l.511 ...box{\middle \par \right + \par} % <== 8 errors +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +! Missing delimiter (. inserted). + + \par +l.511 ...middle \par \right \par + } % <== 8 errors +I was expecting to see something like `(' or `\{' or +`\}' here. If you typed, e.g., `{' instead of `\{', you +should probably delete the `{' by typing `1' now, so that +braces don't get unbalanced. Otherwise just proceed. +Acceptable delimiters are characters whose \delcode is +nonnegative, or you can use `\delimiter '. + +! Extra \right. + + \par +l.511 ...middle \par \right \par + } % <== 8 errors +I'm ignoring a \right that had no matching \left. + +! Missing $ inserted. + + $ +... +l.511 ...middle \par \right \par + } % <== 8 errors +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + + +### math mode entered at line 522 +\mathord +.\fam1 r +this will be denominator of: +\fraction, thickness = default +\\left"161361 +\\mathord +\.\fam1 p +\\middle"142342 +\\mathord +\.\fam1 q +\\middle"142342 +\\mathord +\.\fam1 q +### math mode entered at line 519 +\left"161361 +\mathord +.\fam1 p +\middle"142342 +\mathord +.\fam1 q +\middle"142342 +\mathord +.\fam1 q +### math mode entered at line 515 +\mathord +.\fam1 r +this will be denominator of: +\fraction, thickness = default +\\left"161361 +\\mathord +\.\fam1 q +### math mode entered at line 514 +\left"161361 +\mathord +.\fam1 p +### math mode entered at line 513 +### restricted horizontal mode entered at line 512 +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.523 ... \over r\showlists + + + +### math mode entered at line 519 +\left"161361 +\mathord +.\fam1 p +\middle"142342 +\mathord +.\fam1 q +\middle"142342 +\mathord +.\fam1 q +\mathinner +.\left"161361 +.\mathord +..\fam1 p +.\middle"142342 +.\mathord +..\fam1 q +.\middle"142342 +.\fraction, thickness = default +.\\mathord +.\.\fam1 q +./\mathord +./.\fam1 r +.\right"162362 +### math mode entered at line 515 +\mathord +.\fam1 r +this will be denominator of: +\fraction, thickness = default +\\left"161361 +\\mathord +\.\fam1 q +### math mode entered at line 514 +\left"161361 +\mathord +.\fam1 p +### math mode entered at line 513 +### restricted horizontal mode entered at line 512 +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.524 ... \right]\showlists + + + +### math mode entered at line 515 +\mathord +.\fam1 r +\mathinner +.\left"161361 +.\mathord +..\fam1 p +.\middle"142342 +.\mathord +..\fam1 q +.\middle"142342 +.\mathord +..\fam1 q +.\mathinner +..\left"161361 +..\mathord +...\fam1 p +..\middle"142342 +..\mathord +...\fam1 q +..\middle"142342 +..\fraction, thickness = default +..\\mathord +..\.\fam1 q +../\mathord +../.\fam1 r +..\right"162362 +.\right"162362 +this will be denominator of: +\fraction, thickness = default +\\left"161361 +\\mathord +\.\fam1 q +### math mode entered at line 514 +\left"161361 +\mathord +.\fam1 p +### math mode entered at line 513 +### restricted horizontal mode entered at line 512 +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.525 ... \right]\showlists + + + +### math mode entered at line 514 +\left"161361 +\mathord +.\fam1 p +\mathinner +.\left"161361 +.\fraction, thickness = default +.\\mathord +.\.\fam1 q +./\mathord +./.\fam1 r +./\mathinner +./.\left"161361 +./.\mathord +./..\fam1 p +./.\middle"142342 +./.\mathord +./..\fam1 q +./.\middle"142342 +./.\mathord +./..\fam1 q +./.\mathinner +./..\left"161361 +./..\mathord +./...\fam1 p +./..\middle"142342 +./..\mathord +./...\fam1 q +./..\middle"142342 +./..\fraction, thickness = default +./..\\mathord +./..\.\fam1 q +./../\mathord +./../.\fam1 r +./..\right"162362 +./.\right"162362 +.\right"162362 +### math mode entered at line 513 +### restricted horizontal mode entered at line 512 +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.526 \right]\showlists + + + +### math mode entered at line 513 +\mathinner +.\left"161361 +.\mathord +..\fam1 p +.\mathinner +..\left"161361 +..\fraction, thickness = default +..\\mathord +..\.\fam1 q +../\mathord +../.\fam1 r +../\mathinner +../.\left"161361 +../.\mathord +../..\fam1 p +../.\middle"142342 +../.\mathord +../..\fam1 q +../.\middle"142342 +../.\mathord +../..\fam1 q +../.\mathinner +../..\left"161361 +../..\mathord +../...\fam1 p +../..\middle"142342 +../..\mathord +../...\fam1 q +../..\middle"142342 +../..\fraction, thickness = default +../..\\mathord +../..\.\fam1 q +../../\mathord +../../.\fam1 r +../..\right"162362 +../.\right"162362 +..\right"162362 +.\right"162362 +### restricted horizontal mode entered at line 512 +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.527 \right]\showlists + + + +### restricted horizontal mode entered at line 512 +\mathon +\hbox(30.99977+16.99977)x80.99994 +.\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +..\bigtrip a +.\trip p +.\glue(\thinmuskip) 4.99988 plus 0.99997 +.\hbox(30.99977+16.99977)x63.00005 +..\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +...\bigtrip a +..\hbox(8.5+16.49994)x50.00003 +...\hbox(0.0+0.0)x0.0, shifted -7.0 +...\vbox(8.5+16.49994)x50.00003 +....\hbox(0.0+0.0)x50.00003, glue set 25.00002fil +.....\glue 0.0 plus 1.0fil minus 1.0fil +.....\trip q +.....\glue 0.0 plus 1.0fil minus 1.0fil +....\kern1.0 +....\rule(1.0+0.0)x* +....\kern1.0 +....\hbox(17.99997+3.99997)x50.00003 +.....\trip r +.....\hbox(17.99997+3.99997)x50.00003 +......\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +.......\bigtrip a +......\trip p +......\hbox(16.0+4.00002)x6.0, shifted -1.0 +.......\bigtrip B +......\trip q +......\hbox(16.0+4.00002)x6.0, shifted -1.0 +.......\bigtrip B +......\trip q +......\hbox(17.0+3.00002)x25.00002 +.......\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +........\bigtrip a +.......\trip p +.......\hbox(16.0+4.00002)x6.0, shifted -1.0 +........\bigtrip B +.......\trip q +.......\hbox(16.0+4.00002)x6.0, shifted -1.0 +........\bigtrip B +.......\hbox(8.5+2.0)x0.0 +........\hbox(0.0+0.0)x0.0, shifted -7.0 +........\vbox(8.5+2.0)x0.0 +.........\hbox(0.0+0.0)x0.0 +..........\trip q +.........\kern1.0 +.........\rule(1.0+0.0)x* +.........\kern8.5 +.........\hbox(0.0+0.0)x0.0 +..........\trip r +........\hbox(0.0+0.0)x0.0, shifted -7.0 +.......\vbox(7.0+11.0)x7.0, shifted -9.0 +........\hbox(7.0+1.0)x3.0 +.........\trip A +........\hbox(8.0+2.0)x3.0 +.........\trip B +......\vbox(-1.00002+22.99995)x7.0, shifted -18.99998 +.......\hbox(-1.00002+2.0)x7.0 +........\trip ^^@ +.......\hbox(-1.00002+2.0)x7.0 +........\trip ^^@ +.......\hbox(7.0+1.0)x3.0 +........\trip A +.......\hbox(-1.00002+2.0)x7.0 +........\trip ^^@ +.......\hbox(-1.00002+2.0)x7.0 +........\trip ^^@ +.......\hbox(8.0+2.0)x3.0 +........\trip B +...\hbox(0.0+0.0)x0.0, shifted -7.0 +..\vbox(-1.00002+48.99956)x7.0, shifted -31.99979 +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(7.0+1.0)x3.0 +....\trip A +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(-1.00002+2.0)x7.0 +....\trip ^^@ +...\hbox(8.0+2.0)x3.0 +....\trip B +.\vbox(-1.00002+48.99956)x7.0, shifted -31.99979 +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(7.0+1.0)x3.0 +...\trip A +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(8.0+2.0)x3.0 +...\trip B +\mathoff +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.528 $\showlists + + + +### restricted horizontal mode entered at line 530 +\mathon +\hbox(17.0+3.00002)x19.00002 +.\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +..\bigtrip a +.\hbox(16.0+4.00002)x6.0, shifted -1.0 +..\bigtrip B +.\trip p +.\hbox(0.0+0.0)x0.0, shifted -16.5 +.\vbox(-1.00002+20.99998)x7.0, shifted -18.0 +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(7.0+1.0)x3.0 +...\trip A +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(8.0+2.0)x3.0 +...\trip B +\mathoff +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.532 ...box{}\right]$\showlists + } + + +### restricted horizontal mode entered at line 533 +\mathon +\hbox(17.99997+3.99997)x19.00002 +.\hbox(14.00002+2.0)x6.00002, shifted -0.99998 +..\bigtrip a +.\hbox(0.0+0.0)x0.0, shifted 3.0 +.\hbox(16.0+4.00002)x6.0, shifted -1.0 +..\bigtrip B +.\trip s +.\vbox(-1.00002+22.99995)x7.0, shifted -18.99998 +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(7.0+1.0)x3.0 +...\trip A +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(-1.00002+2.0)x7.0 +...\trip ^^@ +..\hbox(8.0+2.0)x3.0 +...\trip B +\mathoff +spacefactor 1000 +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +l.535 \right]$\showlists + } + +Checking TeX--XeT enhancements: + +\endL or \endR problem (0 missing, 1 extra) in paragraph at lines 548--5 +48 +[][][][][][] + +\hbox(0.0+0.0)x10.0, glue set 3.5fil +.\hbox(0.0+0.0)x0.5 +.\beginL +.\beginR +.\kern 3.0 +.\penalty 0 +.\hbox(0.0+0.0)x0.0 +.\kern 3.0 +.\kern 0.0 +.\endR +.\endL +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fil +.\glue(\rightskip) 0.0 + + +\endL or \endR problem (0 missing, 2 extra) in paragraph at lines 549--5 +49 +[] + +\hbox(0.0+0.0)x10.0, glue set 5.5fil +.\hbox(0.0+0.0)x0.5 +.\kern 0.0 +.\kern 4.0 +.\kern 0.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fil +.\glue(\rightskip) 0.0 + +> \box0= +\vbox(0.0+0.0)x10.0 +.\hbox(0.0+0.0)x10.0, glue set 8.5fil +..\hbox(0.0+0.0)x0.5 +..\beginL +..\kern 1.0 +..\penalty 10000 +..\glue(\parfillskip) 0.0 plus 1.0fil +..\endL +..\glue(\rightskip) 0.0 +.\glue(\parskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x10.0, glue set 7.5fil +..\hbox(0.0+0.0)x0.5 +..\beginR +..\kern 2.0 +..\penalty 10000 +..\glue(\parfillskip) 0.0 plus 1.0fil +..\endR +..\glue(\rightskip) 0.0 +.\glue(\parskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x10.0, glue set 3.5fil +..\hbox(0.0+0.0)x0.5 +..\beginL +..\beginR +..\kern 3.0 +..\penalty 0 +..\hbox(0.0+0.0)x0.0 +..\kern 3.0 +..\kern 0.0 +..\endR +..\endL +..\penalty 10000 +..\glue(\parfillskip) 0.0 plus 1.0fil +..\glue(\rightskip) 0.0 +.\glue(\parskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x10.0, glue set 5.5fil +..\hbox(0.0+0.0)x0.5 +..\kern 0.0 +..\kern 4.0 +..\kern 0.0 +..\penalty 10000 +..\glue(\parfillskip) 0.0 plus 1.0fil +..\glue(\rightskip) 0.0 + +! OK. +l.550 \showbox0 + + +Checking optimized \aftergroup: +! Undefined control sequence. + \x + }{\relax +l.562 ...roup{\aftergroup\relax} + } +The control sequence at the end of the top line +of your error message was never \def'ed. If you have +misspelled it (e.g., `\hobx'), type `I' and the correct +spelling (e.g., `I\hbox'). Otherwise just continue, +and I'll forget about whatever was undefined. + +Checking \showifs, \currentiftype, \currentiflevel, and \currentifbranch +: +\currentifbranch OK +current if level (l.581): 0 +current if level (l.582): 1 +current if level (l.583): 2 +current if type (l.601): \if!NONE +current if branch (l.601): no branch +current if type (l.602): \if +current if branch (l.602): true branch +current if type (l.602): \unless\if +current if branch (l.602): false branch +current if type (l.603): \if +current if branch (l.603): false branch +current if type (l.603): \unless\if +current if branch (l.603): true branch +current if type (l.604): \ifcat +current if branch (l.604): true branch +current if type (l.604): \unless\ifcat +current if branch (l.604): false branch +current if type (l.605): \ifcat +current if branch (l.605): false branch +current if type (l.605): \unless\ifcat +current if branch (l.605): true branch +current if type (l.606): \ifnum +current if branch (l.606): true branch +current if type (l.606): \unless\ifnum +current if branch (l.606): true branch +current if type (l.607): \ifdim +current if branch (l.607): false branch +current if type (l.607): \unless\ifdim +current if branch (l.607): true branch +current if type (l.608): \ifodd +current if branch (l.608): true branch +current if type (l.608): \unless\ifodd +current if branch (l.608): false branch +current if type (l.610): \ifvmode +current if branch (l.610): true branch +current if type (l.610): \unless\ifvmode +current if branch (l.610): false branch +current if type (l.613): \ifhmode +current if branch (l.613): true branch +current if type (l.613): \unless\ifhmode +current if branch (l.613): false branch +current if type (l.615): \ifmmode +current if branch (l.615): true branch +current if type (l.615): \unless\ifmmode +current if branch (l.615): false branch +current if type (l.617): \ifinner +current if branch (l.617): true branch +current if type (l.619): \unless\ifinner +current if branch (l.619): true branch +current if type (l.620): \ifvoid +current if branch (l.620): true branch +current if type (l.620): \unless\ifvoid +current if branch (l.620): true branch +current if type (l.621): \ifhbox +current if branch (l.621): true branch +current if type (l.621): \unless\ifhbox +current if branch (l.621): true branch +current if type (l.622): \ifvbox +current if branch (l.622): true branch +current if type (l.622): \unless\ifvbox +current if branch (l.622): true branch +current if type (l.623): \ifx +current if branch (l.623): false branch +current if type (l.623): \unless\ifx +current if branch (l.623): true branch +current if type (l.624): \ifeof +current if branch (l.624): true branch +current if type (l.624): \unless\ifeof +current if branch (l.624): false branch +current if type (l.625): \iftrue +current if branch (l.625): true branch +current if type (l.625): \unless\iftrue +current if branch (l.625): false branch +current if type (l.626): \iffalse +current if branch (l.626): false branch +current if type (l.626): \unless\iffalse +current if branch (l.626): true branch +current if type (l.627): \ifcase +current if branch (l.627): true branch +current if type (l.627): \ifcase +current if branch (l.627): false branch +current if type (l.628): \ifdefined +current if branch (l.628): true branch +current if type (l.628): \unless\ifdefined +current if branch (l.628): true branch +current if type (l.629): \ifcsname +current if branch (l.629): true branch +current if type (l.630): \unless\ifcsname +current if branch (l.630): true branch +current if type (l.631): \iffontchar +current if branch (l.631): true branch +current if type (l.631): \unless\iffontchar +current if branch (l.631): true branch +{math mode: \ifcsname: (level 41) entered on line 647} +{\unless\ifcsname: (level 42) entered on line 647} +{\iffontchar: (level 43) entered on line 648} +{\unless\iffontchar: (level 44) entered on line 648} + +### level 44: \unless\iffontchar entered on line 648 +### level 43: \iffontchar entered on line 648 +### level 42: \unless\ifcsname entered on line 647 +### level 41: \ifcsname entered on line 647 +### level 40: \unless\ifdefined entered on line 645 +### level 39: \ifdefined entered on line 645 +### level 38: \ifcase\else entered on line 644 +### level 37: \ifcase entered on line 644 +### level 36: \unless\iffalse entered on line 643 +### level 35: \iffalse\else entered on line 643 +### level 34: \unless\iftrue\else entered on line 643 +### level 33: \iftrue entered on line 643 +### level 32: \unless\ifx entered on line 642 +### level 31: \ifx\else entered on line 642 +### level 30: \unless\ifeof\else entered on line 641 +### level 29: \ifeof entered on line 641 +### level 28: \unless\ifvbox entered on line 641 +### level 27: \ifvbox entered on line 641 +### level 26: \unless\ifhbox entered on line 640 +### level 25: \ifhbox entered on line 640 +### level 24: \unless\ifvoid entered on line 640 +### level 23: \ifvoid entered on line 640 +### level 22: \unless\ifinner\else entered on line 639 +### level 21: \ifinner entered on line 639 +### level 20: \unless\ifmmode\else entered on line 639 +### level 19: \ifmmode entered on line 639 +### level 18: \unless\ifhmode\else entered on line 638 +### level 17: \ifhmode entered on line 638 +### level 16: \unless\ifvmode\else entered on line 637 +### level 15: \ifvmode entered on line 637 +### level 14: \unless\ifodd\else entered on line 636 +### level 13: \ifodd entered on line 636 +### level 12: \unless\ifdim entered on line 635 +### level 11: \ifdim\else entered on line 635 +### level 10: \unless\ifnum entered on line 635 +### level 9: \ifnum entered on line 635 +### level 8: \unless\ifcat entered on line 634 +### level 7: \ifcat\else entered on line 634 +### level 6: \unless\ifcat\else entered on line 634 +### level 5: \ifcat entered on line 634 +### level 4: \unless\if entered on line 633 +### level 3: \if\else entered on line 633 +### level 2: \unless\if\else entered on line 633 +### level 1: \if entered on line 633 + +! OK. +l.649 \showifs + % <== show 44 nested ifs + +{\fi: \unless\iffontchar (level 44) entered on line 648} +{\fi: \iffontchar (level 43) entered on line 648} +{\fi: \unless\ifcsname (level 42) entered on line 647} +{\fi: \ifcsname (level 41) entered on line 647} +Checking \iffontchar, \fontcharwd, etc.: +! Missing font identifier. + + \relax +... +l.672 \iffontchar \else + \fi % <== missing font identifie... +I was looking for a control sequence whose +current meaning has been defined by \font. + +! Missing number, treated as zero. + + \relax +... +l.672 \iffontchar \else + \fi % <== missing font identifie... +A number should have been here; I inserted `0'. +(If you can't figure out why I needed to see a number, +look up `weird error' in the index to The TeXbook.) + +! Bad character code (-1). +l.673 ...ffontchar\textfont2 -1 + \else \fi % <== bad charac... +A character number must be between 0 and 255. +I changed this one to zero. + +! Bad character code (256). +l.674 \iffontchar\font 256 + \else \fi % <== bad character... +A character number must be between 0 and 255. +I changed this one to zero. + +! You can't use `\fontcharwd' in vertical mode. +l.675 \fontcharwd + \fontcharht \fontchardp \fontcharic % ... +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\fontcharht' in vertical mode. +l.675 \fontcharwd \fontcharht + \fontchardp \fontcharic % ... +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\fontchardp' in vertical mode. +l.675 ...\fontcharht \fontchardp + \fontcharic % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\fontcharic' in vertical mode. +l.675 ...\fontchardp \fontcharic + % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +Font \font character A: wd=2.0pt ht=7.0pt dp=1.0pt ic=1.0pt +Font \textfont1 character B: wd=3.0pt ht=8.0pt dp=2.0pt +Font \scriptfont2 character B: wd=1.5pt ht=4.0pt dp=1.0pt +Font \scriptscriptfont3 character B: wd=6.0pt ht=16.0pt dp=4.00002pt +Font \trip character 7: +Font \trip character D does not exist +Font \nullfont character D does not exist +Font \font has 23 characters. +Font \trip has 23 characters. +Font \nullfont has 0 characters. +Checking \parshapelength, \parshapeindent, and \parshapedimen: +! You can't use `\parshapelength' in vertical mode. +l.699 \parshapelength + \parshapeindent \parshapedimen % <... +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\parshapeindent' in vertical mode. +l.699 ...elength \parshapeindent + \parshapedimen % <== can'... +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\parshapedimen' in vertical mode. +l.699 ...peindent \parshapedimen + % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +Parshape test 1 OK +Parshape test 2 OK +Parshape test 3 OK +Parshape test 4 OK +Checking \numexpr, \dimexpr, \glueexpr, and \muexpr: +! You can't use `\numexpr' in vertical mode. +l.763 \numexpr + \dimexpr \glueexpr \muexpr % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\dimexpr' in vertical mode. +l.763 \numexpr \dimexpr + \glueexpr \muexpr % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\glueexpr' in vertical mode. +l.763 ...expr \dimexpr \glueexpr + \muexpr % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\muexpr' in vertical mode. +l.763 ...mexpr \glueexpr \muexpr + % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! Missing ) inserted for expression. + + \9 +l.765 ...unt43=\numexpr ( ( 2 \9 + \dimen43=\dimexpr ... +I was expecting to see `+', `-', `*', `/', or `)'. Didn't. + +! Missing ) inserted for expression. + + \9 +l.765 ...unt43=\numexpr ( ( 2 \9 + \dimen43=\dimexpr ... +I was expecting to see `+', `-', `*', `/', or `)'. Didn't. + +! Missing ) inserted for expression. + + \9 +l.765 ...men43=\dimexpr ( 3pt \9 + +I was expecting to see `+', `-', `*', `/', or `)'. Didn't. + +\numexpr \count 43=2 +\dimexpr \dimen 43=3.0pt +\glueexpr \skip 43=4.0pt plus 3.0fil +\muexpr \muskip 43=5.0mu minus 1.0mu +{into \tracingassigns=5} +{changing \count44=0} +{into \count44=2147483647} +{changing \dimen44=0.0pt} +{into \dimen44=16383.99998pt} +{changing \count44=2147483647} +{into \count44=-2147483647} +{changing \dimen44=16383.99998pt} +{into \dimen44=-16383.99998pt} +{changing \count44=-2147483647} +{into \count44=2147450880} +{changing \dimen44=-16383.99998pt} +{into \dimen44=16383.5pt} +{changing \skip44=0.0pt} +{into \skip44=16383.99998pt} +{changing \skip44=16383.99998pt} +{into \skip44=16384.0pt} +! Dimension too large. +l.778 \dimen45=\skip44 + \dimen45=\dimexpr... +I can't work with sizes bigger than about 19 feet. +Continue and I'll use the largest value I can. + +{changing \dimen45=0.0pt} +{into \dimen45=16383.99998pt} +! Arithmetic overflow. + \9 + +l.778 ...5=\dimexpr1sp*\skip44\9 + +I can't evaluate this expression, +since the result is out of range. + +{changing \dimen45=16383.99998pt} +{into \dimen45=0.0pt} +{changing \dimen44=16383.5pt} +{into \dimen44=-16383.99998pt} +{changing \dimen44=-16383.99998pt} +{into \dimen44=-16384.0pt} +! Dimension too large. +l.780 \dimen45=\skip44 + \dimen45=\dimexpr... +I can't work with sizes bigger than about 19 feet. +Continue and I'll use the largest value I can. + +{changing \dimen45=0.0pt} +{into \dimen45=16383.99998pt} +! Arithmetic overflow. + \9 + +l.780 ...5=\dimexpr1sp*\skip44\9 + +I can't evaluate this expression, +since the result is out of range. + +{changing \dimen45=16383.99998pt} +{into \dimen45=0.0pt} +! Arithmetic overflow. + \9 + +l.781 ...4=\numexpr"7FFFFFFE+2\9 + \dimen44=\dimexpr"3FFFFFF... +I can't evaluate this expression, +since the result is out of range. + +{changing \count44=2147450880} +{into \count44=0} +! Arithmetic overflow. + \9 + +l.781 ...imexpr"3FFFFFFEsp+2sp\9 + +I can't evaluate this expression, +since the result is out of range. + +{changing \dimen44=-16384.0pt} +{into \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.782 ...=\numexpr-"7FFFFFFE-2\9 + \dimen44=\dimexpr-"3FFFFFF... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.782 ...mexpr-"3FFFFFFEsp-2sp\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.783 ...=\numexpr"10000*"8000\9 + \dimen44=\dimexpr"8000sp*"... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.783 ...\dimexpr"8000sp*"8000\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.784 ...\numexpr"10000*-"8000\9 + \dimen44=\dimexpr"8000sp*-"... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.784 ...dimexpr"8000sp*-"8000\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.785 ...\numexpr-"10000*"8000\9 + \dimen44=\dimexpr-"8000sp*"... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.785 ...dimexpr-"8000sp*"8000\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.786 ...numexpr-"10000*-"8000\9 + \dimen44=\dimexpr-"8000sp*-"... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.786 ...imexpr-"8000sp*-"8000\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.787 \count44=\numexpr0/0\9 + \dimen44=\dimexpr... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.787 ...dimen44=\dimexpr0pt/0\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.788 \count44=\numexpr1/0\9 + \dimen44=\dimexpr... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.788 ...dimen44=\dimexpr1pt/0\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +! Arithmetic overflow. + \9 + +l.789 ...\count44=\numexpr-1/0\9 + \dimen44=\dimexpr-... +I can't evaluate this expression, +since the result is out of range. + +{reassigning \count44=0} +! Arithmetic overflow. + \9 + +l.789 ...imen44=\dimexpr-1pt/0\9 + +I can't evaluate this expression, +since the result is out of range. + +{reassigning \dimen44=0.0pt} +{into \tracingassigns=5} +{changing \skip93=0.0pt} +{into \skip93=3.0pt minus 1.0fil} +{changing \skip93=3.0pt minus 1.0fil} +{into \skip93=3.0pt minus 1.0fil} +{changing \skip93=3.0pt minus 1.0fil} +{into \skip93=3.0pt minus 1.0fil} +{reassigning \skip93=3.0pt minus 1.0fil} +{changing \skip93=3.0pt minus 1.0fil} +{into \skip93=3.0pt plus 1.0fil} +{changing \skip93=3.0pt plus 1.0fil} +{into \skip93=3.0pt plus 1.0fil} +{reassigning \skip93=3.0pt plus 1.0fil} +{changing \skip93=3.0pt plus 1.0fil} +{into \skip93=2.0pt plus -1.0fil minus 1.0fil} +{changing \skip93=2.0pt plus -1.0fil minus 1.0fil} +{into \skip93=2.0pt plus -1.0fil minus 1.0fil} +{reassigning \skip93=2.0pt plus -1.0fil minus 1.0fil} +{changing \skip93=2.0pt plus -1.0fil minus 1.0fil} +{into \skip93=0.0pt plus 1.0fil minus 1.0fil} +{changing \skip93=0.0pt plus 1.0fil minus 1.0fil} +{into \skip93=1.0pt plus 2.0fil minus 1.0fil} +{changing \skip93=1.0pt plus 2.0fil minus 1.0fil} +{into \skip93=5.0pt minus 1.0fil} +Expr quotient rounding 1 OK +Expr quotient rounding 2 OK +Expr quotient rounding 3 OK +Expr quotient rounding 4 OK +! Incompatible glue units. + \9 + +... +l.829 \15{32}{5}{6} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + + p +... +l.829 \15{32}{5}{6} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + \relax + +... +l.829 \15{32}{5}{6} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +Expr quotient rounding 5 OK +! Incompatible glue units. + \9 + +... +l.830 \16{33}{5}{7} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + + p +... +l.830 \16{33}{5}{7} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + \relax + +... +l.830 \16{33}{5}{7} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +Expr quotient rounding 6 OK +! Incompatible glue units. + \9 + +... +l.831 \17{25}{4}{6} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + + p +... +l.831 \17{25}{4}{6} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + \relax + +... +l.831 \17{25}{4}{6} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +Expr quotient rounding 7 OK +! Incompatible glue units. + \9 + +... +l.832 \18{26}{4}{7} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + + p +... +l.832 \18{26}{4}{7} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. + \relax + +... +l.832 \18{26}{4}{7} + % <== three mu_error's (! Incompatibl... +I'm going to assume that 1mu=1pt when they're mixed. + +Expr quotient rounding 8 OK +Expr fraction rounding 1 OK +Expr fraction rounding 2 OK +! Arithmetic overflow. + + = +\1...\fi \ifdim \dimexpr 1sp*#6= + \dimexpr (#3sp)*(#4)/(#5)\els... +l.860 ...1 "7FFFFFFF 2 "40000000 + +I can't evaluate this expression, +since the result is out of range. + +! Arithmetic overflow. + \relax + + + \else +\1...expr (#3sp)*(#4)/(#5)\else + \2#2 \fi +l.860 ...1 "7FFFFFFF 2 "40000000 + +I can't evaluate this expression, +since the result is out of range. + +Expr fraction rounding 3 OK +[1] +Memory usage before: 51&320; after: 44&320; still untouched: 680 +[1] +Memory usage before: 51&320; after: 44&320; still untouched: 680 +Checking \mutoglue and \gluetomu: +! You can't use `\mutoglue' in vertical mode. +l.903 \mutoglue + \gluetomu % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\gluetomu' in vertical mode. +l.903 \mutoglue \gluetomu + % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! Incompatible glue units. +l.905 ...kip2=\gluetomu\muskip1 + % <== two mu_error's (! Inco... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. +l.905 ...kip2=\gluetomu\muskip1 + % <== two mu_error's (! Inco... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. +l.906 ...uskip2=\mutoglue\skip1 + % <== two mu_error's (! Inco... +I'm going to assume that 1mu=1pt when they're mixed. + +! Incompatible glue units. +l.906 ...uskip2=\mutoglue\skip1 + % <== two mu_error's (! Inco... +I'm going to assume that 1mu=1pt when they're mixed. + +{into \tracingassigns=1} +{changing \skip1=9.0pt} +{into \skip1=1.0pt plus -2.0pt minus -3.0fil} +{changing \muskip1=9.0mu} +{into \muskip1=1.0mu plus -2.0mu minus -3.0fil} +{changing \skip2=9.0pt} +{into \skip2=-4.0pt plus 5.0fill minus 6.0filll} +{changing \muskip2=9.0mu} +{into \muskip2=-4.0mu plus 5.0fill minus 6.0filll} +{changing \skip3=0.0pt} +{into \skip3=-1.0pt plus 2.0pt minus 3.0fil} +{changing \muskip3=0.0mu} +{into \muskip3=-1.0mu plus 2.0mu minus 3.0fil} +{changing \skip4=0.0pt} +{into \skip4=4.0pt plus -5.0fill minus -6.0filll} +{changing \muskip4=0.0mu} +{into \muskip4=4.0mu plus -5.0fill minus -6.0filll} +Checking (mu)glue identity: +{changing \1=undefined} +{into \1=\relax} +{changing \1=\relax} +{into \1=\skip65535} +{changing \skip65535=0.0pt} +{into \skip65535=7.0pt} +{changing \2=undefined} +{into \2=\relax} +{changing \2=\relax} +{into \2=\muskip32766} +{changing \muskip32766=0.0mu} +{into \muskip32766=7.0mu} +{changing \tracingassigns=1} +{into \tracingassigns=458752} +{reassigning \skip65535=7.0pt} +{reassigning \muskip32766=7.0mu} +{changing \tracingassigns=458752} +Checking \gluestretchorder, \glueshrinkorder, \gluestretch, and \glueshr +ink: +! You can't use `\gluestretchorder' in vertical mode. +l.930 \gluestretchorder + \gluestretch % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\gluestretch' in vertical mode. +l.930 ...retchorder \gluestretch + % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\glueshrinkorder' in vertical mode. +l.931 \glueshrinkorder + \glueshrink % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +! You can't use `\glueshrink' in vertical mode. +l.931 ...shrinkorder \glueshrink + % <== can't use +Sorry, but I'm not programmed to handle this case; +I'll just pretend that you didn't ask for it. +If you're in the wrong mode, you might be able to +return to the right one by typing `I}' or `I$' or `I\par'. + +Checking sparse arrays: +! Bad register code (-1). + + \countdef +... +l.968 \2\countdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + \countdef +... +l.968 \2\countdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +\count65535=0. +! Bad register code (-1). + + \dimendef +... +l.969 \2\dimendef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + \dimendef +... +l.969 \2\dimendef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +\dimen65535=0.0pt. +! Bad register code (-1). + + \skipdef +... +l.970 \2\skipdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + \skipdef +... +l.970 \2\skipdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +\skip65535=0.0pt. +! Bad register code (-1). + + \muskipdef +... +l.971 \2\muskipdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + \muskipdef +... +l.971 \2\muskipdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +\muskip65535=0.0mu. +! Bad register code (-1). + + \toksdef +... +l.972 \2\toksdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + \toksdef +... +l.972 \2\toksdef + % Bad register code (-1) ...and (65536). +A register number must be between 0 and 65535. +I changed this one to zero. + +\toks65535=. +> \9=\dimen256. +l.979 ...8 \let\8=\relax \show\9 + + +{restoring \9=undefined} +{restoring \8=undefined} +{restoring \skip22=0.0pt} +{restoring \dimen21=0.0pt} +{restoring \muskip2200=0.0mu} +{restoring \dimen2100=0.0pt} +{restoring \count2000=0} +{restoring \count20=0} +testing count registers ... +{into \tracingassigns=1} +{reassigning \count2000=0} +{restoring \tracingassigns=0} +\count2000=0, + \count2001=5, + \count2002=7, + \count2002=7. +\count2000=5, + \count2002=12, + \count2002=12. +\count2000=50, + \count2002=120, + \count2002=120. +\count2000=10, + \count2002=24, + \count2002=24. +{into \tracingassigns=1} +{globally changing \count2002=24} +{into \count2002=5} +{changing \count2002=5} +{into \count2002=7} +{globally changing \count2002=7} +{into \count2002=0} +{restoring \tracingassigns=0} +{restoring \1=undefined} +{retaining \count2002=0} +{restoring \count2000=0} +{retaining \count2002=0} +{restoring \count2001=0} +testing dimen registers ... +{into \tracingassigns=1} +{reassigning \dimen2000=0.0pt} +{restoring \tracingassigns=0} +\dimen2000=0.0pt, + \dimen2001=2.5pt, + \dimen2002=3.5pt, + \dimen2002=3.5pt. +\dimen2000=2.5pt, + \dimen2002=6.0pt, + \dimen2002=6.0pt. +\dimen2000=25.0pt, + \dimen2002=60.0pt, + \dimen2002=60.0pt. +\dimen2000=5.0pt, + \dimen2002=12.0pt, + \dimen2002=12.0pt. +{into \tracingassigns=1} +{globally changing \dimen2002=12.0pt} +{into \dimen2002=2.5pt} +{changing \dimen2002=2.5pt} +{into \dimen2002=3.5pt} +{globally changing \dimen2002=3.5pt} +{into \dimen2002=0.0pt} +{restoring \tracingassigns=0} +{restoring \1=undefined} +{retaining \dimen2002=0.0pt} +{restoring \dimen2000=0.0pt} +{retaining \dimen2002=0.0pt} +{restoring \dimen2001=0.0pt} +testing skip registers ... +{into \tracingassigns=1} +{reassigning \skip2000=0.0pt} +{restoring \tracingassigns=0} +\skip2000=0.0pt, + \skip2001=2.5pt plus 1.0fil, + \skip2002=3.5pt minus 1.0fill, + \skip2002=3.5pt minus 1.0fill. +\skip2000=2.5pt plus 1.0fil, + \skip2002=6.0pt plus 1.0fil minus 1.0fill, + \skip2002=6.0pt plus 1.0fil minus 1.0fill. +\skip2000=25.0pt plus 10.0fil, + \skip2002=60.0pt plus 10.0fil minus 10.0fill, + \skip2002=60.0pt plus 10.0fil minus 10.0fill. +\skip2000=5.0pt plus 2.0fil, + \skip2002=12.0pt plus 2.0fil minus 2.0fill, + \skip2002=12.0pt plus 2.0fil minus 2.0fill. +{into \tracingassigns=1} +{globally changing \skip2002=12.0pt plus 2.0fil minus 2.0fill} +{into \skip2002=2.5pt plus 1.0fil} +{changing \skip2002=2.5pt plus 1.0fil} +{into \skip2002=3.5pt minus 1.0fill} +{globally changing \skip2002=3.5pt minus 1.0fill} +{into \skip2002=0.0pt} +{restoring \tracingassigns=0} +{restoring \1=undefined} +{retaining \skip2002=0.0pt} +{restoring \skip2000=0.0pt} +{retaining \skip2002=0.0pt} +{restoring \skip2001=0.0pt} +testing muskip registers ... +{into \tracingassigns=1} +{reassigning \muskip2000=0.0mu} +{restoring \tracingassigns=0} +\muskip2000=0.0mu, + \muskip2001=2.5mu plus 1.0fil, + \muskip2002=3.5mu minus 1.0fill, + \muskip2002=3.5mu minus 1.0fill. +\muskip2000=2.5mu plus 1.0fil, + \muskip2002=6.0mu plus 1.0fil minus 1.0fill, + \muskip2002=6.0mu plus 1.0fil minus 1.0fill. +\muskip2000=25.0mu plus 10.0fil, + \muskip2002=60.0mu plus 10.0fil minus 10.0fill, + \muskip2002=60.0mu plus 10.0fil minus 10.0fill. +\muskip2000=5.0mu plus 2.0fil, + \muskip2002=12.0mu plus 2.0fil minus 2.0fill, + \muskip2002=12.0mu plus 2.0fil minus 2.0fill. +{into \tracingassigns=1} +{globally changing \muskip2002=12.0mu plus 2.0fil minus 2.0fill} +{into \muskip2002=2.5mu plus 1.0fil} +{changing \muskip2002=2.5mu plus 1.0fil} +{into \muskip2002=3.5mu minus 1.0fill} +{globally changing \muskip2002=3.5mu minus 1.0fill} +{into \muskip2002=0.0mu} +{restoring \tracingassigns=0} +{restoring \1=undefined} +{retaining \muskip2002=0.0mu} +{restoring \muskip2000=0.0mu} +{retaining \muskip2002=0.0mu} +{restoring \muskip2001=0.0mu} +testing toks registers ... +{into \tracingassigns=1} +{reassigning \toks2000=} +{restoring \tracingassigns=0} +\toks2000=, + \toks2001=a b c, + \toks2002=d e f, + \toks2002=d e f. +{into \tracingassigns=1} +{reassigning \toks20=} +{changing \toks21=} +{into \toks21=a b c} +{changing \toks2100=} +{into \toks2100=d e f} +{changing \toks2002=d e f} +{into \toks2002=} +{changing \toks2002=} +{into \toks2002=a b c} +{reassigning \toks2200=} +{changing \toks2200=} +{into \toks2200=a b c} +{changing \toks2002=a b c} +{into \toks2002=} +{changing \toks2002=} +{into \toks2002=a b c} +{changing \toks2200=a b c} +{into \toks2200=} +{changing \toks2200=} +{into \toks2200=a b c} +{changing \toks30=} +{into \toks30=a b c} +{changing \toks30=a b c} +{into \toks30=} +{changing \toks30=} +{into \toks30=a b c} +{changing \toks3000=} +{into \toks3000=a b c} +{changing \toks3000=a b c} +{into \toks3000=} +{changing \toks3000=} +{into \toks3000=a b c} +{restoring \toks30=} +{restoring \toks3000=} +{restoring \toks2200=} +{restoring \toks2002=d e f} +{restoring \toks2100=} +{restoring \toks21=} +{restoring \tracingassigns=0} +{into \tracingassigns=1} +{globally changing \toks2002=d e f} +{into \toks2002=a b c} +{changing \toks2002=a b c} +{into \toks2002=d e f} +{globally changing \toks2002=d e f} +{into \toks2002=} +{restoring \tracingassigns=0} +{restoring \1=undefined} +{retaining \toks2002=} +{retaining \toks2002=} +{restoring \toks2001=} +testing box registers ... +! Bad mathchar (-1). + + \mathchardef +... +l.1021 \2\mathchardef + % Bad mathchar (-1) ...and (32768). +A mathchar number must be between 0 and 32767. +I changed this one to zero. + +! Bad mathchar (32768). + + \mathchardef +... +l.1021 \2\mathchardef + % Bad mathchar (-1) ...and (32768). +A mathchar number must be between 0 and 32767. +I changed this one to zero. + +\mathchar"7FFF=32767. +! Bad register code (-1). + + = +l.1023 \setbox-1= + \copy65536 % Bad register code (-1) ...and... +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). +l.1023 \setbox-1=\copy65536 + % Bad register code (-1) ...and... +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + = +l.1024 \global\setbox65536= + \copy-1 % Bad register code (655... +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (-1). +l.1024 ...l\setbox65536=\copy-1 + % Bad register code (65536) .... +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (65536). + + = +l.1025 \wd65536= + \ht-1 % Bad register code (65536) ...and (-1). +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (-1). +l.1025 \wd65536=\ht-1 + % Bad register code (65536) ...and (-1). +A register number must be between 0 and 65535. +I changed this one to zero. + +! Bad register code (-1). +l.1026 \showbox-1 + % Bad register code (-1). +A register number must be between 0 and 65535. +I changed this one to zero. + +> \box0=void + +! OK. +l.1026 \showbox-1 + % Bad register code (-1). + + +### vtop group (level 4) entered at line 1039 (\setbox32103=\vtop to7.0p +t{) +### vbox group (level 3) entered at line 1038 (\global\setbox32102=\vbox + to5.0pt{) +### hbox group (level 2) entered at line 1037 (\setbox32101=\hbox to3.0p +t{) +### semi simple group (level 1) entered at line 1019 (\begingroup) +### bottom level + +! OK. +l.1040 \showgroups + + +{restoring \box32103=void} +> \box32100=void + +! OK. +l.1044 \showbox32100 + + +> \box32101= +\hbox(0.0+0.0)x3.0 + +! OK. +l.1045 \showbox32101 + + +\box32101=\hbox,wd=3.0pt. +\box32102=\vbox,ht=5.0pt. +\box32103=void. +\box32101=\hbox,wd=3.0pt. +\box32103=\hbox,wd=3.0pt. +\box32102=void. +\box32104=\vbox,ht=5.0pt. +\box32101=\hbox,ht=2.0pt,wd=3.0pt. +\box32102=void. +\box32103=\hbox,dp=6.0pt,wd=3.0pt. +\box32104=\vbox,ht=5.0pt,wd=8.0pt. +\box32105=\hbox,ht=1.0pt,wd=5.0pt. +\box32105=\hbox,ht=1.0pt,wd=5.0pt. +\box32105=void. +\box32105=void. +\box32106=\hbox,ht=1.0pt,wd=10.0pt. +\box32105=\vbox,ht=5.0pt,wd=1.0pt. +\box32105=\vbox,ht=5.0pt,wd=1.0pt. +\box32105=void. +\box32105=void. +\box32106=\vbox,ht=10.0pt,wd=1.0pt. +\box32105=\vbox,ht=30.0pt. +\box32106=\vbox,ht=10.0pt. +\box32105=\vbox,ht=20.0pt. +{restoring \box32106=void} +{restoring \box32105=void} +{restoring \box32104=void} +{restoring \box32103=void} +{restoring \box32101=void} +Checking \lastlinefit: +@firstpass +[] [] +@ via @@0 b=371 p=0 d=137641 +@@1: line 1.0 t=137641 -> @@0 +[] +@ via @@0 b=12 p=0 d=144 +@@2: line 1.2 t=144 -> @@0 +[] +@ via @@1 b=371 p=0 d=137641 +@@3: line 2.0 t=275282 -> @@1 +[] +@\par via @@1 b=12 p=-10000 d=144 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=144 -> @@2 + +> \box0= +\vbox(0.0+0.0)x96.0 +.\hbox(0.0+0.0)x96.0, glue set - 0.5 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x96.0, glue set 31.0fill [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1079 \lastlinefit=-1 \1 + + +> \box0= +\hbox(0.0+0.0)x96.0, glue set 31.0fill +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fill +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1079 \lastlinefit=-1 \1 + + +@firstpass +[] [] +@ via @@0 b=371 p=0 d=137641 +@@1: line 1.0 t=137641 s=31.0 g=20.0 -> @@0 +[] +@ via @@0 b=12 p=0 d=144 +@@2: line 1.2 t=144 s=-4.0 g=8.0 -> @@0 +[] +@ via @@1 b=371 p=0 d=137641 +@@3: line 2.0 t=275282 s=31.0 g=20.0 -> @@1 +[] +@\par via @@1 b=12 p=-10000 d=144 +@\par via @@2 b=2 p=-10000 d=4 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=148 s=31.0 a=-1.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x96.0 +.\hbox(0.0+0.0)x96.0, glue set - 0.5 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x96.0, glue set - 0.25 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1080 \lastlinefit=500 \1 + + +> \box0= +\hbox(0.0+0.0)x96.0, glue set - 0.25 +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 32.0 +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1080 \lastlinefit=500 \1 + + +@firstpass +[] [] +@ via @@0 b=371 p=0 d=137641 +@@1: line 1.0 t=137641 s=31.0 g=20.0 -> @@0 +[] +@ via @@0 b=12 p=0 d=144 +@@2: line 1.2 t=144 s=-4.0 g=8.0 -> @@0 +[] +@ via @@1 b=371 p=0 d=137641 +@@3: line 2.0 t=275282 s=31.0 g=20.0 -> @@1 +[] +@\par via @@1 b=12 p=-10000 d=144 +@\par via @@2 b=12 p=-10000 d=144 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=288 s=31.0 a=-2.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x96.0 +.\hbox(0.0+0.0)x96.0, glue set - 0.5 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x96.0, glue set - 0.5 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1081 \lastlinefit=1001 \1 + + +> \box0= +\hbox(0.0+0.0)x96.0, glue set - 0.5 +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 33.0 +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1081 \lastlinefit=1001 \1 + + +@firstpass +[] +@ via @@0 b=0 p=0 d=0 +@@1: line 1.2 t=0 -> @@0 +[] +@ via @@0 b=0 p=0 d=0 +@ via @@1 b=0 p=0 d=0 +@@2: line 2.2 t=0 -> @@1 +[] +@ via @@0 b=2 p=0 d=4 +@ via @@1 b=0 p=0 d=0 +@ via @@2 b=0 p=0 d=0 +@@3: line 3.2 t=0 -> @@2 +[] +@ via @@1 b=2 p=0 d=4 +@ via @@2 b=0 p=0 d=0 +@ via @@3 b=0 p=0 d=0 +@@4: line 4.2 t=0 -> @@3 +[] +@\par via @@2 b=2 p=-10000 d=4 +@\par via @@3 b=0 p=-10000 d=0 +@\par via @@4 b=0 p=-10000 d=0 +@@5: line 5.2- t=0 -> @@4 + +> \box0= +\vbox(0.0+0.0)x98.0 +.\hbox(0.0+0.0)x98.0, glue set 68.0fill [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x98.0, glue set 68.0fill [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x98.0, glue set 68.0fill [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x98.0, glue set 68.0fill [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x98.0, glue set 34.0fill [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1085 ... \lastlinefit=1000 \1 + + +> \box0= +\hbox(0.0+0.0)x98.0, glue set 34.0fill +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fill +.\glue(\rightskip) 0.0 plus 1.0fill + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1085 ... \lastlinefit=1000 \1 + + +@firstpass +[] [] +@ via @@0 b=449 p=0 d=201601 +@@1: line 1.0 t=201601 s=33.0 g=20.0 -> @@0 +[] +@ via @@0 b=2 p=0 d=4 +@@2: line 1.2 t=4 s=-2.0 g=8.0 -> @@0 +[] +@ via @@1 b=449 p=0 d=201601 +@@3: line 2.0 t=403202 s=33.0 g=20.0 -> @@1 +[] +@\par via @@1 b=2 p=-10000 d=4 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=4 s=33.0 a=-0.5 -> @@2 + +> \box0= +\vbox(0.0+0.0)x98.0 +.\hbox(0.0+0.0)x98.0, glue set - 0.25 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x98.0, glue set - 0.125 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1087 \lastlinefit=500 \1 + + +> \box0= +\hbox(0.0+0.0)x98.0, glue set - 0.125 +.\glue(\leftskip) 0.0 plus -1.0fill +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 33.5 +.\glue(\rightskip) 0.0 plus 1.0fill + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1087 \lastlinefit=500 \1 + + +@firstpass +[] [] +@ via @@0 b=449 p=0 d=201601 +@@1: line 1.0 t=201601 s=33.0 g=20.0 -> @@0 +[] +@ via @@0 b=2 p=0 d=4 +@@2: line 1.2 t=4 s=-2.0 g=8.0 -> @@0 +[] +@ via @@1 b=449 p=0 d=201601 +@@3: line 2.0 t=403202 s=33.0 g=20.0 -> @@1 +[] +@\par via @@1 b=2 p=-10000 d=4 +@\par via @@2 b=2 p=-10000 d=4 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=8 s=33.0 a=-1.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x98.0 +.\hbox(0.0+0.0)x98.0, glue set - 0.25 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x98.0, glue set - 0.25 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1089 \lastlinefit=1000 \1 + + +> \box0= +\hbox(0.0+0.0)x98.0, glue set - 0.25 +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 34.0 +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1089 \lastlinefit=1000 \1 + + +@firstpass +[] [] +@ via @@0 b=533 p=0 d=284089 +@@1: line 1.0 t=284089 -> @@0 +[] +@ via @@0 b=0 p=0 d=0 +@@2: line 1.2 t=0 -> @@0 +[] +@ via @@1 b=533 p=0 d=284089 +@@3: line 2.0 t=568178 -> @@1 +[] +@\par via @@1 b=0 p=-10000 d=0 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x100.0 +.\hbox(0.0+0.0)x100.0 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x100.0, glue set 35.0fill [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1091 \lastlinefit=0 \1 + + +> \box0= +\hbox(0.0+0.0)x100.0, glue set 35.0fill +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fill +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1091 \lastlinefit=0 \1 + + +@firstpass +[] [] +@ via @@0 b=533 p=0 d=284089 +@@1: line 1.0 t=284089 s=35.0 g=20.0 -> @@0 +[] +@ via @@0 b=0 p=0 d=0 +@@2: line 1.2 t=0 s=0.0 g=0.0 -> @@0 +[] +@ via @@1 b=533 p=0 d=284089 +@@3: line 2.0 t=568178 s=35.0 g=20.0 -> @@1 +[] +@\par via @@1 b=0 p=-10000 d=0 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=0 s=0.0 a=0.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x100.0 +.\hbox(0.0+0.0)x100.0 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x100.0, glue set 35.0fill [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1092 \lastlinefit=500 \1 + + +> \box0= +\hbox(0.0+0.0)x100.0, glue set 35.0fill +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fill +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1092 \lastlinefit=500 \1 + + +@firstpass +[] [] +@ via @@0 b=533 p=0 d=284089 +@@1: line 1.0 t=284089 s=35.0 g=20.0 -> @@0 +[] +@ via @@0 b=0 p=0 d=0 +@@2: line 1.2 t=0 s=0.0 g=0.0 -> @@0 +[] +@ via @@1 b=533 p=0 d=284089 +@@3: line 2.0 t=568178 s=35.0 g=20.0 -> @@1 +[] +@\par via @@1 b=0 p=-10000 d=0 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=0 s=0.0 a=0.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x100.0 +.\hbox(0.0+0.0)x100.0 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x100.0, glue set 35.0fill [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1093 \lastlinefit=1000 \1 + + +> \box0= +\hbox(0.0+0.0)x100.0, glue set 35.0fill +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fill +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1093 \lastlinefit=1000 \1 + + +@firstpass +[] [] +@ via @@0 b=1137 p=0 d=1292769 +@@1: line 1.0 t=1292769 s=45.0 g=20.0 -> @@0 +[] +@ via @@0 b=2 p=0 d=4 +@@2: line 1.2 t=4 s=10.0 g=40.0 -> @@0 +[] +@ via @@1 b=1137 p=0 d=1292769 +@@3: line 2.0 t=2585538 s=45.0 g=20.0 -> @@1 + [] +@\par via @@1 b=0 p=-10000 d=0 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=4 s=0.0 a=0.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x110.0 +.\hbox(0.0+0.0)x110.0, glue set 0.25 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x110.0, glue set 45.0fill [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1097 ... \lastlinefit=1000 \1 + + +> \box0= +\hbox(0.0+0.0)x110.0, glue set 45.0fill +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\glue 0.0 plus 1.0fil +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fill +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1097 ... \lastlinefit=1000 \1 + + +@firstpass +[] [] +@ via @@0 b=1137 p=0 d=1292769 +@@1: line 1.0 t=1292769 s=45.0 g=20.0 -> @@0 +[] +@ via @@0 b=2 p=0 d=4 +@@2: line 1.2 t=4 s=10.0 g=40.0 -> @@0 +[] +@ via @@1 b=1137 p=0 d=1292769 +@@3: line 2.0 t=2585538 s=45.0 g=20.0 -> @@1 +[] +@\par via @@1 b=2 p=-10000 d=4 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=4 s=45.0 a=2.5 -> @@2 + +> \box0= +\vbox(0.0+0.0)x110.0 +.\hbox(0.0+0.0)x110.0, glue set 0.25 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x110.0, glue set 0.125 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1099 \lastlinefit=500 \1 + + +> \box0= +\hbox(0.0+0.0)x110.0, glue set 0.125 +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 42.5 +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1099 \lastlinefit=500 \1 + + +@firstpass +[] [] +@ via @@0 b=1137 p=0 d=1292769 +@@1: line 1.0 t=1292769 s=45.0 g=20.0 -> @@0 +[] +@ via @@0 b=2 p=0 d=4 +@@2: line 1.2 t=4 s=10.0 g=40.0 -> @@0 +[] +@ via @@1 b=1137 p=0 d=1292769 +@@3: line 2.0 t=2585538 s=45.0 g=20.0 -> @@1 +[] +@\par via @@1 b=2 p=-10000 d=4 +@\par via @@2 b=2 p=-10000 d=4 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=8 s=45.0 a=5.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x110.0 +.\hbox(0.0+0.0)x110.0, glue set 0.25 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x110.0, glue set 0.25 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1100 \lastlinefit=1000 \1 + + +> \box0= +\hbox(0.0+0.0)x110.0, glue set 0.25 +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 40.0 +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1100 \lastlinefit=1000 \1 + + +@firstpass +[] [] +@ via @@0 b=2073 p=0 d=4297329 +@@1: line 1.0 t=4297329 -> @@0 +[] +@ via @@0 b=12 p=0 d=144 +@@2: line 1.2 t=144 -> @@0 +[] +@ via @@1 b=2073 p=0 d=4297329 +@@3: line 2.0 t=8594658 -> @@1 +[] +@\par via @@1 b=0 p=-10000 d=0 +@\par via @@2 b=0 p=-10000 d=0 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=144 -> @@2 + +> \box0= +\vbox(0.0+0.0)x120.0 +.\hbox(0.0+0.0)x120.0, glue set 0.5 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x120.0, glue set 55.0fill [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1102 \lastlinefit=0 \1 + + +> \box0= +\hbox(0.0+0.0)x120.0, glue set 55.0fill +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 0.0 plus 1.0fill +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1102 \lastlinefit=0 \1 + + +@firstpass +[] [] +@ via @@0 b=2073 p=0 d=4297329 +@@1: line 1.0 t=4297329 s=55.0 g=20.0 -> @@0 +[] +@ via @@0 b=12 p=0 d=144 +@@2: line 1.2 t=144 s=20.0 g=40.0 -> @@0 +[] +@ via @@1 b=2073 p=0 d=4297329 +@@3: line 2.0 t=8594658 s=55.0 g=20.0 -> @@1 +[] +@\par via @@1 b=12 p=-10000 d=144 +@\par via @@2 b=2 p=-10000 d=4 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=148 s=55.0 a=5.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x120.0 +.\hbox(0.0+0.0)x120.0, glue set 0.5 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x120.0, glue set 0.25 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1103 \lastlinefit=500 \1 + + +> \box0= +\hbox(0.0+0.0)x120.0, glue set 0.25 +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 50.0 +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1103 \lastlinefit=500 \1 + + +@firstpass +[] [] +@ via @@0 b=2073 p=0 d=4297329 +@@1: line 1.0 t=4297329 s=55.0 g=20.0 -> @@0 +[] +@ via @@0 b=12 p=0 d=144 +@@2: line 1.2 t=144 s=20.0 g=40.0 -> @@0 +[] +@ via @@1 b=2073 p=0 d=4297329 +@@3: line 2.0 t=8594658 s=55.0 g=20.0 -> @@1 +[] +@\par via @@1 b=12 p=-10000 d=144 +@\par via @@2 b=12 p=-10000 d=144 +@\par via @@3 b=0 p=-10000 d=0 +@@4: line 2.2- t=288 s=55.0 a=10.0 -> @@2 + +> \box0= +\vbox(0.0+0.0)x120.0 +.\hbox(0.0+0.0)x120.0, glue set 0.5 [] +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x120.0, glue set 0.5 [] + +! OK. +\1...nt \2\2\2\2\3\2}\showbox 0 + \setbox 0=\vbox {\unvbox 0 \s... +l.1104 \lastlinefit=1000 \1 + + +> \box0= +\hbox(0.0+0.0)x120.0, glue set 0.5 +.\hbox(0.0+0.0)x30.0 +.\glue 5.0 plus 20.0 minus 4.0 +.\hbox(0.0+0.0)x30.0 +.\penalty 10000 +.\glue(\parfillskip) 45.0 +.\glue(\rightskip) 0.0 + +! OK. +\1...tbox 0=\lastbox \showbox 0 + } +l.1104 \lastlinefit=1000 \1 + + +Checking expansion of V 2 \protected macros: +\1 (l.1113) +\1 (l.1113) +relax (l.1115) +relax (l.1115) +Checking hyphenation and \savinghyphcodes: + +Underfull \hbox (badness 10000) in paragraph at lines 1132--1132 + []\trip pp1Aqq []pp1Aqq []pp1A1qq []pp1Aqq []ppAqq + +\hbox(7.0+1.0)x16383.99998, glue set 1635.4 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1132--1132 + []\trip up1Aqq []up1Aqq []up1A1qq []up1Aqq []upAqq + +\hbox(7.0+1.0)x16383.99998, glue set 1635.4 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1132--1132 + []\trip ppB1qq []ppB1qq []ppB1qq []pp1B1qq []ppBqq + +\hbox(8.0+2.0)x16383.99998, glue set 1634.9 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1132--1132 + []\trip upB1qq []upB1qq []upB1qq []up1B1qq []upBqq + +\hbox(8.0+2.0)x16383.99998, glue set 1634.9 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1134--1134 + []\trip pp1A1qq []pp1Aqq []pp1A1qq []pp1Aqq []ppAqq + +\hbox(7.0+1.0)x16383.99998, glue set 1635.4 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1134--1134 + []\trip up1A1qq []up1Aqq []up1A1qq []up1Aqq []upAqq + +\hbox(7.0+1.0)x16383.99998, glue set 1635.4 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1134--1134 + []\trip ppB1qq []ppB1qq []ppB1qq []pp1B1qq []ppBqq + +\hbox(8.0+2.0)x16383.99998, glue set 1634.9 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1134--1134 + []\trip upB1qq []upB1qq []upB1qq []up1B1qq []upBqq + +\hbox(8.0+2.0)x16383.99998, glue set 1634.9 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1136--1136 + []\trip pp1Aqq []pp1Aqq []pp1A1qq []pp1Aqq []ppAqq + +\hbox(7.0+1.0)x16383.99998, glue set 1635.4 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1136--1136 + []\trip up1Aqq []up1Aqq []up1A1qq []up1Aqq []upAqq + +\hbox(7.0+1.0)x16383.99998, glue set 1635.4 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1136--1136 + []\trip pp1B1qq []ppB1qq []ppB1qq []pp1B1qq []ppBqq + +\hbox(8.0+2.0)x16383.99998, glue set 1634.9 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1136--1136 + []\trip up1B1qq []upB1qq []upB1qq []up1B1qq []upBqq + +\hbox(8.0+2.0)x16383.99998, glue set 1634.9 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1138--1138 + []\trip qq1app []qq1app []qqapp []qq1app []qqapp + +\hbox(7.0+1.0)x16383.99998, glue set 1635.4 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1138--1138 + []\trip qqb1pp []qqb1pp []qqb1pp []qqb1pp []qqbpp + +\hbox(8.0+2.0)x16383.99998, glue set 1634.9 [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1138--1138 + []\trip qqrpp []qqrpp []qq1r1pp []qq1r1pp []qqrpp + +\hbox(0.0+0.0)x16383.99998, glue set 1634.9 [] + +Checking \savingvdiscards, \pagediscards, and \splitdiscards: +! Missing $ inserted. + + $ +... +l.1146 ...oindent$\splitdiscards + \noindent$\pagediscards} +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +! Missing $ inserted. + + $ +... +l.1146 ...noindent$\pagediscards + } +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +> \box27= +\vbox(0.0+0.0)x0.0 +.\hbox(0.0+0.0)x0.0 +..\mathon +..\mathoff +..\penalty 10000 +..\glue(\parfillskip) 0.0 +..\glue(\rightskip) 0.0 +.\glue(\parskip) 0.0 +.\glue(\baselineskip) 0.0 +.\hbox(0.0+0.0)x0.0 +..\mathon +..\mathoff +..\penalty 10000 +..\glue(\parfillskip) 0.0 +..\glue(\rightskip) 0.0 + +! OK. +l.1147 \showbox27 + + +> \box0= +\vbox(40.0+0.0)x0.0 +.\vbox(20.0+0.0)x0.0 +..\vbox(20.0+0.0)x0.0 +..\openout0=abc +..\penalty 0 +..\write1{write 1} +.\vbox(20.0+0.0)x0.0 +..\write2{write 2} +..\closeout3 +..\glue(\splittopskip) 0.0 +..\vbox(20.0+0.0)x0.0 +..\glue 0.0 plus 1.0fil + +! OK. +\1...cards \box 28 } \showbox 0 + } +l.1175 \1 -1 20 + \1 0 30 \1 1 20 \1 2 30 + +> \box0= +\vbox(50.0+0.0)x0.0 +.\vbox(30.0+0.0)x0.0 +..\vbox(20.0+0.0)x0.0 +..\openout0=abc +..\penalty 0 +..\write1{write 1} +..\glue 10.0 plus 1.0 minus 1.0 +..\write2{write 2} +.\vbox(20.0+0.0)x0.0 +..\closeout3 +..\glue(\splittopskip) 0.0 +..\vbox(20.0+0.0)x0.0 +..\glue 0.0 plus 1.0fil + +! OK. +\1...cards \box 28 } \showbox 0 + } +l.1175 \1 -1 20 \1 0 30 + \1 1 20 \1 2 30 + +> \box0= +\vbox(60.0+0.0)x0.0 +.\vbox(20.0+0.0)x0.0 +..\vbox(20.0+0.0)x0.0 +..\openout0=abc +..\penalty 0 +..\write1{write 1} +.\glue 10.0 plus 1.0 minus 1.0 +.\penalty 0 +.\kern 10.0 +.\vbox(20.0+0.0)x0.0 +..\write2{write 2} +..\closeout3 +..\glue(\splittopskip) 0.0 +..\vbox(20.0+0.0)x0.0 +..\glue 0.0 plus 1.0fil + +! OK. +\1...cards \box 28 } \showbox 0 + } +l.1175 ... \1 0 30 \1 1 20 + \1 2 30 + +> \box0= +\vbox(60.0+0.0)x0.0 +.\vbox(30.0+0.0)x0.0 +..\vbox(20.0+0.0)x0.0 +..\openout0=abc +..\penalty 0 +..\write1{write 1} +..\glue 10.0 plus 1.0 minus 1.0 +..\write2{write 2} +.\penalty 0 +.\kern 10.0 +.\vbox(20.0+0.0)x0.0 +..\closeout3 +..\glue(\splittopskip) 0.0 +..\vbox(20.0+0.0)x0.0 +..\glue 0.0 plus 1.0fil + +! OK. +\1...cards \box 28 } \showbox 0 + } +l.1175 ... \1 1 20 \1 2 30 + + + +### internal vertical mode entered at line 1184 +prevdepth ignored +### vertical mode entered at line 0 +### recent contributions: +\glue 0.0 plus 1.0fil +\kern 20.0 +prevdepth 0.0 + +! OK. +\1...{ \pagediscards \showlists + }} +l.1184 ...0 \vfil \kern 20 pt \1 + \penalty -1 \1 + + +### internal vertical mode entered at line 1184 +prevdepth ignored +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +\1...{ \pagediscards \showlists + }} +l.1184 ...0 pt \1 \penalty -1 \1 + + + +### internal vertical mode entered at line 1185 +prevdepth ignored +### vertical mode entered at line 0 +### recent contributions: +\glue 0.0 plus 1.0fill +\kern 2.0 +prevdepth 0.0 + +! OK. +\1...{ \pagediscards \showlists + }} +l.1185 ...1 \vfill \kern 2 pt \1 + \penalty 10 \1 + + +### internal vertical mode entered at line 1185 +\glue 0.0 plus 1.0fill +\kern 2.0 +\penalty 10 +prevdepth ignored +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +\1...{ \pagediscards \showlists + }} +l.1185 ...2 pt \1 \penalty 10 \1 + + +> \box0= +\vbox(12.0+0.0)x0.0 +.\kern 5.0 +.\penalty 0 +.\kern 7.0 +.\glue(\baselineskip) 0.0 + +! OK. + ...scards } \showbox 0 + \showbox 255 \setbox 0 = \box... +l.1190 ...box {} \penalty -10000 + + +> \box255= +\vbox(0.0+0.0)x0.0 +.\write1{} +.\write2{} +.\write3{} +.\glue(\topskip) 0.0 +.\hbox(0.0+0.0)x0.0 + +! OK. + ...wbox 0 \showbox 255 + \setbox 0 = \box 255 \global ... +l.1190 ...box {} \penalty -10000 + + + +### internal vertical mode entered at line 1191 +\penalty 10000 +prevdepth ignored +### vertical mode entered at line 0 +prevdepth 0.0 + +! OK. +\1...{ \pagediscards \showlists + }} +l.1191 \1 + + +Checking \interlinepenalties, \clubpenalties, \widowpenalties, and \disp +laywidowpenalties: +{into \tracingassigns=1} +{changing \tracingrestores=0} +{into \tracingrestores=1} +\interlinepenalties=0 +\clubpenalties=0 +\widowpenalties=0 +\displaywidowpenalties=0 +\interlinepenalties-1=0 +\interlinepenalties0=0 +\interlinepenalties5=0 +\interlinepenalties\interlinepenalties0=0 +\clubpenalties-1=0 +\clubpenalties0=0 +\clubpenalties5=0 +\clubpenalties\clubpenalties0=0 +\widowpenalties-1=0 +\widowpenalties0=0 +\widowpenalties5=0 +\widowpenalties\widowpenalties0=0 +\displaywidowpenalties-1=0 +\displaywidowpenalties0=0 +\displaywidowpenalties5=0 +\displaywidowpenalties\displaywidowpenalties0=0 +{changing \interlinepenalties=0} +{into \interlinepenalties=3 101\ETC.} +{changing \clubpenalties=0} +{into \clubpenalties=1 1} +{changing \clubpenalties=1 1} +{into \clubpenalties=4 201\ETC.} +{changing \widowpenalties=0} +{into \widowpenalties=5 301\ETC.} +{changing \displaywidowpenalties=0} +{into \displaywidowpenalties=6 401\ETC.} +\interlinepenalties=3 101 102 103 +\clubpenalties=4 201 202 203 204 +\widowpenalties=5 301 302 303 304 305 +\displaywidowpenalties=6 401 402 403 404 405 406 +\interlinepenalties-1=0 +\interlinepenalties0=3 +\interlinepenalties5=103 +\interlinepenalties\interlinepenalties0=103 +\clubpenalties-1=0 +\clubpenalties0=4 +\clubpenalties5=204 +\clubpenalties\clubpenalties0=204 +\widowpenalties-1=0 +\widowpenalties0=5 +\widowpenalties5=305 +\widowpenalties\widowpenalties0=305 +\displaywidowpenalties-1=0 +\displaywidowpenalties0=6 +\displaywidowpenalties5=405 +\displaywidowpenalties\displaywidowpenalties0=406 +{changing \interlinepenalties=3 101\ETC.} +{into \interlinepenalties=0} +{restoring \interlinepenalties=3 101\ETC.} +{changing \box0=void} +{into \box0= +\vbox(0.0+0.0)x0.0} +{restoring \box0=void} +{restoring \displaywidowpenalties=0} +{restoring \widowpenalties=0} +{restoring \clubpenalties=0} +{restoring \interlinepenalties=0} + ) +Here is how much of TeX's memory you used: + 22 strings out of 1665 + 132 string characters out of 8410 + 2661 words of memory out of 3000 + 408 multiletter control sequences out of 2100 + 2286 words of font info for 3 fonts, out of 20000 for 75 + 10 hyphenation exceptions out of 307 + 10i,15n,8p,137b,78s stack positions out of 200i,40n,60p,500b,600s + +Output written on etrip.dvi (3 pages, 220 bytes). diff --git a/Build/source/texk/web2c/eptexdir/eptrip/etrip.tex b/Build/source/texk/web2c/eptexdir/eptrip/etrip.tex new file mode 100644 index 00000000000..38fcbf9f248 --- /dev/null +++ b/Build/source/texk/web2c/eptexdir/eptrip/etrip.tex @@ -0,0 +1,1249 @@ +%%; This is `etrip.tex' for e-TeX v3.141592-2.2 as of August 21, 2004. +%%; +%%; This is a diabolical test file for e-TeX, an extension of TeX82. +%%; It is not as diabolical as `trip.tex', Knuth's torture test for TeX. +%%; +%%; ==>> Do not use this TeX code and its macros as an example <<== +%%; ==>> how you can make use of the new e-TeX features! It is <<== +%%; ==>> meant to test these extensions and often uses slightly <<== +%%; ==>> wrong e-TeX input to produce errors and warnings. <<== +%%; +\catcode`\{=1\catcode`\}=2\catcode`\#=6 \let\bgroup={ \let\egroup=} +\def\etripdate {2004-09-06} +\def\texversion {3.141592} +\def\etripversion{2.2} +% +\message{This is the e-Trip test [\etripdate] for + e-TeX v\texversion-\etripversion.} +% +% --- Make sure that e-Trip is run in e-TeX extended mode +\def\stop#1{\message{Emergency stop: #1!}} +\expandafter\ifx\csname eTeXversion\endcsname\relax + \stop{You aren't using e-TeX in extended mode} + \message{(Do not forget to give an asterisk `*' as the first non-blank} + \message{character to make e-IniTeX enter extended mode.)} + \expandafter\end +\fi +% +% --- Check for e-TeX version +\def\1.#1#2\relax{\bgroup + \edef\1{\egroup + \def\noexpand\2{\number\eTeXversion\eTeXrevision}% + \def\noexpand\1{\number\eTeXversion.#1}}\1} +\expandafter\1\eTeXrevision\relax +\message{(You are using e-TeX version/revision \2)} +\ifx\1\etripversion \else \stop{I have expected e-TeX + v\texversion-\etripversion...}\expandafter\end\fi +\let\1=\5 \let\2=\5 +% +% --- a special branch for e-IniTeX +\ifx\einitex\undefined \def\einitex{} + % + \message{e-IniTeX: Assigning category codes,} + \catcode`\$=3\catcode`\&=4 + \catcode`\^=7\catcode`\^^I=10\catcode`\_=8 + \message{tracing switches,} + \tracingstats=4\tracinglostchars=2 + \message{other codes,} + \endlinechar=`\^^M \newlinechar=`\^^J + % + \message{definitions for e-VirTeX e-Trip test run,} + \def\error{\immediate\write15{Bug in your e-TeX implementation!}% + \immediate\write15 } + \def\typeout{\immediate\write15 } + \def\empty{} \def\space{ } + % + \message{constants and registers,} + \chardef\zero=0\chardef\one=1\chardef\two=2 + \countdef\ctmp=255 \countdef\cndx=254 + % + \message{fonts,} + \fontdimen12\nullfont=13pt + \font\trip=etrip \hyphenchar\trip=`1 \trip + \textfont0=\trip \textfont1=\trip + \font\smalltrip=etrip scaled 500\relax % our symbols font + \fontdimen22\smalltrip=7pt + \textfont2=\smalltrip \scriptfont2=\smalltrip + \scriptscriptfont2=\smalltrip + \font\bigtrip=etrip at 20pt\relax % our extension font + \textfont3=\bigtrip \scriptfont3=\bigtrip + \scriptscriptfont3=\bigtrip + % + \message{some math characters,} + \delcode`\[="161361 % small (family 1, character "61 (a)), large (3,"61) + \delcode`\|="142342 % small (family 1, character "42 (B)), large (3,"42) + \delcode`\]="162362 % small (family 1, character "62 (b)), large (3,"62) + % + \message{some math parameters,} + \thinmuskip=18mu plus 3.6mu + \medmuskip=27mu plus 9mu minus 18mu + \thickmuskip=36mu minus 7.2mu + % + \message{hyphenation,} + \lefthyphenmin=2\righthyphenmin=2 + \begingroup + \def\x{\patterns{% + .pp1aqq. .up1aqq. .ppb1qq. .upb1qq. .pp1r1qq. .up1r1qq.}} + \language=0 \x \savinghyphcodes=1 + \language=1 \lccode`A=`a \lccode`B=`b \x + \language=2 \lccode`A=`r \lccode`B=`b \x + \language=3 \lccode`A=`a \lccode`B=`r \x + {\def\1{\lccode\count20=0 \ifnum\count20<255 \advance\count20 1 + \expandafter\1\fi}\count20=0 \1 + \language=4 \patterns{}} + {\lccode`B=`b \hyphenation{qqB-pp}} + \count20=\interactionmode \nonstopmode + {\setbox0\vbox{\parfillskip=0pt + \hbadness=0 \showboxdepth=0 + \hsize=16383.99999pt \pretolerance=-1 \tolerance=-1 + \trip\ ppaqq upaqq ppbqq upbqq pprqq uprqq qqbpp}} + {\lccode`B=`b \language=4 \hyphenation{-q-}} + \interactionmode=\count20 + {\lccode`B=`b \hyphenation{qq-B-pp}} + \endgroup + % + \message{enable e-TeX enhancements (TeXXeT),} + \TeXXeTstate=1 + % + \message{prepare saved items (not to be dumped),} + \bgroup \savingvdiscards=1 + \vfill \penalty 1234 % set \pagediscards + \setbox0=\vbox{\vbox to10pt{}\vskip5pt\penalty-4321} + \setbox1=\vsplit0 to10pt % set \splitdiscards + \egroup + % + \message{everyjob ...dumped.} + \everyjob={\message{e-IniTeX: e-Trip format loaded.}} + \expandafter\dump +\fi + +% +% -- Test \lostchars=1 and 2 +\begingroup + \tracingonline=0 + \setbox0=\hbox{% + \tracinglostchars=0 \nullfont a% + \tracinglostchars=1 \nullfont b% + \tracinglostchars=2 \nullfont c% + } +\endgroup +% +% -- Do the rest in silent, almost all of it: +\batchmode + +% +% -- Check that all e-TeX enhancements are switched off +\ifnum\TeXXeTstate=0 \else + \error{dumped e-TeX enhancement state registers aren't switch off} +\fi + +% +% ============================== input/output: new csnames +% +% -- Check table of equivalents and the routines |id_lookup|, +% |print_cmd_chr| for all new e-TeX control sequences +% -- Check new primitive \unexpanded (first test) +\typeout{Checking input/output of new csnames:} +\begingroup + \edef\1{% + \unexpanded{% +% --- additional e-TeX V 1 primitives + \eTeXversion \eTeXrevision \showgroups \showtokens + \tracingassigns \tracinggroups \tracingifs \tracingscantokens + \currentgrouplevel \currentgrouptype \middle \lastnodetype + \TeXXeTstate \beginL \endL \beginR \endR \predisplaydirection + \marks \topmarks \firstmarks \botmarks + \splitfirstmarks \splittopmarks + \protected \unexpanded \detokenize \scantokens \readline + \unless \ifdefined \ifcsname \everyeof \interactionmode +% --- additional e-TeX V 2 primitives + \currentiflevel \currentiftype \currentifbranch \showifs + \fontcharwd \fontcharht \fontchardp \fontcharic \iffontchar + \tracingnesting \parshapelength \parshapeindent \parshapedimen + \numexpr \dimexpr \glueexpr \muexpr \mutoglue \gluetomu + \gluestretchorder \glueshrinkorder \gluestretch \glueshrink + \savingvdiscards \pagediscards \splitdiscards + \lastlinefit \savinghyphcodes \interlinepenalties + \clubpenalties \widowpenalties \displaywidowpenalties + }% + } + +% loop through the list, count the number of csnames, +% insert the \newlinechar after the 2nd, 4th, 6th, ... + \ctmp=0\def\3{} + \def\2#1{\ifx\relax#1\else + \advance\ctmp\one + \edef\3{\unexpanded\expandafter{\3 #1}\ifodd\ctmp\else ^^J\fi}% + \expandafter\2\fi} + \expandafter\2\1\relax + \typeout{e-TeX Version \number\eTeXversion\space has + \number\ctmp\space new csnames:}% + \show\3\endgroup + +% +% ============================== create and output nodes +% +% -- Check |new_...| routines and |short_display|, |show_node_list| +% for all new e-TeX node types and subtypes +% -- Check for new primitives disabled when read. +\typeout{Checking creation and printing for new node types:} +\tracingonline=1 +\showboxbreadth=255\showboxdepth=255 +\begingroup + \setbox0=\vbox{\hsize=0pt\TeXXeTstate=1\relax + %% []\trip a[]b[]p$q [] t$u[][] % <== \endR\endL at end + a\beginL b\beginR p$q\left[\mathpunct{r}\middle|s\right]t$u + %% \trip aMb + $$aMb$$ % \hbox ..., display + %% [][]\trip p[]q$st$u[] % <== \beginL\beginR at beginning + p\endR q\mathsurround=12.3pt$st$u % <== \endL at end + %% \trip rMs + $$rMs$$ % \hbox ..., display + %% []\trip tp[]u % <== \beginL at beginning + tp\endL u + %% \trip rMs + $$rMs$$ % \hbox ..., display + %% \trip tp % <== no \mark(s), no \(begin/end)(L/R)! + tp\mark{0old}\marks0{0}\marks1{1}\marks15{15}\marks65535{65535}% + \marks-1{-1}\marks65536{65536}% Bad register (-1) ...and (65536). + \TeXXeTstate=0\relax + \beginL\beginR\endL\endR % Improper \(begin/end)(L/R) + }\showbox0 +\endgroup + +% +% +% ============================== \interactionmode +% +% -- Check new special register \interactionmode +\typeout{Checking \string\interactionmode:} +\begingroup \ctmp=\interactionmode % save current value +\nonstopmode +% test inquiry using \interactionmode +\def\3{\typeout{current interactionmode (l.\number\inputlineno): + \ifcase\interactionmode batch\or nonstop\or scroll\or + errorstop\else UNKNOWN!\fi}} +\def\1#1{\relax\ifnum#1=\interactionmode \3 \else + \typeout{wrong interactionmode: + \number\interactionmode\space should be \number#1!}\fi} +\batchmode \1 0 +\nonstopmode \1 1 +\scrollmode \1 2 +\errorstopmode \1 3 +% test setting |interaction_mode| using this special register +\def\2#1{\interactionmode=#1\relax \1{#1}} + \nonstopmode + % generate two errors: + \interactionmode=-1 \1 1 % nonstop + \interactionmode=4 \1 1 % nonstop +\2 2 \2 2 \2 1 \2 1 \2 3 \2 3 \2 0 \2 0 +\1 0{\interactionmode=3}\1 3 % global assignment! +% Test for the correct call of |new_interaction|, i.e. +% correct setting of |selector|: +\interactionmode=1 \message{1 (l.\number\inputlineno)}% log+term +\interactionmode=0 \message{0 (l.\number\inputlineno)}% log only +\interactionmode=1 \message{1 (l.\number\inputlineno)}% log+term +% Some tests with TeX's old command and register assignments +\batchmode \1 0 \2 3 \scrollmode \1 2 \2 1 +\2 \ctmp +\endgroup + +% +% -- Check \tracingifs +\typeout{Checking \string\tracingifs:} +\begingroup + \def\1#1\1{\def\2{#1\iffalse \else \fi}#1\iftrue \2\else \2\fi} + \tracingifs=1 + \1\1 + \1\unless\1 + \tracingcommands=2 + \ifdefined\hbox \unless\ifdefined\abc \ifcase 2 \or \or + \ifcsname hbox\endcsname \ifcsname abc\endcsname \abc \else + \ifx\abc\relax \else \ifx\abc\relax \fi \fi \fi \fi \or\fi \fi \fi +\endgroup +% +% -- Check \tracingassigns +\typeout{Checking \string\tracingassigns:} +\begingroup + \tracingrestores=1 \tracingassigns=1 + \global\count17=7 \count17=7 + \global\def\9{\relax} \global\let\8=\9 \let\8=\9 + \bgroup + \global\count17=0 \count17=0 + \global\let\9=\7 \global\let\8=\9 \let\8=\9 + \egroup +\endgroup + +% +% -- Check \currentgrouptype, \currentgrouplevel, and \lastnodetype +\typeout{Checking \string\currentgrouptype, + \string\currentgrouplevel, and \string\lastnodetype:} +\typeout{current group level (l.\number\inputlineno): + \ifcase\currentgrouplevel outer level\else BAD!\fi} +\typeout{current group type (l.\number\inputlineno): + \ifcase\currentgrouptype bottom level\else BAD!\fi} +\begingroup + \def\4{\typeout{current group type (l.\number\inputlineno): + \ifcase\currentgrouptype bottom level\or simple group\or + hbox group\or adjusted hbox group\or vbox group\or + vtop group\or align group\or no align group\or + output group\or math group\or disc group\or + insert group\or vcenter group\or math choice group\or + semi simple group\or math shift group\or + math left group\else UNKNOWN!\fi}} + \def\1 #1 {\relax\ifnum#1=\currentgrouptype \4\else + \typeout{wrong current group type: + \number\currentgrouptype\space should be #1!}\fi} + \def\5{\edef\6{\ifcase\lastnodetype char node\or hlist node\or + vlist node\or rule node\or ins node\or mark node\or + adjust node\or ligature node\or disc node\or whatsit node\or + math node\or glue node\or kern node\or penalty node\or + unset node\or math mode node\else + \ifnum-1=\lastnodetype empty\else UNKNOWN!\fi\fi}% + \typeout{last node type (l.\number\inputlineno): \6}} + \def\2 #1 {\relax\ifnum#1=\lastnodetype \5\else + \edef\6{\number\lastnodetype}% + \typeout{wrong last node type: \6 should be #1!}\fi} + \def\3 #1 {\relax\ifnum#1=\currentgrouplevel \else + \typeout{wrong current group level: + \number\currentgrouplevel\space should be #1!}\fi} + \tracinggroups=1 + \1 14 % semi simple group + \3 1 % group level 1 + \setbox0=\vbox{\1 4 % vbox group + \hbox{\1 3 % adjusted hbox group + {\1 1 % simple group + }\2 -1 % empty list + \hbox{\1 2 % hbox group + \discretionary{\1 10 }{\1 10 }{\1 10 % disc group + \3 5 % group level 5 + }\2 8 % disc node + A\2 0 % char node + AA\2 7 % ligature node + \insert27{\1 11 % insert group + }\2 4 % ins node + \vadjust{\1 11 % insert group + }\2 6 % adjust node + \mark{}\2 5 % mark node + \vrule \2 3 % rule node + \hfil \2 11 % glue node + \kern 0pt\2 12 % kern node + \penalty 0\2 13 % penalty node + \vtop{\1 5 % vtop group + }\2 2 % vlist node + \write5{}\2 9 % whatsit node + $\1 15 % math shift group + {\1 9 % math group + } + $\2 10 % math node + \TeXXeTstate=1\beginR\2 10 % math node + \endR\2 10 % math node + \valign{#\cr\1 6 % two align groups + \cr\noalign{\1 7 % no align agroup + \2 14 % unset node + } + } + } + }\2 1 % hlist node + $$\1 15 % math shift group + \2 -1 % empty list + \mathchoice{\1 13 }{\1 13 }{\1 13 }{\1 13 % math choice group + \vcenter{\1 12 % vcenter group + }\2 15 % math mode node + }\2 15 % math mode node + \left.\1 16 % math left group + \middle.\1 16 % math left group + \middle.\1 16 % math left group + \right. + $$ + } + \output={\1 8 % output group + \setbox0=\box255 + \setbox0=\vbox{ % vbox group % this is definitely weird! + \hbox spread 5pt{\hfil % adjusted hbox group + \raise5pt\hbox{ % hbox group + { %simple group + \valign{#\cr % two align groups + \noalign{ % no align group + $ % math shift group + \vtop{ % vtop group + $$ % math shift group + { % math group + \left.\middle. % math left group + \mathchoice{}{}{ % math choice group + \vcenter to 7pt{\vss % vcenter group + \noindent\vadjust{ % insert group + \discretionary{}{% disc group + \showgroups % show all of them + }{} + } + } + }{} + \right. + } + $$ + } + $ + } + } + } + } + } + } + } + \hbox{}\vfil\penalty-10000 + \deadcycles=0 +\endgroup + +% +% -- Check expansion of \protected macros +\typeout{Checking expansion of \string\protected\space macros:} +\begingroup + \protected\def\2{} \show\2 + \let\3=\2 \show\3 + \protected\unexpanded\bgroup\2\protected\3\protected\def\1{\2}} \show\1 + \tracingmacros=1 + \message{\expandafter\1\1} + \typeout{\expandafter\1\1} + \setbox0=\vbox{\special{\expandafter\1\1}} \showbox0 + \edef\5{\expandafter\1\1} \show\5 + \setbox0=\vbox{\halign{#\1&#\span\1\cr + \protected\def\1{\3}&\protected\def\1{\3}\cr}} +\endgroup + +% +% -- Check \scantokens, \tracingscantokens, \readline, and \everyeof +\typeout{Checking \string\scantokens, \string\tracingscantokens, + \string\readline, and \string\everyeof:} +\begingroup + \newlinechar=`\^^J + \def\1{\endgroup ^^J\fi ^^J\bgroup ^^J\iffalse \else} + \tracingoutput=1 + \shipout\vbox{\global\advance\count\zero by\one + \openout1=\jobname.out + \write1{\unexpanded\expandafter{\1}} + \closeout1} + \begingroup \iftrue \input\jobname.out \egroup \fi + \begingroup \iftrue \scantokens\expandafter{\1} \egroup \fi + \errorcontextlines=1000 \tracingscantokens=1 + \begingroup + \tracingnesting=1 + \begingroup \iftrue \scantokens\expandafter{\1} \egroup \fi + \tracingnesting=2 + \begingroup \unless\iffalse \scantokens\expandafter{\1} \egroup \fi +% and now a really weird (although legitimate) combination + \setbox0=\hbox\bgroup + \unless\iftrue\else + \scantokens{\hbox\bgroup^^J\ifcase0^^J\tracingscantokens=0^^J + \newlinechar=`\^^Z + \scantokens{\egroup^^Z\else\fi^^Z\def\1{\egroup\fi}^^Z\1^^Z^^J + \setbox0=\vtop\bgroup^^Z\ifnum0=0^^Z$$^^Z\ifinner\else^^Z + \csname iffalse\endcsname^^J + }^^J % end of inner scantokens + $$^^J\fi + } % end of outer \scantokens + \egroup + \else\fi + \endgroup + \begingroup \iftrue \let\9=\endgroup \def\endgroup{\9\9} + \input\jobname.out \egroup \fi + \begingroup \iftrue \let\9=\endgroup \def\endgroup{\9\9} + \scantokens\expandafter{\1} \egroup \fi + + \edef\1{\scantokens{\begingroup} % <== error + \everyeof={\noexpand} + \edef\1{\scantokens{\begingroup}\endgroup} % <== OK + \errorcontextlines=100 + \def\2{\begingroup\scantokens{\message{level=\the\currentgrouplevel}}% + \endgroup} + \bgroup\bgroup\bgroup \edef\1{\egroup\egroup\egroup + \everyeof={\noexpand\ifnum\number\currentgrouplevel + \unexpanded{>\currentgrouplevel\2\else\9\fi}}}\1\2 + + \openin7=\jobname.out + \bgroup + \def\1{\unless\ifeof7\readline7to\2% + \endlinechar=-\one\2\expandafter\1\fi} + \tracingcommands=2 \tracingrestores=1 \tracingassigns=1 + \setbox25=\hbox{\1\showlists} + \egroup + +\endgroup + +% +% -- Check \marks etc., \showtokens, and \detokenize +\typeout{Checking \string\marks\space etc., \string\showtokens, and + \string\detokenize:} +\begingroup + \newlinechar=`\^^J + \def\4{\message{Current marks:\9^^J}} + \def\3#1{\edef\9{\9^^J \detokenize{#1}=\detokenize\expandafter{#1}.}} + \def\2#1 {\3{\splitfirstmarks#1}\3{\splitbotmarks#1}} + \def\0{\let\9=\empty} + \def\7{\penalty0\vskip40pt} + \def\1{\0\20 \21 \23 \4} + \setbox0=\vbox{% + \marks0{0-1}\marks1{1-1}\vskip1pt\vbox to9pt{} + \mark{0-2}\marks3{}\hbox{}\vskip5pt\vfil\7 + \marks0{0-3}\vskip1pt\vbox to19pt{}\marks3{3-3}\vskip3ptplus1fil\7 + \vbox to30pt{}\vfil\7\hbox to10pt{}} + \setbox4=\copy0 + \1 \showbox0 \let\5=\3 \def\3#1{\showtokens\expandafter{#1}\5{#1}} + \setbox1=\vsplit0to17pt + \1 \showbox1 \showbox0 \let\3=\5 + \setbox1=\vsplit0to27pt + \1 \showbox1 \showbox0 + \setbox1=\vsplit0to37pt + \1 \showbox1 \showbox0 + \def\2#1 {\3{\topmarks#1}\3{\firstmarks#1}\3{\botmarks#1}} + \vsize=35pt \output{\1 \showbox255 \setbox0=\box255}\1 + \unvbox4\marks0{}\marks1{}\marks3{}\vfil\penalty-10000 + \hbox{}\marks0{}\marks1{}\marks3{}\vfil\penalty-10000 + \hbox{}\vfil\penalty-10000 % reclaim sparse array memory! + \deadcycles=0 +\endgroup + +% +% -- Check \middle +\typeout{Checking \string\middle:} +\begingroup + \scriptfont1=\textfont1 \scriptscriptfont1=\scriptfont1 + \setbox0=\vbox{\middle \par \right \par} % <== 8 errors + \setbox0=\hbox{% + $ + \left[p + \left[q + \over r + \left[p + \middle|q + \middle|q + \left[p + \middle|q + \middle|q + \over r\showlists + \right]\showlists + \right]\showlists + \right]\showlists + \right]\showlists + $\showlists + } + \setbox0=\hbox{$\displaystyle + \left[\scriptstyle\middle|\mathchoice{p}{q}{r}{s} + \raise16.5pt\hbox{}\right]$\showlists} + \setbox0=\hbox{$\scriptscriptstyle + \left[\displaystyle\lower3pt\hbox{}\middle|\mathchoice{p}{q}{r}{s} + \right]$\showlists} +\endgroup + +% +% -- Check TeX--XeT's new primitives +\typeout{Checking TeX--XeT enhancements:} +\begingroup +% -- incorrect matching & conversion +% (extra `endL/R' nodes are converted to `kern 0.0' nodes) + \setbox0=\vbox{\TeXXeTstate=1 + \parfillskip=0pt plus1fil\hsize=10pt\parindent=.5pt + \beginL\kern1pt\par + \beginR\kern2pt\par + \beginL\beginR\kern3pt\penalty0\hbox{}\kern3pt\endL\endR\endL\par + \endL\kern4pt\endR\par} + \showbox0 +% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% STILL INCOMPLETE!!! +% %%%%% Missing: Test for functionality of all new primitives +% \TeXXeTstate \beginL \endL \beginR \endR \predisplaydirection +% %%%%% +\endgroup + +% +% -- Check optimized \aftergroup +\typeout{Checking optimized \string\aftergroup:} +\begingroup + \errorcontextlines=1000 + {{\aftergroup\x\aftergroup}\aftergroup{\aftergroup\relax}} +\endgroup + +% +% -- Check \showifs, \currentiftype, \currentiflevel, and \currentifbranch +\typeout{Checking \string\showifs, \string\currentiftype, + \string\currentiflevel, and \string\currentifbranch:} +\begingroup + \def\1{ !BAD} \edef\2{ \ifnum0=\currentifbranch OK\else!BAD\fi} + \iftrue \expandafter \ifnum \number\currentifbranch=1 + \iffalse \else \expandafter \ifnum \number\currentifbranch=-1 + \ifnum \currentifbranch=0 \let\1=\2 \fi \fi \fi \fi \fi + \message{\string\currentifbranch \1} + \def\1 #1 {\edef\2{\number\currentiflevel}% + \ifnum\2=#1 + \typeout{current if level (l.\number\inputlineno): \number\2}% + \else + \typeout{wrong current if level: \2\space should be #1!}% + \fi} + \1 0 % if level 0 + \iftrue \1 1 % if level 1 + \iftrue \1 2 % if level 2 + \fi + \fi + \def\1 #1 #2 {\edef\2{\number\currentiftype}% + \edef\3{\number\currentifbranch}% + \ifnum\2=#1 \4\else + \typeout{wrong current if type: \2\space should be #1!}\fi + \ifnum\3=#2 \5\else + \typeout{wrong current if branch: \3\space should be #2!}\fi} + \def\4{\typeout{current if type (l.\number\inputlineno): + \ifnum\2<0 \string\unless\6{-\2}\else\6{\2}\fi}} + \def\5{\typeout{current if branch (l.\number\inputlineno): + \ifnum\3>0 true\else \ifnum\3<0 false\else + \ifnum0=\3 no\else !UNKNOWN\fi\fi\fi\space branch}} + \def\6#1{\string\if \ifcase#1!NONE\or \or cat\or num\or dim\or odd\or + vmode\or hmode\or mmode\or inner\or void\or hbox\or vbox\or x\or + eof\or true\or false\or case\or defined\or csname\or fontchar\else + !UNKNOWN\fi} + \1 0 0 + \if00 \1 1 1 \fi \unless\if00 \else \1 -1 -1 \fi + \if0a \else \1 1 -1 \fi \unless\if0a \1 -1 1 \fi + \ifcat00 \1 2 1 \fi \unless\ifcat00 \else \1 -2 -1 \fi + \ifcat0a \else \1 2 -1 \fi \unless\ifcat0a \1 -2 1 \fi + \ifnum1=1 \1 3 1 \fi \unless\ifnum1<1 \1 -3 1 \fi + \ifdim1pt=2pt \else \1 4 -1 \fi \unless\ifdim1pt>2pt \1 -4 1 \fi + \ifodd5 \1 5 1 \fi \unless\ifodd5 \else \1 -5 -1 \fi + \setbox2=\vbox{ + \ifvmode \1 6 1 \fi \unless\ifvmode \else \1 -6 -1 \fi + } \setbox0=\box2 + \setbox1=\hbox{ + \ifhmode \1 7 1 \fi \unless\ifhmode \else \1 -7 -1 \fi + $ + \ifmmode \1 8 1 \fi \unless\ifmmode \else \1 -8 -1 \fi + $ + \ifinner \1 9 1 \fi + } + \unless\ifinner \1 -9 1 \fi + \ifvoid2 \1 10 1 \fi \unless\ifvoid0 \1 -10 1 \fi + \ifhbox1 \1 11 1 \fi \unless\ifhbox2 \1 -11 1 \fi + \ifvbox0 \1 12 1 \fi \unless\ifvbox1 \1 -12 1 \fi + \ifx\abc\relax \else \1 13 -1 \fi \unless\ifx\relax\abc \1 -13 1 \fi + \ifeof7 \1 14 1 \fi \unless\ifeof5 \else \1 -14 -1 \fi + \iftrue \1 15 1 \fi \unless\iftrue \else \1 -15 -1 \fi + \iffalse \else \1 16 -1 \fi \unless\iffalse \1 -16 1 \fi + \ifcase2 \or \or \1 17 1 \fi \ifcase2 \or \else \1 17 -1 \fi + \ifdefined\hbox \1 18 1 \fi \unless\ifdefined\abc \1 -18 1 \fi + \ifcsname hbox\endcsname \1 19 1 \fi + \unless\ifcsname abc\endcsname \1 -19 1 \fi + \iffontchar\trip`b \1 20 1 \fi \unless\iffontchar\trip`c \1 -20 1 \fi +% + \if00 \unless\if00 \else \if0a \else \unless\if0a + \ifcat00 \unless\ifcat00 \else \ifcat0a \else \unless\ifcat0a + \ifnum1=1 \unless\ifnum1<1 \ifdim1pt=2pt \else \unless\ifdim1pt>2pt + \ifodd5 \unless\ifodd5 \else + \setbox3=\vbox{\ifvmode \unless\ifvmode \else + \hbox{\ifhmode \unless\ifhmode \else + $\ifmmode \unless\ifmmode \else \ifinner \unless\ifinner \else + \ifvoid2 \unless\ifvoid0 \ifhbox1 \unless\ifhbox2 + \ifvbox0 \unless\ifvbox1 \ifeof7 \unless\ifeof5 \else + \ifx\abc\relax \else \unless\ifx\relax\abc + \iftrue \unless\iftrue \else \iffalse \else \unless\iffalse + \ifcase2 \or \or \ifcase2 \or \else + \ifdefined\hbox \unless\ifdefined\abc + \begingroup \tracingifs=1 + \ifcsname hbox\endcsname \unless\ifcsname abc\endcsname + \iffontchar\trip`b \unless\iffontchar\trip`c + \showifs % <== show 44 nested ifs + \fi \fi + \fi \fi + \endgroup + \fi \fi + \fi \fi + \fi \fi \fi \fi + \fi \fi + \fi \fi \fi \fi + \fi \fi \fi \fi + \fi \fi \fi \fi $ + \fi \fi } + \fi \fi } + \fi \fi + \fi \fi \fi \fi + \fi \fi \fi \fi + \fi \fi \fi \fi +\endgroup + +% +% -- Check \iffontchar, \fontcharwd, etc. +\typeout{Checking \string\iffontchar, \string\fontcharwd, etc.:} +\begingroup + \iffontchar \else \fi % <== missing font identifier and number + \iffontchar\textfont2 -1 \else \fi % <== bad character code + \iffontchar\font 256 \else \fi % <== bad character code + \fontcharwd \fontcharht \fontchardp \fontcharic % <== can't use + \def\1#1#2{% + \def\2##1##2{\ifdim\csname fontchar##1##2\endcsname#1`#2=0pt \else + \space##1##2=\the\csname fontchar##1##2\endcsname#1`#2 \fi}% + \typeout{Font \string#1 character #2% + \iffontchar#1`#2:\2wd\2ht\2dp\2ic\else \space does not exist\fi}} + \1\font A \1{\textfont1}B \1{\scriptfont2}B \1{\scriptscriptfont3}B + \1\trip 7 \1\trip D \1\nullfont D +% + \def\1#1{\cndx=\zero \ctmp=\zero + \def\2{\iffontchar#1\cndx \advance\ctmp by\one \fi + \advance\cndx by\one + \ifnum\cndx<256 \expandafter\2\fi}% + \2% + \typeout{Font \string#1 has \number\ctmp\space character% + \ifnum1=\cndx \else s\fi .}} + \1\font \1\trip \1\nullfont +\endgroup + +% +% -- Check \parshapelength, \parshapeindent, and \parshapedimen +\typeout{Checking \string\parshapelength, \string\parshapeindent, and + \string\parshapedimen:} +\begingroup + \parshapelength \parshapeindent \parshapedimen % <== can't use + \def\1#1 {\edef\2{\2 #1}} + \let\2=\empty + \ifdim\parshapeindent-5=0pt \else\1a \fi + \ifdim\parshapelength-5=0pt \else\1b \fi + \ifdim\parshapeindent-1=0pt \else\1c \fi + \ifdim\parshapelength-1=0pt \else\1d \fi + \ifdim\parshapeindent-0=0pt \else\1e \fi + \ifdim\parshapelength-0=0pt \else\1f \fi + \ifdim\parshapeindent 1=0pt \else\1g \fi + \ifdim\parshapelength 1=0pt \else\1h \fi + \ifdim\parshapeindent 5=0pt \else\1j \fi + \ifdim\parshapelength 5=0pt \else\1i \fi + \ifdim\parshapedimen-5=0pt \else\1k \fi + \ifdim\parshapedimen-1=0pt \else\1l \fi + \ifdim\parshapedimen 0=0pt \else\1m \fi + \ifdim\parshapedimen 1=0pt \else\1n \fi + \ifdim\parshapedimen 2=0pt \else\1o \fi + \typeout{Parshape test 1 \ifx\2\empty OK\else error(s):\2\fi} + \parshape=2 1pt 2pt 3pt 4pt + \let\2=\empty + \ifdim\parshapeindent-5=0pt \else\1a \fi + \ifdim\parshapelength-5=0pt \else\1b \fi + \ifdim\parshapeindent-1=0pt \else\1c \fi + \ifdim\parshapelength-1=0pt \else\1d \fi + \ifdim\parshapeindent-0=0pt \else\1e \fi + \ifdim\parshapelength-0=0pt \else\1f \fi + \ifdim\parshapedimen-5=0pt \else\1g \fi + \ifdim\parshapedimen-1=0pt \else\1h \fi + \ifdim\parshapedimen 0=0pt \else\1i \fi + \typeout{Parshape test 2 \ifx\2\empty OK\else error(s):\2\fi} + \parshape=2 1pt 2pt 3pt 4pt + \parshape=2 \parshapelength2 \parshapeindent2 + \parshapelength1 \parshapeindent1 + \let\2=\empty + \ifdim\parshapeindent1=4pt \else\1A \fi + \ifdim\parshapelength1=3pt \else\1B \fi + \ifdim\parshapeindent2=2pt \else\1C \fi + \ifdim\parshapelength2=1pt \else\1D \fi + \ifdim\parshapeindent3=2pt \else\1E \fi + \ifdim\parshapelength3=1pt \else\1F \fi + \ifdim\parshapeindent9=2pt \else\1G \fi + \ifdim\parshapelength9=1pt \else\1H \fi + \typeout{Parshape test 3 \ifx\2\empty OK\else error(s):\2\fi} + \parshape=2 1pt 2pt 3pt 4pt + \parshape=2 11\parshapedimen4 11\parshapedimen3 + 11\parshapedimen2 11\parshapedimen1 + \let\2=\empty + \ifdim\parshapedimen1=44pt \else\1A \fi + \ifdim\parshapedimen2=33pt \else\1B \fi + \ifdim\parshapedimen3=22pt \else\1C \fi + \ifdim\parshapedimen4=11pt \else\1D \fi + \ifdim\parshapedimen5=22pt \else\1E \fi + \ifdim\parshapedimen6=11pt \else\1F \fi + \ifdim\parshapedimen99=22pt \else\1G \fi + \ifdim\parshapedimen100=11pt \else\1H \fi + \typeout{Parshape test 4 \ifx\2\empty OK\else error(s):\2\fi} +\endgroup + +% +% -- Check \numexpr, \dimexpr, \glueexpr, and \muexpr +\typeout{Checking \string\numexpr, \string\dimexpr, \string\glueexpr, + and \string\muexpr:} +\begingroup + \numexpr \dimexpr \glueexpr \muexpr % <== can't use + \let\9=\relax + \count43=\numexpr ( ( 2 \9 \dimen43=\dimexpr ( 3pt \9 + \skip43=\glueexpr 4pt plus 3fil \9 \muskip43=\muexpr(5muminus1mu)\9 + \def\1#1 {\typeout{\detokenize{#1}=\the#1}} + \1\numexpr\count43 \1\dimexpr\dimen43 + \1\glueexpr\skip43 \1\muexpr\muskip43 + + % Test arithmetic overflow + \begingroup + \tracingassigns=5 + \count44=\numexpr"7FFFFFFE+1 \dimen44=\dimexpr"3FFFFFFEsp+1sp + \count44=\numexpr-"7FFFFFFE-1 \dimen44=\dimexpr-"3FFFFFFEsp-1sp + \count44=\numexpr"FFFF*"8000 \dimen44=\dimexpr"7FFFsp*"8000 + \skip44="3FFFFFFFsp \advance\skip44by1sp \relax + \dimen45=\skip44 \dimen45=\dimexpr1sp*\skip44\9 + \dimen44=-"3FFFFFFFsp \advance\dimen44by-1sp + \dimen45=\skip44 \dimen45=\dimexpr1sp*\skip44\9 + \count44=\numexpr"7FFFFFFE+2\9 \dimen44=\dimexpr"3FFFFFFEsp+2sp\9 + \count44=\numexpr-"7FFFFFFE-2\9 \dimen44=\dimexpr-"3FFFFFFEsp-2sp\9 + \count44=\numexpr"10000*"8000\9 \dimen44=\dimexpr"8000sp*"8000\9 + \count44=\numexpr"10000*-"8000\9 \dimen44=\dimexpr"8000sp*-"8000\9 + \count44=\numexpr-"10000*"8000\9 \dimen44=\dimexpr-"8000sp*"8000\9 + \count44=\numexpr-"10000*-"8000\9 \dimen44=\dimexpr-"8000sp*-"8000\9 + \count44=\numexpr0/0\9 \dimen44=\dimexpr0pt/0\9 + \count44=\numexpr1/0\9 \dimen44=\dimexpr1pt/0\9 + \count44=\numexpr-1/0\9 \dimen44=\dimexpr-1pt/0\9 + \endgroup + + % Test glue arithmetic (add and sub) + \begingroup + \skip90=3pt plus 0fill minus 1fil + \skip91=3pt plus 1fil minus 0fill + \skip92=2pt plus -1fil minus 1fil + \tracingassigns=5 + \skip93=\glueexpr\skip90+0pt \skip93=\glueexpr\skip90+0pt + \skip93=\glueexpr--\skip90 \skip93=\glueexpr--\skip90 + \skip93=\glueexpr\skip91+0pt + \skip93=\glueexpr--\skip91 \skip93=\glueexpr--\skip91 + \skip93=\glueexpr\skip92+0pt + \skip93=\glueexpr--\skip92 \skip93=\glueexpr--\skip92 + \skip93=\glueexpr\skip90-\skip91 + \skip93=\glueexpr\skip91-\skip92 + \skip93=\glueexpr\skip91+\skip92 + \endgroup + + % Test rounding of division (all combinations of signs) + \def\2#1 {\edef\3{\3 #1}} + \def\1#1#2#3#4{\let\3=\empty + \ifnum#4=\numexpr#2/#3\else\2a \fi + \ifnum#4=-\numexpr-#2/#3\else\2b \fi + \ifnum-#4=\numexpr#2/-#3\else\2c \fi + \ifnum#4=\numexpr-#2/-#3\else\2d \fi + \typeout{Expr quotient rounding #1 \ifx\3\empty OK\else + error(s):\3\fi}} + \11{"3FFFFFFF}{"7FFFFFFF}{0} + \12{"40000000}{"7FFFFFFF}{1} + \13{"3FFFFFFE}{"7FFFFFFE}{0} + \14{"3FFFFFFF}{"7FFFFFFE}{1} + \def\1#1#2#3#4{\let\3=\empty + \ifnum#4=\numexpr#2/#3\else\2a \fi + \ifnum#4=-\dimexpr-#2sp/#3\else\2b \fi + \ifnum-#4=\glueexpr\muexpr#2mu/"10000\9/-#3\else\2c \fi + \ifnum#4=\muexpr-\dimexpr#2spplus-1muminus-1fil/-#3\else\2d \fi + \typeout{Expr quotient rounding #1 \ifx\3\empty OK\else + error(s):\3\fi}} + \15{32}{5}{6} % <== three mu_error's (! Incompatible glue units) + \16{33}{5}{7} % <== three mu_error's (! Incompatible glue units) + \17{25}{4}{6} % <== three mu_error's (! Incompatible glue units) + \18{26}{4}{7} % <== three mu_error's (! Incompatible glue units) + + % Test rounding of fractions + \begingroup + \def\1#1 #2 #3 #4 #5 {\let\3=\empty + \ifnum#5=\numexpr#2*#3/#4\else\2a \fi + \ifnum-#5=\numexpr-#2*#3/#4\else\2b \fi + \ifnum-#5=\numexpr#2*-#3/#4\else\2c \fi + \ifnum#5=\numexpr-#2*-#3/#4\else\2d \fi + \ifnum-#5=\numexpr#2*#3/-#4\else\2e \fi + \ifnum#5=\numexpr-#2*#3/-#4\else\2f \fi + \ifnum#5=\numexpr#2*-#3/-#4\else\2g \fi + \ifnum-#5=\numexpr-#2*-#3/-#4\else\2h \fi + \4#1} + \def\4#1{\typeout{Expr fraction rounding #1 \ifx\3\empty OK\else + error(s):\3\fi}\let\3=\empty} + \11 "7FFFFFFE "7FFFFFFE "7FFFFFFD "7FFFFFFF + \12 "7FFFFFFE "7FFFFFFE "7FFFFFFF "7FFFFFFD + \def\1#1#2 #3 #4 #5 #6 {\let\3=\empty + \ifnum\numexpr#6=\numexpr(#3)*(#4)/(#5)\else\2#1 \fi + \ifdim\dimexpr1sp*#6=\dimexpr(#3sp)*(#4)/(#5)\else\2#2 \fi} + \1ab "3FFFFFFE "7FFFFFFE "7FFFFFFD "3FFFFFFF + \1cd "3FFFFFFE "7FFFFFFE "7FFFFFFF "3FFFFFFD + \1ef "1FFFBFFE "20003FFE "1FFFFFFE "1FFFFFFF + \1gh "1FFFBFFF "20003FFF "1FFFFFFF "20000000 + \1ij "1FFFC000 "20004000 "20000000 "20000000 + \1kl "1FFFC001 "20004001 "20000001 "20000001 + \errorcontextlines=100 + \1mn 1 "7FFFFFFF 2 "40000000 + \43 + \endgroup + + \bgroup + \skip44=\glueexpr ( \skip43 ) + 3 pt plus 1 fil minus 1 fil l l + \muskip44=\muexpr (\muskip43)+3muplus1fill + \dimen44=\dimexpr\skip43+\count43pt + \dimen44=\dimexpr(\skip43)+(\count43pt) + \dimen44=\dimexpr\skip43*\count43 + \skip44=\glueexpr\skip43/\count43 + \skip44=\glueexpr\skip43*2/3 + \egroup + + % Test operator precedence + \bgroup + \def\1#1#2#3#4{#1#2#3#4=#2#3(#4)\else + \typeout{expression error (l.\number\inputlineno)}\fi} + \1\ifnum\numexpr{1+}{2*3} + \1\ifnum\numexpr{4-}{5*6} + \1\ifnum\numexpr{7+}{12/4} + \1\ifnum\numexpr{4-}{6/3} + \1\ifdim\dimexpr{1pt+}{2pt*3} + \1\ifdim\dimexpr{4pt-}{5pt*6} + \1\ifdim\dimexpr{7pt+}{12pt/4} + \1\ifdim\dimexpr{4pt-}{6pt/3} + \1\ifdim\glueexpr{7pt+}{12pt/4} + \egroup + + % Test glue reference count handling + \shipout\hbox{} + \bgroup + \skip43=\glueexpr1ptplus0ptminus0pt + \skip43=\glueexpr1pt-0pt+0pt + \skip43=\glueexpr(((\skip43))) + \egroup + \shipout\hbox{} +\endgroup + +% +% -- Check \mutoglue and \gluetomu +\typeout{Checking \string\mutoglue\space and \string\gluetomu:} +\begingroup + \mutoglue \gluetomu % <== can't use + \skip1=-\mutoglue-\gluetomu9pt \muskip1=-\gluetomu-\mutoglue9mu + \skip2=\gluetomu\muskip1 % <== two mu_error's (! Incompatible glue units) + \muskip2=\mutoglue\skip1 % <== two mu_error's (! Incompatible glue units) + \tracingassigns=1 + \skip1=\mutoglue1muplus-2muminus-3fil + \muskip1=\gluetomu1ptplus-2ptminus-3fil + \skip2=\mutoglue-4muplus5fillminus6filll + \muskip2=\gluetomu-4ptplus5fillminus6filll + \skip3=-\mutoglue\muskip1 + \muskip3=-\gluetomu\skip1 + \skip4=\mutoglue-\muskip2 + \muskip4=\gluetomu-\skip2 + +% +% -- Check (mu)glue identity + \typeout{Checking (mu)glue identity:} + \skipdef\165535\1=7ptplus0filminus0fill\muskipdef\232766\2=\gluetomu\1 + \tracingassigns=\1 + \1=--\mutoglue--\muexpr(--\gluetomu--\glueexpr(--\1)) + \2=--\gluetomu--\glueexpr(--\mutoglue--\muexpr(--\2)) + \tracingassigns=0 + +% +% -- Check \gluestretchorder, \glueshrinkorder, \gluestretch, and \glueshrink + \typeout{Checking \string\gluestretchorder, \string\glueshrinkorder, + \string\gluestretch, and \string\glueshrink:} + \gluestretchorder \gluestretch % <== can't use + \glueshrinkorder \glueshrink % <== can't use + \skip5=1ptminus0fil + \skip6=1ptplus0fillminus0filll + \def\2#1{\typeout{wrong glue #1 (l.\number\inputlineno)}} + \def\1#1#2pt#3#4pt#5 {% + \ifnum\gluestretchorder#5=#1 \else \2{stretch order}\fi + \ifdim\gluestretch#5=#2pt \else \2{stretch}\fi + \ifnum\glueshrinkorder#5=#3 \else \2{shrink order}\fi + \ifdim\glueshrink#5=#4pt \else \2{shrink}\fi} + \def\9{\relax} + \100pt10pt1ptminus0fil + \100pt10pt\mutoglue1muminus0fil + \100pt10pt\mutoglue\gluetomu1ptminus0fil + \100pt10pt\skip5 + \muskip5=\gluetomu\skip5 + \100pt10pt\mutoglue\muskip5 + \100pt10pt\glueexpr\mutoglue\muexpr\gluetomu\skip5\9\9 + \100pt00pt\glueexpr\skip5+0pt\9 + \120pt30pt1ptplus0fillminus0filll + \120pt30pt\mutoglue1muplus0fillminus0filll + \120pt30pt\mutoglue\gluetomu1ptplus0fillminus0filll + \120pt30pt\skip6 + \muskip6=\gluetomu\skip6 + \120pt30pt\mutoglue\muskip6 + \120pt30pt\mutoglue\muexpr\gluetomu\glueexpr\skip6\9\9 + \100pt00pt\glueexpr\skip6+0pt\9 + \10-2pt1-3pt\skip1 + \10-2pt1-3pt\mutoglue\muskip1 + \125pt36pt\skip2 + \125pt36pt\mutoglue\muskip2 +\endgroup + +% +% -- Check sparse arrays +\typeout{Checking sparse arrays:} +\begingroup + \def\2#1{#1\1=-1#1\1=65536#1\1=0#1\1=65535\typeout{\meaning\1=\the\1.}} + \2\countdef % Bad register code (-1) ...and (65536). + \2\dimendef % Bad register code (-1) ...and (65536). + \2\skipdef % Bad register code (-1) ...and (65536). + \2\muskipdef % Bad register code (-1) ...and (65536). + \2\toksdef % Bad register code (-1) ...and (65536). + \tracingrestores=1 + \count20=5 + \count2000=5 + \dimen21=5pt + \dimen2100=5pt + \skip22=5pt\relax \muskip2200=5mu\relax + \dimendef\8=256\relax \let\9=\8 \let\8=\relax \show\9 +\endgroup +\begingroup + \def\4#1#2#3#4{{\typeout{testing #1 registers ...}% + \5\2{#1}\5\3{#1def}% define, e.g., \count and \countdef + \newlinechar=`^^J \tracingrestores=1 {\tracingassigns=1 + \22000=#2} \22001=#3 \3\1=2002 \1=#4 + \typeout{\6\22000=\the\22000,^^J \6\22001=\the\22001,^^J + \6\22002=\the\22002,^^J \7\1=\the\1.}% + \expandafter\unless\expandafter\ifx\2\toks +% more tests for \count, \dimen, \skip, and \muskip + \advance\22000by#3 \advance\1by#3 \8 + \multiply\22000by10 \multiply\1by10 \8 + \divide\22000by5 \divide\1by5 \8 + \else +% more tests for \toks + \begingroup + \tracingassigns=1 + \toks20=#2 \toks21=#3 \toks2100=#4 + \1=\toks20 \1=\toks21 + \toks2200=\toks20 \toks2200=\toks21 + \1=\toks2000 \1=\toks2001 + \toks2200=\toks2000 \toks2200=\toks2001 + \toks30=\1 \toks30=\toks2000 \toks30=\toks2001 + \toks3000=\1 \toks3000=\toks2000 \toks3000=\toks2001 + \endgroup + \fi + \tracingassigns=1 \global\22002=#3 \1=#4 \global\1=#2 + }} + \def\5#1#2{\edef#1{\csname#2\endcsname}} + \def\6{\expandafter\string} + \def\7{\expandafter\meaning} + \def\8{\typeout{\6\22000=\the\22000,^^J \6\22002=\the\22002,^^J + \7\1=\the\1.}} + \4{count}{0}{5}{7} % test \count, \countdef + \4{dimen}{0pt}{2.5pt}{3.5pt} % test \dimen, \dimendef + \4{skip}{0pt}{2.5ptplus1fil}{3.5ptminus1fill} % test \skip, \skipdef + \4{muskip}{0mu}{2.5muplus1fil}{3.5muminus1fill} % test \muskip, \muskipdef + \4{toks}{{}}{{a b c}}{{d e f}} % test \toks and \toksdef +\endgroup +\begingroup \typeout{testing box registers ...} + \def\2#1{#1\1=-1#1\1=32768#1\1=0#1\1=32767\typeout{\meaning\1=\the\1.}} + \2\mathchardef % Bad mathchar (-1) ...and (32768). + \def\2#1{#1\1=-1#1\1=65536#1\1=0#1\1=65535\typeout{\meaning\1=\the\1.}} + \setbox-1=\copy65536 % Bad register code (-1) ...and (65536). + \global\setbox65536=\copy-1 % Bad register code (65536) ...and (-1). + \wd65536=\ht-1 % Bad register code (65536) ...and (-1). + \showbox-1 % Bad register code (-1). + \def\2#1{\typeout{\string\box#1=% + \ifhbox#1 \ifvbox#1 \else\ifvoid#1 \else\string\hbox\fi\fi\fi + \ifvbox#1 \ifhbox#1 \else\ifvoid#1 \else\string\vbox\fi\fi\fi + \ifvoid#1 void\else + \ifdim\ht#1 =0pt \else,ht=\the\ht#1 \fi + \ifdim\dp#1 =0pt \else,dp=\the\dp#1 \fi + \ifdim\wd#1 =0pt \else,wd=\the\wd#1 \fi + \fi.}} + \def\1#1{\2{3210#1}} + \tracingrestores=1 + \setbox32101=\hbox to 3pt{% + \global\setbox32102=\vbox to 5pt{% + \setbox32103=\vtop to 7pt{% + \showgroups + }% + }% + } + \showbox32100 + \showbox32101 + \11\12\13 + \setbox32103=\copy32101 \11\13 + \setbox32104=\box32102 \12\14 + \ht32101=2pt \11 + \ht32102=4pt \12 + \dp32103=6pt \13 + \wd32104=8pt \14 + \setbox32105=\hbox{\vbox to1pt{}\hskip5pt} \15 + \setbox32106=\hbox{% + \unhcopy32105 \15% + \unhbox32105 \15% + \unhcopy32105 \unhbox32105 } \15 \16 + \setbox32105=\vbox{\hbox to1pt{}\vskip5pt} \15 + \setbox32106=\vbox{% + \unvcopy32105 \15% + \unvbox32105 \15% + \unvcopy32105 \unvbox32105 } \15 \16 + \setbox32105=\vbox{\vbox to10pt{}\penalty0\vbox to20pt{}} \15 + \setbox32106=\vsplit32105 to 10pt \16 \15 +\endgroup + +% +% -- Check \lastlinefit +\typeout{Checking \string\lastlinefit:} +\begingroup + \def\1{\setbox0=\vbox{\noindent\2\2\2\2\3\2}\showbox0 + \setbox0=\vbox{\unvbox0 \setbox0=\lastbox \showbox0 }} + \def\2{\hbox to30pt{}\hskip 5pt plus 20pt minus 4pt } + \def\3{} + \tracingparagraphs=1 \showboxdepth=1 + \hbadness=100 \pretolerance=9000 + \parfillskip=0pt plus 1fill \relax + \hsize=96pt + \lastlinefit=-1 \1 + \lastlinefit=500 \1 + \lastlinefit=1001 \1 + \hsize=98pt + \begingroup + \rightskip=0pt plus 1fill \relax + \lastlinefit=1000 \1 + \leftskip=0pt plus -1fill \relax + \lastlinefit=500 \1 + \endgroup + \lastlinefit=1000 \1 + \hsize=100pt + \lastlinefit=0 \1 + \lastlinefit=500 \1 + \lastlinefit=1000 \1 + \hsize=110pt + \begingroup + \let\3=\hfil + \lastlinefit=1000 \1 + \endgroup + \lastlinefit=500 \1 + \lastlinefit=1000 \1 + \hsize=120pt + \lastlinefit=0 \1 + \lastlinefit=500 \1 + \lastlinefit=1000 \1 +\endgroup + +% +% -- Check expansion of V 2 \protected macros +\typeout{Checking expansion of V 2 \string\protected\space macros:} +\begingroup + \protected\def\1{\omit} \def\2{\omit} \def\3{relax} + \setbox0=\vbox{\halign{&\typeout{# (l.\number\inputlineno)}\cr + \1& \1\cr + \2& \2\cr + \3& \3\cr}} +\endgroup + +% +% -- Check hyphenation and \savinghyphcodes +\typeout{Checking hyphenation and \string\savinghyphcodes:} +\begingroup + \def\2#1#2 {\language=#1 #2 } + \def\1#1 {\noindent\trip\ \20#1 \21#1 \22#1 \23#1 \24#1 \par} + \parfillskip=0pt \hbadness=0 \showboxdepth=0 + \hsize=16383.99999pt \pretolerance=-1 \tolerance=-1 + \setbox0=\vbox{ + \lccode`A=`a \lccode`B=`b + \language=0 \hyphenation{qq-App qqB-pp} + \language=1 \hyphenation{qq-App qqB-pp} + \language=2 \hyphenation{qq-A-pp qqB-pp} + \language=3 \hyphenation{qq-App qq-B-pp} + \1ppAqq \1upAqq \1ppBqq \1upBqq + \lccode`A=`r \lccode`B=`b + \1ppAqq \1upAqq \1ppBqq \1upBqq + \lccode`A=`a \lccode`B=`r + \1ppAqq \1upAqq \1ppBqq \1upBqq + } + \setbox0=\vbox{\language=3 \1qqapp \1qqbpp \1qqrpp } +\endgroup + +% +% -- Check \savingvdiscards, \pagediscards, and \splitdiscards +\typeout{Checking \string\savingvdiscards, \string\pagediscards, and + \string\splitdiscards:} +\begingroup + \setbox27=\vbox{\noindent$\splitdiscards\noindent$\pagediscards} + \showbox27 + \setbox 27 = \vbox { + \vbox to 20 pt {} + \prevdepth = -10000 pt + \openout 0 = abc + \penalty 0 + \write 1 {write 1} + \vskip 10 pt plus 1 pt minus 1 pt + \write 2 {write 2} + \penalty 0 + \closeout 3 + \kern 10 pt + \vbox to 20 pt {} + \vfil + } + \def\1 #1 #2 {% + \savingvdiscards = #1 + \setbox 28 = \copy 27 + { + \setbox 0 = \vbox { + \vsplit 28 to #2 pt + \prevdepth = -10000 pt + \splitdiscards + \box 28 + } + \showbox 0 + } + } + \1 -1 20 \1 0 30 \1 1 20 \1 2 30 + \output = {% + \setbox 0 = \vbox { \pagediscards } + \showbox 0 + \showbox 255 + \setbox 0 = \box 255 + \global \deadcycles = 0 + } + \def\1{{\setbox 0 = \vbox { \pagediscards \showlists }}} + \savingvdiscards = 0 \vfil \kern 20 pt \1 \penalty -1 \1 + \savingvdiscards = 1 \vfill \kern 2 pt \1 \penalty 10 \1 + \kern 5 pt \write 1 {} \penalty 0 + { \savingvdiscards = 0 + \kern 6 pt \write 2 {} \penalty 1 + } + \kern 7 pt \write 3 {} \hbox {} \penalty -10000 + \1 +\endgroup + +% +% -- Check \interlinepenalties, \clubpenalties, \widowpenalties, +% and \displaywidowpenalties +\typeout{Checking \string\interlinepenalties, \string\clubpenalties, + \string\widowpenalties, and \string\displaywidowpenalties:} +\begingroup + \begingroup + \def\2#1{% + \typeout{\string#1-1=\the#1-1}% + \typeout{\string#10=\the#10}% + \typeout{\string#15=\the#15}% + \typeout{\string#1\string#10=\the#1#10}} + \def\1{% + \2\interlinepenalties + \2\clubpenalties + \2\widowpenalties + \2\displaywidowpenalties} + \def\5#1#2{\number#1#2 + \ifnum#2<#10 \space\expandafter\5\expandafter#1\expandafter + {\number\numexpr#2+1\expandafter}\fi} + \def\4#1{\typeout{\string#1=\5#1{0}}} + \def\3{% + \4\interlinepenalties + \4\clubpenalties + \4\widowpenalties + \4\displaywidowpenalties} + \tracingassigns=1 \tracingrestores=1 + \3 \1 + \interlinepenalties=3 101 102 103 + \clubpenalties=1 1 \clubpenalties=4 201 202 203 204 + \widowpenalties=5 301 302 303 304 305 + \displaywidowpenalties=6 401 402 403 404 405 406 + \3 \1 + \setbox0=\vbox{} + \endgroup + \parfillskip=0pt \interlinepenalty=7 \clubpenalty=500 \widowpenalty=300 + \displaywidowpenalty=310 \rightskip=0ptplus1fil \hsize=20pt + \def\3#1 {\setbox0=\lastbox \unskip \count0=\lastpenalty \unpenalty + \ifnum\count0=#1 \else \typeout{Wrong penalty \number\count0 + \space should be #1 (l.\number\inputlineno)}\fi} + \def\2{\vrule height1ptwidth19pt\hskip5pt } + \def\1#1#2 #3 #4 #5 #6 #7 {\setbox0=\vbox{#1\noindent\2\2\2\2$$ + $$\2\2\2\2\par\3#7 \3#6 \3#5 \30 \30 \30 \30 \3#4 \3#3 \3#2 \30 }} + + \1{\interlinepenalties=8 8 7 6 5 4 3 2 1 }508 7 316 501 1 301 + \1{\clubpenalties=2 200 100 }207 107 417 207 107 407 + \1{\widowpenalties=2 2000 1000 \displaywidowpenalties=3 2200 1100 0 }% + 507 1107 2207 1507 1007 2007 +\endgroup + +% +\showboxbreadth=10\showboxdepth=10 +\tracingonline=1\tracingoutput=1 +\end +\error{e-VirTeX: can't happen in e-trip test!} +%% End of file `etrip.tex'. diff --git a/Build/source/texk/web2c/eptexdir/eptrip/texmf.cnf b/Build/source/texk/web2c/eptexdir/eptrip/texmf.cnf new file mode 100644 index 00000000000..e7241a532b3 --- /dev/null +++ b/Build/source/texk/web2c/eptexdir/eptrip/texmf.cnf @@ -0,0 +1,40 @@ +% eptexdir/eptrip/texmf.cnf -- configuration for the e-ptrip test. + +% These values apply to all the programs, and they are necessary for any +% kind of reasonable diff. +error_line = 64 +half_error_line = 32 +max_print_line = 72 + +% e-pTeX. +main_memory = 3999 % can't change mem_bot, it stays 0 +max_strings = 3300 +pool_size = 36000 + +string_vacancies = 8000 + +% TeX end e-TeX. +font_mem_size = 20000 +font_max = 75 +stack_size = 200 +nest_size = 40 +buf_size = 500 +save_size = 600 +dvi_buf_size = 800 +% Although hyph_size is settable, it can't be +# Copyright (C) 2010, 2011 Peter Breitenlohner # You may freely use, modify and/or distribute this file. testdir=$srcdir/triptrap +ptestdir=$srcdir/ptexdir/ptrip -TEXMFCNF=$testdir; export TEXMFCNF +TEXMFCNF=$ptestdir; export TEXMFCNF dvitype_args="-output-level=2 -dpi=72.27 -page-start='*.*.*.*.*.*.*.*.*.*'" echo ">>> Running TRIP test for pTeX." >&2 -echo ">>> See $srcdir/ptexdir/ptrip.diffs for example of acceptable diffs." >&2 +echo ">>> See $ptestdir/ptrip.diffs for example of acceptable diffs." >&2 rm -f trip.tfm trip.pl trip.tex trip.fmt trip.dvi \ ptripin.fot ptripin.log ptrip.fot ptrip.log ptrip.typ \ diff --git a/Build/source/texk/web2c/ptexdir/ptrip/ptrip.diffs b/Build/source/texk/web2c/ptexdir/ptrip/ptrip.diffs new file mode 100644 index 00000000000..9dc6343c0fa Binary files /dev/null and b/Build/source/texk/web2c/ptexdir/ptrip/ptrip.diffs differ diff --git a/Build/source/texk/web2c/ptexdir/ptrip/texmf.cnf b/Build/source/texk/web2c/ptexdir/ptrip/texmf.cnf new file mode 100644 index 00000000000..79e15b44a37 --- /dev/null +++ b/Build/source/texk/web2c/ptexdir/ptrip/texmf.cnf @@ -0,0 +1,41 @@ +% ptexdir/ptrip/texmf.cnf -- configuration for the ptrip test. + +% These values apply to all the programs, and they are necessary for any +% kind of reasonable diff. +error_line = 64 +half_error_line = 32 +max_print_line = 72 + +% pTeX. +mem_bot = 1 +main_memory = 3500 +max_strings = 3000 +pool_size = 40000 + +string_vacancies = 8000 + +font_mem_size = 20000 +font_max = 75 +stack_size = 200 +nest_size = 40 +buf_size = 500 +save_size = 600 +dvi_buf_size = 800 +% Although hyph_size is settable, it can't be