This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Don't document the types of standard typedefs
Here is a revised patch describing the properties of these types (both
generic from POSIX, and specific to the GNU C Library) but not exact
equivalences.
2012-02-28 Joseph Myers <joseph@codesourcery.com>
* manual/filesys.texi (mode_t): Describe constraints on size and
signedness, not exact equivalence to a particular type.
(ino_t): Likewise.
(ino64_t): Likewise.
(dev_t): Likewise.
(nlink_t): Likewise.
(blkcnt_t): Likewise.
(blkcnt64_t): Likewise.
* manual/llio.texi (off_t): Likewise.
diff --git a/manual/filesys.texi b/manual/filesys.texi
index bf3abb4..872e371 100644
--- a/manual/filesys.texi
+++ b/manual/filesys.texi
@@ -1770,17 +1770,18 @@ Here is a list of them.
@comment sys/types.h
@comment POSIX.1
@deftp {Data Type} mode_t
-This is an integer data type used to represent file modes. In the
-GNU system, this is equivalent to @code{unsigned int}.
+This is an integer data type used to represent file modes. In
+@theglibc{}, this is an unsigned type no narrower than @code{unsigned
+int}.
@end deftp
@cindex inode number
@comment sys/types.h
@comment POSIX.1
@deftp {Data Type} ino_t
-This is an arithmetic data type used to represent file serial numbers.
+This is an unsigned integer type used to represent file serial numbers.
(In Unix jargon, these are sometimes called @dfn{inode numbers}.)
-In the GNU system, this type is equivalent to @code{unsigned long int}.
+In @theglibc{}, this type is no narrower than @code{unsigned int}.
If the source is compiled with @code{_FILE_OFFSET_BITS == 64} this type
is transparently replaced by @code{ino64_t}.
@@ -1789,9 +1790,9 @@ is transparently replaced by @code{ino64_t}.
@comment sys/types.h
@comment Unix98
@deftp {Data Type} ino64_t
-This is an arithmetic data type used to represent file serial numbers
-for the use in LFS. In the GNU system, this type is equivalent to
-@code{unsigned long long int}.
+This is an unsigned integer type used to represent file serial numbers
+for the use in LFS. In @theglibc{}, this type is no narrower than
+@code{unsigned int}.
When compiling with @code{_FILE_OFFSET_BITS == 64} this type is
available under the name @code{ino_t}.
@@ -1801,21 +1802,20 @@ available under the name @code{ino_t}.
@comment POSIX.1
@deftp {Data Type} dev_t
This is an arithmetic data type used to represent file device numbers.
-In the GNU system, this is equivalent to @code{int}.
+In @theglibc{}, this is an integer type no narrower than @code{int}.
@end deftp
@comment sys/types.h
@comment POSIX.1
@deftp {Data Type} nlink_t
-This is an arithmetic data type used to represent file link counts.
-In the GNU system, this is equivalent to @code{unsigned short int}.
+This is an integer type used to represent file link counts.
@end deftp
@comment sys/types.h
@comment Unix98
@deftp {Data Type} blkcnt_t
-This is an arithmetic data type used to represent block counts.
-In the GNU system, this is equivalent to @code{unsigned long int}.
+This is a signed integer type used to represent block counts.
+In @theglibc{}, this type is no narrower than @code{int}.
If the source is compiled with @code{_FILE_OFFSET_BITS == 64} this type
is transparently replaced by @code{blkcnt64_t}.
@@ -1824,9 +1824,8 @@ is transparently replaced by @code{blkcnt64_t}.
@comment sys/types.h
@comment Unix98
@deftp {Data Type} blkcnt64_t
-This is an arithmetic data type used to represent block counts for the
-use in LFS. In the GNU system, this is equivalent to @code{unsigned
-long long int}.
+This is a signed integer type used to represent block counts for the
+use in LFS. In @theglibc{}, this type is no narrower than @code{int}.
When compiling with @code{_FILE_OFFSET_BITS == 64} this type is
available under the name @code{blkcnt_t}.
diff --git a/manual/llio.texi b/manual/llio.texi
index 9fa0908..f3ed542 100644
--- a/manual/llio.texi
+++ b/manual/llio.texi
@@ -776,8 +776,8 @@ character.
@comment sys/types.h
@comment POSIX.1
@deftp {Data Type} off_t
-This is an arithmetic data type used to represent file sizes.
-In the GNU system, this is equivalent to @code{fpos_t} or @code{long int}.
+This is a signed integer type used to represent file sizes. In
+@theglibc{}, this type is no narrower than @code{int}.
If the source is compiled with @code{_FILE_OFFSET_BITS == 64} this type
is transparently replaced by @code{off64_t}.
--
Joseph S. Myers
joseph@codesourcery.com