This is a bug in the package shdoc
. It uses
\ifthenelse{\f@size<6}{%
This is an integer comparison but \f@size
isn't an integer always. You get the same error with the standard classes, if you use option 11pt
:
\documentclass[11pt]{report}
\usepackage{shdoc}
\begin{document}
\begin{sh}
\begin{shbox}
\shline{}{Test}
\end{shbox}
\end{sh}
\end{document}
There are other comparisons like this. And also there are comparisons like
\ifnum\value{shlinenumber}<10%
which are at least dangerous. Here the scanning of number 10 should be terminated, e.g. using \relax
.
There are also some missing %
after {
and some not needed %
after macros at line ends I do not like. But maybe they aren't problems. I even found an empty line in \shread
. But I'm not sure whether or not this is an intended paragraph or not.
You should report the bugs.
shdoc
from 2015 on my machine, which does some cray stuff, i.e. using its own commands before they are defiend. Something like that should not happen.