This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 113d. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.

2024-04-05


2371. Use of the English term “attributes” is confusing

Section: 6.2  [basic.def]     Status: CD5     Submitter: Gabriel Dos Reis     Date: 2017-12-05

[Adopted at the February, 2019 meeting as part of paper P1103R3.]

The English word “attributes” is used occasionally in the Standard to refer to general characteristics rather than to the constructs described by the attribute syntactic nonterminal. For example, 6.2 [basic.def] paragraph 1 says,

A declaration (9.1 [dcl.pre]) may introduce one or more names into a translation unit or redeclare names introduced by previous declarations. If so, the declaration specifies the interpretation and attributes of these names.

A similar use occurs in 6.5 [basic.lookup] paragraph 1:

Only after name lookup, function overload resolution (if applicable) and access checking have succeeded are the attributes introduced by the name's declaration used further in expression processing (Clause 7 [expr]).

These nonspecific uses of the term are potentially confusing and should be replaced, possibly with a specification of which “attributes” are intended.

Perhaps less confusing, although in a similar vein, is 11.4.10 [class.bit] paragraph 1:

The bit-field attribute is not part of the type of the class member.

The use of the term here should also be reconsidered.

Notes from the October, 2018 teleconference:

These points are addressed by further work on the modules TS.