From Jason Turner

[dcl.attr.deprecated]

Diff to HTML by rtfpessoa

tmp/tmpvqz_v5bi/{from.md → to.md} RENAMED
@@ -4,28 +4,28 @@ The *attribute-token* `deprecated` can be used to mark names and
4
  entities whose use is still allowed, but is discouraged for some reason.
5
 
6
  [*Note 1*: In particular, `deprecated` is appropriate for names and
7
  entities that are deemed obsolescent or unsafe. — *end note*]
8
 
9
- It shall appear at most once in each *attribute-list*. An
10
- *attribute-argument-clause* may be present and, if present, it shall
11
  have the form:
12
 
13
  ``` bnf
14
  '(' string-literal ')'
15
  ```
16
 
17
- [*Note 2*: The *string-literal* in the *attribute-argument-clause*
18
- could be used to explain the rationale for deprecation and/or to suggest
19
- a replacing entity. — *end note*]
20
 
21
  The attribute may be applied to the declaration of a class, a
22
  *typedef-name*, a variable, a non-static data member, a function, a
23
- namespace, an enumeration, an enumerator, or a template specialization.
 
24
 
25
- A name or entity declared without the `deprecated` attribute can later
26
- be redeclared with the attribute and vice-versa.
27
 
28
  [*Note 3*: Thus, an entity initially declared without the attribute can
29
  be marked as deprecated by a subsequent redeclaration. However, after an
30
  entity is marked as deprecated, later redeclarations do not un-deprecate
31
  the entity. — *end note*]
 
4
  entities whose use is still allowed, but is discouraged for some reason.
5
 
6
  [*Note 1*: In particular, `deprecated` is appropriate for names and
7
  entities that are deemed obsolescent or unsafe. — *end note*]
8
 
9
+ An *attribute-argument-clause* may be present and, if present, it shall
 
10
  have the form:
11
 
12
  ``` bnf
13
  '(' string-literal ')'
14
  ```
15
 
16
+ [*Note 2*: The *string-literal* in the *attribute-argument-clause* can
17
+ be used to explain the rationale for deprecation and/or to suggest a
18
+ replacing entity. — *end note*]
19
 
20
  The attribute may be applied to the declaration of a class, a
21
  *typedef-name*, a variable, a non-static data member, a function, a
22
+ namespace, an enumeration, an enumerator, a concept, or a template
23
+ specialization.
24
 
25
+ An entity declared without the `deprecated` attribute can later be
26
+ redeclared with the attribute and vice-versa.
27
 
28
  [*Note 3*: Thus, an entity initially declared without the attribute can
29
  be marked as deprecated by a subsequent redeclaration. However, after an
30
  entity is marked as deprecated, later redeclarations do not un-deprecate
31
  the entity. — *end note*]