From Jason Turner

[gram.dcl]

Diff to HTML by rtfpessoa

tmp/tmp26quvlm3/{from.md → to.md} RENAMED
@@ -31,11 +31,11 @@ block-declaration:
31
  opaque-enum-declaration
32
  ```
33
 
34
  ``` bnf
35
  alias-declaration:
36
- 'using' identifier attribute-specifier-seqₒₚₜ = type-id ';'
37
  ```
38
 
39
  ``` bnf
40
  simple-declaration:
41
  decl-specifier-seqₒₚₜ init-declarator-listₒₚₜ ';'
@@ -146,16 +146,18 @@ type-name:
146
  ```
147
 
148
  ``` bnf
149
  decltype-specifier:
150
  'decltype' '(' expression ')'
 
151
  ```
152
 
153
  ``` bnf
154
  elaborated-type-specifier:
155
  class-key attribute-specifier-seqₒₚₜ nested-name-specifierₒₚₜ identifier
156
- class-key nested-name-specifierₒₚₜ 'template'ₒₚₜ simple-template-id
 
157
  'enum' nested-name-specifierₒₚₜ identifier
158
  ```
159
 
160
  ``` bnf
161
  enum-name:
@@ -301,11 +303,11 @@ attribute-specifier:
301
  ```
302
 
303
  ``` bnf
304
  alignment-specifier:
305
  'alignas (' type-id '...'ₒₚₜ ')'
306
- 'alignas (' alignment-expression '...'ₒₚₜ ')'
307
  ```
308
 
309
  ``` bnf
310
  attribute-list:
311
  attributeₒₚₜ
@@ -385,12 +387,12 @@ noptr-declarator:
385
  '(' ptr-declarator ')'
386
  ```
387
 
388
  ``` bnf
389
  parameters-and-qualifiers:
390
- '(' parameter-declaration-clause ')' attribute-specifier-seqₒₚₜ cv-qualifier-seqₒₚₜ
391
- ref-qualifierₒₚₜ exception-specificationₒₚₜ
392
  ```
393
 
394
  ``` bnf
395
  trailing-return-type:
396
  '->' trailing-type-specifier-seq abstract-declaratorₒₚₜ
@@ -422,11 +424,10 @@ ref-qualifier:
422
  ```
423
 
424
  ``` bnf
425
  declarator-id:
426
  '...'ₒₚₜ id-expression
427
- nested-name-specifierₒₚₜ class-name
428
  ```
429
 
430
  ``` bnf
431
  type-id:
432
  type-specifier-seq abstract-declaratorₒₚₜ
 
31
  opaque-enum-declaration
32
  ```
33
 
34
  ``` bnf
35
  alias-declaration:
36
+ 'using' identifier attribute-specifier-seqₒₚₜ '=' type-id ';'
37
  ```
38
 
39
  ``` bnf
40
  simple-declaration:
41
  decl-specifier-seqₒₚₜ init-declarator-listₒₚₜ ';'
 
146
  ```
147
 
148
  ``` bnf
149
  decltype-specifier:
150
  'decltype' '(' expression ')'
151
+ 'decltype' '(' 'auto' ')'
152
  ```
153
 
154
  ``` bnf
155
  elaborated-type-specifier:
156
  class-key attribute-specifier-seqₒₚₜ nested-name-specifierₒₚₜ identifier
157
+ class-key simple-template-id
158
+ class-key nested-name-specifier 'template'ₒₚₜ simple-template-id
159
  'enum' nested-name-specifierₒₚₜ identifier
160
  ```
161
 
162
  ``` bnf
163
  enum-name:
 
303
  ```
304
 
305
  ``` bnf
306
  alignment-specifier:
307
  'alignas (' type-id '...'ₒₚₜ ')'
308
+ 'alignas (' constant-expression '...'ₒₚₜ ')'
309
  ```
310
 
311
  ``` bnf
312
  attribute-list:
313
  attributeₒₚₜ
 
387
  '(' ptr-declarator ')'
388
  ```
389
 
390
  ``` bnf
391
  parameters-and-qualifiers:
392
+ '(' parameter-declaration-clause ')' cv-qualifier-seqₒₚₜ
393
+ ref-qualifierₒₚₜ exception-specificationₒₚₜ attribute-specifier-seqₒₚₜ
394
  ```
395
 
396
  ``` bnf
397
  trailing-return-type:
398
  '->' trailing-type-specifier-seq abstract-declaratorₒₚₜ
 
424
  ```
425
 
426
  ``` bnf
427
  declarator-id:
428
  '...'ₒₚₜ id-expression
 
429
  ```
430
 
431
  ``` bnf
432
  type-id:
433
  type-specifier-seq abstract-declaratorₒₚₜ