Re: Mangled function prototypes (phantom arguments)

Carlos O'Donell <[email protected]> Thu, 28 May 2026 14:39:15 -0400
Newsgroups org.kernel.vger.linux-man
Organization Red Hat, LLC.
Message-ID <[email protected]>
On 5/28/26 9:06 AM, Michael Kerrisk (man7.org) wrote:
> I don't think the Linux system call and C library manual pages are a
> good place to promote this obscure GNU feature. It is confusing
> people, including me. (I came to making this report because several
> people have reported this "bug" on various pages rendered at
> man7.org.)
> 
> Please consider reverting these changes. These markings use
> little-understood, nonportable syntax. The manual page synopses should
> be in standard, portable C that is *easy* to understand.

I agree with Michael.

I think these changes should be reverted, but it's a question of
goals and values for the project, and the purpose of the SYNOPSIS.

My view was always that they were the simplest expression of the
interface that the widest possible audience could understand, and
that seems to align with Michael's view.

It certainly isn't for me as a C library author... it's for
someone just learning or refreshing knowledge, and what makes
it easiest for a new person or someone less familiar to consume?

It seems like we've drifted toward describing the interface *and*
the constraints in a compact form (like N3433). Is that in line
with the goals of the project?

It's not like these are the *real* prototypes in your C library,
since those are much much more complicated and difficult to
understand. It's also not like they match the GNU C Library
manual's description via `info libc mmap` that are presented
to users of the library.

What is the intent of the SYNOPSIS field and the prototypes
therein? What are the goals or values of the project around
that information?

There is certainly some syntax that is valuable for compilers
enforcing constraints and providing warnings, but is that
valuable for man pages readers?

For manual pages overall I think the forward declarations
are a net negative change in readability. I would continue
to express the constraints in plain prose.

$0.02.

-- 
Cheers,
Carlos.