Proposed patch to clean up signed-ness warnings - Mailing list pgsql-patches

From Tom Lane
Subject Proposed patch to clean up signed-ness warnings
Date
Msg-id 16595.1127428151@sss.pgh.pa.us
Whole thread Raw
Responses Re: Proposed patch to clean up signed-ness warnings  (Tatsuo Ishii <ishii@sraoss.co.jp>)
List pgsql-patches
With gcc 4 spreading, it seems like it's past time to do something about
all those signed-vs-unsigned-char warnings that it emits.  (Translation:
now that I have to use gcc 4 regularly, I got annoyed enough to fix it
;-))

I looked into it a little and determined that nearly all the warnings
were associated with the multibyte code.  Outside the mb subsystem,
our code pretty much uses "char *" for strings, but inside mb it's
mostly "unsigned char *", which is needed because there are lots of
inequality comparisons in there.  It seemed to me that the cleanest
fix was to change the external API of the mb subsystem to take and
return "char *", while still using "unsigned char *" internally.
The attached patch eliminates all signed-ness warnings in CVS tip
using this approach.  It's kinda long and tedious, but straightforward,
and quite a lot of the changes simplify existing code by removing
casts that aren't needed anymore.

Two questions for the list:

1. Can anyone think of a cleaner way to do this?

2. Is there objection to applying this patch now (ie, before beta3)?
It's not quite a bug fix, but I think it'll make it easier to find
bugs going forward.

            regards, tom lane


Attachment

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: psql \x bug
Next
From: Tatsuo Ishii
Date:
Subject: Re: Proposed patch to clean up signed-ness warnings