Skip to content

Rollup of 13 pull requests #48955

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 37 commits into from
Mar 13, 2018
Merged
Changes from 1 commit
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
f1c1fc2
rephrase UnsafeCell doc
NovemberZulu Feb 14, 2018
b9b8249
fix tidy checks
NovemberZulu Feb 14, 2018
cfad25e
Clarify interfaction between File::set_len and file cursor
jethrogb Feb 23, 2018
273166e
remove italic
NovemberZulu Feb 27, 2018
d9b8724
style fix
NovemberZulu Feb 27, 2018
50f5ea9
Simplify
NovemberZulu Feb 27, 2018
ff6754c
fix tidy checks
NovemberZulu Feb 27, 2018
78789ad
and some more tidy checks
NovemberZulu Feb 27, 2018
55cc9a4
Remember state of top-level collapse toggle widget
focusaurus Mar 1, 2018
2dd81c8
Rename doc collapse sentinal to rustdoc-collapse
focusaurus Mar 1, 2018
f9c5b1f
Update Feature Request instructions
klnusbaum Mar 3, 2018
ca1c91b
Synchronizing with code of conduct in rust-www
davidalber Mar 7, 2018
fe557ee
another rewrite
NovemberZulu Mar 8, 2018
fbcd2f5
tidy. Again
NovemberZulu Mar 8, 2018
55be283
and again :(
NovemberZulu Mar 8, 2018
a63bf3b
Add missing urls
GuillaumeGomez Mar 9, 2018
c1a73d2
tidy: Add a check for stray `.stderr` and `.stdout` files in UI test …
petrochenkov Mar 9, 2018
7dc71ec
Remove auto trait implementation section when empty
GuillaumeGomez Mar 9, 2018
9334175
remove linker arguments from L4Re target
humenda Mar 10, 2018
9fd941e
add stub for retrieving number of CPUs
humenda Mar 10, 2018
9b59985
in which some labels and notes are upgraded to structured suggestions
zackmdavis Mar 11, 2018
c033c6e
Fix hygene issue when deriving Debug
Phlosioneer Mar 11, 2018
f2a8556
Update stdsimd module
alexcrichton Mar 9, 2018
fdb5181
Rollup merge of #48201 - NovemberZulu:master, r=steveklabnik
kennytm Mar 12, 2018
7bd8f6e
Rollup merge of #48705 - klnusbaum:update_rfc_process, r=aturon
kennytm Mar 12, 2018
f84cab4
Rollup merge of #48725 - humenda:master, r=nikomatsakis
kennytm Mar 12, 2018
e22a994
Rollup merge of #48824 - davidalber:update-conduct, r=steveklabnik
kennytm Mar 12, 2018
5d09189
Rollup merge of #48877 - GuillaumeGomez:vec-missing-links, r=QuietMis…
kennytm Mar 12, 2018
3d2db9b
Rollup merge of #48880 - petrochenkov:badstderr, r=kennytm
kennytm Mar 12, 2018
2d13cc4
Rollup merge of #48887 - alexcrichton:update-stdsimd, r=kennytm
kennytm Mar 12, 2018
14574db
Rollup merge of #48928 - zackmdavis:span_suggestion_field_day, r=este…
kennytm Mar 12, 2018
34d9ffe
Rollup merge of #48934 - Phlosioneer:42453-debug-hygene, r=petrochenkov
kennytm Mar 12, 2018
bda5a45
Add missing links
GuillaumeGomez Mar 12, 2018
684c6d1
Rollup merge of #48480 - jethrogb:patch-5, r=alexcrichton
kennytm Mar 12, 2018
15d71d3
Rollup merge of #48631 - focusaurus:remember-collapse-setting, r=Quie…
kennytm Mar 12, 2018
e30d89d
Rollup merge of #48898 - GuillaumeGomez:remove-empty-section, r=Quiet…
kennytm Mar 12, 2018
99d0ac0
Rollup merge of #48954 - GuillaumeGomez:missing-links-fmt, r=QuietMis…
kennytm Mar 12, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Simplify
Merge three rules into one following @cramertj
  • Loading branch information
NovemberZulu committed Feb 27, 2018
commit 50f5ea919231b41b7d8ccb1023b4dc0fd6e6730d
14 changes: 9 additions & 5 deletions src/libcore/cell.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1165,11 +1165,15 @@ impl<'a, T: ?Sized + fmt::Display> fmt::Display for RefMut<'a, T> {
/// mutated, and that `&mut T` is unique. When building abstractions like `Cell`, `RefCell`,
/// `Mutex`, etc, you need to turn these optimizations off. `UnsafeCell` is the only legal way
/// to do this. When `UnsafeCell<T>` itself is immutably aliased, it is still safe to obtain
/// a mutable reference to its interior and/or to mutate the interior. However, it is up to
/// the abstraction designer to ensure that no two mutable references obtained this way are active
/// at the same time, there are no active immutable reference when a mutable reference is obtained
/// from the cell, and that there are no active mutable references or mutations when an immutable
/// reference is obtained. This is often done via runtime checks.
/// a mutable reference to its interior and/or to mutate the interior. However, the abstraction
/// designer must ensure that any active mutable references to the interior obtained this way does
/// not co-exist with other active references to the interior, either mutable or not. This is often
/// done via runtime checks. Naturally, several active immutable references to the interior can
/// co-exits with each other (but not with a mutable reference).
///
/// To put it in other words, if a mutable reference to the contents is active, no other references
/// can be active at the same time, and if an immutable reference to the contents is active, then
/// only other immutable reference may be active.
///
/// Note that while mutating or mutably aliasing the contents of an `& UnsafeCell<T>` is
/// okay (provided you enforce the invariants some other way), it is still undefined behavior
Expand Down