# HG changeset patch # User Paul Eggert # Date 1287771257 25200 # Node ID f44f7159cdc438553b574fa9a48544c39a3394b7 # Parent b7fdddf92299e9506ab725014ed94f4b3f16d08a inttostr: simplify by removing unnecessary redundancy * lib/anytostr.c: Don't include verify.h. (anytostr): Don't verify that TYPE_SIGNED (inttype) equals inttype_is_signed. Instead, use TYPE_SIGNED (inttype) directly. This removes the need for inttype_is_signed, which was put in to suppress some GCC warnings about conversions. This rewrite should also suppress those warnings. * lib/imaxtostr.c (inttype_is_signed): Remove; no longer needed. * lib/inttostr.c, lib/offtostr.c, lib/uinttostr.c, lib/umaxtostr.c: Likewise. * modules/inttostr (Depends-on): Remove 'verify'. diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2010-10-22 Paul Eggert + + inttostr: simplify by removing unnecessary redundancy + * lib/anytostr.c: Don't include verify.h. + (anytostr): Don't verify that TYPE_SIGNED (inttype) equals + inttype_is_signed. Instead, use TYPE_SIGNED (inttype) directly. + This removes the need for inttype_is_signed, which was put in to + suppress some GCC warnings about conversions. This rewrite should + also suppress those warnings. + * lib/imaxtostr.c (inttype_is_signed): Remove; no longer needed. + * lib/inttostr.c, lib/offtostr.c, lib/uinttostr.c, lib/umaxtostr.c: + Likewise. + * modules/inttostr (Depends-on): Remove 'verify'. + 2010-10-21 Bruno Haible nl_langinfo test: Avoid test failure on NetBSD 5. diff --git a/lib/anytostr.c b/lib/anytostr.c --- a/lib/anytostr.c +++ b/lib/anytostr.c @@ -20,7 +20,6 @@ #include #include "inttostr.h" -#include "verify.h" /* Convert I to a printable string in BUF, which must be at least INT_BUFSIZE_BOUND (INTTYPE) bytes long. Return the address of the @@ -29,12 +28,10 @@ char * __attribute_warn_unused_result__ anytostr (inttype i, char *buf) { - verify (TYPE_SIGNED (inttype) == inttype_is_signed); char *p = buf + INT_STRLEN_BOUND (inttype); *p = 0; -#if inttype_is_signed - if (i < 0) + if (TYPE_SIGNED (inttype) && i < 0) { do *--p = '0' - i % 10; @@ -43,7 +40,6 @@ *--p = '-'; } else -#endif { do *--p = '0' + i % 10; diff --git a/lib/imaxtostr.c b/lib/imaxtostr.c --- a/lib/imaxtostr.c +++ b/lib/imaxtostr.c @@ -1,4 +1,3 @@ #define anytostr imaxtostr #define inttype intmax_t -#define inttype_is_signed 1 #include "anytostr.c" diff --git a/lib/inttostr.c b/lib/inttostr.c --- a/lib/inttostr.c +++ b/lib/inttostr.c @@ -1,4 +1,3 @@ #define anytostr inttostr #define inttype int -#define inttype_is_signed 1 #include "anytostr.c" diff --git a/lib/offtostr.c b/lib/offtostr.c --- a/lib/offtostr.c +++ b/lib/offtostr.c @@ -1,4 +1,3 @@ #define anytostr offtostr #define inttype off_t -#define inttype_is_signed 1 #include "anytostr.c" diff --git a/lib/uinttostr.c b/lib/uinttostr.c --- a/lib/uinttostr.c +++ b/lib/uinttostr.c @@ -1,4 +1,3 @@ #define anytostr uinttostr #define inttype unsigned int -#define inttype_is_signed 0 #include "anytostr.c" diff --git a/lib/umaxtostr.c b/lib/umaxtostr.c --- a/lib/umaxtostr.c +++ b/lib/umaxtostr.c @@ -1,4 +1,3 @@ #define anytostr umaxtostr #define inttype uintmax_t -#define inttype_is_signed 0 #include "anytostr.c" diff --git a/modules/inttostr b/modules/inttostr --- a/modules/inttostr +++ b/modules/inttostr @@ -14,7 +14,6 @@ Depends-on: intprops stdint -verify configure.ac: gl_INTTOSTR