# conflict between tikz (was: todonotes) - tabularx - array - arydshln

There is a conflict between the four packages tikz, tabularx, array and arydshln. The MWE below compiles, if I do not

• load tikz ( tikz.sty 2015/08/07 v3.0.1a (rcs-revision 1.151))
• (load todonotes (todonotes.sty 2018/11/22) calls tikz)
• use tabularx (usepackage and environment, tabularx.sty 2016/02/03 v2.11b)
• load array (array.sty 2018/11/13 v2.4j)
• load arydshln (arydshln.sty 2018/09/26 v1.74)

As @daleif noted, tikz called by todonotes is part of the problem.

Using all, I get:

! Extra }, or forgotten \endgroup. \@endpbox ...th \dp \@arstrutbox \fi \par \egroup \adl@colhtdp \box \adl@box... l.22 \end{tabularx}

\documentclass{article}

\usepackage{tikz}
% \usepackage{todonotes}
\usepackage{tabularx}
\usepackage{array}
\usepackage{arydshln}

\begin{document}
\begin{tabular}{l l l }
A & B & C
\end{tabular}

\begin{tabularx}{\textwidth}{l X X}
A & B & C
\end{tabularx}

\end{document}


How can I use all four packages without conflict?

• it is not todonotes as is, you get the same error if you replace it with tikz (todonotes is build on tikz). Dec 13, 2018 at 12:08

This is due to an internal change in array we may try to adjust so the error goes away but in the mean time if you change the package order it works again

\documentclass{article}

\usepackage{arydshln}
\usepackage{todonotes}
\usepackage{tabularx}
\usepackage{array}

\begin{document}
\begin{tabular}{l l l }
A & B & C
\end{tabular}

\begin{tabularx}{\textwidth}{l X X}
A & B & C
\end{tabularx}

\end{document}

• This works for my MWE, but not if I change the tabular argument to {l : l l } Dec 13, 2018 at 12:54
• @ebcontrol, oops I'll raise this with the team... (I'll post a temporary workaround here in a bit) Dec 13, 2018 at 13:08
• A Japanese LaTeX user also reported a similar issue: oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=2550 - here I answered a workaround to revert array.sty's \@startpbox (removing \color@begingroup). Should i contact the author of arydshln (Mr. Nakashima), or expect the LaTeX team will resolve it? Dec 18, 2018 at 3:58
• Of course this issue can be minimalized to \usepackage{color} + \usepackage{array} + \usepackage{arydshln}. (Note: arydshln-man.pdf says arydshln should be loaded after array.) Dec 18, 2018 at 9:07
• @davidcarlisle It seems that arydshln.sty modifies \@endpbox based on previous version of array.sty, but it does not modify \@startpbox. For this reason, the update of array.sty made two macros incosistent. Dec 18, 2018 at 9:12