From: Bruno Haible Date: Mon, 18 Dec 2006 12:39:11 +0000 (+0000) Subject: Make generic: introduce OFFSET_MAX. X-Git-Tag: v0.17~570 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=28891733352b6555d7117de9f8a965f6c3221866;p=thirdparty%2Fgettext.git Make generic: introduce OFFSET_MAX. --- diff --git a/gnulib-local/ChangeLog b/gnulib-local/ChangeLog index 60e711536..40fb2d86d 100644 --- a/gnulib-local/ChangeLog +++ b/gnulib-local/ChangeLog @@ -1,5 +1,8 @@ 2006-10-07 Bruno Haible + * lib/fstrcmp.c: Make generic. + (OFFSET_MAX): New macro. + * lib/fstrcmp.c: Modernize the coding style. * lib/fstrcmp.c: Include . Use bool where appropriate. diff --git a/gnulib-local/lib/fstrcmp.c b/gnulib-local/lib/fstrcmp.c index efd87017c..174572356 100644 --- a/gnulib-local/lib/fstrcmp.c +++ b/gnulib-local/lib/fstrcmp.c @@ -75,6 +75,10 @@ difference between two indices. Usually something like ssize_t. */ +/* Maximum value of type OFFSET. */ +#define OFFSET_MAX \ + ((((OFFSET)1 << (sizeof (OFFSET) * CHAR_BIT - 2)) - 1) * 2 + 1) + /* * Context of comparison operation. */ @@ -253,11 +257,11 @@ diag (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim, bool find_minimal, } /* Similarly extend the bottom-up search. */ if (bmin > dmin) - bd[--bmin - 1] = INT_MAX; + bd[--bmin - 1] = OFFSET_MAX; else ++bmin; if (bmax < dmax) - bd[++bmax + 1] = INT_MAX; + bd[++bmax + 1] = OFFSET_MAX; else --bmax; for (d = bmax; d >= bmin; d -= 2) @@ -431,7 +435,7 @@ diag (OFFSET xoff, OFFSET xlim, OFFSET yoff, OFFSET ylim, bool find_minimal, } } /* Find backward diagonal that minimizes X + Y. */ - bxybest = INT_MAX; + bxybest = OFFSET_MAX; for (d = bmax; d >= bmin; d -= 2) { OFFSET x;