\spacefactor complaints
! You can't use `\spacefactor' in vertical mode.
\@->\spacefactor
\@m
or
! You can't use `\spacefactor' in math mode.
\@->\spacefactor
\@m
or simply
bite the LaTeX programmer who uses an internal command without taking “precautions”. An internal-style command such as! Improper \spacefactor. ...
\@foo
has been defined or used in a private macro, and it is interpreted as
\@, followed by the ‘text’ foo. (\@ is used, for
real, to set up end-of-sentence space in some circumstances; it uses
\spacefactor to do that.)
The problem is discussed in detail in
“@ in macro names”,
together with solutions.
This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=atvert