ISO/ IEC JTC1/SC22/WG14 N785

SC22/WG14 N785


Meaning of "definition"
Clive D.W. Feather
clive@demon.net
1997-10-21


Abstract
========

The Standard uses wording that implies that certain concepts (such as type
names) have definitions, but does not support this in the definition of
definition. This proposal fixes this.


Proposal
========

Change 6.5 (Declarations) paragraph 5 from:

    A /declaration/ specifies the interpretation and attributes of a set
    of identifiers. A declaration that also causes storage to be reserved
    for an object or function named by an identifier is a /definition/.[90]

to:

    A /declaration/ specifies the interpretation and attributes of a set
    of identifiers. A /definition/ of an identifier is a declaration for
    that identifier that:
    - for an object, causes storage to be reserved for that object;
    - for a function, includes the function body;[90]
    - for an enumeration constant or typedef name, is the (only)
      declaration of the identifier.