Update of bug #67265 (group make):

              Item Group:                    None => Enhancement

    _______________________________________________________

Follow-up Comment #4:

It is not a bug.  All expansion in recipes happens the same way, regardless of
whether what's being expanded is a variable or a function, or which function
it is.

We're not going to make $(file...) a special case that expands differently
than everything else.

There's an argument to be made that the way make handles expansion of recipes
is wrong, and that it should expand each line in a recipe separately just
before it's going to be executed, instead of all lines being expanded up
front.  Having answered questions about this arguably surprising behavior for
many years I'm sympathetic to that view.

There's nothing in POSIX that requires one expansion model over the other.  I
don't know why Roland and/or RMS decided to handle expansion this way but I
can't think of a good reason to prefer the current behavior.

Except, of course, that it's the way things have worked for 35+ years.  There
was discussion on the mailing list a while ago trying to envision situations
where existing makefiles would be broken by changing this behavior.  I can't
remember if anyone found any that were compelling.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?67265>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to