Subject: bug#18987: the bourne shell printf-vs-\xHH portability trap

From: Jim Meyering <[email-masked]>
Date: Sat, 8 Nov 2014 17:54:03 -0800

On Sat, Nov 8, 2014 at 5:02 PM, Jim Meyering <[email-masked]> wrote:
> On Sat, Nov 8, 2014 at 3:38 PM, Norihiro Tanaka <[email-masked]> wrote:
>> On Sat, 8 Nov 2014 07:56:48 -0800
>> Jim Meyering <[email-masked]> wrote:
>>> Thank you for working on that.
>>> I've improved your patch: update the now-shared hex_printf_
>>> rather than making a copy, use a better definition of that function
>>> (knowing that "printf %s a b c d e" reuses the format string and
>>> prints just 5 bytes helps), also update word-multibyte to work
>>> with the new definition, and rewrite the commit log.
>>>
>>> I'll push after you ACK:
>>
>> Thanks for the review.  I added to a change the patch as word-multibyte
>> uses \OOO in printf simply, because use it in other test module e.g.
>> euc-mb.
>
> For reference, just because something is used in another test
> does not necessarily mean it is desirable. There is nontrivial
> variance in the style/quality of grep's test scripts.
>
> However, I can see how one might prefer to use printf
> directly, so since I've left your name on this change, I'll
> also let you choose octal here.
>
> To help with readability, I've given a name to
> the character we're using as input: e_acute, since that
> one is used in other tests.

I pushed that, then tested more and found an error I'd introduced.
Here's the fix: