On Wed, 24 Jan 2001, Bruce Momjian wrote:
>
> Is this still an issue on FreeBSD? Do we need to disable this problem
> somehow?
This is still actual problem on recent FreeBSD 4.2-STABLE. And I
successfully resolved this problem with my patch on several FreeBSD
installations of PostgreSQL including version 7.0.3.
As to comments on the patch, I found only one.
On Fri, 16 Jun 2000, Giles Lean wrote:
>
> > Can someone comment on this?
>
> The ctype functions operate for unsigned characters. I think it's a
> K&R C hangover that they take int arguments, as anything smaller than
> int was widened as it was passed in a function call.
>
> There are plenty of platforms where 'char' is a signed type, including
> HP-UX on PA-RISC and some NetBSD but not all NetBSD ports.
FreeBSD have signed char by default too and this is the main piece of the
problem.
> > > othercase(ch)
> > > int ch;
> > > {
> > > ...
> > > return toupper(ch);
>
> That's definitely not OK. toupper((unsigned char) ch) is. I'm not
> familiar enough with the code that is being patched to comment on the
> patch that was offered, sorry.
This comment refers to original code, not to patched one.
Kind regards,
Andriy I Pilipenko
PAI1-RIPE