diff options
| author | Dylan DPC <99973273+Dylan-DPC@users.noreply.github.com> | 2022-04-18 18:22:04 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-04-18 18:22:04 +0200 |
| commit | a6ad1394f3f7fe1d9d459964a2d4be8d6ba2ea5a (patch) | |
| tree | 10cd4fa286d79c6ac3dc775368bb044f92715868 | |
| parent | 718b1843eeb6466186f37906779b050bf91566f5 (diff) | |
| parent | be30e4044052fb0c74166a761eaec69c17fd2d54 (diff) | |
| download | rust-a6ad1394f3f7fe1d9d459964a2d4be8d6ba2ea5a.tar.gz rust-a6ad1394f3f7fe1d9d459964a2d4be8d6ba2ea5a.zip | |
Rollup merge of #96136 - thomcc:lifetime-wording, r=RalfJung
Reword clarification on lifetime for ptr->ref safety docs I believe the current wording of the safety comment is somewhat misleading, and that this is more accurate. Suggested by `@CAD97` in this thread on the topic https://rust-lang.zulipchat.com/#narrow/stream/136281-t-lang.2Fwg-unsafe-code-guidelines/topic/Lifetime.20of.20reference.20pointer.20docs.20issue Just to check that this is correct, CC `@RalfJung.` I suppose it's open for interpretation as to whether or not this is more clear. I think it is.
| -rw-r--r-- | library/core/src/ptr/const_ptr.rs | 6 | ||||
| -rw-r--r-- | library/core/src/ptr/mut_ptr.rs | 12 | ||||
| -rw-r--r-- | library/core/src/ptr/non_null.rs | 12 |
3 files changed, 15 insertions, 15 deletions
diff --git a/library/core/src/ptr/const_ptr.rs b/library/core/src/ptr/const_ptr.rs index 68f39dc4347..7ef2e95542b 100644 --- a/library/core/src/ptr/const_ptr.rs +++ b/library/core/src/ptr/const_ptr.rs @@ -295,7 +295,7 @@ impl<T: ?Sized> *const T { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -358,7 +358,7 @@ impl<T: ?Sized> *const T { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -1188,7 +1188,7 @@ impl<T> *const [T] { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! diff --git a/library/core/src/ptr/mut_ptr.rs b/library/core/src/ptr/mut_ptr.rs index 4c9b0f7cc0c..56f9c84f5af 100644 --- a/library/core/src/ptr/mut_ptr.rs +++ b/library/core/src/ptr/mut_ptr.rs @@ -302,7 +302,7 @@ impl<T: ?Sized> *mut T { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -368,7 +368,7 @@ impl<T: ?Sized> *mut T { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -550,7 +550,7 @@ impl<T: ?Sized> *mut T { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get accessed (read or written) through any other pointer. /// /// This applies even if the result of this method is unused! @@ -615,7 +615,7 @@ impl<T: ?Sized> *mut T { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get accessed (read or written) through any other pointer. /// /// This applies even if the result of this method is unused! @@ -1461,7 +1461,7 @@ impl<T> *mut [T] { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -1513,7 +1513,7 @@ impl<T> *mut [T] { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get accessed (read or written) through any other pointer. /// /// This applies even if the result of this method is unused! diff --git a/library/core/src/ptr/non_null.rs b/library/core/src/ptr/non_null.rs index 6f402924e75..5ebe6150906 100644 --- a/library/core/src/ptr/non_null.rs +++ b/library/core/src/ptr/non_null.rs @@ -114,7 +114,7 @@ impl<T: Sized> NonNull<T> { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -148,7 +148,7 @@ impl<T: Sized> NonNull<T> { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get accessed (read or written) through any other pointer. /// /// This applies even if the result of this method is unused! @@ -350,7 +350,7 @@ impl<T: ?Sized> NonNull<T> { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -400,7 +400,7 @@ impl<T: ?Sized> NonNull<T> { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get accessed (read or written) through any other pointer. /// /// This applies even if the result of this method is unused! @@ -580,7 +580,7 @@ impl<T> NonNull<[T]> { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get mutated (except inside `UnsafeCell`). /// /// This applies even if the result of this method is unused! @@ -626,7 +626,7 @@ impl<T> NonNull<[T]> { /// /// * You must enforce Rust's aliasing rules, since the returned lifetime `'a` is /// arbitrarily chosen and does not necessarily reflect the actual lifetime of the data. - /// In particular, for the duration of this lifetime, the memory the pointer points to must + /// In particular, while this reference exists, the memory the pointer points to must /// not get accessed (read or written) through any other pointer. /// /// This applies even if the result of this method is unused! |
