Ben Walton <bdwalton@xxxxxxxxx> writes: > Sun Studio on Solaris issues warnings about improper initialization > values being used when defining tolower_trans_tbl in > ctype.c. tolower_trans_tbl is defined as char[], which studio's > compiler defaults to signed char[] due to the Solaris ABI. To resolve > this, instead of supplying -xchar or another option at build time, > declare tolower_trans_tbl as unsigned char. Update all appropriate > references to the new type. > > Signed-off-by: Ben Walton <bdwalton@xxxxxxxxx> > --- > ctype.c | 2 +- > git-compat-util.h | 2 +- > kwset.c | 8 ++++---- > kwset.h | 2 +- > 4 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/ctype.c b/ctype.c > index 0bfebb4..fc0225c 100644 > --- a/ctype.c > +++ b/ctype.c > @@ -30,7 +30,7 @@ const unsigned char sane_ctype[256] = { > }; > > /* For case-insensitive kwset */ > -const char tolower_trans_tbl[256] = { > +const unsigned char tolower_trans_tbl[256] = { > 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, > 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, > 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, It is not obvious from the context but later elements in this array have values above 0x7f. So you are saying your compiler complains when you write: signed char ch = 0xff; which sort of makes sense (because you actually are storing -1 not 255 to the variable). Throughout our codebase (and kwset is a borrowed code that does not count as "our" codebase ;-) we do use unsigned when we mean we want 255 and not -1, and this patch fixes that borrowed code to be in line with the rest. The conversion looked good from a cursory view; I didn't check it very carefully though. Thanks. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html