2
2
3
3
## Summary
4
4
5
- - ` any_prefix #` , ` any_prefix "..."` , and ` any_prefix '...'` are now reserved
5
+ - ` any_identifier #` , ` any_identifier "..."` , and ` any_identifier '...'` are now reserved
6
6
syntax, and no longer tokenize.
7
7
- This is mostly relevant to macros. E.g. ` quote!{ #a#b } ` is no longer accepted.
8
- - It doesn't treat keywords specially, so e.g. ` match".." {} ` is no longer accepted.
8
+ - It doesn't treat keywords specially, so e.g. ` match"... " {} ` is no longer accepted.
9
9
- Insert whitespace to avoid errors.
10
10
11
11
## Details
@@ -14,9 +14,11 @@ To make space for new syntax in the future,
14
14
we've decided to reserve syntax for prefixed identifiers and literals:
15
15
` prefix#identifier ` , ` prefix"string" ` , ` prefix'c' ` , and ` prefix#123 ` ,
16
16
where ` prefix ` can be any identifier.
17
- (Except those that already have a meaning, such as ` b'…' ` and ` r"…" ` .)
17
+ (Except those prefixes that already have a meaning, such as ` b'...' ` (byte
18
+ strings) and ` r"..." ` (raw strings).)
19
+
18
20
This provides syntax we can expand into in the future without requiring an
19
- edition boundary. We may use that for temporary syntax until the next edition,
21
+ edition boundary. We may use this for temporary syntax until the next edition,
20
22
or for permanent syntax if appropriate.
21
23
22
24
Without an edition, this would be a breaking change, since macros can currently
0 commit comments