14

The following code produces an error. If the mathtools package is removed, it works. Why?


\documentclass{report}

\usepackage{mathtools}
\usepackage{etoolbox}

\newbool{shorttoc}

\makeatletter
\patchcmd{\@startshorttoc}{\bgroup}{\bgroup\booltrue{shorttoc}}{}{}
\makeatother

\begin{document}

\tableofcontents

\addtocontents{toc}{\protect\ifbool{shorttoc}{\setcounter{tocdepth}{0}}{}}

\chapter{Test Appendix}

\end{document}

This question is related to an earlier question of mine.

lpdbw
  • 8,330

1 Answers1

18

mathtools loads the calc package, which change the \setcounter command. You now have to protect it too:

\addtocontents{toc}{\protect\ifbool{shorttoc}{\protect\setcounter{tocdepth}{0}}{}}
Ulrike Fischer
  • 327,261
  • For reference I add the following link: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=protect – lpdbw Jul 28 '12 at 15:01