There is a known conflict between the memoir class and the hyperref package. hyperref cannot process Table of Contents headings that include the \MakeTextUppercase macro.
The memoir manual (texdoc memoir) provides a bit of code that is supposed to fix the problem, but I can't get it to work.
Am I using the manual's solution incorrectly, or is another solution required?
\documentclass{memoir}
\renewcommand*{\cftpartfont}{\MakeTextUppercase}
% From Memoir manual p. 158
\makeatletter
\settocpreprocessor{part}{%
\let\tempf@rtoc\f@rtoc%
\def\f@rtoc{%
\texorpdfstring{\MakeTextUppercase{\tempf@rtoc}}{\tempf@rtoc}}%
}
\makeatother
\usepackage{hyperref}
\begin{document}
\tableofcontents*
\part{A Whale}
\chapter{A Tale}
\section{A Sail}
\subsection{A Beachball}
\part{A Poodle}
\chapter{A Noodle}
\section{A Doodle}
\end{document}
Compiling this MWE I get the following error:
! Argument of \contentsline has an extra }.
<inserted text>
\par
l.2 \contentsline
{chapter}{\chapternumberline {1}A Tale}{5}
Other solutions have been proposed:
- Typeset cftchapfont as uppercase
- Error when trying to use \MakeTextUppercase to customize the table of contents
But ideally the solution in the class manual would be the correct one.

\renewcommand*{\cftpartfont}{\MakeTextUppercase}and it compiles fine. – karlkoeller Dec 22 '14 at 20:00memoir's manual, aren't you? – karlkoeller Dec 22 '14 at 20:06\cftpartfontdoesn't work... – karlkoeller Dec 22 '14 at 20:14\settocpreprocessorcommand instead of the\cftpartfontcommand. If you write that as an answer I will gladly accept it. – musarithmia Dec 22 '14 at 20:17