Subject: Re: bug#17056: dfa.c patch for systems with no locale support

From: Aharon Robbins <[email-masked]>
Date: Wed, 26 Mar 2014 22:08:39 +0200

Hi Paul.

> Date: Sun, 23 Mar 2014 14:16:47 -0700
> From: Paul Eggert <[email-masked]>
> To: Aharon Robbins <[email-masked]>, [email-masked]
> Subject: Re: bug#17056: dfa.c patch for systems with no locale support
>
> Aharon Robbins wrote:
>
> > See the original report below
>
> I downloaded the DJGPP sources.  LC_ALL is defined unless one compiles 
> as a freestanding environment, in which case neither LC_ALL nor 
> setlocale are declared.  So my guess is that your correspondent is using 
> a freestanding environment somehow, and the patch that I suggested 
> should work.  It's better to avoid #ifdefs inside functions so I 
> installed this into the grep master (see attached) and am marking this 
> as done; we can always resurrect it if my guess is wrong.

I don't think your change is right:

	#ifndef LC_ALL
	# define setlocale(category, locale) NULL
	#endif

If setlocale isn't available, we want to assume that we DO have a
unibyte locale, in which case we should be defining this as

	# define setlocale(category, locale) ("C")

No?

I will pass the current dfa.c on to my tester, but I think it's still
not quite right.

Thanks,

Arnold