Subject: bug#22181: endless loop in grep 2.22

From: Jim Meyering <[email-masked]>
Date: Sat, 9 Jan 2016 11:27:28 -0800

On Sat, Jan 9, 2016 at 10:20 AM, Paul Eggert <[email-masked]> wrote:
> Jim Meyering wrote:
>>
>> Hah! TIL head -N and yes are not portable. Thank you.
>> I've been spoiled/corrupted by writing coreutils tests for so long.
>>
>> I would prefer to continue to use "yes" via the following, at least
>> in the first test. That way is clearer. In the second, I could go either
>> way, since your awk process replaces both yes and head, at the
>> expense of being a bit less concise and less readable.
>
>
> I could go either way too.
>
> Though it's not needed for these particular tests, the shell function can be
> tweaked to default to 'y' and to output quotes and backlashes in the arg
> as-is, like BSD 'yes'.  Something like this, perhaps?
>
> yes() { line=${*-y} ${AWK-awk} 'BEGIN{for (;;) print ENVIRON["line"]}'; }

Indeed, I thought of quotes and backslashes a little too late.
Nice hack. I will use that, probably with an added "local ",
since init.sh ensures that the test-run shell supports that.
Hmm... I see that gnulib's init.sh has a stray (new) use
of local. Will remove.