Re: [PATCH 2/2] system_data_types.7: void *: Add info about pointer artihmetic

From: Alejandro Colomar
Date: Fri Oct 02 2020 - 05:46:33 EST


Hi Michael,

The 2/2 is a typo. This is a standalone patch.

Cheers,

Alex

On 2020-10-02 11:44, Alejandro Colomar wrote:
Reported-by: Paul Eggert <eggert@xxxxxxxxxxx>
Reported-by: David Laight <David.Laight@xxxxxxxxxx>
Signed-off-by: Alejandro Colomar <colomar.6.4.3@xxxxxxxxx>
---

Paul and David,
Thanks for your input!

Alex


man7/system_data_types.7 | 11 +++++++++++
1 file changed, 11 insertions(+)

diff --git a/man7/system_data_types.7 b/man7/system_data_types.7
index 6451782db..bc7d5a8a0 100644
--- a/man7/system_data_types.7
+++ b/man7/system_data_types.7
@@ -1918,6 +1918,17 @@ A value of this type can't be dereferenced,
as it would give a value of type
.I void
which is not possible.
+Likewise, pointer arithmetic is not possible with this type.
+However, in GNU C, poitner arithmetic is allowed
+as an extension to the standard;
+this is done by treating the size of a
+.I void
+or of a function as 1.
+A consequence of this is that
+.I sizeof
+is also allowed on
+.I void
+and on function types, and returns 1.
.PP
The conversion specifier for
.I void *