.
Last update: 1997-05-20
9945-2-113
_____________________________________________________________________________
Topic: $< macro evaluation
Relevant Sections: 6.2.7.7
Defect Report:
-----------------------
From: mark@mks.com (Mark Funkenhauser)
Date: Thu, 20 Apr 1995 15:52:37 -0400 (EDT)
Dear Standards Board,
I would like to an request official, binding interpretation
from WG15 concerning the following point in ISO/IEC
9945-2:1993 (POSIX.2).
Section 6.2.7.7 states, lines 607-610:
In an inference rule, the $< macro shall evaluate to the file name
whose existence allowed the inference rule to be chosen for the
target. In the .DEFAULT rule, the $< macro shall evaluate to the
current target name. The $< macro shall be evaluated only for inference
rules.
What does it mean to "be evaluated only for inference rules" ?
1) There seems to be a contradiction since the 2nd last sentence describes
the behaviour for the .DEFAULT rule, but .DEFAULT is not an
inference rule. How should one interpret this apparent contradiction?
2) What happens to $< in rules that are not inference or .DEFAULT?
Should $< remain a literal string (e.g "$<" )
or should it be treated as an empty string "" (as is done in some
historical makes) or are alternate implementation defined behaviours
allowed (e.g some non-USL based makes, such as from MKS and GNU,
substitutes $< to be the list of all the prerequisites)
Thank you for your attention to this matter.
Mark Funkenhauser
Interpretation response
------------------------
As has been pointed out, the standard contains a contradiction for the
$< macro and no conformance distinction can be made between alternative
implementations based on this. This is being referred to the sponsor.
Rationale:
None
Forwarded to Interpretations group: Apr 21 1995
Proposed resolution circulated: May 16th
Comments due: June 15th
Finalised: June 16th 1995