Skip to content

Commit b2f7ca7

Browse files
authored
Rollup merge of rust-lang#138976 - xizheyin:issue-138969, r=RalfJung
Explain one-past-the-end pointer in std library Closing rust-lang#138969 r? libs
2 parents 1e19bf2 + ade88f1 commit b2f7ca7

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

core/src/ptr/const_ptr.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -386,7 +386,8 @@ impl<T: ?Sized> *const T {
386386
/// * If the computed offset is non-zero, then `self` must be [derived from][crate::ptr#provenance] a pointer to some
387387
/// [allocated object], and the entire memory range between `self` and the result must be in
388388
/// bounds of that allocated object. In particular, this range must not "wrap around" the edge
389-
/// of the address space.
389+
/// of the address space. Note that "range" here refers to a half-open range as usual in Rust,
390+
/// i.e., `self..result` for non-negative offsets and `result..self` for negative offsets.
390391
///
391392
/// Allocated objects can never be larger than `isize::MAX` bytes, so if the computed offset
392393
/// stays in bounds of the allocated object, it is guaranteed to satisfy the first requirement.

0 commit comments

Comments
 (0)