svn commit: r189268 - head/lib/libc/stdio

David Schultz das at FreeBSD.org
Sun Mar 1 20:07:59 PST 2009


Author: das
Date: Mon Mar  2 04:07:58 2009
New Revision: 189268
URL: http://svn.freebsd.org/changeset/base/189268

Log:
  The argument corresponding to %zn is supposed to be an ssize_t *, not
  a size_t *, although the distinction is moot in practice.

Modified:
  head/lib/libc/stdio/printf-pos.c
  head/lib/libc/stdio/printflocal.h

Modified: head/lib/libc/stdio/printf-pos.c
==============================================================================
--- head/lib/libc/stdio/printf-pos.c	Mon Mar  2 03:08:46 2009	(r189267)
+++ head/lib/libc/stdio/printf-pos.c	Mon Mar  2 04:07:58 2009	(r189268)
@@ -61,7 +61,7 @@ __FBSDID("$FreeBSD$");
 enum typeid {
 	T_UNUSED, TP_SHORT, T_INT, T_U_INT, TP_INT,
 	T_LONG, T_U_LONG, TP_LONG, T_LLONG, T_U_LLONG, TP_LLONG,
-	T_PTRDIFFT, TP_PTRDIFFT, T_SSIZET, T_SIZET, TP_SIZET,
+	T_PTRDIFFT, TP_PTRDIFFT, T_SSIZET, T_SIZET, TP_SSIZET,
 	T_INTMAXT, T_UINTMAXT, TP_INTMAXT, TP_VOID, TP_CHAR, TP_SCHAR,
 	T_DOUBLE, T_LONG_DOUBLE, T_WINT, TP_WCHAR
 };
@@ -374,7 +374,7 @@ reswitch:	switch (ch) {
 			else if (flags & PTRDIFFT)
 				error = addtype(&types, TP_PTRDIFFT);
 			else if (flags & SIZET)
-				error = addtype(&types, TP_SIZET);
+				error = addtype(&types, TP_SSIZET);
 			else if (flags & LLONGINT)
 				error = addtype(&types, TP_LLONG);
 			else if (flags & LONGINT)
@@ -565,7 +565,7 @@ reswitch:	switch (ch) {
 			else if (flags & PTRDIFFT)
 				error = addtype(&types, TP_PTRDIFFT);
 			else if (flags & SIZET)
-				error = addtype(&types, TP_SIZET);
+				error = addtype(&types, TP_SSIZET);
 			else if (flags & LLONGINT)
 				error = addtype(&types, TP_LLONG);
 			else if (flags & LONGINT)
@@ -719,8 +719,8 @@ build_arg_table(struct typetable *types,
 		    case T_SSIZET:
 			(*argtable) [n].sizearg = va_arg (ap, ssize_t);
 			break;
-		    case TP_SIZET:
-			(*argtable) [n].psizearg = va_arg (ap, size_t *);
+		    case TP_SSIZET:
+			(*argtable) [n].pssizearg = va_arg (ap, ssize_t *);
 			break;
 		    case T_INTMAXT:
 			(*argtable) [n].intmaxarg = va_arg (ap, intmax_t);

Modified: head/lib/libc/stdio/printflocal.h
==============================================================================
--- head/lib/libc/stdio/printflocal.h	Mon Mar  2 03:08:46 2009	(r189267)
+++ head/lib/libc/stdio/printflocal.h	Mon Mar  2 04:07:58 2009	(r189268)
@@ -79,7 +79,7 @@ union arg {
 	long	*plongarg;
 	long long *plonglongarg;
 	ptrdiff_t *pptrdiffarg;
-	size_t	*psizearg;
+	ssize_t	*pssizearg;
 	intmax_t *pintmaxarg;
 #ifndef NO_FLOATING_POINT
 	double	doublearg;


More information about the svn-src-head mailing list