Well, I looked into this and the problem seems to get our mdoc working
with heirloom-doctools. The package itself comes with the "old" mdoc
macros which lack certain features our manual pages need. Those are in
the "new" mdoc which we have and which depends on certain groff-specific
features, as it seems.

There is a groff compatibility mode (add -mg to the command line) in the
heirloom troff but despite me trying for some time, I couldn't get it to
render our manpages cleanly.

We could, of course, revert to the old mdoc macros which would mean that
we'd have to adjust our manpages to not use the features of the new
macros. It could certainly be done, but I fear that it will be a hassle
to maintain (given that we import manpages from the other BSDs regularly
and would have to adjust them too etc.). It could be done I think,
although I'm not sure if I wanted to do it. :)

OpenBSD seems to use the old macros (with some enhancements), while
NetBSD and FreeBSD use the new macros. MirOS, by the way, seems to have
the "best" implementation of the old macros (i.e., theirs gave the
fewest warnings).

So... I'm kinda unsure here if the perspective of being able to remove
C++ from the build justifies reverting to the old mdoc macros. What do
the rest of you think?