svn commit: r196776 - head/lib/libc/locale
Dag-Erling Smorgrav
des at FreeBSD.org
Thu Sep 3 10:06:38 UTC 2009
Author: des
Date: Thu Sep 3 10:06:37 2009
New Revision: 196776
URL: http://svn.freebsd.org/changeset/base/196776
Log:
Document the need for a cast when passing a char to a ctype function.
MFC after: 2 weeks
Modified:
head/lib/libc/locale/ctype.3
head/lib/libc/locale/digittoint.3
head/lib/libc/locale/isalnum.3
head/lib/libc/locale/isalpha.3
head/lib/libc/locale/isascii.3
head/lib/libc/locale/isblank.3
head/lib/libc/locale/iscntrl.3
head/lib/libc/locale/isdigit.3
head/lib/libc/locale/isgraph.3
head/lib/libc/locale/isideogram.3
head/lib/libc/locale/islower.3
head/lib/libc/locale/isphonogram.3
head/lib/libc/locale/isprint.3
head/lib/libc/locale/ispunct.3
head/lib/libc/locale/isrune.3
head/lib/libc/locale/isspace.3
head/lib/libc/locale/isspecial.3
head/lib/libc/locale/isupper.3
head/lib/libc/locale/isxdigit.3
head/lib/libc/locale/toascii.3
head/lib/libc/locale/tolower.3
head/lib/libc/locale/toupper.3
Modified: head/lib/libc/locale/ctype.3
==============================================================================
--- head/lib/libc/locale/ctype.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/ctype.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -28,7 +28,7 @@
.\" @(#)ctype.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd March 30, 2004
+.Dd September 3, 2009
.Dt CTYPE 3
.Os
.Sh NAME
@@ -111,6 +111,13 @@ They are available as macros, defined in
.In ctype.h ,
or as true functions in the C library.
See the specific manual pages for more information.
+.Pp
+.Em NOTE :
+if the value passed to one of these functions is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh SEE ALSO
.Xr digittoint 3 ,
.Xr isalnum 3 ,
Modified: head/lib/libc/locale/digittoint.3
==============================================================================
--- head/lib/libc/locale/digittoint.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/digittoint.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -28,7 +28,7 @@
.\" @(#)digittoint.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd April 6, 2001
+.Dd September 3, 2009
.Dt DIGITTOINT 3
.Os
.Sh NAME
@@ -46,6 +46,15 @@ The
function converts a numeric character to its corresponding integer value.
The character can be any decimal digit or hexadecimal digit.
With hexadecimal characters, the case of the values does not matter.
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn digittoint
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn digittoint
Modified: head/lib/libc/locale/isalnum.3
==============================================================================
--- head/lib/libc/locale/isalnum.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isalnum.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isalnum.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISALNUM 3
.Os
.Sh NAME
@@ -75,6 +75,15 @@ In the ASCII character set, this include
.It "\&164\ ``t'' \t165\ ``u'' \t166\ ``v'' \t167\ ``w'' \t170\ ``x''"
.It "\&171\ ``y'' \t172\ ``z''"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isalnum
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isalnum
Modified: head/lib/libc/locale/isalpha.3
==============================================================================
--- head/lib/libc/locale/isalpha.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isalpha.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isalpha.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISALPHA 3
.Os
.Sh NAME
@@ -73,6 +73,15 @@ In the ASCII character set, this include
.It "\&164\ ``t'' \t165\ ``u'' \t166\ ``v'' \t167\ ``w'' \t170\ ``x''"
.It "\&171\ ``y'' \t172\ ``z''"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isalpha
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isalpha
Modified: head/lib/libc/locale/isascii.3
==============================================================================
--- head/lib/libc/locale/isascii.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isascii.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -28,7 +28,7 @@
.\" @(#)isascii.3 8.2 (Berkeley) 12/11/93
.\" $FreeBSD$
.\"
-.Dd October 6, 2002
+.Dd September 3, 2009
.Dt ISASCII 3
.Os
.Sh NAME
@@ -47,6 +47,15 @@ function tests for an
.Tn ASCII
character, which is any character
between 0 and octal 0177 inclusive.
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isascii
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh SEE ALSO
.Xr ctype 3 ,
.Xr iswascii 3 ,
Modified: head/lib/libc/locale/isblank.3
==============================================================================
--- head/lib/libc/locale/isblank.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isblank.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -28,7 +28,7 @@
.\" @(#)isblank.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISBLANK 3
.Os
.Sh NAME
@@ -57,6 +57,15 @@ The value of the argument must be repres
.Vt "unsigned char"
or the value of
.Dv EOF .
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isblank
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isblank
Modified: head/lib/libc/locale/iscntrl.3
==============================================================================
--- head/lib/libc/locale/iscntrl.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/iscntrl.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)iscntrl.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISCNTRL 3
.Os
.Sh NAME
@@ -65,6 +65,15 @@ In the ASCII character set, this include
.It "\&031\ EM \t032\ SUB \t033\ ESC \t034\ FS \t035\ GS"
.It "\&036\ RS \t037\ US \t177\ DEL"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn iscntrl
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn iscntrl
Modified: head/lib/libc/locale/isdigit.3
==============================================================================
--- head/lib/libc/locale/isdigit.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isdigit.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isdigit.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd May 4, 2007
+.Dd September 3, 2009
.Dt ISDIGIT 3
.Os
.Sh NAME
@@ -68,6 +68,15 @@ The value of the argument must be repres
.Vt "unsigned char"
or the value of
.Dv EOF .
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isdigit
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isdigit
Modified: head/lib/libc/locale/isgraph.3
==============================================================================
--- head/lib/libc/locale/isgraph.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isgraph.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isgraph.3 8.2 (Berkeley) 12/11/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISGRAPH 3
.Os
.Sh NAME
@@ -80,6 +80,15 @@ In the ASCII character set, this include
.It "\&166\ ``v'' \t167\ ``w'' \t170\ ``x'' \t171\ ``y'' \t172\ ``z''"
.It "\&173\ ``{'' \t174\ ``|'' \t175\ ``}'' \t176\ ``~''"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isgraph
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isgraph
Modified: head/lib/libc/locale/isideogram.3
==============================================================================
--- head/lib/libc/locale/isideogram.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isideogram.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 30, 2004
+.Dd September 3, 2009
.Dt ISIDEOGRAM 3
.Os
.Sh NAME
@@ -41,6 +41,15 @@
The
.Fn isideogram
function tests for an ideographic character.
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isideogram
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isideogram
Modified: head/lib/libc/locale/islower.3
==============================================================================
--- head/lib/libc/locale/islower.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/islower.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)islower.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISLOWER 3
.Os
.Sh NAME
@@ -64,6 +64,15 @@ In the ASCII character set, this include
.It "\&165\ ``u'' \t166\ ``v'' \t167\ ``w'' \t170\ ``x'' \t171\ ``y''"
.It "\&172\ ``z''"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn islower
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn islower
Modified: head/lib/libc/locale/isphonogram.3
==============================================================================
--- head/lib/libc/locale/isphonogram.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isphonogram.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 30, 2004
+.Dd September 3, 2009
.Dt ISPHONOGRAM 3
.Os
.Sh NAME
@@ -41,6 +41,15 @@
The
.Fn isphonogram
function tests for a phonographic character.
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isphonogram
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isphonogram
Modified: head/lib/libc/locale/isprint.3
==============================================================================
--- head/lib/libc/locale/isprint.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isprint.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isprint.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISPRINT 3
.Os
.Sh NAME
@@ -78,6 +78,15 @@ In the ASCII character set, this include
.It "\&165\ ``u'' \t166\ ``v'' \t167\ ``w'' \t170\ ``x'' \t171\ ``y''"
.It "\&172\ ``z'' \t173\ ``{'' \t174\ ``|'' \t175\ ``}'' \t176\ ``~''"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isprint
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isprint
Modified: head/lib/libc/locale/ispunct.3
==============================================================================
--- head/lib/libc/locale/ispunct.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/ispunct.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)ispunct.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISPUNCT 3
.Os
.Sh NAME
@@ -70,6 +70,15 @@ In the ASCII character set, this include
.It "\&136\ ``^'' \t137\ ``_'' \t140\ ```'' \t173\ ``{'' \t174\ ``|''"
.It "\&175\ ``}'' \t176\ ``~''"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn ispunct
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn ispunct
Modified: head/lib/libc/locale/isrune.3
==============================================================================
--- head/lib/libc/locale/isrune.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isrune.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 30, 2004
+.Dd September 3, 2009
.Dt ISRUNE 3
.Os
.Sh NAME
@@ -46,6 +46,15 @@ In the
.Tn ASCII
character set, this is equivalent to
.Fn isascii .
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isrune
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isrune
Modified: head/lib/libc/locale/isspace.3
==============================================================================
--- head/lib/libc/locale/isspace.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isspace.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isspace.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISSPACE 3
.Os
.Sh NAME
@@ -61,6 +61,15 @@ The value of the argument must be repres
.Vt "unsigned char"
or the value of
.Dv EOF .
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isspace
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isspace
Modified: head/lib/libc/locale/isspecial.3
==============================================================================
--- head/lib/libc/locale/isspecial.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isspecial.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 30, 2004
+.Dd September 3, 2009
.Dt ISSPECIAL 3
.Os
.Sh NAME
@@ -41,6 +41,15 @@
The
.Fn isspecial
function tests for a special character.
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isspecial
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isspecial
Modified: head/lib/libc/locale/isupper.3
==============================================================================
--- head/lib/libc/locale/isupper.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isupper.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isupper.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISUPPER 3
.Os
.Sh NAME
@@ -64,6 +64,15 @@ In the ASCII character set, this include
.It "\&125\ ``U'' \t126\ ``V'' \t127\ ``W'' \t130\ ``X'' \t131\ ``Y''"
.It "\&132\ ``Z''"
.El
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isupper
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isupper
Modified: head/lib/libc/locale/isxdigit.3
==============================================================================
--- head/lib/libc/locale/isxdigit.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/isxdigit.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)isxdigit.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt ISXDIGIT 3
.Os
.Sh NAME
@@ -71,6 +71,15 @@ The value of the argument must be repres
.Vt "unsigned char"
or the value of
.Dv EOF .
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn isxdigit
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn isxdigit
Modified: head/lib/libc/locale/toascii.3
==============================================================================
--- head/lib/libc/locale/toascii.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/toascii.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -28,7 +28,7 @@
.\" @(#)toascii.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd June 4, 1993
+.Dd September 3, 2009
.Dt TOASCII 3
.Os
.Sh NAME
@@ -45,6 +45,15 @@ The
.Fn toascii
function strips all but the low 7 bits from a letter,
including parity or other marker bits.
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn toascii
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
The
.Fn toascii
Modified: head/lib/libc/locale/tolower.3
==============================================================================
--- head/lib/libc/locale/tolower.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/tolower.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)tolower.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt TOLOWER 3
.Os
.Sh NAME
@@ -53,6 +53,15 @@ The argument must be representable as an
.Vt "unsigned char"
or the value of
.Dv EOF .
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn tolower
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
If the argument is an upper-case letter, the
.Fn tolower
Modified: head/lib/libc/locale/toupper.3
==============================================================================
--- head/lib/libc/locale/toupper.3 Thu Sep 3 09:33:57 2009 (r196775)
+++ head/lib/libc/locale/toupper.3 Thu Sep 3 10:06:37 2009 (r196776)
@@ -32,7 +32,7 @@
.\" @(#)toupper.3 8.1 (Berkeley) 6/4/93
.\" $FreeBSD$
.\"
-.Dd July 17, 2005
+.Dd September 3, 2009
.Dt TOUPPER 3
.Os
.Sh NAME
@@ -53,6 +53,15 @@ The argument must be representable as an
.Vt "unsigned char"
or the value of
.Dv EOF .
+.Pp
+.Em NOTE :
+if the value passed to the
+.Fn toupper
+function is a
+.Vt signed char ,
+as is usually the case, it must be cast to an
+.Vt unsigned char
+to avoid sign-extension errors.
.Sh RETURN VALUES
If the argument is a lower-case letter, the
.Fn toupper
More information about the svn-src-all
mailing list