All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alejandro Colomar <alx@kernel.org>
To: "G. Branden Robinson" <g.branden.robinson@gmail.com>
Cc: Seth McDonald <sethmcmail@pm.me>, linux-man@vger.kernel.org
Subject: Re: origin of "void *" (was: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
Date: Sat, 10 Jan 2026 13:07:00 +0100	[thread overview]
Message-ID: <aWJAhEW5BK4yohbl@devuan> (raw)
In-Reply-To: <20260110115228.bwtdqrpe5x3b2rrn@illithid>

[-- Attachment #1: Type: text/plain, Size: 2774 bytes --]

Hi Branden,

On Sat, Jan 10, 2026 at 05:52:28AM -0600, G. Branden Robinson wrote:
> Hi Alex,
> 
> At 2026-01-10T12:30:13+0100, Alejandro Colomar wrote:
> [rearranged]
> > On Sat, Jan 10, 2026 at 07:57:49AM +0000, Seth McDonald wrote:
> > > I know that the void pointer type was not mentioned or used in
> > > POSIX.1-1988.  Instead, the standard used the char pointer type for
> > > pointers to generic data.  POSIX.1-1990 seems to implicitly require
> > > void pointers - at least for conformance to "POSIX.1, C Language
> > > Binding (C Standard Language-Dependent System Support)" - by
> > > including them in some function prototypes.
> > 
> > > On Friday, 9 January 2026 at 20:34, Alejandro Colomar
> > > <alx@kernel.org> wrote:
> > Hmmm, since POSIX.1-1988 was already written after some C89 draft, it
> > seems void* was incorporated to C89 in a late draft.
> [...]
> > Yup, K&R C 1st ed. is too old and I wouldn't expect it to have
> > void*.  I have a physical copy of K&R C 2nd ed. (1988) and it does
> > have void*.
> [...]
> > Being a scan [of 1e], it could be authentic.  I don't have a physical
> > copy of the first edition, so can't compare.
> [...]
> > If anyone else reading the list knows anything, it would be welcome.
> > 
> > Be careful of online copies of K&R C, though.  I once found one of the
> > second edition, and it was fake (by comparing it to the actual copy).
> > 
> > Much better to get the physical copy.  Although the first edition seems
> > difficult to find.
> 
> I have a physical copy of K&R 1e, but unfortunately it is in storage and
> not easy to access.  However...
> 
> I have before me as I type this a copy of Tom Plum's _Notes on the Draft
> C Standard_, copyright 1987 (Plum Hall, ISBN 609-927-3770).  Publishers
> treat years in copyright notices the way automakers treat them in
> vehicle models, so I'd guess this puts the date of publication anywhere
> from 4Q1986 to 3Q1987.
> 
> In Chapter 2, "Comparison with Earlier C", on p. 24, it says:
> 
> 	"A pointer to any object type may be converted to a ‘‘generic’’
> 	pointer and back again without change.  The syntax for generic
> 	pointer is void *."
> 
> Tom Plum was a noteworthy figure in C standardization circles; his name
> shows up in much literature on the subject.  I'd regard him as an
> authority.

Thanks!

I've now checked the rationale for C89, and it says that

	Several new types have been added:

And mentions 'void', 'void*', and 'signed char'.  It seems it was an
invention of C89.


Hve a lovely day!
Alex

> 
> https://plumhall.com/newsite/phall.html
> 
> Looks like he passed away last year.  :(
> 
> Regards,
> Branden



-- 
<https://www.alejandro-colomar.es>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

  reply	other threads:[~2026-01-10 12:07 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-09  6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
2026-01-09  6:40 ` [PATCH v1 01/25] man/man3type/div_t.3type: HISTORY: Update first SUS appearance of [l]div_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 02/25] man/man3type/id_t.3type: HISTORY: Update first POSIX appearance of id_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 03/25] man/man3type/intptr_t.3type: HISTORY: Split types and macros Seth McDonald
2026-01-09  6:40 ` [PATCH v1 04/25] man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [u]intptr_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 05/25] man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [U]INTPTR_MAX and INTPTR_MIN Seth McDonald
2026-01-09  6:40 ` [PATCH v1 06/25] man/man3type/intptr_t.3type: HISTORY: [U]INTPTR_WIDTH is not in POSIX Seth McDonald
2026-01-09  6:40 ` [PATCH v1 07/25] man/man3type/intptr_t.3type: DESCRIPTION: ffix Seth McDonald
2026-01-09  6:40 ` [PATCH v1 08/25] man/man3type/iovec.3type: HISTORY: Update first POSIX appearance of iovec(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 09/25] man/man3type/lconv.3type: HISTORY: Split lconv(3type) and int_[np]_{cs_precedes,sep_by_space,sign_posn} Seth McDonald
2026-01-09  6:40 ` [PATCH v1 10/25] man/man3type/lconv.3type: HISTORY: Update first SUS appearance of lconv(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 11/25] man/man3type/mbstate_t.3type: HISTORY: Update first SUS appearance of mbstate_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 12/25] man/man3type/ptrdiff_t.3type: HISTORY: Update first SUS appearance of ptrdiff_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 13/25] man/man3type/size_t.3type: HISTORY: Update first POSIX appearance of [s]size_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 14/25] man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of time_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 15/25] man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of suseconds_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 16/25] man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of useconds_t(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 17/25] man/man3type/timeval.3type: HISTORY: Update first SUS appearance of timeval(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 18/25] man/man3type/va_list.3type: HISTORY: Update first SUS appearance of va_list(3type) Seth McDonald
2026-01-09  6:40 ` [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type) Seth McDonald
2026-01-09 10:33   ` Alejandro Colomar
2026-01-10  7:57     ` Seth McDonald
2026-01-10 11:30       ` Alejandro Colomar
2026-01-10 11:52         ` origin of "void *" (was: " G. Branden Robinson
2026-01-10 12:07           ` Alejandro Colomar [this message]
2026-01-10 12:07             ` Alejandro Colomar
2026-01-10 22:32     ` Adam Sampson
2026-01-12 14:28       ` Alejandro Colomar
2026-01-09  6:40 ` [PATCH v1 20/25] man/man3type/wchar_t.3type: HISTORY: Split wchar_t(3type) and WCHAR_M{AX,IN} Seth McDonald
2026-01-09  6:40 ` [PATCH v1 21/25] man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of wchar_t(3type) Seth McDonald
2026-01-09 10:37   ` Alejandro Colomar
2026-01-10  9:08     ` Seth McDonald
2026-01-10 11:44       ` Alejandro Colomar
2026-01-09  6:40 ` [PATCH v1 22/25] man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of WCHAR_M{AX,IN} Seth McDonald
2026-01-09  6:40 ` [PATCH v1 23/25] man/man3type/wint_t.3type: HISTORY: Split wint_t(3type) and WEOF from WINT_M{AX,IN} Seth McDonald
2026-01-09  6:40 ` [PATCH v1 24/25] man/man3type/wint_t.3type: HISTORY: Update first SUS appearance of wint_t(3type) and WEOF Seth McDonald
2026-01-09  6:40 ` [PATCH v1 25/25] man/man3type/wint_t.3type: DESCRIPTION: ffix Seth McDonald
2026-01-09 10:39 ` [PATCH v1 00/25] man/man3type/*: Update history of all other types Alejandro Colomar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aWJAhEW5BK4yohbl@devuan \
    --to=alx@kernel.org \
    --cc=g.branden.robinson@gmail.com \
    --cc=linux-man@vger.kernel.org \
    --cc=sethmcmail@pm.me \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.