Paul Smith wrote, on 08 Sep 2021:
>
> On Wed, 2021-09-08 at 09:29 +0100, Geoff Clare via austin-group-l at
> The Open Group wrote:
>
> > > But here we're inventing an entirely new operator that NO VERSION
> > > of make currently implements (yes, I understand that BSD make has a
> > > different operator that works in this same way but that's not the
> > > same thing: no existing makefile today contains the :::= operator
> > > so every makefile that wants to use it will have to be changed, and
> > > in a way which is not backward-compatible with older versions of
> > > make).
> > 
> > At the time that we accepted a proposal to add ::= no version of make
> > implemented it.  So your argument applies equally to that addition.
> 
> No, that's not right.  In issue 7 there is no way to have any sort of
> immediate expansion in standard make.  That's clearly something that
> users wanted (for the record note that I was not the one who wanted
> this standardized: I didn't propose it or push for it in any way; it
> was users who wanted this).
> 
> The ::= operator added immediate expansion.  That's certainly a useful
> addition, and worthy of creating a new operator for.

You are showing here that you misunderstand the POSIX standard
development process.  The ::= operator has NOT been "added" to the
standard.  There was a proposal to add it, which was accepted. This
status can change, and has changed for some proposed additions,
sometimes in radical ways (for example bug 267 which was an accepted
proposal in 2010 but is currently open and, if it makes it into
Issue 8 at all, will be quite different when it is re-resolved).

Now that the ::= addition is in an Issue 8 draft, that perhaps makes
it less likely that it will be removed or radically changed, but that
is still a possibility.  The statuses of ::= and :::= are currently
exactly identical in this regard.

> > Just because the proposal for ::= was applied to an earlier Issue 8
> > draft than :::= doesn't mean it has any claim to be treated
> > differently as part of the overall changes from Issue 7 to Issue 8.
> 
> If we wanted to have that discussion we should have had it back before
> ::= was accepted.

If we had known then what we know now, we would certainly have had
that discussion.

> At this point, ::= DOES have a claim to be treated differently because
> there IS ample implementation precedent for it: as a result of the
> previous decision back in 2011, GNU make has been providing the ::=
> operator now for almost 8 years (released in GNU make 4.0 in October
> 2013).  It can't be changed now.

You took a risk when you added ::= to gmake while it was only an
accepted proposal, not part of an approved revision to the standard.
And gmake users who make use of it in the expectation that is will be
required by POSIX are taking a similar risk.

> We could remove ::= from the standard

No we couldn't, because it is NOT (yet) in the standard.

> and instead add :::= but that
> seems useless to me: there are real makefiles out there using ::= which
> would be made NON-PORTABLE by removing ::= from the standard.

They are already non-portable, because ::= is not in the standard.

-- 
Geoff Clare <g.cl...@opengroup.org>
The Open Group, Apex Plaza, Forbury Road, Reading, RG1 1AX, England

        • Re: [Is... Paul Smith via austin-group-l at The Open Group
        • Re: [Is... Joerg Schilling via austin-group-l at The Open Group
        • Re: [Is... David A. Wheeler via austin-group-l at The Open Group
        • Re: [Is... Joerg Schilling via austin-group-l at The Open Group
        • Re: [Is... David A. Wheeler via austin-group-l at The Open Group
        • Re: [Is... Joerg Schilling via austin-group-l at The Open Group
        • Re: [Is... David A. Wheeler via austin-group-l at The Open Group
        • Re: [Is... Joerg Schilling via austin-group-l at The Open Group
        • Re: [Is... Scott Lurndal via austin-group-l at The Open Group
        • Re: [Is... Paul Smith via austin-group-l at The Open Group
      • Re: [Issue ... Geoff Clare via austin-group-l at The Open Group
        • Re: [Is... Paul Smith via austin-group-l at The Open Group
        • Re: [Is... Joerg Schilling via austin-group-l at The Open Group
  • Re: [Issue 8 drafts ... Joerg Schilling via austin-group-l at The Open Group

Reply via email to