But when posting the code I realized there shouldn't be any conflict betweenAs you've posted in you first post it isn'tAardbei wrote:Yes, I know that sometimes packages need to be loaded in a certain order, e.g. all things to do with internal links (the packages you mention). But in this case, the biblatex package seems unrelated to thebreqnpackage, so I thought it's strange that the warning pops up.biblatexdirectly but etoolbox (a package which provides useful programming tools and is used by various other packages besidesbiblatex, too).
The thing is that bothbreqnandetoolboxredefine the very fundamental LaTeX command\endand obviouslybreqndoes it in a way incompatible toetoolbox.
Code: Select all
% breqn's redefinition: \def\@tempa#1\endcsname#2\@nil{\def\latex@end##1{#2}} \expandafter\@tempa\end{#1}\@nil \def\end#1{\csname end#1\endcsname \latex@end{#1}}%Code: Select all
% etoolbox's redefinition: \newrobustcmd{\AtEndEnvironment}[1]{% \csgappto{@end@#1@hook}} \patchcmd\end {\csname end#1\endcsname} {\csuse{@end@#1@hook}% \csname end#1\endcsname} {} {\etb@warning{% Patching '\string\end' failed!\MessageBreak '\string\AtEndEnvironment' will not work\@gobble}}
breqn and etoolbox. And indeed: I cannot reproduce the error - the order of biblatex and breqn doesn't seem to matter with an up to date TeX Live 2013.