File tree Expand file tree Collapse file tree 1 file changed +4
-5
lines changed Expand file tree Collapse file tree 1 file changed +4
-5
lines changed Original file line number Diff line number Diff line change 24
24
//! to access only a single value, in which case the documentation omits the size
25
25
//! and implicitly assumes it to be `size_of::<T>()` bytes.
26
26
//!
27
- //! While we can't yet define whether an arbitrary pointer is valid, there
28
- //! are a few rules regarding validity :
27
+ //! The precise rules for validity are not determined yet. The guarantees that are
28
+ //! provided at this point are very minimal :
29
29
//!
30
30
//! * A [null] pointer is *never* valid, not even for accesses of [size zero][zst].
31
31
//! * All pointers (except for the null pointer) are valid for all operations of
35
35
//! access the same memory.
36
36
//!
37
37
//! These axioms, along with careful use of [`offset`] for pointer arithmentic,
38
- //! are enough to correctly implement many useful things in unsafe code. Still,
39
- //! unsafe code should be carefully examined since some of the finer
40
- //! details—notably the [aliasing] rules—are not yet settled. For more
38
+ //! are enough to correctly implement many useful things in unsafe code. Stronger guarantees
39
+ //! will be provided eventually, as the [aliasing] rules are being determined. For more
41
40
//! information, see the [book] as well as the section in the reference devoted
42
41
//! to [undefined behavior][ub].
43
42
//!
You can’t perform that action at this time.
0 commit comments