The following M(n)WE points out that fleqn
(and leqno
as well) option, passed to the class thanks to \PassOptionsToClass
, is taken in account except if kpfonts
package is loaded (no problem if the option is passed thanks to \@classoptionslist
or as \documentclass
option):
% \makeatletter
% \def\@classoptionslist{fleqn}
% \makeatother
\PassOptionsToClass{fleqn}{article}%
\documentclass%[fleqn]
{article}
% \usepackage{kpfonts}
%
\begin{document}
Foo
\[
F
\]
\end{document}
Interestingly, if kpfonts
is loaded with noamsmath
option, no trouble (but then kpfonts
's \widering
command cannot be used).
Do you see what's going on?