From Jason Turner

[gram.lex]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmphaf5iqrw/{from.md → to.md} +46 -17
tmp/tmphaf5iqrw/{from.md → to.md} RENAMED
@@ -10,11 +10,10 @@ universal-character-name:
10
  '\u' hex-quad
11
  '\U' hex-quad hex-quad
12
  ```
13
 
14
  ``` bnf
15
- %
16
  preprocessing-token:
17
  header-name
18
  identifier
19
  pp-number
20
  character-literal
@@ -70,10 +69,12 @@ pp-number:
70
  pp-number identifier-nondigit
71
  pp-number ''' digit
72
  pp-number ''' nondigit
73
  pp-number 'e' sign
74
  pp-number 'E' sign
 
 
75
  pp-number '.'
76
  ```
77
 
78
  ``` bnf
79
  identifier:
@@ -84,11 +85,10 @@ identifier:
84
 
85
  ``` bnf
86
  identifier-nondigit:
87
  nondigit
88
  universal-character-name
89
- other implementation-defined characters
90
  ```
91
 
92
  ``` bnf
93
  nondigit: one of
94
  'a b c d e f g h i j k l m'
@@ -140,13 +140,11 @@ decimal-literal:
140
  decimal-literal '''ₒₚₜ digit
141
  ```
142
 
143
  ``` bnf
144
  hexadecimal-literal:
145
- '0x' hexadecimal-digit
146
- '0X' hexadecimal-digit
147
- hexadecimal-literal '''ₒₚₜ hexadecimal-digit
148
  ```
149
 
150
  ``` bnf
151
  binary-digit:
152
  '0'
@@ -161,10 +159,21 @@ octal-digit: one of
161
  ``` bnf
162
  nonzero-digit: one of
163
  '1 2 3 4 5 6 7 8 9'
164
  ```
165
 
 
 
 
 
 
 
 
 
 
 
 
166
  ``` bnf
167
  hexadecimal-digit: one of
168
  '0 1 2 3 4 5 6 7 8 9'
169
  'a b c d e f'
170
  'A B C D E F'
@@ -193,14 +202,16 @@ long-long-suffix: one of
193
  'll LL'
194
  ```
195
 
196
  ``` bnf
197
  character-literal:
198
- ''' c-char-sequence '''
199
- u''' c-char-sequence '''
200
- U''' c-char-sequence '''
201
- L''' c-char-sequence '''
 
 
202
  ```
203
 
204
  ``` bnf
205
  c-char-sequence:
206
  c-char
@@ -233,26 +244,50 @@ hexadecimal-escape-sequence:
233
  hexadecimal-escape-sequence hexadecimal-digit
234
  ```
235
 
236
  ``` bnf
237
  floating-literal:
 
 
 
 
 
 
238
  fractional-constant exponent-partₒₚₜ floating-suffixₒₚₜ
239
  digit-sequence exponent-part floating-suffixₒₚₜ
240
  ```
241
 
 
 
 
 
 
 
242
  ``` bnf
243
  fractional-constant:
244
  digit-sequenceₒₚₜ '.' digit-sequence
245
  digit-sequence '.'
246
  ```
247
 
 
 
 
 
 
 
248
  ``` bnf
249
  exponent-part:
250
  'e' signₒₚₜ digit-sequence
251
  'E' signₒₚₜ digit-sequence
252
  ```
253
 
 
 
 
 
 
 
254
  ``` bnf
255
  sign: one of
256
  '+ -'
257
  ```
258
 
@@ -271,18 +306,10 @@ floating-suffix: one of
271
  string-literal:
272
  encoding-prefixₒₚₜ '"' s-char-sequenceₒₚₜ '"'
273
  encoding-prefixₒₚₜ 'R' raw-string
274
  ```
275
 
276
- ``` bnf
277
- encoding-prefix:
278
- 'u8'
279
- 'u'
280
- 'U'
281
- 'L'
282
- ```
283
-
284
  ``` bnf
285
  s-char-sequence:
286
  s-char
287
  s-char-sequence s-char
288
  ```
@@ -333,10 +360,12 @@ user-defined-integer-literal:
333
 
334
  ``` bnf
335
  user-defined-floating-literal:
336
  fractional-constant exponent-partₒₚₜ ud-suffix
337
  digit-sequence exponent-part ud-suffix
 
 
338
  ```
339
 
340
  ``` bnf
341
  user-defined-string-literal:
342
  string-literal ud-suffix
 
10
  '\u' hex-quad
11
  '\U' hex-quad hex-quad
12
  ```
13
 
