diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2010-10-13 20:35:50 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2010-10-13 22:41:13 -0700 |
commit | 34ef0a01f0e1d620dac17d35832449b6880641b0 (patch) | |
tree | a556fe98c35d185eb392fb3a3f953b39995e45c0 /src | |
parent | 71a3fd73a1fa005ee4ac969e57b43f90237656b9 (diff) | |
download | coreutils-34ef0a01f0e1d620dac17d35832449b6880641b0.tar.xz |
sort: fix unportable cast of unsigned char * -> char *
* src/sort.c (fold_toupper): Change this back from char to
unsigned char, fixing a portability issue introduced in commit
59e2e55d0f154a388adc9bac37d2b45f2ba971f8 dated February 26, as the
C Standard doesn't let you convert from unsigned char * to char *
without a cast, and the (in theory more portable) style here is to
convert char values, not pointer values.
(getmonth): Convert char to unsigned char when needed for
comparison.
Diffstat (limited to 'src')
-rw-r--r-- | src/sort.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/sort.c b/src/sort.c index 89f7be32c..c155edadb 100644 --- a/src/sort.c +++ b/src/sort.c @@ -268,7 +268,7 @@ static bool nonprinting[UCHAR_LIM]; static bool nondictionary[UCHAR_LIM]; /* Translation table folding lower case to upper. */ -static unsigned char fold_toupper[UCHAR_LIM]; +static char fold_toupper[UCHAR_LIM]; #define MONTHS_PER_YEAR 12 @@ -1952,12 +1952,12 @@ getmonth (char const *month, char **ea) *ea = (char *) m; return monthtab[ix].val; } - if (fold_toupper[to_uchar (*m)] < to_uchar (*n)) + if (to_uchar (fold_toupper[to_uchar (*m)]) < to_uchar (*n)) { hi = ix; break; } - else if (fold_toupper[to_uchar (*m)] > to_uchar (*n)) + else if (to_uchar (fold_toupper[to_uchar (*m)]) > to_uchar (*n)) { lo = ix + 1; break; |