Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F153032889
D37754.id114303.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D37754.id114303.diff
View Options
diff --git a/share/man/man7/sizeof.7.orig b/share/man/man7/sizeof.7
--- a/share/man/man7/sizeof.7.orig
+++ b/share/man/man7/sizeof.7
@@ -1,6 +1,5 @@
.\"
.\" Copyright (C) 2022 Jan Schaumann <jschauma@netmeister.org>.
-.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -35,17 +34,30 @@
.br
.Nm Vt expression
.Sh DESCRIPTION
-The size of primitive data types in C may differ
-across hardware platforms and implementations.
-It may be necessary or useful for a program to be able
-to determine the storage size of a data type or object.
-.Pp
The unary
.Nm
operator yields the storage size of an expression or
-data type in
+data type in bytes.
+.Sh DETAILS
+The size of data types in C (such as e.g., integers or
+pointers) may differ across hardware platforms and
+implementations.
+For example, systems on which integers, longs, and
+pointers are using 32 bits (e.g., i386) are referred
+to as using the "ILP32" data model, systems using
+64 bit longs and pointers (e.g., amd64 / x86_64)
+as the "LP64" data model.
+.Pp
+As it may be necessary or useful for a program to be able
+to determine the storage size of a data type or
+object,
+.Nm
+yields that size in
.Em char sized units .
-As a result, 'sizeof(char)' is always guaranteed to be 1.
+As a result,
+.Pf ' Vt sizeof(char) Ns '
+is always guaranteed to be
+1.
(The number of bits per
.Vt char
is given by the
@@ -59,13 +71,6 @@
.In sys/param.h
header.)
.Sh EXAMPLES
-Different platforms may use different data models.
-For example, systems on which integers, longs, and
-pointers are using 32 bits (e.g., i386) are referred
-to as using the "ILP32" data model, systems using
-64 bit longs and pointers (e.g., amd64 / x86_64)
-as the "LP64" data model.
-.Pp
The following examples illustrate the possible results
of calling
.Nm
@@ -129,7 +134,7 @@
.Pp
When applied to a struct or union,
.Nm
-returns the total number of units in the object,
+returns the total number of bytes in the object,
including any internal or trailing padding used to
align the object in memory.
This result may thus be larger than if the storage
@@ -229,7 +234,7 @@
Many systems provide this shortcut as the macro
.Dv ntimes()
via the
-.In sys/param.h
+.Dv sys/param.h
header file.
.Sh RESULT
The result of the
@@ -252,8 +257,10 @@
.Ed
.Pp
In that case, the operator will return the storage
-size of the pointer ('sizeof(char *)'), not the
-allocated memory!
+size of the pointer
+.Pf (' Vt sizeof(char *) Ns '),
+not the
+allocated memory.
.Pp
.Nm
determines the
@@ -270,6 +277,11 @@
preprocessor, the
.Nm
operator cannot be used in a preprocessor expression.
+.Pp
+The
+.Nm
+operator cannot be used on a bit-field object, a
+function type, or an incomplete type.
.Sh SEE ALSO
.Xr arch 7 ,
.Xr operator 7
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Apr 19, 6:15 PM (13 h, 54 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31788613
Default Alt Text
D37754.id114303.diff (2 KB)
Attached To
Mode
D37754: Bug 268310 - update sizeof.7
Attached
Detach File
Event Timeline
Log In to Comment