Subject: bug#20733: coreutils build problem

From: Stephane Chazelas <[email-masked]>
Date: Fri, 5 Jun 2015 09:43:10 +0100

2015-06-04 16:51:49 -0700, Paul Eggert:
> Eric Blake wrote:
> >Actually, POSIX_does_  allow for missing words between 'in' and the
> >terminator (; or newline) before 'do' (whether by a word that expands to
> >nothing, or by omission of words), requiring that the body of the for
> >statement is skipped in that case:
> 
> Ah, sorry, I was thinking of previous versions of POSIX, which
> required at least one word after the 'in'.  You're right, the
> current POSIX version doesn't require this any more.  So the Solaris
> sh in question is conforming to the old POSIX standard but not to
> the current one.
[...]

Note that the Solaris (10 and before) sh in question is not a
POSIX shell, it's still the Bourne shell which is not POSIX
conformant in many different ways (the POSIX sh spec is based on
a subset of ksh88, not the Bourne shell). In those Solaris
systems, POSIX sh is /usr/xpg4/bin/sh (based on ksh88).

Note that Solaris 11 /bin/sh is no longer the Bourne shell. It's
now based on ksh93 so is now POSIX at last.

-- 
Stephane