14
  ``` bnf
 
15
  preprocessing-token:
16
  header-name
17
  identifier
18
  pp-number
19
  character-literal
 
69
  pp-number identifier-nondigit
70
  pp-number ''' digit
71
  pp-number ''' nondigit
72
  pp-number 'e' sign
73
  pp-number 'E' sign
74
+ pp-number 'p' sign
75
+ pp-number 'P' sign
76
  pp-number '.'
77
  ```
78
 
79
  ``` bnf
80
  identifier:
 
85
 
86
  ``` bnf
87
  identifier-nondigit:
88
  nondigit
89
  universal-character-name
 
90
  ```
91
 
92
  ``` bnf
93
  nondigit: one of
94
  'a b c d e f g h i j k l m'
 
140
  decimal-literal '''ₒₚₜ digit
141
  ```
142
 
143
  ``` bnf
144
  hexadecimal-literal:
145
+ hexadecimal-prefix hexadecimal-digit-sequence
 
 
146
  ```
147
 
148
  ``` bnf
149
  binary-digit:
150
  '0'
 
159
  ``` bnf
160
  nonzero-digit: one of
161
  '1 2 3 4 5 6 7 8 9'
162
  ```
163
 
164
+ ``` bnf
165
+ hexadecimal-prefix: one of
166
+ '0x 0X'
167
+ ```
168
+
169
+ ``` bnf
170
+ hexadecimal-digit-sequence:
171
+ hexadecimal-digit
172
+ hexadecimal-digit-sequence '''ₒₚₜ hexadecimal-digit
173
+ ```
174
+
175
  ``` bnf
176
  hexadecimal-digit: one of
177
  '0 1 2 3 4 5 6 7 8 9'
178
  'a b c d e f'
179
  'A B C D E F'
 
202
  'll LL'
203
  ```
204
 
205
  ``` bnf
206
  character-literal:
207
+ encoding-prefixₒₚₜ ''' c-char-sequence '''
208
+ ```
209
+
210
+ ``` bnf
211
+ encoding-prefix: one of
212
+ 'u8' 'u' 'U' 'L'
213
  ```
214
 
215
  ``` bnf
216
  c-char-sequence:
217
  c-char
 
244
  hexadecimal-escape-sequence hexadecimal-digit
245
  ```
246
 
247
  ``` bnf
248
  floating-literal:
249
+ decimal-floating-literal
250
+ hexadecimal-floating-literal
251
+ ```
252
+
253
+ ``` bnf
254
+ decimal-floating-literal:
255
  fractional-constant exponent-partₒₚₜ floating-suffixₒₚₜ
256
  digit-sequence exponent-part floating-suffixₒₚₜ
257
  ```
258
 
259
+ ``` bnf
260
+ hexadecimal-floating-literal:
261
+ hexadecimal-prefix hexadecimal-fractional-constant binary-exponent-part floating-suffixₒₚₜ
262
+ hexadecimal-prefix hexadecimal-digit-sequence binary-exponent-part floating-suffixₒₚₜ
263
+ ```
264
+
265
  ``` bnf
266
  fractional-constant:
267
  digit-sequenceₒₚₜ '.' digit-sequence
268
  digit-sequence '.'
269
  ```
270
 
271
+ ``` bnf
272
+ hexadecimal-fractional-constant:
273
+ hexadecimal-digit-sequenceₒₚₜ '.' hexadecimal-digit-sequence
274
+ hexadecimal-digit-sequence '.'
275
+ ```
276
+
277
  ``` bnf
278
  exponent-part:
279
  'e' signₒₚₜ digit-sequence
280
  'E' signₒₚₜ digit-sequence
281
  ```
282
 
283
+ ``` bnf
284
+ binary-exponent-part:
285
+ 'p' signₒₚₜ digit-sequence
286
+ 'P' signₒₚₜ digit-sequence
287
+ ```
288
+
289
  ``` bnf
290
  sign: one of
291
  '+ -'
292
  ```
293
 
 
306
  string-literal:
307
  encoding-prefixₒₚₜ '"' s-char-sequenceₒₚₜ '"'
308
  encoding-prefixₒₚₜ 'R' raw-string
309
  ```
310
 
 
 
 
 
 
 
 
 
311
  ``` bnf
312
  s-char-sequence:
313
  s-char
314
  s-char-sequence s-char
315
  ```
 
360
 
361
  ``` bnf
362
  user-defined-floating-literal:
363
  fractional-constant exponent-partₒₚₜ ud-suffix
364
  digit-sequence exponent-part ud-suffix
365
+ hexadecimal-prefix hexadecimal-fractional-constant binary-exponent-part ud-suffix
366
+ hexadecimal-prefix hexadecimal-digit-sequence binary-exponent-part ud-suffix
367
  ```
368
 
369
  ``` bnf
370
  user-defined-string-literal:
371
  string-literal ud-suffix