Bug#847972: man: Eliminate warnings from '*roff' about the undefined register 'F'

Russ Allbery rra at debian.org
Thu Jan 5 19:12:12 UTC 2017


Bjarni Ingi Gislason <bjarniig at rhi.hi.is> writes:
> On Sat, Dec 17, 2016 at 11:24:57AM -0800, Russ Allbery wrote:
>> Colin Watson <cjwatson at debian.org> writes:

>>> I can see that that is attempting to avoid a warning.  However, it is
>>> not quite correct.  It should probably be something like this instead:

>>>   .if !r F .nr F 0

>>> I think ".if !\nF .nr F 0" is basically a no-op, even when warnings are
>>> taken into account.  It does arrange that if F was previously
>>> initialised to a negative number then it will be set to 0 instead (since
>>> negative numbers are falsy in groff), but I don't think that matters
>>> much since the subsequent test is "\nF>0" anyway.

>> I've reverted this code to the earlier version of:

>   This is the wrong thing to do.  Remove my patch.  It only eliminates a
> symptom, not the cause of it.  The real one is to add "-rF0" to the
> definition of "troff" and "nroff" (see "/etc/manpath.config" or
> "/etc/man_db.conf") in "man-db".  Any user can add this to its personal
> configuration file, until this bug in "man-db" is fixed.

I'm afraid I don't agree.  I'm going to go with this solution to eliminate
the warning.  I think it's the least intrusive and puts the burden of
managing these special-use registers in the correct place (in pod2man,
which is the program that decided to assign a meaning to it, rather than
in man or nroff, which doesn't and shouldn't have any special knowledge of
it).

-- 
Russ Allbery (rra at debian.org)               <http://www.eyrie.org/~eagle/>




More information about the Perl-maintainers mailing list