From Jason Turner

[gram.class]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpt7aij5ce/{from.md → to.md} +57 -15
tmp/tmpt7aij5ce/{from.md → to.md} RENAMED
@@ -22,18 +22,18 @@ class-head-name:
22
  nested-name-specifierₒₚₜ class-name
23
  ```
24
 
25
  ``` bnf
26
  class-virt-specifier:
27
- 'final'
28
  ```
29
 
30
  ``` bnf
31
  class-key:
32
- 'class'
33
- 'struct'
34
- 'union'
35
  ```
36
 
37
  ``` bnf
38
  member-specification:
39
  member-declaration member-specificationₒₚₜ
@@ -43,14 +43,17 @@ member-specification:
43
  ``` bnf
44
  member-declaration:
45
  attribute-specifier-seqₒₚₜ decl-specifier-seqₒₚₜ member-declarator-listₒₚₜ ';'
46
  function-definition
47
  using-declaration
 
48
  static_assert-declaration
49
  template-declaration
 
50
  deduction-guide
51
  alias-declaration
 
52
  empty-declaration
53
  ```
54
 
55
  ``` bnf
56
  member-declarator-list:
@@ -59,29 +62,45 @@ member-declarator-list:
59
  ```
60
 
61
  ``` bnf
62
  member-declarator:
63
  declarator virt-specifier-seqₒₚₜ pure-specifierₒₚₜ
 
64
  declarator brace-or-equal-initializerₒₚₜ
65
- identifierₒₚₜ attribute-specifier-seqₒₚₜ ':' constant-expression
66
  ```
67
 
68
  ``` bnf
69
  virt-specifier-seq:
70
  virt-specifier
71
  virt-specifier-seq virt-specifier
72
  ```
73
 
74
  ``` bnf
75
  virt-specifier:
76
- 'override'
77
- 'final'
78
  ```
79
 
80
  ``` bnf
81
  pure-specifier:
82
- '= 0'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
  ```
84
 
85
  ``` bnf
86
  base-clause:
87
  ':' base-specifier-list
@@ -94,24 +113,47 @@ base-specifier-list:
94
  ```
95
 
96
  ``` bnf
97
  base-specifier:
98
  attribute-specifier-seqₒₚₜ class-or-decltype
99
- attribute-specifier-seqₒₚₜ 'virtual' access-specifierₒₚₜ class-or-decltype
100
- attribute-specifier-seqₒₚₜ access-specifier 'virtual'ₒₚₜ class-or-decltype
101
  ```
102
 
103
  ``` bnf
104
  class-or-decltype:
105
- nested-name-specifierₒₚₜ class-name
106
- nested-name-specifier 'template' simple-template-id
107
  decltype-specifier
108
  ```
109
 
110
  ``` bnf
111
  access-specifier:
112
- 'private'
113
- 'protected'
114
- 'public'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
115
  ```
116
 
117
 
 
22
  nested-name-specifierₒₚₜ class-name
23
  ```
24
 
25
  ``` bnf
26
  class-virt-specifier:
27
+ final
28
  ```
29
 
30
  ``` bnf
31
  class-key:
32
+ class
33
+ struct
34
+ union
35
  ```
36
 
37
  ``` bnf
38
  member-specification:
39
  member-declaration member-specificationₒₚₜ
 
43
  ``` bnf
44
  member-declaration:
45
  attribute-specifier-seqₒₚₜ decl-specifier-seqₒₚₜ member-declarator-listₒₚₜ ';'
46
  function-definition
47
  using-declaration
48
+ using-enum-declaration
49
  static_assert-declaration
50
  template-declaration
51
+ explicit-specialization
52
  deduction-guide
53
  alias-declaration
54
+ opaque-enum-declaration
55
  empty-declaration
56
  ```
57
 
58
  ``` bnf
59
  member-declarator-list:
 
62
  ```
63
 
64
  ``` bnf
65
  member-declarator:
66
  declarator virt-specifier-seqₒₚₜ pure-specifierₒₚₜ
67
+ declarator requires-clause
68
  declarator brace-or-equal-initializerₒₚₜ
69
+ identifierₒₚₜ attribute-specifier-seqₒₚₜ ':' constant-expression brace-or-equal-initializerₒₚₜ
70
  ```
71
 
72
  ``` bnf
73
  virt-specifier-seq:
74
  virt-specifier
75
  virt-specifier-seq virt-specifier
76
  ```
77
 
78
  ``` bnf
79
  virt-specifier:
80
+ override
81
+ final
82
  ```
83
 
84
  ``` bnf
85
  pure-specifier:
86
+ '=' '0'
87
+ ```
88
+
89
+ ``` bnf
90
+ conversion-function-id:
91
+ operator conversion-type-id
92
+ ```
93
+
94
+ ``` bnf
95
+ conversion-type-id:
96
+ type-specifier-seq conversion-declaratorₒₚₜ
97
+ ```
98
+
99
+ ``` bnf
100
+ conversion-declarator:
101
+ ptr-operator conversion-declaratorₒₚₜ
102
  ```
103
 
104
  ``` bnf
105
  base-clause:
106
  ':' base-specifier-list
 
113
  ```
114
 
115
  ``` bnf
116
  base-specifier:
117
  attribute-specifier-seqₒₚₜ class-or-decltype
118
+ attribute-specifier-seqₒₚₜ virtual access-specifierₒₚₜ class-or-decltype
119
+ attribute-specifier-seqₒₚₜ access-specifier virtualₒₚₜ class-or-decltype
120
  ```
121
 
122
  ``` bnf
123
  class-or-decltype:
124
+ nested-name-specifierₒₚₜ type-name
125
+ nested-name-specifier template simple-template-id
126
  decltype-specifier
127
  ```
128
 
129
  ``` bnf
130
  access-specifier:
131
+ private
132
+ protected
133
+ public
134
+ ```
135
+
136
+ ``` bnf
137
+ ctor-initializer:
138
+ ':' mem-initializer-list
139
+ ```
140
+
141
+ ``` bnf
142
+ mem-initializer-list:
143
+ mem-initializer '...'ₒₚₜ
144
+ mem-initializer-list ',' mem-initializer '...'ₒₚₜ
145
+ ```
146
+
147
+ ``` bnf
148
+ mem-initializer:
149
+ mem-initializer-id '(' expression-listₒₚₜ ')'
150
+ mem-initializer-id braced-init-list
151
+ ```
152
+
153
+ ``` bnf
154
+ mem-initializer-id:
155
+ class-or-decltype
156
+ identifier
157
  ```
158
 
159