Skip to content

Commit d797c44

Browse files
committed
rfc, unreservations: scratch unsized from unreservations.
1 parent 8c4f63f commit d797c44

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

text/0000-unreservations-2018.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
We unreserve:
1010
+ `pure`
11-
+ `unsized`
1211
+ `sizeof`
1312
+ `alignof`
1413
+ `offsetof`
@@ -37,7 +36,6 @@ used as general identifiers. This is done immediately and on edition 2015.
3736

3837
The keywords to unreserve are:
3938
+ `pure`
40-
+ `unsized`
4139
+ `sizeof`
4240
+ `alignof`
4341
+ `offsetof`
@@ -132,11 +130,6 @@ other than `pure`.
132130
In both 1. and 2., `pure` can be contextual.
133131
We also don't think that the drawbacks are significant for `pure`.
134132

135-
## Rationale for `unsized`
136-
137-
This would be a modifier on types, but we already have `<T: ?Sized>` and we
138-
could have `T: !Sized` so there seems to be no need for keeping `unsized`.
139-
140133
## Rationale for `sizeof`, `alignof`, and `offsetof`
141134

142135
We already have [`std::mem::size_of`](https://doc.rust-lang.org/nightly/std/mem/fn.size_of.html) and similar which
@@ -225,7 +218,18 @@ Additionally, there are known potential use cases / RFCs for:
225218

226219
## Possible future unreservations
227220

228-
## `priv`
221+
### `unsized`
222+
223+
This would be a modifier on types, but we already have `<T: ?Sized>` and we
224+
could have `T: !Sized` so there seems to be no need for keeping `unsized`.
225+
226+
However, `unsized type` or `unsized struct` might be a desirable syntax for
227+
declaring a *dynamically sized type (DST)* or completely unsized type.
228+
Therefore, we will hold of on unreserving `unsized` until we have a better
229+
ideas of how custom DSTs will work and it's clear we don't need `unsized`
230+
as a keyword.
231+
232+
### `priv`
229233

230234
Here, `priv` is a privacy / visibility modifier on things like fields, and items.
231235
An example:

0 commit comments

Comments
 (0)