[latex3-commits] [git/LaTeX3-latex3-latex2e] gh297: fix for #297 (14e74c59)
Frank Mittelbach
frank.mittelbach at latex-project.org
Mon Apr 6 15:13:51 CEST 2020
Repository : https://github.com/latex3/latex2e
On branch : gh297
Link : https://github.com/latex3/latex2e/commit/14e74c59c9067edc8896761fc284df9af6db52d1
>---------------------------------------------------------------
commit 14e74c59c9067edc8896761fc284df9af6db52d1
Author: Frank Mittelbach <frank.mittelbach at latex-project.org>
Date: Mon Apr 6 15:13:51 2020 +0200
fix for #297
>---------------------------------------------------------------
14e74c59c9067edc8896761fc284df9af6db52d1
base/doc/ltnews32.tex | 23 ++-
.../{array-2016-10-06.sty => array-2020-02-10.sty} | 133 +++++++++------
required/tools/array.dtx | 23 ++-
required/tools/changes.txt | 11 +-
.../testfiles/github-0297-rollback.luatex.tlg | 170 +++++++++++++++++++
required/tools/testfiles/github-0297-rollback.lvt | 29 ++++
required/tools/testfiles/github-0297-rollback.tlg | 165 +++++++++++++++++++
required/tools/testfiles/github-0297.luatex.tlg | 182 +++++++++++++++++++++
required/tools/testfiles/github-0297.lvt | 29 ++++
required/tools/testfiles/github-0297.tlg | 177 ++++++++++++++++++++
required/tools/testfiles/tub-38-02-fmi.tlg | 4 +-
11 files changed, 883 insertions(+), 63 deletions(-)
diff --git a/base/doc/ltnews32.tex b/base/doc/ltnews32.tex
index e09e3ea7..f90f6782 100644
--- a/base/doc/ltnews32.tex
+++ b/base/doc/ltnews32.tex
@@ -209,7 +209,7 @@ In some circumstances the use of \cs{linethickness} introduced a
spurious space that shifted objects in a \texttt{picture} environments
to the right. This has been corrected.
%
-\githubissue{270}
+\githubissue{274}
\subsection{Support for uncommon font series defaults}
@@ -291,7 +291,7 @@ to the log file, because of a typo in the check. This has been corrected.
\section{Changes to packages in the \pkg{tools} category}
-\subsection{Support stretchable glue in \texttt{w}-columns}
+\subsection{\pkg{array}: Support stretchable glue in \texttt{w}-columns}
If stretchable glue, e.g., \cs{dotfill}, is used in \env{tabular}
columns made with the \pkg{array} package, it stretches as it would in
@@ -303,6 +303,25 @@ types in this respect.
%
\githubissue{270}
+\subsection{\pkg{array}: Use math mode for \texttt{w} and
+ \texttt{W}-cells in \env{array}}
+
+The \texttt{w} and \texttt{W}-columns are LR-columns very similar to
+\texttt{l}, \texttt{c} and \texttt{r}. It is therefore natural to
+expect their cell content to be typeset in math mode instead of text
+mode if they are used in an \env{array} environment. This has now
+been adjusted. Note that this is a breaking change in version v2.5!
+If you have used \texttt{w} or \texttt{W}-columns in older documents
+either add \texttt{\detokenize{>{$}...<{$}}} for such columns or
+remove the \texttt{\$} signs in the cells. Alternatively, you can roll
+back to the old version by loading \pkg{array} with
+\begin{verbatim}
+\usepackage{array}[=v2.4]
+\end{verbatim}
+in such documents.
+%
+\githubissue{297}
+
\section{Changes to packages in the \pkg{amsmath} category}
diff --git a/required/tools/array-2016-10-06.sty b/required/tools/array-2020-02-10.sty
similarity index 78%
copy from required/tools/array-2016-10-06.sty
copy to required/tools/array-2020-02-10.sty
index 10fd5e8d..9fddc0d4 100644
--- a/required/tools/array-2016-10-06.sty
+++ b/required/tools/array-2020-02-10.sty
@@ -1,7 +1,19 @@
%%
-%% This is an old release of `array.sty',
+%% This is file `array.sty',
+%% generated with the docstrip utility.
%%
-%% Copyright 1993-2016
+%% The original source files were:
+%%
+%% array.dtx (with options: `package,ncols')
+%%
+%% This is a generated file.
+%%
+%% The source is maintained by the LaTeX Project team and bug
+%% reports for it can be opened at https://latex-project.org/bugs/
+%% (but please observe conditions on bug reports sent to that address!)
+%%
+%%
+%% Copyright (C) 1993-2020
%% The LaTeX3 Project and any individual authors listed elsewhere
%% in this file.
%%
@@ -12,16 +24,28 @@
%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
%% The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
+%% https://www.latex-project.org/lppl.txt
%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
%%
+%% This file may only be distributed together with a copy of the LaTeX
+%% `Tools Bundle'. You may however distribute the LaTeX `Tools Bundle'
+%% without such generated files.
+%%
+%% The list of all files belonging to the LaTeX `Tools Bundle' is
+%% given in the file `manifest.txt'.
%%
%% Package `array' to use with LaTeX 2e
%% Copyright (C) 1989-1998 Frank Mittelbach, all rights reserved.
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
+\providecommand\DeclareRelease[3]{}
+\providecommand\DeclareCurrentRelease[2]{}
+
+\DeclareRelease{}{2016-10-06}{array-2016-10-06.sty}
+\DeclareCurrentRelease{}{2019-10-01}
+
\ProvidesPackage{array}
- [2016/10/06 v2.4d Tabular extension package (FMi)]
+ [2020/02/10 v2.4m Tabular extension package (FMi)]
%%
\def\@addtopreamble#1{\xdef\@preamble{\@preamble #1}}
@@ -71,29 +95,6 @@
\the at toks \the \count@ \relax}
\newdimen\col at sep
\def\@acol{\@addtopreamble{\hskip\col at sep}}
-\def\@mkpream#1{\gdef\@preamble{}\@lastchclass 4 \@firstamptrue
- \let\@sharp\relax \let\@startpbox\relax \let\@endpbox\relax
- \@xexpast #1*0x\@@
- \count@\m at ne
- \let\the at toks\relax
- \prepnext at tok
- \expandafter \@tfor \expandafter \@nextchar
- \expandafter :\expandafter =\@tempa \do
- {\@testpach
- \ifcase \@chclass \@classz \or \@classi \or \@classii
- \or \save at decl \or \or \@classv \or \@classvi
- \or \@classvii \or \@classviii \or \@classix
- \or \@classx \fi
- \@lastchclass\@chclass}%
- \ifcase\@lastchclass
- \@acol \or
- \or
- \@acol \or
- \@preamerr \thr@@ \or
- \@preamerr \tw@ \@addtopreamble\@sharp \or
- \or
- \else \@preamerr \@ne \fi
- \def\the at toks{\the\toks}}
\def\@classx{%
\ifcase \@lastchclass
\@acolampacol \or
@@ -108,21 +109,33 @@
\prepnext at tok
\@addtopreamble{\ifcase \@chnum
\hfil
+ \hskip1sp%
\d at llarbegin
\insert at column
- \d at llarend \hfil \or
- \hskip1sp\d at llarbegin \insert at column \d at llarend \hfil \or
- \hfil\hskip1sp\d at llarbegin \insert at column \d at llarend \or
- $\vcenter
- \@startpbox{\@nextchar}\insert at column \@endpbox $\or
- \vtop \@startpbox{\@nextchar}\insert at column \@endpbox \or
- \vbox \@startpbox{\@nextchar}\insert at column \@endpbox
+ \d at llarend \do at row@strut \hfil \or
+ \hskip1sp\d at llarbegin \insert at column \d at llarend \do at row@strut \hfil \or
+ \hfil\hskip1sp\d at llarbegin \insert at column \d at llarend \do at row@strut \or
+ \setbox\ar at mcellbox\vbox
+ \@startpbox{\@nextchar}\insert at column \@endpbox
+ \ar at align@mcell
+ \do at row@strut \or
+ \vtop \@startpbox{\@nextchar}\insert at column \@endpbox\do at row@strut \or
+ \vbox \@startpbox{\@nextchar}\insert at column \@endpbox\do at row@strut
\fi}\prepnext at tok}
-\def\@classix{\ifnum \@lastchclass = \thr@@
- \@preamerr \thr@@ \fi
- \@classx}
-\def\@classviii{\ifnum \@lastchclass >\z@
- \@preamerr 4\@chclass 6 \@classvi \fi}
+
+\newbox\ar at mcellbox
+\def\ar at align@mcell{%
+ \ifdim \ht\ar at mcellbox > \ht\@arstrutbox
+ \begingroup
+ \dimen@\ht\ar at mcellbox
+ \advance\dimen at -\ht\@arstrutbox
+ \advance\dimen@\baselineskip
+ \lower.5\dimen@\box\ar at mcellbox
+ \endgroup
+ \else % assume one line and align at baseline
+ \box\ar at mcellbox
+ \fi}
+
\def\@arrayrule{\@addtopreamble \vline}
\def\@classvii{\ifnum \@lastchclass = \thr@@
\@preamerr \thr@@ \fi}
@@ -134,19 +147,17 @@
\fi}
\def\@classii{\advance \count@ \m at ne
\save at decl\prepnext at tok}
-\def\@classv{\save at decl
- \@addtopreamble{\d at llarbegin\the at toks\the\count@\relax\d at llarend}%
- \prepnext at tok}
\def\@classi{\@classvi
\ifcase \@chnum \@arrayrule \or
\@classv \fi}
\def\@startpbox#1{\bgroup
+ \color at begingroup
\setlength\hsize{#1}\@arrayparboxrestore
\everypar{%
\vrule \@height \ht\@arstrutbox \@width \z@
\everypar{}}%
}
-\def\@endpbox{\@finalstrut\@arstrutbox \egroup\hfil}
+\def\@endpbox{\@finalstrut\@arstrutbox \color at endgroup \egroup\hfil}
\def\@array[#1]#2{%
\@tempdima \ht \strutbox
\advance \@tempdima by\extrarowheight
@@ -179,9 +190,13 @@
\def\@argarraycr[#1]{\ifnum0=`{}\fi\ifdim #1>\z@
\expandafter\@xargarraycr\else
\expandafter\@yargarraycr\fi{#1}}
-\def\@xargarraycr#1{\unskip
- \@tempdima #1\advance\@tempdima \dp\@arstrutbox
- \vrule \@depth\@tempdima \@width\z@ \cr}
+\def\@xargarraycr#1{\unskip\gdef\do at row@strut
+ {\@tempdima #1\advance\@tempdima \dp\@arstrutbox
+ \vrule \@depth\@tempdima \@width\z@\global\let\do at row@strut\relax}%
+ % \begin{macrocode}
+ \ifnum\@multicnt >\z@ \do at row@strut \fi
+ \cr}
+\let\do at row@strut\relax
\def\@yargarraycr#1{\cr\noalign{\vskip #1}}
\long\def\multicolumn#1#2#3{%
\multispan{#1}\begingroup
@@ -198,7 +213,6 @@
\def\array{\col at sep\arraycolsep
\def\d at llarbegin{$}\let\d at llarend\d at llarbegin\def\@halignto{}%
\@tabarray}
-\def\@tabarray{\@ifnextchar[{\@array}{\@array[c]}}
\def\tabular{\def\@halignto{}\@tabular}
\expandafter\def\csname tabular*\endcsname#1{%
\setlength\dimen@{#1}%
@@ -208,7 +222,6 @@
\hbox \bgroup $\col at sep\tabcolsep \let\d at llarbegin\begingroup
\let\d at llarend\endgroup
\@tabarray}
-\def\endarray{\crcr \egroup \egroup \gdef\@preamble{}}
\def\endtabular{\endarray $\egroup}
\expandafter\let\csname endtabular*\endcsname=\endtabular
\let\@ampacol=\relax \let\@expast=\relax
@@ -228,7 +241,9 @@
\def\newcolumntype#1{%
\edef\NC at char{\string#1}%
\@ifundefined{NC at find@\NC at char}%
- {\@tfor\next:=<>clrmbp@!|\do{\if\noexpand\next\NC at char
+ {\@tfor\next:=<>clrmbp@!|\do
+ {%
+ \if\expandafter\noexpand\next\NC at char
\PackageWarning{array}%
{Redefining primitive column \NC at char}\fi}%
\NC at list\expandafter{\the\NC at list\NC at do#1}}%
@@ -269,7 +284,11 @@
\def\save at decl{\toks \count@ = \expandafter\expandafter\expandafter
{\expandafter\@nextchar\the\toks\count@}}
\def\@mkpream#1{\gdef\@preamble{}\@lastchclass 4 \@firstamptrue
- \let\@sharp\relax \let\@startpbox\relax \let\@endpbox\relax
+ \let\@sharp\relax
+ \def\@startpbox##1{\unexpanded\expandafter{\expandafter
+ \@startpbox\expandafter{##1}}}\let\@endpbox\relax
+ \let\do at row@strut\relax
+ \let\ar at align@mcell\relax
\@temptokena{#1}\@tempswatrue
\@whilesw\if at tempswa\fi{\@tempswafalse\the\NC at list}%
\count@\m at ne
@@ -336,6 +355,20 @@
\vskip\doublerulesep
\fi
\ifnum0=`{\fi}}
+
+\newsavebox\ar at cellbox
+\newcolumntype{w}[2]{%
+ >{\begin{lrbox}\ar at cellbox}%
+ c%
+ <{\end{lrbox}%
+ \makebox[#2][#1]{\unhbox\ar at cellbox}}}
+
+\newcolumntype{W}[2]
+ {>{\begin{lrbox}\ar at cellbox}%
+ c%
+ <{\end{lrbox}%
+ \let\hss\hfil
+ \makebox[#2][#1]{\unhbox\ar at cellbox}}}
\endinput
%%
%% End of file `array.sty'.
diff --git a/required/tools/array.dtx b/required/tools/array.dtx
index aca43a53..de1d0ecf 100644
--- a/required/tools/array.dtx
+++ b/required/tools/array.dtx
@@ -29,10 +29,11 @@
%<+package>\providecommand\DeclareCurrentRelease[2]{}
%<+package>
%<+package>\DeclareRelease{}{2016-10-06}{array-2016-10-06.sty}
-%<+package>\DeclareCurrentRelease{}{2019-10-01}
+%<+package>\DeclareRelease{v2.4}{2020-02-10}{array-2020-02-10.sty}
+%<+package>\DeclareCurrentRelease{}{2020-10-01}
%<+package>
%<+package>\ProvidesPackage{array}
-%<+package> [2020/02/10 v2.4m Tabular extension package (FMi)]
+%<+package> [2020/10/01 v2.5a Tabular extension package (FMi)]
%
% \fi
%
@@ -3034,14 +3035,18 @@
% alignment which is either "l", "c", or "r" and the second is the
% nominal width of the column.
% \changes{v2.4f}{2017/11/07}{Column type added}
+% \changes{v2.5a}{2020/04/06}{Use \cs{d at llarbegin} and \cs{d at llarend} so
+% that cell is typeset in math mode inside \texttt{array} (gh/297)}
% \begin{macrocode}
\newcolumntype{w}[2]{%
% \end{macrocode}
% Before the cell content we start an "lrbox"-environment to
% collect the cell material into the previously allocated box
-% "\ar at cellbox".
+% "\ar at cellbox". We add \cs{d at llarbegin} (and later \cs{d at llarend})
+% so that the content is typeset in math mode if we are in an
+% \texttt{array} environment.
% \begin{macrocode}
- >{\begin{lrbox}\ar at cellbox}%
+ >{\begin{lrbox}\ar at cellbox\d at llarbegin}%
% \end{macrocode}
% Then comes a specifier for the cell content. We use "c", but
% that doesn't matter as in the end we will always put a box of a
@@ -3059,9 +3064,9 @@
% alignment within that width. We unbox the collected material so
% that any stretchable glue inside can interact with the alignment.
% \changes{v2.4m}{2020/02/10}{Unbox collected material so that
-% % stretchable glue inside can act (gh/270)}
+% stretchable glue inside can act (gh/270)}
% \begin{macrocode}
- <{\end{lrbox}%
+ <{\d at llarend \end{lrbox}%
\makebox[#2][#1]{\unhbox\ar at cellbox}}}
% \end{macrocode}
% \end{macro}
@@ -3072,11 +3077,13 @@
% The \texttt{W} is similar but in this case we want a warning if
% the cell content is too wide.
% \changes{v2.4f}{2017/11/07}{Column type added}
+% \changes{v2.5a}{2020/04/06}{Use \cs{d at llarbegin} and \cs{d at llarend} so
+% that cell is typeset in mathmode inside \texttt{array} (gh/297)}
% \begin{macrocode}
\newcolumntype{W}[2]
- {>{\begin{lrbox}\ar at cellbox}%
+ {>{\begin{lrbox}\ar at cellbox\d at llarbegin}%
c%
- <{\end{lrbox}%
+ <{\d at llarend\end{lrbox}%
\let\hss\hfil
\makebox[#2][#1]{\unhbox\ar at cellbox}}}
% \end{macrocode}
diff --git a/required/tools/changes.txt b/required/tools/changes.txt
index ca9ea3d9..b50b4d8e 100644
--- a/required/tools/changes.txt
+++ b/required/tools/changes.txt
@@ -5,11 +5,20 @@ completeness or accuracy and it contains some references to files that
are not part of the distribution.
=======================================================================
+2020-04-06 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
+
+ * array.dtx (subsection{Implementing column types w and W}):
+ Use \d at llarbegin and \d at llarendde so that cell is typeset by
+ default in math mode inside array; the use of >{$} ... <{$}
+ to make such a column text mode remains possible
+ (gh/297) --- this is a breaking change!
+
+
2020-02-10 Frank Mittelbach <Frank.Mittelbach at latex-project.org>
* array.dtx (subsection{Implementing column types w and W}):
Unbox collected material so that stretchable glue
- inside can act (gh/270#)
+ inside can act (gh/270)
#########################
# 2020-02-02 Release
diff --git a/required/tools/testfiles/github-0297-rollback.luatex.tlg b/required/tools/testfiles/github-0297-rollback.luatex.tlg
new file mode 100644
index 00000000..97323b4c
--- /dev/null
+++ b/required/tools/testfiles/github-0297-rollback.luatex.tlg
@@ -0,0 +1,170 @@
+This is a generated file for the LaTeX2e validation system.
+Don't change this file in any respect.
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <7> on input line ....
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <5> on input line ....
+Completed box being shipped out [1]
+\vbox(633.0+0.0)x407.0, direction TLT
+.\glue 16.0
+.\vbox(617.0+0.0)x345.0, shifted 62.0, direction TLT
+..\vbox(12.0+0.0)x345.0, glue set 12.0fil, direction TLT
+...\glue 0.0 plus 1.0fil
+...\hbox(0.0+0.0)x345.0, direction TLT
+..\glue 25.0
+..\glue(\lineskip) 0.0
+..\vbox(550.0+0.0)x345.0, glue set 479.44879fil, direction TLT
+...\write-{}
+...\glue(\topskip) 10.0
+...\hbox(0.0+0.0)x345.0, glue set 137.9979fil, direction TLT
+....\localpar
+.....\localinterlinepenalty=0
+.....\localbrokenpenalty=0
+.....\localleftbox=null
+.....\localrightbox=null
+....\hbox(0.0+0.0)x0.0, direction TLT
+....\hbox(0.0+0.0)x207.0021, glue set 103.50105fil, direction TLT
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+....\penalty 10000
+....\glue(\parfillskip) 0.0 plus 1.0fil
+....\glue(\rightskip) 0.0
+...\penalty 10000
+...\glue(\abovedisplayskip) 10.0 plus 2.0 minus 5.0
+...\glue(\lineskip) 1.0
+...\hbox(14.5+9.5)x77.7055, shifted 133.64725, direction TLT
+....\vbox(14.5+9.5)x77.7055, direction TLT
+.....\hbox(8.39996+3.60004)x77.7055, direction TLT
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+0.0)x28.45274, glue set 23.17494fil, direction TLT
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\OT1/cmr/m/n/10 x
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+1.94444)x28.45274, glue set 23.19115fil, direction TLT
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 y
+........\kern0.35878 (italic)
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+.....\glue(\lineskip) 0.0
+.....\hbox(8.39996+3.60004)x77.7055, direction TLT
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.94444+0.83333)x28.45274, glue set - 2.10289fil, direction TLT
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\OT1/cmr/m/n/10 a
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 b
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 c
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.83331+0.83333)x28.45274, glue set - 0.19499, direction TLT
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 X
+........\kern0.7847 (italic)
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OML/cmm/m/it/10 Y
+........\kern2.22223 (italic)
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayskip) 10.0 plus 2.0 minus 5.0
+...\penalty 10000
+...\glue(\abovedisplayshortskip) 0.0 plus 3.0
+...\glue(\lineskip) 1.0
+...\hbox(8.5+3.5)x77.7055, shifted 133.64725, direction TLT
+....\vbox(8.5+3.5)x77.7055, direction TLT
+.....\hbox(8.39996+3.60004)x77.7055, direction TLT
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set - 10.99158fil, direction TLT
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\OT1/cmr/m/n/10 1
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 2
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 3
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set 10.67491fil, direction TLT
+........\glue 0.0 plus 1.0fil
+........\OT1/cmr/m/n/10 4
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 5
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayshortskip) 6.0 plus 3.0 minus 3.0
+...\glue -3.5
+...\glue 0.0 plus 1.0fil
+...\glue 0.0
+...\glue 0.0 plus 0.0001fil
+..\glue(\baselineskip) 23.55556
+..\hbox(6.44444+0.0)x345.0, glue set 170.0fil, direction TLT
+...\glue 0.0 plus 1.0fil
+...\OT1/cmr/m/n/10 1
+...\glue 0.0 plus 1.0fil
+(github-0297-rollback.aux)
diff --git a/required/tools/testfiles/github-0297-rollback.lvt b/required/tools/testfiles/github-0297-rollback.lvt
new file mode 100644
index 00000000..a58cc35b
--- /dev/null
+++ b/required/tools/testfiles/github-0297-rollback.lvt
@@ -0,0 +1,29 @@
+% https://github.com/latex3/latex2e/issues/297
+
+\documentclass{article}
+
+\input{test2e}
+
+\usepackage{array}[=v2.4]
+
+\setlength\parindent{0pt}
+
+\showoutput
+
+\begin{document}
+
+\START
+
+\[
+\begin{array}{|wr{1cm}Wr{1cm}|}
+ x & $y$ \\
+a+b+c & $X+Y$
+\end{array}
+\]
+\[
+\begin{array}{|wr{1cm}Wr{1cm}|}
+$1+2+3$ & 4+5
+\end{array}
+\]
+
+\end{document}
diff --git a/required/tools/testfiles/github-0297-rollback.tlg b/required/tools/testfiles/github-0297-rollback.tlg
new file mode 100644
index 00000000..4da030a1
--- /dev/null
+++ b/required/tools/testfiles/github-0297-rollback.tlg
@@ -0,0 +1,165 @@
+This is a generated file for the LaTeX2e validation system.
+Don't change this file in any respect.
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <7> on input line ....
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <5> on input line ....
+Completed box being shipped out [1]
+\vbox(633.0+0.0)x407.0
+.\glue 16.0
+.\vbox(617.0+0.0)x345.0, shifted 62.0
+..\vbox(12.0+0.0)x345.0, glue set 12.0fil
+...\glue 0.0 plus 1.0fil
+...\hbox(0.0+0.0)x345.0
+..\glue 25.0
+..\glue(\lineskip) 0.0
+..\vbox(550.0+0.0)x345.0, glue set 479.44879fil
+...\write-{}
+...\glue(\topskip) 10.0
+...\hbox(0.0+0.0)x345.0, glue set 137.9979fil
+....\hbox(0.0+0.0)x0.0
+....\hbox(0.0+0.0)x207.0021, glue set 103.50105fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+....\penalty 10000
+....\glue(\parfillskip) 0.0 plus 1.0fil
+....\glue(\rightskip) 0.0
+...\penalty 10000
+...\glue(\abovedisplayskip) 10.0 plus 2.0 minus 5.0
+...\glue(\lineskip) 1.0
+...\hbox(14.5+9.5)x77.7055, shifted 133.64725, display
+....\vbox(14.5+9.5)x77.7055
+.....\hbox(8.39996+3.60004)x77.7055
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+0.0)x28.45274, glue set 23.17494fil
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\OT1/cmr/m/n/10 x
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+1.94444)x28.45274, glue set 23.19115fil
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 y
+........\kern0.35878
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+.....\glue(\lineskip) 0.0
+.....\hbox(8.39996+3.60004)x77.7055
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.94444+0.83333)x28.45274, glue set - 2.10289fil
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\OT1/cmr/m/n/10 a
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 b
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 c
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.83331+0.83333)x28.45274, glue set - 0.19499
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 X
+........\kern0.7847
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OML/cmm/m/it/10 Y
+........\kern2.22223
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayskip) 10.0 plus 2.0 minus 5.0
+...\penalty 10000
+...\glue(\abovedisplayshortskip) 0.0 plus 3.0
+...\glue(\lineskip) 1.0
+...\hbox(8.5+3.5)x77.7055, shifted 133.64725, display
+....\vbox(8.5+3.5)x77.7055
+.....\hbox(8.39996+3.60004)x77.7055
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set - 10.99158fil
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\OT1/cmr/m/n/10 1
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 2
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 3
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set 10.67491fil
+........\glue 0.0 plus 1.0fil
+........\OT1/cmr/m/n/10 4
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 5
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayshortskip) 6.0 plus 3.0 minus 3.0
+...\glue -3.5
+...\glue 0.0 plus 1.0fil
+...\glue 0.0
+...\glue 0.0 plus 0.0001fil
+..\glue(\baselineskip) 23.55556
+..\hbox(6.44444+0.0)x345.0, glue set 170.0fil
+...\glue 0.0 plus 1.0fil
+...\OT1/cmr/m/n/10 1
+...\glue 0.0 plus 1.0fil
+(github-0297-rollback.aux)
diff --git a/required/tools/testfiles/github-0297.luatex.tlg b/required/tools/testfiles/github-0297.luatex.tlg
new file mode 100644
index 00000000..26d232ac
--- /dev/null
+++ b/required/tools/testfiles/github-0297.luatex.tlg
@@ -0,0 +1,182 @@
+This is a generated file for the LaTeX2e validation system.
+Don't change this file in any respect.
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <7> on input line ....
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <5> on input line ....
+Completed box being shipped out [1]
+\vbox(633.0+0.0)x407.0, direction TLT
+.\glue 16.0
+.\vbox(617.0+0.0)x345.0, shifted 62.0, direction TLT
+..\vbox(12.0+0.0)x345.0, glue set 12.0fil, direction TLT
+...\glue 0.0 plus 1.0fil
+...\hbox(0.0+0.0)x345.0, direction TLT
+..\glue 25.0
+..\glue(\lineskip) 0.0
+..\vbox(550.0+0.0)x345.0, glue set 479.44879fil, direction TLT
+...\write-{}
+...\glue(\topskip) 10.0
+...\hbox(0.0+0.0)x345.0, glue set 137.9979fil, direction TLT
+....\localpar
+.....\localinterlinepenalty=0
+.....\localbrokenpenalty=0
+.....\localleftbox=null
+.....\localrightbox=null
+....\hbox(0.0+0.0)x0.0, direction TLT
+....\hbox(0.0+0.0)x207.0021, glue set 103.50105fil, direction TLT
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+....\penalty 10000
+....\glue(\parfillskip) 0.0 plus 1.0fil
+....\glue(\rightskip) 0.0
+...\penalty 10000
+...\glue(\abovedisplayskip) 10.0 plus 2.0 minus 5.0
+...\glue(\lineskip) 1.0
+...\hbox(14.5+9.5)x77.7055, shifted 133.64725, direction TLT
+....\vbox(14.5+9.5)x77.7055, direction TLT
+.....\hbox(8.39996+3.60004)x77.7055, direction TLT
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+0.0)x28.45274, glue set 23.17494fil, direction TLT
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\mathoff
+........\OT1/cmr/m/n/10 x
+........\mathon
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+1.94444)x28.45274, glue set 23.19115fil, direction TLT
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 y
+........\kern0.35878 (italic)
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+.....\glue(\lineskip) 0.0
+.....\hbox(8.39996+3.60004)x77.7055, direction TLT
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.94444+0.83333)x28.45274, glue set - 2.10289fil, direction TLT
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\mathoff
+........\OT1/cmr/m/n/10 a
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 b
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 c
+........\mathon
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.83331+0.83333)x28.45274, glue set - 0.19499, direction TLT
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 X
+........\kern0.7847 (italic)
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OML/cmm/m/it/10 Y
+........\kern2.22223 (italic)
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayskip) 10.0 plus 2.0 minus 5.0
+...\penalty 10000
+...\glue(\abovedisplayshortskip) 0.0 plus 3.0
+...\glue(\lineskip) 1.0
+...\hbox(8.5+3.5)x77.7055, shifted 133.64725, direction TLT
+....\vbox(8.5+3.5)x77.7055, direction TLT
+.....\hbox(8.39996+3.60004)x77.7055, direction TLT
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set - 10.99158fil, direction TLT
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\OT1/cmr/m/n/10 1
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 2
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 3
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275, direction TLT
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set 10.67491fil, direction TLT
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\mathoff
+........\OT1/cmr/m/n/10 4
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 5
+........\mathon
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayshortskip) 6.0 plus 3.0 minus 3.0
+...\glue -3.5
+...\glue 0.0 plus 1.0fil
+...\glue 0.0
+...\glue 0.0 plus 0.0001fil
+..\glue(\baselineskip) 23.55556
+..\hbox(6.44444+0.0)x345.0, glue set 170.0fil, direction TLT
+...\glue 0.0 plus 1.0fil
+...\OT1/cmr/m/n/10 1
+...\glue 0.0 plus 1.0fil
+(github-0297.aux)
diff --git a/required/tools/testfiles/github-0297.lvt b/required/tools/testfiles/github-0297.lvt
new file mode 100644
index 00000000..451695d7
--- /dev/null
+++ b/required/tools/testfiles/github-0297.lvt
@@ -0,0 +1,29 @@
+% https://github.com/latex3/latex2e/issues/297
+
+\documentclass{article}
+
+\input{test2e}
+
+\usepackage{array}
+
+\setlength\parindent{0pt}
+
+\showoutput
+
+\begin{document}
+
+\START
+
+\[
+\begin{array}{|>{$}wr{1cm}<{$}Wr{1cm}|}
+ x & y \\
+a+b+c & X+Y
+\end{array}
+\]
+\[
+\begin{array}{|wr{1cm}>{$}Wr{1cm}<{$}|}
+1+2+3 & 4+5
+\end{array}
+\]
+
+\end{document}
diff --git a/required/tools/testfiles/github-0297.tlg b/required/tools/testfiles/github-0297.tlg
new file mode 100644
index 00000000..42cf0c64
--- /dev/null
+++ b/required/tools/testfiles/github-0297.tlg
@@ -0,0 +1,177 @@
+This is a generated file for the LaTeX2e validation system.
+Don't change this file in any respect.
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <7> on input line ....
+LaTeX Font Info: External font `cmex10' loaded for size
+(Font) <5> on input line ....
+Completed box being shipped out [1]
+\vbox(633.0+0.0)x407.0
+.\glue 16.0
+.\vbox(617.0+0.0)x345.0, shifted 62.0
+..\vbox(12.0+0.0)x345.0, glue set 12.0fil
+...\glue 0.0 plus 1.0fil
+...\hbox(0.0+0.0)x345.0
+..\glue 25.0
+..\glue(\lineskip) 0.0
+..\vbox(550.0+0.0)x345.0, glue set 479.44879fil
+...\write-{}
+...\glue(\topskip) 10.0
+...\hbox(0.0+0.0)x345.0, glue set 137.9979fil
+....\hbox(0.0+0.0)x0.0
+....\hbox(0.0+0.0)x207.0021, glue set 103.50105fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+.....\glue 0.0 plus 1.0fil minus 1.0fil
+....\penalty 10000
+....\glue(\parfillskip) 0.0 plus 1.0fil
+....\glue(\rightskip) 0.0
+...\penalty 10000
+...\glue(\abovedisplayskip) 10.0 plus 2.0 minus 5.0
+...\glue(\lineskip) 1.0
+...\hbox(14.5+9.5)x77.7055, shifted 133.64725, display
+....\vbox(14.5+9.5)x77.7055
+.....\hbox(8.39996+3.60004)x77.7055
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+0.0)x28.45274, glue set 23.17494fil
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\mathoff
+........\OT1/cmr/m/n/10 x
+........\mathon
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(4.30554+1.94444)x28.45274, glue set 23.19115fil
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 y
+........\kern0.35878
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+.....\glue(\lineskip) 0.0
+.....\hbox(8.39996+3.60004)x77.7055
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.94444+0.83333)x28.45274, glue set - 2.10289fil
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\mathoff
+........\OT1/cmr/m/n/10 a
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 b
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 c
+........\mathon
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.83331+0.83333)x28.45274, glue set - 0.19499
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\OML/cmm/m/it/10 X
+........\kern0.7847
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OML/cmm/m/it/10 Y
+........\kern2.22223
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayskip) 10.0 plus 2.0 minus 5.0
+...\penalty 10000
+...\glue(\abovedisplayshortskip) 0.0 plus 3.0
+...\glue(\lineskip) 1.0
+...\hbox(8.5+3.5)x77.7055, shifted 133.64725, display
+....\vbox(8.5+3.5)x77.7055
+.....\hbox(8.39996+3.60004)x77.7055
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\rule(8.39996+3.60004)x0.0
+.......\rule(*+*)x0.4
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set - 10.99158fil
+........\glue 0.0 plus 1.0fil minus 1.0fil
+........\mathon
+........\OT1/cmr/m/n/10 1
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 2
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 +
+........\glue(\medmuskip) 2.22217 plus 1.11108 minus 2.22217
+........\OT1/cmr/m/n/10 3
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+......\glue(\tabskip) 0.0
+......\hbox(8.39996+3.60004)x38.85275
+.......\glue 5.0
+.......\glue 0.0 plus 1.0fil
+.......\glue 0.00002
+.......\mathon
+.......\hbox(6.44444+0.83333)x28.45274, glue set 10.67491fil
+........\glue 0.0 plus 1.0fil
+........\mathon
+........\mathoff
+........\OT1/cmr/m/n/10 4
+........\OT1/cmr/m/n/10 +
+........\OT1/cmr/m/n/10 5
+........\mathon
+........\mathoff
+.......\mathoff
+.......\glue 0.0 plus 1.0fil
+.......\glue 5.0
+.......\rule(*+*)x0.4
+......\glue(\tabskip) 0.0
+...\penalty 0
+...\glue(\belowdisplayshortskip) 6.0 plus 3.0 minus 3.0
+...\glue -3.5
+...\glue 0.0 plus 1.0fil
+...\glue 0.0
+...\glue 0.0 plus 0.0001fil
+..\glue(\baselineskip) 23.55556
+..\hbox(6.44444+0.0)x345.0, glue set 170.0fil
+...\glue 0.0 plus 1.0fil
+...\OT1/cmr/m/n/10 1
+...\glue 0.0 plus 1.0fil
+(github-0297.aux)
diff --git a/required/tools/testfiles/tub-38-02-fmi.tlg b/required/tools/testfiles/tub-38-02-fmi.tlg
index 9200f0cb..dfa01f7c 100644
--- a/required/tools/testfiles/tub-38-02-fmi.tlg
+++ b/required/tools/testfiles/tub-38-02-fmi.tlg
@@ -1,7 +1,7 @@
This is a generated file for the LaTeX2e validation system.
Don't change this file in any respect.
-Column w#1#2 -> >{\begin {lrbox}\ar at cellbox }c<{\end {lrbox}\makebox [#2][#1]{\unhbox \ar at cellbox }}
-Column W#1#2 -> >{\begin {lrbox}\ar at cellbox }c<{\end {lrbox}\let \hss \hfil \makebox [#2][#1]{\unhbox \ar at cellbox }}
+Column w#1#2 -> >{\begin {lrbox}\ar at cellbox \d at llarbegin }c<{\d at llarend \end {lrbox}\makebox [#2][#1]{\unhbox \ar at cellbox }}
+Column W#1#2 -> >{\begin {lrbox}\ar at cellbox \d at llarbegin }c<{\d at llarend \end {lrbox}\let \hss \hfil \makebox [#2][#1]{\unhbox \ar at cellbox }}
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <7> on input line ....
LaTeX Font Info: External font `cmex10' loaded for size
More information about the latex3-commits
mailing list.