From: Jim Meyering Date: Wed, 3 Feb 2010 17:01:36 +0000 (+0100) Subject: regcomp.c: avoid the sole warning from gcc's -Wtype-limits X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9d0ad652de159d08e5f679842f8a2a5658196361;p=pspp regcomp.c: avoid the sole warning from gcc's -Wtype-limits * lib/regcomp.c (TYPE_SIGNED): Define. (parse_dup_op): Use it to avoid the sole warning from -Wtype-limits. --- diff --git a/ChangeLog b/ChangeLog index fb38064dc3..093bdcfa8b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2010-02-03 Jim Meyering + regcomp.c: avoid the sole warning from gcc's -Wtype-limits + * lib/regcomp.c (TYPE_SIGNED): Define. + (parse_dup_op): Use it to avoid the sole warning from -Wtype-limits. + regcomp.c: avoid a new -Wshadow warning * lib/regcomp.c (create_initial_state): Do not shadow local "err". diff --git a/lib/regcomp.c b/lib/regcomp.c index 32997ccdd5..d5968bd501 100644 --- a/lib/regcomp.c +++ b/lib/regcomp.c @@ -2577,10 +2577,14 @@ parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa, if (BE (tree == NULL, 0)) goto parse_dup_op_espace; +/* From gnulib's "intprops.h": + True if the arithmetic type T is signed. */ +#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) + /* This loop is actually executed only when end != REG_MISSING, to rewrite {0,n} as ((...?)?)?... We have already created the start+1-th copy. */ - if ((Idx) -1 < 0 || end != REG_MISSING) + if (TYPE_SIGNED (Idx) || end != REG_MISSING) for (i = start + 2; i <= end; ++i) { elem = duplicate_tree (elem, dfa);