File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -32,8 +32,12 @@ and are at least one word.
32
32
The layouts of ` &T ` , ` &mut T ` and ` *T ` are the same.
33
33
34
34
If ` T ` is sized, references and pointers to ` T ` have a size and alignment of one
35
- word and have therefore the same layout as C pointers - they can be used in C FFI
36
- where pointers are expected.
35
+ word and have therefore the same layout as C pointers.
36
+
37
+ > ** warning** : while the layout of references and pointers is compatible with
38
+ > the layout of C pointers, references come with a _ validity_ invariant that
39
+ > does not allow them to be used when they could be ` NULL ` , unaligned, dangling,
40
+ > or, in the case of ` &mut T ` , aliasing.
37
41
38
42
We do not make any guarantees about the layout of
39
43
multi-trait objects ` &(dyn T + U) ` or references to other dynamically sized types,
You can’t perform that action at this time.
0 commit comments