It's quite easy to make a mistake such as:
\begin{bnf}
\nontermdef{line-directive}\br
\terminal{\# line} pp-tokens new-line\br
\end{bnf}
If I recall correctly, this trailing \br is not ignored, but simply renders as an unwanted blank line. I have made this error during 2025 post-Sofia motions I believe.
It seems like it would be fairly easy to grep for \br, followed by whitespace,
followed by \end{bnf}.