* [PATCH v1 00/25] man/man3type/*: Update history of all other types
@ 2026-01-09 6:40 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
` (25 more replies)
0 siblings, 26 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
G'day,
This patch set should account for all other man-page entries in the
3type section whose listed first POSIX/SUS appearance can be updated.
As per Alex's request, any added POSIX/SUS versions are listed in
chronological order with respect to any other listed standards.
I did make one "exception" though, regarding types that appeared in both
C89 and POSIX.1-1988. Despite POSIX.1-1988 being published before C89,
many (if not all) such types were included in POSIX.1-1988 primarily for
compatibility with the then-upcoming C standard (i.e. C89). So it is
likely more chronologically accurate to list C89 before POSIX.1-1988 in
these cases.
Seth McDonald (25):
man/man3type/div_t.3type: HISTORY: Update first SUS appearance of
[l]div_t(3type)
man/man3type/id_t.3type: HISTORY: Update first POSIX appearance of
id_t(3type)
man/man3type/intptr_t.3type: HISTORY: Split types and macros
man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of
[u]intptr_t(3type)
man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of
[U]INTPTR_MAX and INTPTR_MIN
man/man3type/intptr_t.3type: HISTORY: [U]INTPTR_WIDTH is not in POSIX.
man/man3type/intptr_t.3type: DESCRIPTION: ffix
man/man3type/iovec.3type: HISTORY: Update first POSIX appearance of
iovec(3type)
man/man3type/lconv.3type: HISTORY: Split lconv(3type) and
int_[np]_{cs_precedes,sep_by_space,sign_posn}
man/man3type/lconv.3type: HISTORY: Update first SUS appearance of
lconv(3type)
man/man3type/mbstate_t.3type: HISTORY: Update first SUS appearance of
mbstate_t(3type)
man/man3type/ptrdiff_t.3type: HISTORY: Update first SUS appearance of
ptrdiff_t(3type)
man/man3type/size_t.3type: HISTORY: Update first POSIX appearance of
[s]size_t(3type)
man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of
time_t(3type)
man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of
suseconds_t(3type)
man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of
useconds_t(3type)
man/man3type/timeval.3type: HISTORY: Update first SUS appearance of
timeval(3type)
man/man3type/va_list.3type: HISTORY: Update first SUS appearance of
va_list(3type)
man/man3type/void.3type: HISTORY: Update first POSIX appearance of
void(3type)
man/man3type/wchar_t.3type: HISTORY: Split wchar_t(3type) and
WCHAR_M{AX,IN}
man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of
wchar_t(3type)
man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of
WCHAR_M{AX,IN}
man/man3type/wint_t.3type: HISTORY: Split wint_t(3type) and WEOF from
WINT_M{AX,IN}
man/man3type/wint_t.3type: HISTORY: Update first SUS appearance of
wint_t(3type) and WEOF
man/man3type/wint_t.3type: DESCRIPTION: ffix
man/man3type/div_t.3type | 1 +
man/man3type/id_t.3type | 4 +++-
man/man3type/intptr_t.3type | 17 +++++++++++++++--
man/man3type/iovec.3type | 3 ++-
man/man3type/lconv.3type | 16 ++++++++++++++++
man/man3type/mbstate_t.3type | 1 +
man/man3type/ptrdiff_t.3type | 4 +++-
man/man3type/size_t.3type | 5 +++--
man/man3type/time_t.3type | 10 +++++++---
man/man3type/timeval.3type | 1 +
man/man3type/va_list.3type | 4 +++-
man/man3type/void.3type | 3 ++-
man/man3type/wchar_t.3type | 10 ++++++++++
man/man3type/wint_t.3type | 16 +++++++++++++++-
14 files changed, 82 insertions(+), 13 deletions(-)
Range-diff against v0:
-: ------------ > 1: a6650fa27290 man/man3type/div_t.3type: HISTORY: Update first SUS appearance of [l]div_t(3type)
-: ------------ > 2: 963da2474e6d man/man3type/id_t.3type: HISTORY: Update first POSIX appearance of id_t(3type)
-: ------------ > 3: 3a8217dd1508 man/man3type/intptr_t.3type: HISTORY: Split types and macros
-: ------------ > 4: c587540f97c4 man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [u]intptr_t(3type)
-: ------------ > 5: 455e106a5e0d man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [U]INTPTR_MAX and INTPTR_MIN
-: ------------ > 6: 26e1b48d4721 man/man3type/intptr_t.3type: HISTORY: [U]INTPTR_WIDTH is not in POSIX.
-: ------------ > 7: c5e354f0878c man/man3type/intptr_t.3type: DESCRIPTION: ffix
-: ------------ > 8: 0cf31543f6d2 man/man3type/iovec.3type: HISTORY: Update first POSIX appearance of iovec(3type)
-: ------------ > 9: fb168b7dee6d man/man3type/lconv.3type: HISTORY: Split lconv(3type) and int_[np]_{cs_precedes,sep_by_space,sign_posn}
-: ------------ > 10: ca58744440b0 man/man3type/lconv.3type: HISTORY: Update first SUS appearance of lconv(3type)
-: ------------ > 11: b4bba25be7df man/man3type/mbstate_t.3type: HISTORY: Update first SUS appearance of mbstate_t(3type)
-: ------------ > 12: 741cd602cffb man/man3type/ptrdiff_t.3type: HISTORY: Update first SUS appearance of ptrdiff_t(3type)
-: ------------ > 13: 3cf622ba3c3c man/man3type/size_t.3type: HISTORY: Update first POSIX appearance of [s]size_t(3type)
-: ------------ > 14: d1a047ff7ec8 man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of time_t(3type)
-: ------------ > 15: 7f54dbc4481d man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of suseconds_t(3type)
-: ------------ > 16: d8cf35e1cf3e man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of useconds_t(3type)
-: ------------ > 17: 47c6b50cf1a1 man/man3type/timeval.3type: HISTORY: Update first SUS appearance of timeval(3type)
-: ------------ > 18: 9a9b76c452fe man/man3type/va_list.3type: HISTORY: Update first SUS appearance of va_list(3type)
-: ------------ > 19: efe8112034e9 man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
-: ------------ > 20: 87a39e047c0e man/man3type/wchar_t.3type: HISTORY: Split wchar_t(3type) and WCHAR_M{AX,IN}
-: ------------ > 21: a7d237cd5287 man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of wchar_t(3type)
-: ------------ > 22: fb806a50acd6 man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of WCHAR_M{AX,IN}
-: ------------ > 23: 730e0c713039 man/man3type/wint_t.3type: HISTORY: Split wint_t(3type) and WEOF from WINT_M{AX,IN}
-: ------------ > 24: a9ac764ac283 man/man3type/wint_t.3type: HISTORY: Update first SUS appearance of wint_t(3type) and WEOF
-: ------------ > 25: 694ea5baaddc man/man3type/wint_t.3type: DESCRIPTION: ffix
--
2.47.3
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v1 01/25] man/man3type/div_t.3type: HISTORY: Update first SUS appearance of [l]div_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
@ 2026-01-09 6:40 ` 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
` (24 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
div_t(3type) and ldiv_t(3type) first appeared in SUSv1.[1]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 807.
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/div_t.3type | 1 +
1 file changed, 1 insertion(+)
diff --git a/man/man3type/div_t.3type b/man/man3type/div_t.3type
index 654e78b215c0..1bebd3fd4899 100644
--- a/man/man3type/div_t.3type
+++ b/man/man3type/div_t.3type
@@ -53,6 +53,7 @@ .SH HISTORY
.I div_t
.TQ
.I ldiv_t
+SUSv1,
C99,
POSIX.1-2001.
.TP
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 02/25] man/man3type/id_t.3type: HISTORY: Update first POSIX appearance of id_t(3type)
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 ` Seth McDonald
2026-01-09 6:40 ` [PATCH v1 03/25] man/man3type/intptr_t.3type: HISTORY: Split types and macros Seth McDonald
` (23 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
id_t(3type) first appeared in SUSv1.[1] The type was added to
POSIX.1-2001 when POSIX and SUS merged, but as an XSI extension (still
SUS-only).[2] Then POSIX.1-2008 moved it to the base specification.[3]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 838.
[2] IEEE Std 1003.1-2001, Volume 1, Chapter 13 "Headers", p. 366.
<https://pubs.opengroup.org/onlinepubs/009604499/basedefs/sys/types.h.html>
[3] IEEE Std 1003.1-2008, Volume 1, Chapter 13 "Headers", p. 398.
<https://pubs.opengroup.org/onlinepubs/9699919799.2008edition/basedefs/sys_types.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/id_t.3type | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/man/man3type/id_t.3type b/man/man3type/id_t.3type
index c4b87642c755..1b856aa7768a 100644
--- a/man/man3type/id_t.3type
+++ b/man/man3type/id_t.3type
@@ -49,7 +49,9 @@ .SH HISTORY
POSIX.1-1988.
.TP
.I id_t
-POSIX.1-2001.
+SUSv1,
+POSIX.1-2001 XSI,
+POSIX.1-2008.
.SH NOTES
The following headers also provide
.IR pid_t :
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 03/25] man/man3type/intptr_t.3type: HISTORY: Split types and macros
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 ` 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
` (22 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/intptr_t.3type | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/man/man3type/intptr_t.3type b/man/man3type/intptr_t.3type
index 3201e8af3fb3..05caa0a057a4 100644
--- a/man/man3type/intptr_t.3type
+++ b/man/man3type/intptr_t.3type
@@ -96,6 +96,18 @@ .SH DESCRIPTION
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
+.TP
+.RI [ u ] intptr_t
+C99,
+POSIX.1-2001.
+.TP
+.RB [ U ] INTPTR_MAX
+.TQ
+.B INTPTR_MIN
+C99,
+POSIX.1-2001.
+.TP
+.RB [ U ] INTPTR_WIDTH
C99, POSIX.1-2001.
.SH NOTES
The following header also provides these types:
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 04/25] man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [u]intptr_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (2 preceding siblings ...)
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 ` 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
` (21 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
intptr_t(3type) and uintptr_t(3type) first appeared in SUSv2.[1] The
types were added to POSIX.1-2001 when POSIX and SUS merged, but are only
mandatory on XSI-conformant systems.[2]
[1] CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4
"Headers", p. 1089.
<https://pubs.opengroup.org/onlinepubs/7908799/xsh/inttypes.h.html>
[2] IEEE Std 1003.1-2001, Volume 1, Chapter 13 "Headers", p. 316.
<https://pubs.opengroup.org/onlinepubs/009604499/basedefs/stdint.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/intptr_t.3type | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/man/man3type/intptr_t.3type b/man/man3type/intptr_t.3type
index 05caa0a057a4..680553c2de25 100644
--- a/man/man3type/intptr_t.3type
+++ b/man/man3type/intptr_t.3type
@@ -98,8 +98,9 @@ .SH STANDARDS
.SH HISTORY
.TP
.RI [ u ] intptr_t
+SUSv2,
C99,
-POSIX.1-2001.
+POSIX.1-2001 XSI.
.TP
.RB [ U ] INTPTR_MAX
.TQ
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 05/25] man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [U]INTPTR_MAX and INTPTR_MIN
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (3 preceding siblings ...)
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 ` 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
` (20 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
INTPTR_MAX, UINTPTR_MAX, and INTPTR_MIN are defined if and only if
intptr_t(3type) and uintptr_t(3type) are declared.[1] So given that the
types are only mandatory on XSI-conformant systems, the same is true for
the macros.
[1] IEEE Std 1003.1-2001, Volume 1, Chapter 13 "Headers", pp. 314,
316-318.
<https://pubs.opengroup.org/onlinepubs/009604499/basedefs/stdint.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/intptr_t.3type | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/man/man3type/intptr_t.3type b/man/man3type/intptr_t.3type
index 680553c2de25..0e433914521e 100644
--- a/man/man3type/intptr_t.3type
+++ b/man/man3type/intptr_t.3type
@@ -106,7 +106,7 @@ .SH HISTORY
.TQ
.B INTPTR_MIN
C99,
-POSIX.1-2001.
+POSIX.1-2001 XSI.
.TP
.RB [ U ] INTPTR_WIDTH
C99, POSIX.1-2001.
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 06/25] man/man3type/intptr_t.3type: HISTORY: [U]INTPTR_WIDTH is not in POSIX.
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (4 preceding siblings ...)
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 ` Seth McDonald
2026-01-09 6:40 ` [PATCH v1 07/25] man/man3type/intptr_t.3type: DESCRIPTION: ffix Seth McDonald
` (19 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/intptr_t.3type | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/man/man3type/intptr_t.3type b/man/man3type/intptr_t.3type
index 0e433914521e..452e760e610b 100644
--- a/man/man3type/intptr_t.3type
+++ b/man/man3type/intptr_t.3type
@@ -109,7 +109,7 @@ .SH HISTORY
POSIX.1-2001 XSI.
.TP
.RB [ U ] INTPTR_WIDTH
-C99, POSIX.1-2001.
+C99.
.SH NOTES
The following header also provides these types:
.IR <inttypes.h> .
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 07/25] man/man3type/intptr_t.3type: DESCRIPTION: ffix
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (5 preceding siblings ...)
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 ` 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
` (18 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/intptr_t.3type | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/man/man3type/intptr_t.3type b/man/man3type/intptr_t.3type
index 452e760e610b..a753a55c4bf8 100644
--- a/man/man3type/intptr_t.3type
+++ b/man/man3type/intptr_t.3type
@@ -76,7 +76,7 @@ .SH DESCRIPTION
.I intptr_t
values.
The length modifiers for the
-.IR [ u ] intptr_t
+.RI [ u ] intptr_t
types
for the
.BR scanf (3)
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 08/25] man/man3type/iovec.3type: HISTORY: Update first POSIX appearance of iovec(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (6 preceding siblings ...)
2026-01-09 6:40 ` [PATCH v1 07/25] man/man3type/intptr_t.3type: DESCRIPTION: ffix Seth McDonald
@ 2026-01-09 6:40 ` 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
` (17 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
iovec(3type) first appeared in SUSv1.[1] The type was added to
POSIX.1-2001 when POSIX and SUS merged, but as an XSI extension (still
SUS-only).[2]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 840.
[2] IEEE Std 1003.1-2001, Volume 1, Chapter 13 "Headers", p. 369.
<https://pubs.opengroup.org/onlinepubs/009604499/basedefs/sys/uio.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/iovec.3type | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/man/man3type/iovec.3type b/man/man3type/iovec.3type
index 368f57157c15..b7c1abfeb040 100644
--- a/man/man3type/iovec.3type
+++ b/man/man3type/iovec.3type
@@ -39,7 +39,8 @@ .SH DESCRIPTION
.SH STANDARDS
POSIX.1-2024.
.SH HISTORY
-POSIX.1-2001.
+SUSv1,
+POSIX.1-2001 XSI.
.SH NOTES
The following header also provides this type:
.IR <sys/socket.h> .
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 09/25] man/man3type/lconv.3type: HISTORY: Split lconv(3type) and int_[np]_{cs_precedes,sep_by_space,sign_posn}
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (7 preceding siblings ...)
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 ` 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
` (16 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/lconv.3type | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/man/man3type/lconv.3type b/man/man3type/lconv.3type
index e7bb3bde3c3a..b76f06a93e1b 100644
--- a/man/man3type/lconv.3type
+++ b/man/man3type/lconv.3type
@@ -46,6 +46,21 @@ .SH DESCRIPTION
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
+.TP
+.I lconv
+POSIX.1-2001.
+.TP
+.I .int_p_cs_precedes
+.TQ
+.I .int_n_cs_precedes
+.TQ
+.I .int_p_sep_by_space
+.TQ
+.I .int_n_sep_by_space
+.TQ
+.I .int_p_sign_posn
+.TQ
+.I .int_n_sign_posn
POSIX.1-2001.
.SH SEE ALSO
.BR setlocale (3),
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 10/25] man/man3type/lconv.3type: HISTORY: Update first SUS appearance of lconv(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (8 preceding siblings ...)
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 ` 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
` (15 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
lconv(3type) first appeared in SUSv1, but without the six members
int_[pn]_{cs_precedes,sep_by_space,sign_posn}.[1]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 778.
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/lconv.3type | 1 +
1 file changed, 1 insertion(+)
diff --git a/man/man3type/lconv.3type b/man/man3type/lconv.3type
index b76f06a93e1b..291e9121b954 100644
--- a/man/man3type/lconv.3type
+++ b/man/man3type/lconv.3type
@@ -48,6 +48,7 @@ .SH STANDARDS
.SH HISTORY
.TP
.I lconv
+SUSv1,
POSIX.1-2001.
.TP
.I .int_p_cs_precedes
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 11/25] man/man3type/mbstate_t.3type: HISTORY: Update first SUS appearance of mbstate_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (9 preceding siblings ...)
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 ` 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
` (14 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
mbstate_t(3type) first appeared in SUSv2.[1]
[1] CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4
"Headers", p. 1212.
<https://pubs.opengroup.org/onlinepubs/7908799/xsh/wchar.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/mbstate_t.3type | 1 +
1 file changed, 1 insertion(+)
diff --git a/man/man3type/mbstate_t.3type b/man/man3type/mbstate_t.3type
index a4e090477b08..229599c2d4ab 100644
--- a/man/man3type/mbstate_t.3type
+++ b/man/man3type/mbstate_t.3type
@@ -74,6 +74,7 @@ .SH DESCRIPTION
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
+SUSv2,
C99, POSIX.1-2001.
.SH SEE ALSO
.BR mbrlen (3),
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 12/25] man/man3type/ptrdiff_t.3type: HISTORY: Update first SUS appearance of ptrdiff_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (10 preceding siblings ...)
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 ` 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
` (13 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
ptrdiff_t(3type) first appeared in SUSv1.[1]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 803.
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/ptrdiff_t.3type | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/man/man3type/ptrdiff_t.3type b/man/man3type/ptrdiff_t.3type
index 9d7811a1fe51..21839f3cbc2a 100644
--- a/man/man3type/ptrdiff_t.3type
+++ b/man/man3type/ptrdiff_t.3type
@@ -40,6 +40,8 @@ .SH DESCRIPTION
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
-C89, POSIX.1-2001.
+C89,
+SUSv1,
+POSIX.1-2001.
.SH SEE ALSO
.BR size_t (3type)
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 13/25] man/man3type/size_t.3type: HISTORY: Update first POSIX appearance of [s]size_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (11 preceding siblings ...)
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 ` 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
` (12 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
size_t(3type) and ssize_t(3type) first appeared in POSIX.1-1990.[1]
[1] IEEE Std 1003.1-1990, Table 2-1 "Primitive System Data Types".
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/size_t.3type | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/man/man3type/size_t.3type b/man/man3type/size_t.3type
index 38338b97e1db..da67dabf90ad 100644
--- a/man/man3type/size_t.3type
+++ b/man/man3type/size_t.3type
@@ -93,10 +93,11 @@ .SH STANDARDS
.SH HISTORY
.TP
.I size_t
-C89, POSIX.1-2001.
+C89,
+POSIX.1-1990.
.TP
.I ssize_t
-POSIX.1-2001.
+POSIX.1-1990.
.P
.IR <aio.h> ,
.IR <glob.h> ,
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 14/25] man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of time_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (12 preceding siblings ...)
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 ` 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
` (11 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
time_t(3type) first appeared in POSIX.1-1988.[1]
[1] IEEE Std 1003.1-1988, Section 2.8.1 "Symbols From The C Standard".
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/time_t.3type | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/man/man3type/time_t.3type b/man/man3type/time_t.3type
index 28205755f692..6bfad6ee3f3e 100644
--- a/man/man3type/time_t.3type
+++ b/man/man3type/time_t.3type
@@ -53,7 +53,8 @@ .SH STANDARDS
.SH HISTORY
.TP
.I time_t
-C89, POSIX.1-2001.
+C89,
+POSIX.1-1988.
.TP
.I suseconds_t
POSIX.1-2001.
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 15/25] man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of suseconds_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (13 preceding siblings ...)
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 ` 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
` (10 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
suseconds_t(3type) first appeared in SUSv2.[1] The type was added to
POSIX.1-2001 when POSIX and SUS merged, but as an XSI extension (still
SUS-only).[2] Then POSIX.1-2024 added it to the base specification.[3]
[1] CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4
"Headers", p. 1177.
<https://pubs.opengroup.org/onlinepubs/7908799/xsh/systypes.h.html>
[2] IEEE Std 1003.1-2001, Volume 1, Chapter 13 "Headers", p. 367.
<https://pubs.opengroup.org/onlinepubs/009604499/basedefs/sys/types.h.html>
[3] IEEE Std 1003.1-2024, Volume 1, Chapter 14 "Headers", p. 426.
<https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/sys_types.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/time_t.3type | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/man/man3type/time_t.3type b/man/man3type/time_t.3type
index 6bfad6ee3f3e..9757a3297ca2 100644
--- a/man/man3type/time_t.3type
+++ b/man/man3type/time_t.3type
@@ -57,7 +57,9 @@ .SH HISTORY
POSIX.1-1988.
.TP
.I suseconds_t
-POSIX.1-2001.
+SUSv2,
+POSIX.1-2001 XSI,
+POSIX.1-2024.
.TP
.I useconds_t
POSIX.1-2001.
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 16/25] man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of useconds_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (14 preceding siblings ...)
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 ` 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
` (9 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
useconds_t(3type) first appeared in SUSv1.[1] The type was added to
POSIX.1-2001 when POSIX and SUS merged, but as an XSI extension (still
SUS-only).[2]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 838.
[2] IEEE Std 1003.1-2001, Volume 1, Chapter 13 "Headers", p. 367.
<https://pubs.opengroup.org/onlinepubs/009604499/basedefs/sys/types.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/time_t.3type | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/man/man3type/time_t.3type b/man/man3type/time_t.3type
index 9757a3297ca2..b16507dbd95c 100644
--- a/man/man3type/time_t.3type
+++ b/man/man3type/time_t.3type
@@ -62,7 +62,8 @@ .SH HISTORY
POSIX.1-2024.
.TP
.I useconds_t
-POSIX.1-2001.
+SUSv1,
+POSIX.1-2001 XSI.
Removed in POSIX.1-2008.
.SS Header files
.I <sched.h>
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 17/25] man/man3type/timeval.3type: HISTORY: Update first SUS appearance of timeval(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (15 preceding siblings ...)
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 ` 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
` (8 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
timeval(3type) first appeared in SUSv1.[1]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 834.
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/timeval.3type | 1 +
1 file changed, 1 insertion(+)
diff --git a/man/man3type/timeval.3type b/man/man3type/timeval.3type
index d11ad0b7eb2e..509f73058c3c 100644
--- a/man/man3type/timeval.3type
+++ b/man/man3type/timeval.3type
@@ -22,6 +22,7 @@ .SH DESCRIPTION
.SH STANDARDS
POSIX.1-2024.
.SH HISTORY
+SUSv1,
POSIX.1-2001.
.SH NOTES
The following headers also provide this type:
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 18/25] man/man3type/va_list.3type: HISTORY: Update first SUS appearance of va_list(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (16 preceding siblings ...)
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 ` 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
` (7 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
va_list(3type) first appeared in SUSv1.[1]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 801.
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/va_list.3type | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/man/man3type/va_list.3type b/man/man3type/va_list.3type
index 96973ef180c7..2a2d4b2be637 100644
--- a/man/man3type/va_list.3type
+++ b/man/man3type/va_list.3type
@@ -28,7 +28,9 @@ .SH DESCRIPTION
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
-C89, POSIX.1-2001.
+C89,
+SUSv1,
+POSIX.1-2001.
.SH NOTES
The following headers also provide
.IR va_list :
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (17 preceding siblings ...)
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 ` Seth McDonald
2026-01-09 10:33 ` 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
` (6 subsequent siblings)
25 siblings, 1 reply; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
The void pointer (void*) type first appeared in POSIX.1-1990 as a
parameter type in the read(2) function.[1]
[1] IEEE Std 1003.1-1990, Section 6.4.1 "Read from a File".
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/void.3type | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/man/man3type/void.3type b/man/man3type/void.3type
index ebbeb4d154e1..9a46f84b1d37 100644
--- a/man/man3type/void.3type
+++ b/man/man3type/void.3type
@@ -65,7 +65,8 @@ .SH VERSIONS
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
-C89, POSIX.1-2001.
+C89,
+POSIX.1-1990.
.SH SEE ALSO
.BR malloc (3),
.BR memcmp (3),
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 20/25] man/man3type/wchar_t.3type: HISTORY: Split wchar_t(3type) and WCHAR_M{AX,IN}
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (18 preceding siblings ...)
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 6:40 ` 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
` (5 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/wchar_t.3type | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/man/man3type/wchar_t.3type b/man/man3type/wchar_t.3type
index 165a990b7e35..96139f794eb8 100644
--- a/man/man3type/wchar_t.3type
+++ b/man/man3type/wchar_t.3type
@@ -29,6 +29,14 @@ .SH DESCRIPTION
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
+.TP
+.I wchar_t
+C99,
+POSIX.1-2001.
+.TP
+.B WCHAR_MAX
+.TQ
+.B WCHAR_MIN
C99, POSIX.1-2001.
.P
The
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 21/25] man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of wchar_t(3type)
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (19 preceding siblings ...)
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 ` Seth McDonald
2026-01-09 10:37 ` 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
` (4 subsequent siblings)
25 siblings, 1 reply; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
wchar_t(3type) first appeared in SUSv1.[1]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", p. 803.
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/wchar_t.3type | 1 +
1 file changed, 1 insertion(+)
diff --git a/man/man3type/wchar_t.3type b/man/man3type/wchar_t.3type
index 96139f794eb8..503ce31c5a34 100644
--- a/man/man3type/wchar_t.3type
+++ b/man/man3type/wchar_t.3type
@@ -31,6 +31,7 @@ .SH STANDARDS
.SH HISTORY
.TP
.I wchar_t
+SUSv1,
C99,
POSIX.1-2001.
.TP
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 22/25] man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of WCHAR_M{AX,IN}
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (20 preceding siblings ...)
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 6:40 ` 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
` (3 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
WCHAR_MAX and WCHAR_MIN first appeared in SUSv2.[1]
[1] CAE Specification, System Interfaces and Headers, Issue 5, Chapter 4
"Headers", p. 1213.
<https://pubs.opengroup.org/onlinepubs/7908799/xsh/wchar.h.html>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/wchar_t.3type | 1 +
1 file changed, 1 insertion(+)
diff --git a/man/man3type/wchar_t.3type b/man/man3type/wchar_t.3type
index 503ce31c5a34..84995a846dc7 100644
--- a/man/man3type/wchar_t.3type
+++ b/man/man3type/wchar_t.3type
@@ -38,6 +38,7 @@ .SH HISTORY
.B WCHAR_MAX
.TQ
.B WCHAR_MIN
+SUSv2,
C99, POSIX.1-2001.
.P
The
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 23/25] man/man3type/wint_t.3type: HISTORY: Split wint_t(3type) and WEOF from WINT_M{AX,IN}
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (21 preceding siblings ...)
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 ` 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
` (2 subsequent siblings)
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/wint_t.3type | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/man/man3type/wint_t.3type b/man/man3type/wint_t.3type
index 5d2ea3ff0ed6..358025d45c56 100644
--- a/man/man3type/wint_t.3type
+++ b/man/man3type/wint_t.3type
@@ -40,6 +40,16 @@ .SH DESCRIPTION
.SH STANDARDS
C11, POSIX.1-2024.
.SH HISTORY
+.TP
+.I wint_t
+.TQ
+.B WEOF
+C99,
+POSIX.1-2001.
+.TP
+.B WINT_MAX
+.TQ
+.B WINT_MIN
C99, POSIX.1-2001.
.P
The
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 24/25] man/man3type/wint_t.3type: HISTORY: Update first SUS appearance of wint_t(3type) and WEOF
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (22 preceding siblings ...)
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 ` 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
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
wint_t(3type) and WEOF first appeared in SUSv1.[1]
[1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
Version 2, Chapter 4 "Headers", pp. 867-668.
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/wint_t.3type | 1 +
1 file changed, 1 insertion(+)
diff --git a/man/man3type/wint_t.3type b/man/man3type/wint_t.3type
index 358025d45c56..5d51cf8d508d 100644
--- a/man/man3type/wint_t.3type
+++ b/man/man3type/wint_t.3type
@@ -44,6 +44,7 @@ .SH HISTORY
.I wint_t
.TQ
.B WEOF
+SUSv1,
C99,
POSIX.1-2001.
.TP
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* [PATCH v1 25/25] man/man3type/wint_t.3type: DESCRIPTION: ffix
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (23 preceding siblings ...)
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 ` Seth McDonald
2026-01-09 10:39 ` [PATCH v1 00/25] man/man3type/*: Update history of all other types Alejandro Colomar
25 siblings, 0 replies; 38+ messages in thread
From: Seth McDonald @ 2026-01-09 6:40 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
From: Seth McDonald <sethmcmail@pm.me>
Signed-off-by: Seth McDonald <sethmcmail@pm.me>
---
man/man3type/wint_t.3type | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/man/man3type/wint_t.3type b/man/man3type/wint_t.3type
index 5d51cf8d508d..b6016b160827 100644
--- a/man/man3type/wint_t.3type
+++ b/man/man3type/wint_t.3type
@@ -28,7 +28,10 @@ .SH SYNOPSIS
.SH DESCRIPTION
.I wint_t
is a type used in functions that work with wide characters.
-It is capable of storing any valid wchar_t or WEOF.
+It is capable of storing any valid
+.IR wchar_t (3type)
+or
+.BR WEOF .
It is an integer type.
.P
.B WEOF
--
2.47.3
^ permalink raw reply related [flat|nested] 38+ messages in thread
* Re: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
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 22:32 ` Adam Sampson
0 siblings, 2 replies; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-09 10:33 UTC (permalink / raw)
To: Seth McDonald; +Cc: linux-man
[-- Attachment #1: Type: text/plain, Size: 1316 bytes --]
Hi Seth,
On Fri, Jan 09, 2026 at 04:40:37PM +1000, Seth McDonald wrote:
> From: Seth McDonald <sethmcmail@pm.me>
>
> The void pointer (void*) type first appeared in POSIX.1-1990 as a
> parameter type in the read(2) function.[1]
>
> [1] IEEE Std 1003.1-1990, Section 6.4.1 "Read from a File".
>
> Signed-off-by: Seth McDonald <sethmcmail@pm.me>
I think 'void*' is important enough that it would be useful to dig in
its history further. Was it an invention of C89? Or was it an
extension in some existing compilers? If the latter, it would be
interesting to document which systems had it before C89.
I'm mentioning this just in case you know. Feel free to ignore
otherwise.
Anyway, I've applied the patch. Thanks!
Have a lovely day!
Alex
> ---
> man/man3type/void.3type | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/man/man3type/void.3type b/man/man3type/void.3type
> index ebbeb4d154e1..9a46f84b1d37 100644
> --- a/man/man3type/void.3type
> +++ b/man/man3type/void.3type
> @@ -65,7 +65,8 @@ .SH VERSIONS
> .SH STANDARDS
> C11, POSIX.1-2024.
> .SH HISTORY
> -C89, POSIX.1-2001.
> +C89,
> +POSIX.1-1990.
> .SH SEE ALSO
> .BR malloc (3),
> .BR memcmp (3),
> --
> 2.47.3
>
>
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 21/25] man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of wchar_t(3type)
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
0 siblings, 1 reply; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-09 10:37 UTC (permalink / raw)
To: Seth McDonald; +Cc: linux-man
[-- Attachment #1: Type: text/plain, Size: 1138 bytes --]
Hi Seth,
On Fri, Jan 09, 2026 at 04:40:39PM +1000, Seth McDonald wrote:
> From: Seth McDonald <sethmcmail@pm.me>
>
> wchar_t(3type) first appeared in SUSv1.[1]
>
> [1] X/Open CAE Specification, System Interfaces and Headers Issue 4,
> Version 2, Chapter 4 "Headers", p. 803.
>
> Signed-off-by: Seth McDonald <sethmcmail@pm.me>
> ---
> man/man3type/wchar_t.3type | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/man/man3type/wchar_t.3type b/man/man3type/wchar_t.3type
> index 96139f794eb8..503ce31c5a34 100644
> --- a/man/man3type/wchar_t.3type
> +++ b/man/man3type/wchar_t.3type
> @@ -31,6 +31,7 @@ .SH STANDARDS
> .SH HISTORY
> .TP
> .I wchar_t
> +SUSv1,
> C99,
> POSIX.1-2001.
I've recently learned that wchar_t and related APIs were introduced to
ISO C in C95. If you are interested in them, you could check the C95
draft (there's a link in standards(7) --I added it a few weeks ago--).
Otherwise, I'll have a look at it myself. Let me know.
I've applied the patch. Thanks!
Have a lovely day!
Alex
> .TP
> --
> 2.47.3
>
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 00/25] man/man3type/*: Update history of all other types
2026-01-09 6:40 [PATCH v1 00/25] man/man3type/*: Update history of all other types Seth McDonald
` (24 preceding siblings ...)
2026-01-09 6:40 ` [PATCH v1 25/25] man/man3type/wint_t.3type: DESCRIPTION: ffix Seth McDonald
@ 2026-01-09 10:39 ` Alejandro Colomar
25 siblings, 0 replies; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-09 10:39 UTC (permalink / raw)
To: Seth McDonald; +Cc: linux-man
[-- Attachment #1: Type: text/plain, Size: 7028 bytes --]
On Fri, Jan 09, 2026 at 04:40:18PM +1000, Seth McDonald wrote:
> G'day,
Gidday!
> This patch set should account for all other man-page entries in the
> 3type section whose listed first POSIX/SUS appearance can be updated.
> As per Alex's request, any added POSIX/SUS versions are listed in
> chronological order with respect to any other listed standards.
>
> I did make one "exception" though, regarding types that appeared in both
> C89 and POSIX.1-1988. Despite POSIX.1-1988 being published before C89,
> many (if not all) such types were included in POSIX.1-1988 primarily for
> compatibility with the then-upcoming C standard (i.e. C89). So it is
> likely more chronologically accurate to list C89 before POSIX.1-1988 in
> these cases.
Agree.
> Seth McDonald (25):
Thanks! I've applied all 25 patches. I'll push in a moment.
Have a lovely day!
Alex
> man/man3type/div_t.3type: HISTORY: Update first SUS appearance of
> [l]div_t(3type)
> man/man3type/id_t.3type: HISTORY: Update first POSIX appearance of
> id_t(3type)
> man/man3type/intptr_t.3type: HISTORY: Split types and macros
> man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of
> [u]intptr_t(3type)
> man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of
> [U]INTPTR_MAX and INTPTR_MIN
> man/man3type/intptr_t.3type: HISTORY: [U]INTPTR_WIDTH is not in POSIX.
> man/man3type/intptr_t.3type: DESCRIPTION: ffix
> man/man3type/iovec.3type: HISTORY: Update first POSIX appearance of
> iovec(3type)
> man/man3type/lconv.3type: HISTORY: Split lconv(3type) and
> int_[np]_{cs_precedes,sep_by_space,sign_posn}
> man/man3type/lconv.3type: HISTORY: Update first SUS appearance of
> lconv(3type)
> man/man3type/mbstate_t.3type: HISTORY: Update first SUS appearance of
> mbstate_t(3type)
> man/man3type/ptrdiff_t.3type: HISTORY: Update first SUS appearance of
> ptrdiff_t(3type)
> man/man3type/size_t.3type: HISTORY: Update first POSIX appearance of
> [s]size_t(3type)
> man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of
> time_t(3type)
> man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of
> suseconds_t(3type)
> man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of
> useconds_t(3type)
> man/man3type/timeval.3type: HISTORY: Update first SUS appearance of
> timeval(3type)
> man/man3type/va_list.3type: HISTORY: Update first SUS appearance of
> va_list(3type)
> man/man3type/void.3type: HISTORY: Update first POSIX appearance of
> void(3type)
> man/man3type/wchar_t.3type: HISTORY: Split wchar_t(3type) and
> WCHAR_M{AX,IN}
> man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of
> wchar_t(3type)
> man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of
> WCHAR_M{AX,IN}
> man/man3type/wint_t.3type: HISTORY: Split wint_t(3type) and WEOF from
> WINT_M{AX,IN}
> man/man3type/wint_t.3type: HISTORY: Update first SUS appearance of
> wint_t(3type) and WEOF
> man/man3type/wint_t.3type: DESCRIPTION: ffix
>
> man/man3type/div_t.3type | 1 +
> man/man3type/id_t.3type | 4 +++-
> man/man3type/intptr_t.3type | 17 +++++++++++++++--
> man/man3type/iovec.3type | 3 ++-
> man/man3type/lconv.3type | 16 ++++++++++++++++
> man/man3type/mbstate_t.3type | 1 +
> man/man3type/ptrdiff_t.3type | 4 +++-
> man/man3type/size_t.3type | 5 +++--
> man/man3type/time_t.3type | 10 +++++++---
> man/man3type/timeval.3type | 1 +
> man/man3type/va_list.3type | 4 +++-
> man/man3type/void.3type | 3 ++-
> man/man3type/wchar_t.3type | 10 ++++++++++
> man/man3type/wint_t.3type | 16 +++++++++++++++-
> 14 files changed, 82 insertions(+), 13 deletions(-)
>
> Range-diff against v0:
> -: ------------ > 1: a6650fa27290 man/man3type/div_t.3type: HISTORY: Update first SUS appearance of [l]div_t(3type)
> -: ------------ > 2: 963da2474e6d man/man3type/id_t.3type: HISTORY: Update first POSIX appearance of id_t(3type)
> -: ------------ > 3: 3a8217dd1508 man/man3type/intptr_t.3type: HISTORY: Split types and macros
> -: ------------ > 4: c587540f97c4 man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [u]intptr_t(3type)
> -: ------------ > 5: 455e106a5e0d man/man3type/intptr_t.3type: HISTORY: Update first POSIX appearance of [U]INTPTR_MAX and INTPTR_MIN
> -: ------------ > 6: 26e1b48d4721 man/man3type/intptr_t.3type: HISTORY: [U]INTPTR_WIDTH is not in POSIX.
> -: ------------ > 7: c5e354f0878c man/man3type/intptr_t.3type: DESCRIPTION: ffix
> -: ------------ > 8: 0cf31543f6d2 man/man3type/iovec.3type: HISTORY: Update first POSIX appearance of iovec(3type)
> -: ------------ > 9: fb168b7dee6d man/man3type/lconv.3type: HISTORY: Split lconv(3type) and int_[np]_{cs_precedes,sep_by_space,sign_posn}
> -: ------------ > 10: ca58744440b0 man/man3type/lconv.3type: HISTORY: Update first SUS appearance of lconv(3type)
> -: ------------ > 11: b4bba25be7df man/man3type/mbstate_t.3type: HISTORY: Update first SUS appearance of mbstate_t(3type)
> -: ------------ > 12: 741cd602cffb man/man3type/ptrdiff_t.3type: HISTORY: Update first SUS appearance of ptrdiff_t(3type)
> -: ------------ > 13: 3cf622ba3c3c man/man3type/size_t.3type: HISTORY: Update first POSIX appearance of [s]size_t(3type)
> -: ------------ > 14: d1a047ff7ec8 man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of time_t(3type)
> -: ------------ > 15: 7f54dbc4481d man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of suseconds_t(3type)
> -: ------------ > 16: d8cf35e1cf3e man/man3type/time_t.3type: HISTORY: Update first POSIX appearance of useconds_t(3type)
> -: ------------ > 17: 47c6b50cf1a1 man/man3type/timeval.3type: HISTORY: Update first SUS appearance of timeval(3type)
> -: ------------ > 18: 9a9b76c452fe man/man3type/va_list.3type: HISTORY: Update first SUS appearance of va_list(3type)
> -: ------------ > 19: efe8112034e9 man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
> -: ------------ > 20: 87a39e047c0e man/man3type/wchar_t.3type: HISTORY: Split wchar_t(3type) and WCHAR_M{AX,IN}
> -: ------------ > 21: a7d237cd5287 man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of wchar_t(3type)
> -: ------------ > 22: fb806a50acd6 man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of WCHAR_M{AX,IN}
> -: ------------ > 23: 730e0c713039 man/man3type/wint_t.3type: HISTORY: Split wint_t(3type) and WEOF from WINT_M{AX,IN}
> -: ------------ > 24: a9ac764ac283 man/man3type/wint_t.3type: HISTORY: Update first SUS appearance of wint_t(3type) and WEOF
> -: ------------ > 25: 694ea5baaddc man/man3type/wint_t.3type: DESCRIPTION: ffix
> --
> 2.47.3
>
>
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
2026-01-09 10:33 ` Alejandro Colomar
@ 2026-01-10 7:57 ` Seth McDonald
2026-01-10 11:30 ` Alejandro Colomar
2026-01-10 22:32 ` Adam Sampson
1 sibling, 1 reply; 38+ messages in thread
From: Seth McDonald @ 2026-01-10 7:57 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: linux-man
[-- Attachment #1.1: Type: text/plain, Size: 2450 bytes --]
Hi Alex,
On Friday, 9 January 2026 at 20:34, Alejandro Colomar <alx@kernel.org> wrote:
> Hi Seth,
[...]
> I think 'void*' is important enough that it would be useful to dig in
> its history further. Was it an invention of C89? Or was it an
> extension in some existing compilers? If the latter, it would be
> interesting to document which systems had it before C89.
>
> I'm mentioning this just in case you know. Feel free to ignore
> otherwise.
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.
Looking at C89, it did explicitly specify void pointers as part of the
language, stating that "[a] pointer to void shall have the same
representation and alignment requirements as a pointer to a character
type."[1]
Looking* at K&R C, I skimmed through chapter 5 "Pointers and Arrays",
and couldn't find any references to void pointers. In fact, it seems to
use char pointers instead, similar to POSIX.1-1988.
So I think what happened (pure speculation) was between 1978 and 1989,
void pointers increased in user popularity and compiler support enough
that ANSI decided to extend the language by adding void pointers to its
1989 C standard. Which would explain why POSIX.1-1988 also didn't have
void pointers, but POSIX.1-1990 suddenly did.
With regard to implementation support for void pointers prior to C89,
this is where my knowledge falls short. I'm not the most educated on
past implementations (yet).
*I found this[2] PDF online which appears to be a scan of a (heavily
annotated) copy of the first edition of The C Programming Language.
I don't know if it's authentic though, so take it with a grain of salt.
----
[1] ANSI X3.159-1989 "Programming Language – C", Section 3.1.2.5
"Types", p. 24.
<https://nvlpubs.nist.gov/nistpubs/Legacy/FIPS/fipspub160.pdf>
[2] Kernighan, Brian W., Ritchie, Dennis M. (1978). The C Programming
Language (1st ed.).
<https://retrofun.pl/wp-content/uploads/sites/2/2023/12/1978-ritchie-the-c-programming-language.pdf>
----
Seth McDonald.
sethmcmail at pm dot me (mailing lists)
2336 E8D2 FEB1 5300 692C 62A9 5839 6AD8 9243 D369
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 343 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 21/25] man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of wchar_t(3type)
2026-01-09 10:37 ` Alejandro Colomar
@ 2026-01-10 9:08 ` Seth McDonald
2026-01-10 11:44 ` Alejandro Colomar
0 siblings, 1 reply; 38+ messages in thread
From: Seth McDonald @ 2026-01-10 9:08 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: linux-man
[-- Attachment #1.1: Type: text/plain, Size: 1111 bytes --]
Hi Alex,
On Friday, 9 January 2026 at 20:37, Alejandro Colomar <alx@kernel.org> wrote:
> Hi Seth,
[...]
> I've recently learned that wchar_t and related APIs were introduced to
> ISO C in C95. If you are interested in them, you could check the C95
> draft (there's a link in standards(7) --I added it a few weeks ago--).
> Otherwise, I'll have a look at it myself. Let me know.
I can include this in later patches, as long as citing the draft is
sufficient justification. I personally tend to have a more 'final
standard only' mindset, but if you're okay with the draft, then I'm
all good to use it.
For the 3type section I've already covered, it'd probably be easier if
you could patch up the few types that first appeared in C95. I'd rather
not keep going back to refine previous patches, as I've found (from
general experience) this mindset tends to cause me to *constantly* find
new ways to polish what I've already done, preventing me from making
much progress.
----
Seth McDonald.
sethmcmail at pm dot me (mailing lists)
2336 E8D2 FEB1 5300 692C 62A9 5839 6AD8 9243 D369
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 343 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
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
0 siblings, 1 reply; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-10 11:30 UTC (permalink / raw)
To: Seth McDonald; +Cc: linux-man
[-- Attachment #1: Type: text/plain, Size: 3414 bytes --]
Hi Seth,
On Sat, Jan 10, 2026 at 07:57:49AM +0000, Seth McDonald wrote:
> Hi Alex,
>
> On Friday, 9 January 2026 at 20:34, Alejandro Colomar <alx@kernel.org> wrote:
> > Hi Seth,
> [...]
> > I think 'void*' is important enough that it would be useful to dig in
> > its history further. Was it an invention of C89? Or was it an
> > extension in some existing compilers? If the latter, it would be
> > interesting to document which systems had it before C89.
> >
> > I'm mentioning this just in case you know. Feel free to ignore
> > otherwise.
>
> 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.
Hmmm, since POSIX.1-1988 was already written after some C89 draft, it
seems void* was incorporated to C89 in a late draft.
>
> Looking at C89, it did explicitly specify void pointers as part of the
> language, stating that "[a] pointer to void shall have the same
> representation and alignment requirements as a pointer to a character
> type."[1]
>
> Looking* at K&R C, I skimmed through chapter 5 "Pointers and Arrays",
> and couldn't find any references to void pointers. In fact, it seems to
> use char pointers instead, similar to POSIX.1-1988.
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*.
> So I think what happened (pure speculation) was between 1978 and 1989,
> void pointers increased in user popularity and compiler support enough
> that ANSI decided to extend the language by adding void pointers to its
> 1989 C standard. Which would explain why POSIX.1-1988 also didn't have
> void pointers, but POSIX.1-1990 suddenly did.
>
> With regard to implementation support for void pointers prior to C89,
> this is where my knowledge falls short. I'm not the most educated on
> past implementations (yet).
That's fine. If anyone else reading the list knows anything, it would
be welcome.
> *I found this[2] PDF online which appears to be a scan of a (heavily
> annotated) copy of the first edition of The C Programming Language.
> I don't know if it's authentic though, so take it with a grain of salt.
Being a scan, it could be authentic. I don't have a physical copy of
the first edition, so can't compare.
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.
Cheers,
Alex
> ----
> [1] ANSI X3.159-1989 "Programming Language – C", Section 3.1.2.5
> "Types", p. 24.
> <https://nvlpubs.nist.gov/nistpubs/Legacy/FIPS/fipspub160.pdf>
> [2] Kernighan, Brian W., Ritchie, Dennis M. (1978). The C Programming
> Language (1st ed.).
> <https://retrofun.pl/wp-content/uploads/sites/2/2023/12/1978-ritchie-the-c-programming-language.pdf>
>
> ----
> Seth McDonald.
> sethmcmail at pm dot me (mailing lists)
> 2336 E8D2 FEB1 5300 692C 62A9 5839 6AD8 9243 D369
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 21/25] man/man3type/wchar_t.3type: HISTORY: Update first SUS appearance of wchar_t(3type)
2026-01-10 9:08 ` Seth McDonald
@ 2026-01-10 11:44 ` Alejandro Colomar
0 siblings, 0 replies; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-10 11:44 UTC (permalink / raw)
To: Seth McDonald; +Cc: linux-man
[-- Attachment #1: Type: text/plain, Size: 2748 bytes --]
Hi Seth,
On Sat, Jan 10, 2026 at 09:08:49AM +0000, Seth McDonald wrote:
> Hi Alex,
>
> On Friday, 9 January 2026 at 20:37, Alejandro Colomar <alx@kernel.org> wrote:
> > Hi Seth,
> [...]
> > I've recently learned that wchar_t and related APIs were introduced to
> > ISO C in C95. If you are interested in them, you could check the C95
> > draft (there's a link in standards(7) --I added it a few weeks ago--).
> > Otherwise, I'll have a look at it myself. Let me know.
>
> I can include this in later patches, as long as citing the draft is
> sufficient justification. I personally tend to have a more 'final
> standard only' mindset, but if you're okay with the draft, then I'm
> all good to use it.
For ISO C, unless you have the money to pay for the standard documents
(usually, this is only done by companies that need certification), the
drafts are the only available thing. The actual standards are behing a
paywall, and most people never see one. I have never seen an ISO C
standard (and I'm member of the C Committee).
The C Committee publishes drafts of what will become the standard, and
usually, it's enough to consult the draft that's closest to the
standard. See also:
<https://stackoverflow.com/questions/81656/where-do-i-find-the-current-c-or-c-standard-documents>
For C95, the draft n412 is, as far as I understand, identical to the
standard (except for the ISO cover sheet, etc.). Draft n412 was an
early draft for C99 published around the publication of C95, and even in
the SUMMARY of the draft, it states that "This document represents C90
with Technical Corrigendum 1 and Amendment 1 applied". See
<https://www.open-std.org/jtc1/sc22/wg14/www/docs/n412.pdf>.
For C23, for example, the draft n3220 is identical to C23 except for one
typo in C23 that was fixed in n3220. (n3220 is the first draft of C2y).
In other versions of ISO C, drafts may differ more from the actual
standard.
>
> For the 3type section I've already covered, it'd probably be easier if
> you could patch up the few types that first appeared in C95. I'd rather
> not keep going back to refine previous patches, as I've found (from
> general experience) this mindset tends to cause me to *constantly* find
> new ways to polish what I've already done, preventing me from making
> much progress.
Yes, I'm taking your patches as they already improve the pages. I was
mentioning this in case you want to write patches in the future that
also document C95. FWIW, I've applied the patches already.
Cheers,
Alex
>
> ----
> Seth McDonald.
> sethmcmail at pm dot me (mailing lists)
> 2336 E8D2 FEB1 5300 692C 62A9 5839 6AD8 9243 D369
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* origin of "void *" (was: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
2026-01-10 11:30 ` Alejandro Colomar
@ 2026-01-10 11:52 ` G. Branden Robinson
2026-01-10 12:07 ` Alejandro Colomar
0 siblings, 1 reply; 38+ messages in thread
From: G. Branden Robinson @ 2026-01-10 11:52 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Seth McDonald, linux-man
[-- Attachment #1: Type: text/plain, Size: 2296 bytes --]
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.
https://plumhall.com/newsite/phall.html
Looks like he passed away last year. :(
Regards,
Branden
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: origin of "void *" (was: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
2026-01-10 11:52 ` origin of "void *" (was: " G. Branden Robinson
@ 2026-01-10 12:07 ` Alejandro Colomar
2026-01-10 12:07 ` Alejandro Colomar
0 siblings, 1 reply; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-10 12:07 UTC (permalink / raw)
To: G. Branden Robinson; +Cc: Seth McDonald, linux-man
[-- 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 --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: origin of "void *" (was: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
2026-01-10 12:07 ` Alejandro Colomar
@ 2026-01-10 12:07 ` Alejandro Colomar
0 siblings, 0 replies; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-10 12:07 UTC (permalink / raw)
To: G. Branden Robinson; +Cc: Seth McDonald, linux-man
[-- Attachment #1: Type: text/plain, Size: 3136 bytes --]
On Sat, Jan 10, 2026 at 01:07:03PM +0100, Alejandro Colomar wrote:
> 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.
Forgot to add link:
<https://www.open-std.org/jtc1/sc22/wg14/www/C89Rationale.pdf>
>
>
> 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>
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
2026-01-09 10:33 ` Alejandro Colomar
2026-01-10 7:57 ` Seth McDonald
@ 2026-01-10 22:32 ` Adam Sampson
2026-01-12 14:28 ` Alejandro Colomar
1 sibling, 1 reply; 38+ messages in thread
From: Adam Sampson @ 2026-01-10 22:32 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: linux-man
Alejandro Colomar <alx@kernel.org> writes:
> I think 'void*' is important enough that it would be useful to dig in
> its history further. Was it an invention of C89? Or was it an
> extension in some existing compilers? If the latter, it would be
> interesting to document which systems had it before C89.
From evidence in the utzoo Usenet archive, the idea was around before
the ANSI C effort.
The first mention of "void *" is in November 1982, where Ken Dalka
(ihuxe!dalka) observed in net.lang.c that void * was accepted as a type.
He didn't say which compiler was being used, but an earlier post said
ihuxe "runs USG 4.0 UN*X".
The next is from Mary Ann Horton (mark@cbosgd.UUCP) in January 1984,
also in net.lang.c, who suggests using "(void *) 0" as a definition of
NULL, giving a varargs function with args terminated by NULL as an
example.
Then in March 1984, Doug Gwyn (gwyn@Brl-Vld.ARPA) says, as part of a
discussion about casting the result of malloc in net.unix-wizards:
> The C Language Standards Committee was talking about adding
> (void *) to the language as a generic pointer type. Perhaps
> that will eventually help...
It then shows up in various posts in both of those groups throughout
1984, including a summary by Henry Spencer in June 1984 of Larry
Rosler's presentation on the ANSI C project at Usenix saying:
> II. "void *" is a new kind of pointer, which cannot be dereferenced but
> can be assigned to any other type of pointer without a cast. The
> idea here is that "char *" is no longer required to be the
> "universal" pointer type which can point to anything. So for
> example, the declaration of fread earlier really should go:
>
> extern int fread(void *, int, int, FILE *);
>
> (People who have machines where all pointers have the same
> representation, don't complain. You are lucky. Others aren't.)
Thanks,
--
Adam Sampson <ats@offog.org> <http://offog.org/>
^ permalink raw reply [flat|nested] 38+ messages in thread
* Re: [PATCH v1 19/25] man/man3type/void.3type: HISTORY: Update first POSIX appearance of void(3type)
2026-01-10 22:32 ` Adam Sampson
@ 2026-01-12 14:28 ` Alejandro Colomar
0 siblings, 0 replies; 38+ messages in thread
From: Alejandro Colomar @ 2026-01-12 14:28 UTC (permalink / raw)
To: Adam Sampson; +Cc: linux-man
[-- Attachment #1: Type: text/plain, Size: 2598 bytes --]
Hi Adam,
On Sat, Jan 10, 2026 at 10:32:30PM +0000, Adam Sampson wrote:
> Alejandro Colomar <alx@kernel.org> writes:
>
> > I think 'void*' is important enough that it would be useful to dig in
> > its history further. Was it an invention of C89? Or was it an
> > extension in some existing compilers? If the latter, it would be
> > interesting to document which systems had it before C89.
>
> From evidence in the utzoo Usenet archive, the idea was around before
> the ANSI C effort.
>
> The first mention of "void *" is in November 1982, where Ken Dalka
> (ihuxe!dalka) observed in net.lang.c that void * was accepted as a type.
> He didn't say which compiler was being used, but an earlier post said
> ihuxe "runs USG 4.0 UN*X".
Huh, would this be the "System IV" that was never externally released?
The year seems consistent with that. Interesting! According to
<https://www.tuhs.org/Archive/Documentation/Manuals/Unix_4.0/README>,
the official name of this would be PWB 4.0. or Unix/TS 4.0.
Should we document it as Unix/TS 4.0?
This predates the C Committee by one year, BTW.
It would also be useful to know when the BSD lineage incorporated void*.
> The next is from Mary Ann Horton (mark@cbosgd.UUCP) in January 1984,
> also in net.lang.c, who suggests using "(void *) 0" as a definition of
> NULL, giving a varargs function with args terminated by NULL as an
> example.
>
> Then in March 1984, Doug Gwyn (gwyn@Brl-Vld.ARPA) says, as part of a
> discussion about casting the result of malloc in net.unix-wizards:
>
> > The C Language Standards Committee was talking about adding
> > (void *) to the language as a generic pointer type. Perhaps
> > that will eventually help...
>
> It then shows up in various posts in both of those groups throughout
> 1984, including a summary by Henry Spencer in June 1984 of Larry
> Rosler's presentation on the ANSI C project at Usenix saying:
>
> > II. "void *" is a new kind of pointer, which cannot be dereferenced but
> > can be assigned to any other type of pointer without a cast. The
> > idea here is that "char *" is no longer required to be the
> > "universal" pointer type which can point to anything. So for
> > example, the declaration of fread earlier really should go:
> >
> > extern int fread(void *, int, int, FILE *);
> >
> > (People who have machines where all pointers have the same
> > representation, don't complain. You are lucky. Others aren't.)
>
> Thanks,
Thanks a lot!
Have a lovely day!
Alex
--
<https://www.alejandro-colomar.es>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 38+ messages in thread
end of thread, other threads:[~2026-01-12 14:28 UTC | newest]
Thread overview: 38+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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
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
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox