Tatsuo Ishii <ishii@sraoss.co.jp> writes:
>> 1. Can anyone think of a cleaner way to do this?
> For me, your patche seems to be a retrogression. In my understanding,
> the reason why PostgreSQL uses "char *" in many places is just it was
> designed in the old days when ASCII was the only charset in the world.
Are you proposing that we change all the "char *" to "unsigned char *"?
I looked at that briefly but it seems like a huge loss, both in
notational ugliness and in the amount of code that would have to be
touched. Also, it would force us to add a bunch of explicit casts to
avoid warnings with standard library functions like strlen(). To me the
bottom line is that 99% of the code only needs to know that a character
string is a character string. As this patch demonstrates, there is only
a tiny fraction that needs to have the "unsigned" declaration. I don't
think we should allow that fraction to dictate a notational burden for
all the rest.
regards, tom lane