Follow-up Comment #17, bug #57751 (project make): That is not dispositive because it tells you where the macro is _evaluated_ but doesn't tell you where an internal macro is _assigned_.
Where it is assigned is the key question, not where it is evaluated. For a rule like this: foo.o : $@.c ; clearly the $@ is evaluated when the target line is read in, as POSIX says, but POSIX also says that internal macros "can be used in target and inference rules", so there is absolutely nothing in the standard saying that make should not work like this: * Parse/evaluate the target * Assign $@ to the target name * Parse/evaluate the prerequisites That is why I asked for the text to be clarified saying that internal macros are not required to be assigned except when evaluating commands. _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?57751> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/